OCSP Stapling Checker

Check whether a server staples its revocation status.

A certificate can be revoked before it expires — a leaked key, a mis-issuance, a decommissioned service. OCSP is the protocol for asking a CA whether a specific certificate is still good. The original design had the client ask, which created two problems: an extra round trip to a third party on every new connection, and a privacy leak, because the CA learns which sites the client is visiting.

OCSP stapling moves that lookup to the server. The server periodically asks the CA about its own certificate, receives a signed and timestamped response, and includes it in the TLS handshake. The client gets proof of revocation status without contacting anyone, the handshake is faster, and the CA learns nothing about visitors. The response is signed by the CA, so a server cannot forge a favourable answer.

What this tool checks is whether stapling is switched on, which is the actionable question — it is a one-line configuration change in nginx and Apache and is off by default in many builds. Note that the industry is moving away from OCSP: Let's Encrypt has begun retiring its responders in favour of short certificate lifetimes and CRLs, so a certificate with no OCSP URL is increasingly normal rather than a fault.

What this tool does

Stapling detected during the handshake

The check requests a stapled response exactly as a browser does, and reports whether the server supplied one and how large it was.

The responder URL

The OCSP endpoint named in the certificate’s Authority Information Access extension, or a note that the certificate names none.

Why it matters for privacy

Without stapling, a client that checks revocation tells the CA which site is being visited. Stapling moves that lookup to the server.

Chain context

The full chain is shown alongside, because a stapled response is signed by the issuer and only means something in that context.

Frequently asked questions

What is OCSP stapling?

The server fetches a signed statement from the CA about its own certificate's revocation status and includes it in the TLS handshake. The client gets the status without contacting the CA, which is faster and avoids telling the CA which sites are being visited.

How do I enable it?

In nginx: ssl_stapling on, ssl_stapling_verify on, and a resolver directive so the server can reach the responder. In Apache: SSLUseStapling on with an SSLStaplingCache configured. Both need outbound network access to the CA from the web server, which is the usual reason it silently does not work.

Does this tool tell me whether a certificate is revoked?

It reports whether a stapled response was supplied and names the responder in the certificate. It does not itself query the responder to fetch a revocation verdict, so a "no stapling" result means stapling is off — not that the certificate is revoked. The name of the tool reflects that scope deliberately.

What is OCSP Must-Staple?

A certificate extension declaring that the certificate must always be presented with a stapled response. It closes the gap where an attacker suppresses stapling to hide a revocation — but it also means any stapling failure takes your site offline, so it needs reliable stapling before it is safe to enable.

Why do browsers largely ignore OCSP?

Because soft-fail made it nearly useless: if the responder is unreachable, clients proceed anyway, which is exactly what an attacker who can block the lookup would arrange. Chrome uses its own pushed revocation list instead, and Firefox is scaling back. Stapling remains worth enabling for the performance and privacy benefits.

My certificate has no OCSP URL. Is that a problem?

Increasingly not. Let's Encrypt has begun retiring OCSP in favour of short certificate lifetimes and CRLs, so newer certificates may name no responder at all. The reasoning is that a certificate valid for a few weeks limits the damage window more reliably than a revocation check most clients ignore.

Monitor it, don't just check it

One-off checks catch what is broken today. CertNotify watches your certificates, domains, DNS and code continuously and tells you before something breaks.

Related free tools