An old certificate authority has had its RSA keys broken by an outside programmer, decades after they were first put to use. The project is titled “I’ve factored the RSA keys of a Certificate Authority from the 90s.”
The Search For A Weak Certificate
The person behind the project had been thinking about how RSA holds up over time. RSA depends on the difficulty of breaking a large number into its two prime parts, and small numbers are far less difficult to break than large ones. The Web PKI stopped trusting 1024-bit RSA more than ten years ago, and a 512-bit number, RSA-155, was broken back in 1999. Just recently, someone also broke RSA-260, an 862-bit number, which the author says is the largest broken number they are aware of.
That got the author wondering whether an old certificate small enough to break on a modest desktop computer existed somewhere in browser history. In the 1990s there were no fixed rules on certificate size, and cryptography itself was still limited by government rules on its use. Netscape shipped SSL support in 1994, and Internet Explorer followed soon after.
Finding E-Certify
To find a candidate, the author gathered old copies of the Netscape and Internet Explorer setup files and used Claude Code, an AI coding application, to draw out every certificate authority certificate stored inside them. The results were turned into a Claude-generated page listing all the old CAs found. Going through that list for small keys turned up a match: Netscape 4.51, from March 1999, shipped a 512-bit RSA certificate authority certificate trusted for SSL, along with a second one trusted for use with secure electronic mail. Both belonged to E-Certify, a Canadian certificate authority that no longer runs.
Netscape stopped trusting the E-Certify certificates in 2002. Internet Explorer, unlike Netscape, never trusted any 512-bit certificate authority certificates for SSL, so this exercise applies to Netscape alone.
Breaking The Numbers
To break the keys, the author used a piece of software made for splitting large numbers into their prime parts, known as CADO-NFS, running it on a Ryzen 9 5950X desktop computer. CADO-NFS is built for exactly this task: taking a large number and recovering the two prime numbers that make it up. Breaking the E-Certify RSA 512 Gold Server certificate, used for SSL, took 32 hours. Breaking the matching E-Certify RSA 512 Gold Client certificate, used for secure mail, took another 29 hours.
With the two prime numbers recovered, the author rebuilt the private keys tied to each certificate.
What The Keys Can Do
In principle, anyone who holds those private keys could pose as E-Certify and issue new certificates that old copies of Netscape would trust, or read traffic protected using them by placing themselves between a user and the server they meant to reach. There is a catch, though: the E-Certify certificates stopped being valid on October 16, 2003. Using them would require a copy of Netscape 4.51 running with its clock set back before that date. By the author’s own account, this describes no one alive today, apart from a virtual machine built to test the idea.
Getting a modern computer to talk to Netscape 4.51 at all took extra work, since there is no common ground between the browser’s version of secure connections and any current one. The author again used Claude Code to build a custom piece of software in Go capable of speaking the old browser’s version of that method. That server now runs publicly online, though it can only be seen using a real copy of Netscape.
A Timeline Of E-Certify’s Certificates
| Date | Event |
|---|---|
| October 16, 1998 | E-Certify RSA 512 Gold Server and Gold Client certificates issued |
| March 1999 | Netscape 4.51 comes out, trusting both E-Certify certificates |
| Later 1999 | RSA-155, also 512 bits, is broken |
| 2002 | Netscape stops trusting the E-Certify certificates |
| October 16, 2003 | E-Certify certificates stop being valid |
| Recently | Both 512-bit keys broken using CADO-NFS, in 32 hours for the Server key and 29 hours for the Client key |
The keys, certificates and supporting tools have been placed in a public repository so others can host their own pages using the old E-Certify keys, or, in the author’s words, do worse. No modern system trusts these certificates any longer, and no real users are running a browser from that period with its clock turned back. What the project shows instead is how quickly certificate sizes once thought usual turned into numbers a home computer can break in under two days.
Source: mcpherrin.ca
Get the Notebook.
The day's best stories and every fresh verdict, in plain English, in your inbox by seven. One email a day, no more.

