Certificate glossary
Definitions for the terms used throughout this site. Each links to the page that covers it properly.
- ACME
- The protocol Let’s Encrypt and similar CAs use to automate certificate issuance and renewal, removing the manual CSR-and-download cycle.
- AIA also Authority Information Access
- A certificate extension carrying URLs for the issuer’s certificate and its OCSP responder. Browsers use the CA Issuers URL to repair an incomplete chain; OpenSSL and curl do not.
- ASN.1
- The abstract notation X.509 certificates are defined in. DER is one set of rules for encoding it into bytes.
- Base64
- A way of representing binary data using 64 printable characters. PEM is Base64-encoded DER with header and footer lines added.
- Basic Constraints
- The certificate extension that says whether a certificate may sign other certificates. CA:TRUE makes it a certificate authority; CA:FALSE marks an end-entity certificate.
- CA also Certificate Authority
- An organisation that issues certificates, vouching that a public key belongs to the named subject. Its own certificate is what clients trust.
- Certificate chain
- The path from a server’s certificate up through intermediates to a root already in the client’s trust store. Each link is signed by the one above it.
- Certificate Transparency also CT
- A public, append-only log of every publicly trusted certificate issued. It makes misissuance detectable, and it also means the hostnames in your SAN list become public.
- CN also Common Name
- A subject field historically used to hold a hostname. Browsers have ignored it for hostname matching since Chrome 58; the SAN extension is what counts.
- CRL also Certificate Revocation List
- A signed list of certificates a CA has revoked before their expiry date. Largely superseded by OCSP and short-lived certificates.
- CSR also Certificate Signing Request
- A request to a CA containing your public key and the identity you are claiming, self-signed with your private key to prove you hold it. Your private key is not in it.
- DER
- The binary encoding X.509 objects are defined in. One object per file, no delimiters. PEM is this same data Base64-encoded.
- DV also Domain Validation
- The lowest assurance level, where the CA verifies only that you control the domain. Every free certificate is DV.
- EKU also Extended Key Usage
- A certificate extension restricting what the certificate may be used for — serverAuth for TLS servers, clientAuth for mutual TLS, and so on.
- End-entity certificate also Leaf certificate
- The certificate at the bottom of a chain, identifying an actual server or client rather than a CA. It carries CA:FALSE.
- Fingerprint
- A hash of the certificate’s DER bytes, used to identify it exactly. Unchanged by converting between PEM and DER, because the same bytes are hashed either way.
- Intermediate CA
- A CA signed by a root, which does the day-to-day issuing so the root key can stay offline. Servers must send their intermediates.
- JKS also Java KeyStore
- Java’s proprietary keystore format, deprecated in favour of PKCS#12 since Java 9. Readable only by keytool, never directly by OpenSSL.
- Key usage
- A certificate extension restricting what the key may do — digital signature, key encipherment, certificate signing, and so on.
- keytool
- The JDK’s command-line tool for managing Java keystores and truststores. It cannot import a private key from a PEM file, which is why PKCS#12 is the usual bridge.
- mTLS also Mutual TLS
- TLS where the client also presents a certificate, so both ends authenticate. Requires clientAuth in the client certificate’s extended key usage.
- OCSP
- A protocol for asking a CA whether a certificate is still valid. OCSP stapling lets the server fetch that answer itself and include it in the handshake.
- OV also Organisation Validation
- An assurance level where the CA verifies the organisation’s legal existence as well as domain control, so the O field is meaningful.
- PEM
- Base64-encoded DER wrapped in BEGIN and END lines. A text container that can hold certificates, keys, CSRs, or several objects at once.
- PKCS#1
- The original RSA private key format, recognisable from its BEGIN RSA PRIVATE KEY header. RSA only, and not accepted by Java or Go.
- PKCS#12 also PFX, P12
- A password-protected binary archive holding a certificate, its private key and the chain. The standard way to move a complete TLS identity.
- PKCS#7 also P7B, CMS
- A container holding several certificates, and never a private key. Used to move a chain as one file to Windows and Java tooling.
- PKCS#8
- The modern private key format, with a BEGIN PRIVATE KEY header. It records its own algorithm, so one parser handles RSA, EC and Ed25519 alike.
- Private key
- The secret half of a key pair. It never leaves your machine, is never sent to a CA, and its exposure means the certificate must be reissued.
- Root CA
- A self-signed CA certificate that acts as a trust anchor, distributed with operating systems and browsers. Its key is kept offline.
- SAN also Subject Alternative Name
- The certificate extension listing every hostname, IP address or other identity the certificate covers. The only field browsers match hostnames against.
- Self-signed certificate
- A certificate that is its own issuer, so nothing independent vouches for it. Each one must be trusted individually by every client.
- SNI also Server Name Indication
- A TLS extension telling the server which hostname the client wants, so one IP can serve many certificates. Omitting it in openssl s_client returns the default certificate.
- SPKI also SubjectPublicKeyInfo
- The structure holding a public key together with its algorithm. Comparing SPKIs is how you prove a key, a CSR and a certificate belong to one key pair.
- Trust store
- The collection of root CA certificates a system or application is willing to trust. Several runtimes ship their own and ignore the operating system’s.
- Truststore
- In Java, a keystore holding CA certificates you trust, as opposed to a keystore holding your own identity. Same file format, different contents.
- Wildcard certificate
- A certificate whose SAN contains a name like *.example.com. It matches exactly one label, so it covers www.example.com but not example.com itself.
- X.509
- The standard defining the structure of public key certificates — subject, issuer, validity, public key and extensions.