Saturday, October 3, 2026
GovTech & Cybersecurity Standards Benchmark
Global Digital Verification
✕
Public Key Infrastructure (PKI) • 2026 Reference Peer Reviewed

SSL/TLS Certificate Lifecycle, Chain of Trust & OCSP Revocation Auditing

Technical manual for auditing X.509 digital certificates, verifying intermediate and root CA chains, inspecting Subject Alternative Names (SAN), and checking OCSP Stapling.

WebOTG Security Directorate
14 mins
Oct 03, 2026
1 views
Advertisement

1. Executive Summary & PKI Architecture

Public Key Infrastructure (PKI) underpins trust in modern web operations through X.509 digital certificates issued by trusted Certificate Authorities (CAs). For government portals, financial gateways, and critical digital infrastructure, improper certificate lifecycle management leads to catastrophic outages, expired certificate warnings that deter citizens, or man-in-the-middle (MitM) vulnerabilities caused by unrevoked compromised keys.

Audit Mandate
ITU-T X.509 (Public-Key Infrastructure) • RFC 5280 • RFC 6960 (OCSP) • GIGW 3.0 Clause 6.1.2

2. Inspecting Live Certificates & Chains with OpenSSL

Security auditors must inspect certificate metadata directly from live endpoints without relying exclusively on graphical browser interfaces.

A. Extracting Certificate Expiry and Subject Details

# Fetch certificate and print human-readable dates and subject openssl s_client -connect target-domain.gov:443 -servername target-domain.gov < /dev/null 2>/dev/null | openssl x509 -noout -dates -subject -issuer # Output Sample: # notBefore=Aug 20 00:00:00 2026 GMT # notAfter=Nov 18 23:59:59 2026 GMT # subject=CN = target-domain.gov # issuer=C = US, O = Let's Encrypt, CN = R10

B. Verifying Subject Alternative Names (SAN)

Modern web standards ignore the Common Name (CN) and require all target domains and subdomains to be explicitly enumerated in the Subject Alternative Name (SAN) extension:

# Extract Subject Alternative Names openssl s_client -connect target-domain.gov:443 -servername target-domain.gov < /dev/null 2>/dev/null | openssl x509 -noout -ext subjectAltName # Output Sample: # X509v3 Subject Alternative Name: # DNS:target-domain.gov, DNS:www.target-domain.gov

C. Verifying Intermediate Certificate Chain Completeness

A common configuration error is serving only the leaf certificate without the intermediate CA bundle. While some desktop browsers cache intermediate certificates, mobile devices and command-line HTTP clients will fail with certificate signed by unknown authority.

# Inspect full certificate chain sent by server openssl s_client -connect target-domain.gov:443 -showcerts -servername target-domain.gov < /dev/null # Verification Rule: # The server MUST deliver Certificate 0 (Leaf/End-Entity) AND Certificate 1+ (Intermediates). # The Root CA should NOT be sent, as it must reside in the client's local trust store.

3. Auditing OCSP Stapling & Revocation Status

When a private key is compromised or a certificate is re-issued, revocation notices must propagate immediately. Traditional Certificate Revocation Lists (CRLs) require large downloads, while un-stapled Online Certificate Status Protocol (OCSP) slows down initial handshakes and introduces user privacy concerns.

OCSP Stapling (RFC 6066) solves this by having the web server periodically query the CA's OCSP responder and include a cryptographically signed time-stamped status directly within the initial TLS handshake.

Testing OCSP Stapling Status

# Query the live server with the -status flag openssl s_client -connect target-domain.gov:443 -servername target-domain.gov -status < /dev/null 2>&1 | grep -A 17 "OCSP response:" # Compliant Output Sample: # OCSP response: # ====================================== # OCSP Response Data: # OCSP Response Status: successful (0x0) # Cert Status: good # This Update: Oct 2 12:00:00 2026 GMT # Next Update: Oct 9 12:00:00 2026 GMT

Audit Rule: If OCSP response: no response sent is returned, OCSP Stapling is not enabled on the server, increasing client-side handshake latency.

4. Automated Renewal Workflows (ACME & Certbot)

Industry CA/Browser Forum baselines have shortened certificate validity periods to 90 days. Manual renewals introduce substantial risk of human error and outages. Production servers must automate certificate issuance and deployment using the ACME protocol.

# Automatic renewal dry-run test certbot renew --dry-run # Systemd timer or cron verification (typically runs twice daily) systemctl list-timers | grep certbot # Automated deployment hook in /etc/letsencrypt/renewal-hooks/deploy/reload-nginx.sh #!/bin/bash nginx -t && systemctl reload nginx

5. Certificate Lifecycle Audit Checklist

Audit Metric Standard Requirement Pass Criteria
Remaining Validity Alerting threshold ≥ 30 days prior to expiration Certificate does not expire within standard monitoring window
Public Key Algorithm & Size RSA ≥ 2048-bit (4096-bit recommended) or ECC ≥ 256-bit Zero 1024-bit RSA keys detected
Signature Hash Algorithm SHA-256 or SHA-384 signature algorithm Zero SHA-1 or MD5 intermediate/leaf signatures
Chain Completeness Full intermediate chain delivered by server External validator confirms no missing intermediate certificates
OCSP Stapling Server delivers valid, signed OCSP response in handshake openssl s_client -status returns Cert Status: good
Advertisement
WE
WebOTG Security Directorate
PKI & Trust Specialist

WebOTG provides benchmark reference documentation, automated matrix evaluators, and security test harnesses for government digital platforms, WQMS architectures, and STQC compliance frameworks.