What is X.509?
Also known as: X509 Certificate
X.509 is an ITU-T standard defining the format of public key certificates, used to bind identities to cryptographic keys in protocols like TLS, S/MIME, and code signing.
X.509 is a standard from the ITU-T (International Telecommunication Union Telecommunication Standardization Sector) that specifies the format of public key certificates. These certificates are digital documents that cryptographically bind an identity (such as a person, server, or organization) to a public key. The standard is part of the X.500 series of directory services and is widely adopted in the Public Key Infrastructure (PKI) ecosystem.
An X.509 certificate contains several fields: the subject (the entity identified), the issuer (the Certificate Authority that signed the certificate), the validity period, the public key algorithm and value, and a digital signature from the issuer. The standard also defines certificate revocation lists (CRLs) to invalidate certificates before expiration. X.509 version 3 introduced extensions, such as Subject Alternative Names (SANs) and key usage restrictions, which greatly enhance flexibility.
In practice, X.509 is the backbone of TLS (Transport Layer Security), enabling server authentication in HTTPS. It is also used in S/MIME for secure email, code signing for software distributions, client authentication, and smart card systems. The certificate path validation mechanism ensures trust can be established through a chain of certificates from a trusted root CA. The Internet Engineering Task Force (IETF) profiles X.509 in RFC 5280, specifying implementations for the internet.
Key facts
- Defined by ITU-T in the X.500 series of standards.
- Certificates include subject, issuer, validity, public key, and a digital signature.
- Version 3 added extensions for SANs, key usage, and basic constraints.
- Supports certificate revocation through CRLs and OCSP.
- Foundation of trust in TLS, S/MIME, code signing, and PKI systems.
How it works in practice
Related terms
References
More in TLS & PKI
ACME Protocol
ACME (Automated Certificate Management Environment) is a protocol that automates the issuance, renewal, and revocation of TLS certificates, defined in RFC 8555.
Certificate Authority
A Certificate Authority (CA) is a trusted entity that issues digital certificates after verifying that the requester controls the domain or identity named in the certificate.
Certificate Chain
A certificate chain is an ordered list of certificates, starting with the server certificate and ending with a root CA, that a client validates to establish trust in the server's identity.
Certificate Pinning
A security technique where an application trusts only a specific, pre-selected certificate or public key for a given server, bypassing the standard chain of trust.
Cipher Suite
A cipher suite is a named set of cryptographic algorithms negotiated during a TLS handshake, specifying key exchange, authentication, encryption, and integrity protection for secure communications.
Domain Validation
Domain Validation (DV) is the lowest level of certificate validation used in TLS/SSL, where the certificate authority verifies only that the applicant controls the domain name, typically via an HTTP or DNS challenge.
ECH
Encrypted Client Hello (ECH) is a TLS extension that encrypts the Client Hello message, including the Server Name Indication (SNI), to prevent on-path observers from learning the target hostname during the handshake.
Extended Validation
Extended Validation (EV) is the highest level of TLS certificate assurance, requiring the certificate authority to perform rigorous, human-verified checks on the legal identity and operational existence of the requesting organization before issuance.
HSTS
HTTP Strict Transport Security (HSTS) is a web security policy mechanism that forces browsers to interact with a website only over HTTPS, preventing downgrade attacks and cookie hijacking.
Intermediate Certificate
An intermediate certificate is a subordinate CA certificate signed by a root CA, used to sign end-entity certificates and enable path validation while the root remains offline.