Operator · Protocols

ARI: Renewal Hints

Frame 51 of 107

Classic ACME renewal is a guess: every client renews at two-thirds of lifetime because that's what the default says. The CA — the one party that actually knows when renewal should happen — has no way to say so. Result: thundering herds on round-number days, and rollovers that wait months for stragglers to wander off the old generation.

ARI (RFC 9773, ACME Renewal Information) turns the hint around: clients ask the CA for a suggested renewal window, per certificate. In goca, those windows are derived from CA and generation state — which means a rollover isn't a passive wait. When a generation is being retired, the CA can shorten renewal windows on its issued population and actively drain clients onto the new generation, on a schedule you control rather than one you endure.

The same section of the design carries a smaller honesty about restarts: nonces are instance-prefixed and redemption routes by prefix, preserving single-use across replicas — a restart may cost a client one badNonce retry, but it never allows replay.

Now I can explain how the CA steers renewals — and uses them to drain a rollover.