All IE Netscape Both
All TLS-trusted Non-TLS No store
Method. Each distribution was recursively unpacked (ISO → CAB, self-extracting EXEs, InstallShield 3
.Z volumes, concatenated-zip installers, floppy images) in a clean container, then every resulting file
was scanned for DER-encoded X.509 certificates — both raw and base64-embedded (Netscape stores its preload
base64-encoded in the browser binary, some wrapped in SEQ{"certificate", cert} records). Certificates
appearing only inside a file’s Authenticode signature block, and JAR-signature files (zigbert.rsa), were
excluded — those authenticate the download, not the web. A handful of pre-standard certs (e.g. the 1996 GTE CyberTrust
Root’s UTCTime without seconds) need a lenient ASN.1 parser and are included. Only self-signed (root) certificates are
listed. The source column shows the file each cert was found in (e.g. schannel.dll,
INITPKI.DLL, netscape.exe, libnssckbi.so).
Trust determination. Whether each root was actually trusted — and for what — comes from the
stores themselves, not from guesswork. IE 3 keeps its SSL roots as CERT resources in
schannel.dll and its Authenticode roots as SPC resources in
softpub.dll/wintrust.dll, so location alone settles the purpose. IE 4–6 ship the
root store as a CryptoAPI serialized store (ROOTS resource in INITPKI.DLL) in which nearly
every certificate carries an Enhanced Key Usage property (CERT_ENHKEY_USAGE_PROP_ID) — the exact per-root
purpose restrictions (serverAuth, email, codeSigning, timeStamping, SGC…) Windows enforced; a companion
CAS resource holds intermediate-store entries like the Root Agency certificate.
Netscape 4.x binaries (and the Netscape 6.0 PSM binary) embed a versioned preload changelog :
each entry records the cert, its SSL / S-MIME / object-signing trust flags (CERTDB_TRUSTED_CA,
step-up/SGC), and add / remove / change events across releases — folding the log yields each release's exact trust
state, and reveals certs that ship only as removal records to strip a CA from existing profiles.
Netscape 6.2.3 's libnssckbi.so trust bits are matched by SHA-1 against NSS 3.3.2's
certdata.txt. For Netscape ≤3.x the preload was the SSL site-CA list — SSL server
verification was the only certificate function in the product (S/MIME and object signing arrived with
Communicator 4.0). Copies found in signed JARs, Authenticode chains, font DSIG signatures, the bundled Java
plug-in keystore, or the NetMeeting certificate template are marked as not being trust-store material.