Security
What Is a Certificate Authority, Really?
Your browser trusts a few hundred organizations you've never heard of, and that trust is the entire foundation of "https" — so it's worth understanding what a certificate authority actually does, how the chain of trust works, and why the interesting failures are all about that chain.
- Security
- PKI
- TLS
- Fundamentals
Every time you see a padlock in the address bar, you’re relying on a certificate authority — one of a few hundred organizations your device has been told to trust, most of which you’ve never heard of. That trust is the whole foundation of secure connections on the internet, and it’s worth understanding, because “certificate authority” gets thrown around as if it’s obvious when the actual mechanics — how trust chains, why your browser believes any of this, how it all gets revoked — are where every interesting failure lives.
The problem a CA solves
A server presents a certificate saying “I am example.com and here’s my public key.” The problem: anyone can generate a certificate claiming to be anyone. What makes this claim believable? A third party you already trust has to vouch for it — has to cryptographically sign the certificate, attesting “I checked, and this key really does belong to example.com.” That trusted third party is the certificate authority. The CA’s job isn’t to encrypt anything; it’s to vouch — to bind an identity to a key with its signature, so a stranger can trust the binding without having checked it themselves.
A certificate authority doesn’t make your connection secure. It answers a narrower, deeper question: should you believe this server is who it says it is?
The chain of trust: root, intermediate, leaf
You don’t trust a CA’s signature directly on each site. There’s a chain:
- Root certificate. The CA’s ultimate anchor. Its certificate is self-signed and is distributed with your operating system and browser in a trust store — a curated list of roots your device trusts by default. This is the thing everything hangs from.
- Intermediate certificate. Roots are kept locked away (offline, heavily protected), so the root signs one or more intermediates, and those do the day-to-day signing. The intermediate is itself signed by the root.
- Leaf certificate. The actual certificate for a server (example.com), signed by an intermediate.
To verify a server, your client walks the chain: the leaf is signed by an intermediate, which is signed by a root, which is in the trust store. If the walk reaches a trusted root, the leaf is trusted. If it can’t complete — a missing intermediate, an issuer that isn’t in the store — trust fails, even if the leaf itself is perfectly valid. That “the leaf is fine but the chain is broken” case is one of the most common real TLS failures, and it’s why so many certificate problems are not actually about the certificate you’re looking at.
How you actually get a certificate signed
The mechanics of getting a cert are cleaner than people expect:
- You generate a key pair and keep the private key secret — it never leaves your server.
- You create a Certificate Signing Request (CSR): your public key plus the identity you’re claiming (the hostname), signed by your private key to prove you hold it.
- The CA validates that you actually control that identity (for public certs, proving you control the domain), and if satisfied, signs a certificate binding your public key to that name.
- You install the signed certificate. Now anyone can verify, via the chain, that a trusted party vouched for the binding.
The private key never goes to the CA — that’s the whole point of the CSR. The CA vouches for your public key without ever seeing your private one. Getting through this process, with the right chain and validation, is more of a supply chain than a single step.
Trust has to be revocable
Signatures have expiry dates, but sometimes a certificate has to be killed early — a private key leaked, a cert was issued in error. So there’s revocation: CRLs (certificate revocation lists the CA publishes) and OCSP (a protocol to ask, in real time, “is this cert still good?”). Revocation is the genuinely hard, messy part of the whole system — checking it reliably without slowing every connection or leaking what you’re visiting is an ongoing engineering tension — but the concept matters: trust you can’t withdraw isn’t really trust, it’s a time bomb. A CA has to be able to say “never mind, don’t trust that one anymore.”
The enterprise version: your own CA and a policy broker
Inside a company, the same machinery runs privately. An internal CA issues certificates trusted by the org’s own machines (its root is pushed into their trust stores) — useful for internal services that don’t need a publicly-trusted cert. And at scale, enterprises put a managed PKI platform in front of the CAs: a broker that doesn’t sign certs itself but enforces policy — who’s allowed to request what, with which key strength and naming, who approves, and where every cert is inventoried — then forwards the request to the appropriate backing CA (internal or public). It turns “getting a certificate” from an ad-hoc favor into a governed process with an audit trail, which is what makes org-wide automated renewal possible at all.
Why understanding this pays off
The chain-of-trust model is the key that unlocks nearly every certificate problem you’ll hit. An untrusted-issuer error means the walk didn’t reach a root in the store. A “your connection isn’t private” on an internal site usually means the internal CA’s root was never installed on the client. A cert that works in one tool and not another is often a missing intermediate that one client fetches and the other doesn’t. None of these are mysterious once you can see the chain: leaf, intermediate, root, trust store, and the walk between them. A certificate authority is just the organization that makes that chain mean something — and knowing how the chain works is what turns TLS trust errors from scary into solvable. If you’ve untangled a chain-of-trust failure, I’d like to hear where it broke.