Aller au contenu

Certificats à révocation préemptive : le modèle PRC et ses « jetons de survie »

Certificats à révocation préemptive : le modèle PRC

Section intitulée « Certificats à révocation préemptive : le modèle PRC »

La révocation de certificat est le point faible historique des PKI : les listes de révocation sont lourdes, les répondeurs OCSP sont souvent ignorés quand ils ne répondent pas, et un certificat compromis reste en pratique utilisable jusqu’à son expiration. Le modèle PRC (Preemptive Revocation Certificate) prend le problème à l’envers : un certificat PRC est considéré comme révoqué par défaut.

Pour être accepté, un certificat PRC doit être accompagné d’un jeton de survie : une petite structure signée par l’autorité émettrice, qui atteste que le certificat n’a pas été révoqué dans les six dernières heures. Le serveur récupère ce jeton auprès de l’autorité et le présente pendant la poignée de main, dans une extension dédiée.

ÉlémentTailleDurée de validité
Certificat PRC~1,2 Ko90 jours
Jeton de survie96 octets6 heures
Signature du jetonEd25519celle du jeton

Si l’autorité cesse d’émettre des jetons pour un certificat, celui-ci meurt de lui-même en six heures au plus, sans liste ni répondeur à consulter côté client.

Le cas délicat est la panne de l’autorité : plus de jetons, donc plus aucun certificat valide après six heures. Le modèle prévoit un mode tempête, déclenché par un message signé de l’autorité racine, qui prolonge la validité de tous les jetons en cours de 48 heures.

[prc]
source_jetons = https://jetons.ac-exemple.invalid/prc
rafraichissement = 4h # marge avant l'expiration de 6 h
mode_tempete_accepte = oui