web-dev-qa-db-fra.com

Qu'advient-il de coder les certificats de signe lorsque lorsque la racine CA expire?

Jusqu'ici clair pour moi: si le certificat de signe de code lui-même expire, le code signé sera vérifié/accepté au cas où il serait signé avec un horodatage. Sinon, le code signé est expiré aussi.

Mais que se passe-t-il si mon CA lui-même expire (Root Ca un CAS émetteur ainsi)?

  • Le code sera-t-il toujours accepté s'il est horodatage?
  • Les certificats de la racine et de l'émission d'émission expirés doivent-ils toujours être présents (par exemple dans le magasin de certificats de certification de la racine de confiance)? C'est mon hypothèse, même si l'autorité de certification peut être rétrogradée, le client qui exécute la signature doit toujours faire confiance à l'autorité de certification? Sinon, la chaîne de confiance sera brisée, non?
  • L'absence de CRL ou de l'AIA pose-t-elle des problèmes?
9
dr_pepper285

Mais que se passe-t-il si mon CA lui-même expire (Root Ca un CAS émetteur ainsi)?

Littéralement, rien. Expliquons-le un peu plus de détails.

Si la signature n'est pas chronométrée, la signature est valide aussi longtemps que:

  • les données ne sont pas altérées
  • certificat de signature est le temps valide
  • aucun certificat dans la chaîne n'est révoqué
  • le certificat racine est fait confiance

Une fois que la signature du certificat est expirée, révoquée ou invalide de manière non valide, la signature est considérée comme invalide. Plain et simple.

Le but des horodaques dans la signature numérique est de fournir une confiance étendue pour le contenu signé. Les certificats de signature sont valables pour une courte période et des paramètres de base de la confiance ne conviennent pas à la signature à long terme (peut-être, archivée). Normalement (sans horodatage), vous devrez recréer la signature chaque fois que le certificat de signature est renouvelé. C'est un moyen de nulle part.

En ajoutant une horodatage aux signatures numériques, les conditions de confiance sont remplacées par la liste suivante:

  • les données ne sont pas altérées
  • certificat de signature * était * Temps valide au moment de la signature: le temps de signature est dans la validité de la signature du cert
  • Aucun certificat n'a été révoqué * avant * génération de signature
  • les certificats de signature et d'horodatage ont à la fois une chaîne de certificats de racine de confiance (indépendamment de leur valeur de temps, il faut juste être en magasin de confiance).

Ce qui a changé ici: la signature reste valable après l'expiration du certificat impliqué. C'est-à-dire que la chaîne entière de la signature et des certificats d'horodatage peut expirer (avec le certificat racine) et ne cassera pas la confiance. Les certificats de la chaîne peuvent être révoqués. La seule exigence: si un certificat est révoqué, le temps de révocation (on obtient à partir de CRL) doit être défini sur une heure après la création de la signature (l'heure de la signature est identifiée par un horodatage). La phrase précédente signifie qu'il doit y avoir un CRL signé pour prouver que aucun certificat n'a été révoqué au moment de la signature.

C'est la raison pour laquelle les systèmes de Windows modernes expédient depuis longtemps des certificats racines expirés. Ils sont toujours utilisés pour valider les vieilles signatures et qui sont chronométrées.

Il y a quelque temps, j'ai écrit un poteau de blog qui explique le sujet plus de détails: Signatures numériques et horodatages

12
Crypt32