The author describes factoring RSA keys that were shipped as trusted certificate authorities in the late 1990s. According to the post, Netscape 4.51, released in March 1999, included two 512‑bit RSA root certificates from the now‑defunct Canadian CA E‑Certify—one for SSL server authentication and one for S/MIME client authentication. These roots were later removed by Netscape in 2002, but they remained present in archived browser installers that the author downloaded from archive.org. Using a custom webpage generated with Claude Code to extract the roots, the author identified the two 512‑bit keys as targets for factorization. The author ran CADO‑NFS on a personal Ryzen 9 5950X desktop, reporting that factoring the E‑Certify RSA 512 Gold Server key took 32 hours and factoring the E‑Certify RSA 512 Gold Client key took an additional 29 hours. The resulting private keys are reproduced in the post, together with the corresponding certificates. The author notes that, assuming a victim is running Netscape 4.51 with its system clock set before the 2003‑10‑16 expiration date of the E‑Certify roots, the recovered private keys could be used to issue certificates that would be trusted by that old browser. To test this, the author built a custom TLS server in Go using Claude Code, hosted at e‑certify.fly.dev, which only works with the vintage Netscape client. The private keys, tools, and a repository of additional historic roots are made available at https://github.com/mcpherrinm/ancientroots. The post also mentions a 512‑bit RSA code‑signing CA shipped with Internet Explorer 3.02 (OU=Test VeriSign Commercial Software Publisher CA) that was similarly factored, reportedly by Steve Weis using a GPU cluster in about an hour. The author concludes that these examples illustrate how cryptographic keys once considered adequate for export‑restricted software are now within reach of modest hardware, reinforcing the deprecation of short RSA keys that the Web PKI undertook years ago.

Key facts
- Netscape 4.51 (March 1999) shipped two 512‑bit RSA E‑Certify roots
- The roots were removed by Netscape in 2002
- Factoring was performed with CADO‑NFS on a Ryzen 9 5950X desktop
- Server key took 32 hours, client key 29 hours
- Recovered private keys can be used to issue certificates for legacy Netscape 4.51
- A test TLS server is hosted at e‑certify.fly.dev
- Code and additional roots are in https://github.com/mcpherrinm/ancientroots
- IE 3.02 included a 512‑bit VeriSign test CA that was also factored
