M7 / X.509 and PKI

OCSP/CRL impact and Merkle Tree Certificates

FoundationsPractitionerAdvisor

After this lesson you can

  • Explain how PQC signatures affect OCSP and CRL size, separating which component grows and which does not
  • Explain what Merkle Tree Certificates (MTC) do and justify, with a real timeline, why they are not a 2026 problem

Before thisCertificate chain bloat

Mental model

In the previous lesson you measured how much a certificate chain grows with PQC. This lesson covers how that growth affects two neighbouring mechanisms (OCSP and CRL), and the real current status of a solution developed against that growth (Merkle Tree Certificates). The main message, in the original brief’s own framing: “PQ certificates are not yet a production problem, agility is.”

OCSP and CRL: the same growth, a different effect

An OCSP response’s size is almost entirely determined by the responder’s signature; moving from RSA-2048 to ML-DSA-65, the signature-driven overhead is about 3053 BDERIVED. That cost repeats on every single OCSP query, because OCSP by definition produces one real-time response per query.

A CRL (Certificate Revocation List) is different: it carries a list of revoked certificates (each entry small: serial number + date + reason), with a single signature at the end. In a large CRL with thousands of revocation entries, the list itself dominates the volume; the growth of the signature with PQC is a relatively small overhead compared with the total. So the same algorithm change has a proportionally large effect on OCSP (each response is one signature) and a relatively small effect on a large CRL (one list plus one signature). When presenting this to an architect, instead of passing over it with one sentence like “PQC enlarges certificate revocation mechanisms”, separate which mechanism is affected and by how much.

Why it is a problem: real connection failures

The strongest evidence that this growth is not abstract is Let’s Encrypt’s own announcement of 3 June 2026: “Replacing those with ML-DSA equivalents would push a single TLS handshake well past 10 kilobytes. Cloudflare’s research has shown that, at that scale, a meaningful share of TLS connections fail on real-world networks, and the rest get slower.” (Let’s Encrypt’s own calculation here rests on the sizes of ML-DSA-44, the smallest of the three ML-DSA sets; this course’s own chain measurement, as you saw in the previous lesson, uses the larger ML-DSA-65, so the real total may be even larger than 10 KB, not smaller.) This is a warning about the total size of the whole handshake (certificate chain included), beyond the ClientHello overhead you saw in M6 (and will measure in M8); the certificate chain itself (which you measured in the previous lesson) is a significant part of that total.

MTC: shrink the proof instead of the certificate

Merkle Tree Certificates (MTC) attack the problem from a different angle: instead of each certificate carrying its own large signature, a CA adds certificates to a Merkle tree (a kind of cryptographic digest structure) that it publishes periodically, and each certificate carries, instead of its own large signature, a small proof (an inclusion proof) that it is “included” in that tree. This is a structure similar to the Merkle tree idea behind LMS/XMSS in M2 (all leaves below can be verified from one root digest), but here the goal is not to limit the number of signatures but to shrink the amount of data each certificate carries.

Its standard is draft-ietf-plants-merkle-tree-certs from the IETF’s PLANTS (PKI, Logs, And Tree Signatures) working group; as of September 2026 the draft has DRAFT2026-07-06 status at revision 5SOURCED, with no RFC status assigned yet.

Why it is not a 2026 problem: the real timeline

Let’s Encrypt’s own target is clear: “We are targeting late 2026 for a staging environment that issues MTCs, and 2027 for a production-ready environment.” Chrome’s pace is similar: according to Google’s own February 2026 announcement, Chrome’s new root program plan (Chrome Quantum-resistant Root Store, CQRS) has three phases: the first (ongoing) is a feasibility study with Cloudflare, using traditional X.509 certificates as a fallback; the second (Q1 2027) invites CT log operators; the third (Q3 2027) settles requirements for onboarding additional CAs. Google’s own wording is also clear: “Chrome has no immediate plan to add traditional X.509 certificates containing post-quantum cryptography to the Chrome Root Store.” So neither MTC itself nor the infrastructure for a major browser to accept it will be in production before 2027.

This shows exactly why the original brief’s framing “PQ certificates are not yet a production problem, agility is” is right: what is urgent today is not moving to PQ certificates immediately (there is no production-ready solution (MTC) yet, and major root programs do not accept traditional PQC certificates), but deploying the hybrid key exchange you saw in M5 (deployable today, reducing the harvest-now-decrypt-later threat today), and building an architecture that can adapt quickly whichever algorithm or certificate mechanism finally reaches production (crypto-agility).

