Certificate Transparency (CT) provides a system to monitor and audit all public SSL certificates that are being issued by CAs. A number of different parties, including public CAs, web browser vendors, CT log operators, and others, are involved in ensuring the CT framework functions correctly.
SSL/TLS certificates issued by publicly trusted Certificate Authorities (CAs) are a cornerstone of secure online communication. With more digital certificates being created than ever before, it’s vital to ensure each one is correctly issued. But who makes sure the CAs are issuing digital certificates that meet the high standards of trustworthiness required? That’s where Certificate Transparency comes in.
Whenever a CA issues a publicly-trusted SSL certificate, they are required to submit details of that certificate to a number of Certificate Transparency logs. These CT logs will reply with cryptographically signed timestamps that serve as proof of the certificate’s submission. The logs are publicly accessible, creating transparency and visibility into every new certificate issued. This transparency plays a key part in ensuring trust on the internet, allowing anyone to monitor certificate issuance. This makes it easier to discover the certificates that are wrongly issued and could be abused by bad actors to conduct attacks on users.
How CT Logs Work
Certificate Transparency works by relying on a distributed ecosystem of independently-operated 'logs'. These public logs are tamper-proof, append-only databases (which are internally structured as Merkle hash-trees).
The logs are designed such that any entry to the log can be verified, and unauthorized modifications to the log can be easily and immediately detected.
Given the "append-only" nature of CT logs, they can grow quite large over time. To manage this, logs are divided into "shards" that contain certificates corresponding to a given time period. Once all certificates in a shard have expired, the shard becomes unused. This allows loggers to control the size of the actual files that need to be dealt with, while still maintaining a permanent record.
Additionally, every CA that issues a public certificate is required to submit to a number of logs for redundancy. This ensures that every public SSL certificate is logged and is visible, even in the event of catastrophic failures.
These logs can and should be monitored so that errors can be detected, and domain owners can have visibility over any certificate issued to their domain names. There are several tools available for mining this data, including crt.sh and Censys. Crt.sh is the most commonly used tool for reading and auditing CT log data.
These logs are operated by several different parties including CAs, browser vendors and service providers. Sectigo, as a public CA and an established part of the CT ecosystem, operates its own logs as well as sponsors other parties to operate their own separate logs.
Why Certificate Transparency Is Important
Whether intentional or unintentional, mis-issuance of SSLs can be dangerous as a bad actor could use them to intercept private data. With this in mind, CT is vital because it provides a public check that can be used by security experts, third-party researchers, and domain owners to ensure certificates have been properly validated and issued to the correct parties. If a CA is sloppy in its authentication and issuance practices or has been compromised, CT helps to identify the ‘bad’ certificates quickly so the proper revocation can be completed. The act of CAs revoking mis-issued certificates helps to keep malicious actors from stealing data.
Beyond providing transparency, CT also helps to build trust in the entire CA industry. With all public certificates logged, anyone can monitor public CAs and make sure they are issuing them correctly. This helps to keep the CA industry accountable and ensures that organizations can trust certificates that are issued. It also enables researchers to build models of certificate use and behavior on the internet.
To learn more about CT, listen to Root Causes podcast, episode 202, "What is Certificate Transparency?"