Contexte historique
En mars 1999, Netscape 4.51 a installé deux certificats racine de 512 bits RSA, l’un pour SSL et l’autre pour S/MIME. Les certificats proviennent de l’autorité canadienne aujourd’hui disparue E‑Certify. À l’époque, les restrictions à l’exportation de la cryptographie autorisaient des tailles de clé bien plus faibles que les exigences actuelles du Web PKI, qui a abandonné le 1024 bits depuis plus de dix ans.
Les archives de navigateurs anciennes, récupérées sur archive.org, contiennent ces certificats. Leur présence dans les installateurs montre que des clés de 512 bits ont réellement été utilisées pour sécuriser des connexions Internet il y a plus de deux décennies.
Méthodologie de factorisation
Pour récupérer les clés privées, il faut factoriser le module RSA présent dans chaque certificat. L’auteur a employé CADO‑NFS, une implémentation open‑source de l’algorithme Number Field Sieve (NFS), sur un processeur Ryzen 9 5950X. Le facteur de 512 bits du serveur a nécessité 32 heures de calcul, tandis que le facteur du client a requis 29 heures, soit un total d’environ 60 heures de travail continu.
Le processus s’est déroulé en trois étapes : extraction du module du certificat, lancement de CADO‑NFS avec les paramètres par défaut, puis reconstruction de la clé privée à partir des deux facteurs premiers obtenus. Le temps d’exécution reflète la complexité théorique de NFS, qui croît approximativement comme exp((1.923+o(1))(log N)^{1/3}(loglog N)^{2/3}) pour un nombre N de 512 bits.
-----BEGIN CERTIFICATE-----
MIIByjCCAXSgAwIBAgIBATANBgkqhkiG9w0BAQQFADBjMQswCQYDVQQGEwJDQTES
MBAGA1UEChMJRS1DZXJ0aWZ5MRgwFgYDVQQLEw9SU0EgR29sZCBTZXJ2ZXIxJjAk
BgNVBAMTHUUtQ2VydGlmeSBSU0EgNTEyIEdvbGQgU2VydmVyMB4XDTk4MTAxNjEz
Mzc1M1oXDTAzMTAxNjEzMzc1M1owYzELMAkGA1UEBhMCQ0ExEjAQBgNVBAoTCUUt
Q2VydGlmeTEYMBYGA1UECxMPUlNBIEdvbGQgU2VydmVyMSYwJAYDVQQDEx1FLUNl
cnRpZnkgUlNBIDUxMiBHb2xkIFNlcnZlcjBcMA0GCSqGSIb3DQEBAQUAA0sAMEgC
QQDNVQ93Ev7zgNaJAR1Z7gCydU6mky1e/B4EbY1NsdtfsitU9cELqg5uRJDPA40n
CDPeOyil1lJ5N8hekcqJAkkXAgMBAAGjEzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJ
KoZIhvcNAQEEBQADQQB09SV6OeeDEP8Je3DOLNZ24U98NHqIBTDyB4sRpDmNdHum
+3rm4AYtznBxG5hEShO89bcWi3yJtBITGuTRDnMq
-----END CERTIFICATE-----
-----BEGIN RSA PRIVATE KEY-----
MIIBOgIBAAJBAM1VD3cS/vOA1okBHVnuALJ1TqaTLV78HgRtjU2x21+yK1T1wQuq
Dm5EkM8DjScIM947KKXWUnk3yF6RyokCSRcCAwEAAQJAWZ2FOWf+A9K4T2VAJS69
+SU/pW3YwHrysuYJZN56K0Iz+Hqd1hBhCeJ3/T+/cvXq+ctD0x3uOxU1rDSeCoMO
KQIhAPdbc1wTm3twWDYi1iXmRBXz97MYxRFld/KFr8x5+tK9AiEA1IG09a+oVg6j
NMDj6GD7spaD4q9t1wk/Nyq/MTLPkmMCIEzzYjvuzZvlI0wUIlLAA8Zgk1pgBk6X
Jm2IMVyHRgRxAiEAjZKgCTHuVu7HgiSjcTPzW0X1NTckWSc66zjaSR+Ns/sCICxT
yXoTXWQCWL6BMpf2no7IlvoEnBIrED2Frq3PxlEA
-----END RSA PRIVATE KEY-----Analyse de la sécurité et des limites
Un module RSA de 512 bits possède une taille de 155 décimales, ce qui correspond à la notation RSA‑155. La factorisation réussie montre que, même avec du matériel de bureau, un attaquant déterminé peut récupérer la clé privée en moins de trois jours. Cette capacité dépasse largement les exigences de sécurité qui ont conduit à la dépréciation du 1024 bits en 2010.
Le facteur limitant reste la disponibilité de ressources de calcul. Un serveur dédié ou un cluster cloud pourrait réduire le temps de factorisation de plusieurs ordres de grandeur, rendant la menace réaliste pour des acteurs disposant d’un budget modeste.
Il faut noter que les certificats facturés ne sont plus reconnus par les navigateurs modernes. Leur utilisation pratique se limite à des environnements rétro‑compatibles, comme Netscape 4.51, ou à des expériences de type « Man‑in‑the‑Middle » sur des machines anciennes. Ainsi, le risque direct pour les utilisateurs actuels est négligeable, mais l’exemple illustre la nécessité de conserver des tailles de clé suffisantes dans tout système persistant.
Conséquences pratiques
Les clés privées publiées permettent de signer de nouveaux certificats compatibles avec les anciennes versions de Netscape. L’auteur a mis à disposition un serveur TLS écrit en Go, hébergé sur e‑certify.fly.dev, qui accepte les connexions de ces navigateurs historiques. Cette démonstration confirme que la chaîne de confiance peut être reconstruite lorsqu’une autorité racine compromise possède une clé trop petite.
En conclusion, la factorisation de ces racines montre que les exigences de longueur de clé ne sont pas seulement théoriques. Elles reposent sur des mesures concrètes de la difficulté de factorisation, mesurées aujourd’hui avec des outils open‑source et du matériel grand public.