Update, October 2026

Two announcements since this lesson was written point in the same direction. On 21 September 2026 the Apple Root Program published a draft position on Merkle Tree Certificates for TLS (three cosignatures including ML-DSA and ECDSA, a 7-day maximum validity, annual audits, operator applications expected from late summer 2027) and said it will accept composite ML-DSA roots for S/MIME. On 29 September 2026 Cloudflare announced plans to run a public CA issuing free Merkle Tree Certificates. Neither changes the conclusion above: MTCs are converging as the answer for the web, and production use is a 2027 story. Sources and details are on the news desk.

Numbers to know

  • Signature-driven growth of an OCSP response (RSA-2048 to ML-DSA-65): about 3053 B of extra overhead (the signature difference itself); a CRL's signature-driven growth follows the same logic, but in large CRLs the revocation list itself (thousands of serial numbers) dominates the volume and the signature is a one-time overhead
  • Merkle Tree Certificates (draft-ietf-plants-merkle-tree-certs) are still a draft as of September 2026 (v5, expiring 7 January 2027 unless renewed); Let's Encrypt's own target is staging in late 2026 and production in 2027; Chrome's CQRS plan has Phase 2 (Q1 2027) and Phase 3 (Q3 2027)

Lab: Check the live status of the MTC draft and Chrome's CQRS plan

[not run] This is a live verification exercise, not a runnable command

Requires: internet access. Check your setup

shell
# Open datatracker.ietf.org/doc/draft-ietf-plants-merkle-tree-certs/
Recorded output
You will see the latest revision number, the note 'Intended RFC status: (None)', and an expiry date; it is still an early draft, not an RFC

At the table

How to say this in a bank meeting.

To an executive
PQ certificates themselves are not yet an urgent production problem as of when this course was prepared (September 2026); major browser root programs (Chrome) do not yet accept PQ-only certificates. What is urgent is deploying hybrid key exchange (which you saw in M5 and which is already in production) and building an architecture that can adapt quickly to algorithm changes (crypto-agility).
To an architect
The growth in OCSP and CRL size is real but of two different magnitudes: an OCSP response (one-off, dominated by the signature) grows a lot proportionally; in a large CRL the signature is a single overhead and the list is already large. MTC aims to solve this problem at the certificate/handshake level with a completely different approach (a small inclusion proof into a periodically published Merkle tree), but it is not in production yet.
Objection
“"PQ certificates bloat the TLS handshake. Isn't that a crisis? Why aren't we hurrying?"”
Answer
Let's Encrypt's own analysis is clear: a handshake moved to ML-DSA can exceed 10 KB, and Cloudflare's research shows that at that size a meaningful share of connections fail on real-world networks. But the fix today is not a rushed PQC certificate migration: hybrid key exchange (which you saw in M5, with client support already above 60% in Cloudflare's own measurement) solves the most urgent part of the threat (harvest now, decrypt later) today; the certificate-side fix (MTC) will not reach production before 2027. What needs hurrying is not the PQ certificate but an architecture that can adapt quickly whatever happens.

Sources

  • Let's Encrypt, 2026. The primary source for why MTC was chosen (handshakes over 10 KB causing real connection failures) and for the real timeline (staging in late 2026, production in 2027)

    whole text / 10 min

  • Google Security Blog, 2026. The primary source for Chrome's own MTC/CQRS (Chrome Quantum-resistant Root Store) plan and its position that 'traditional PQC certificates will not be added to the root store'

    phase 1-3 timeline / 10 min

  • internal project document, 2026. The direct source of the framing 'PQ certificates are not a 2026 problem; crypto-agility itself is the problem'

    section 12 / 3 min

Checkpoint

Answer first, then compare with the model answer and score yourself against the rubric. Saved in this browser only.

  1. 01Recall

    Are an OCSP response and a large CRL affected by PQC signatures in different proportions? Why?

  2. 02Recall

    What does MTC do, and what status does it have today (September 2026)?

  3. 03Scenario

    A board member says 'Let's move to PQ certificates right away, no delay.' Using Let's Encrypt's own timeline, how do you answer?

  4. 04Hostile

    An architect says 'MTC already exists, Google and Cloudflare use it, so we should too.' Correct this claim using Chrome's own CQRS timeline.

Project linkContributes to the certificate-layer section of Project 2 (PQC PKI) the real current status of MTC and the rationale for prioritizing hybrid key exchange plus crypto-agility.