Skip to content

CONCEPT Cited by 1 source

Authenticated time

Definition

Authenticated time is network time delivery in which the client can cryptographically verify that the time came from the server it expected and was not modified in flight. It replaces classic NTP's trust-by-default model (the client sends 48 bytes, gets 48 bytes back, and believes them — no signature, no identity) with an authenticated exchange. The standard realization is NTS (Network Time Security, RFC 8915): a TLS-1.3 key-establishment phase derives per-session keys, and subsequent NTPv4 packets carry an authenticator covering (but not encrypting) the time data. (Source: sources/2026-10-06-meta-nts-authenticated-time-at-meta)

Why time is a security primitive, not just an operational one

Time is the input every other security decision is measured against — which is why authenticating it matters more than authenticating most protocols:

  • Certificate validation — notBefore/notAfter are compared to the local clock; wrong clock, wrong answer.
  • Credential / token expiry — "valid for 15 minutes" is a claim about a clock.
  • Replay windows — rejecting a request older than N seconds requires knowing the time (log / request-freshness checks depend on it).
  • Log correlation and ordering — two hosts that disagree produce a timeline that never happened.

The dependency is circular: you can't do X.509 time validation without knowing the current time, so a device with a wrong clock either disables cert-time validation (unprotected exactly when most exposed) or widens validity windows (everyone guessing how wrong everyone else is). Shrinking TLS certificate lifetimes (CA/Browser Forum SC-081v3: 200 → 100 → 47 days through 2029, renewal moving to unattended monthly ACME) make a skewed clock a silent failure — "it reissues, or it fails, on a schedule nobody is watching." (Source: sources/2026-10-06-meta-nts-authenticated-time-at-meta)

What authentication buys — and what it doesn't

Authenticated time stops a man-in-the-middle from forging the answer: a classic MITM doesn't break cryptography, it just answers before the real server does. Rolling the clock backward makes expired certs validate and revoked tokens work again; rolling it forward expires everything at once (and past the Feb-2036 NTP 32-bit wrap, a device "computes its correction into the wrong era," can't TLS to anything, and can't even reach its own update service — recovery is a factory reset). Authenticated time closes the forgery path.

It explicitly does not fix (per the Meta source):

  • Delay attacks — an on-path attacker who holds your packets shifts your clock by up to half the induced delay; no cryptography detects it because every byte is genuine. "Authentication tells you who wrote a packet, not how long it spent in flight." Mitigate with multiple sources, sanity limits, bounded steps.
  • Bootstrapping — NTS-KE runs over TLS, which wants a working clock: the same circular problem. A dead-RTC device must get roughly correct before its first handshake.
  • Wrong servers — NTS authenticates the path, not the answer. A correctly-configured, correctly-authenticated, simply-wrong server hands you the wrong time with a perfect signature. Quorum + sanity checks + monitoring still required.
  • Monotonicity — authenticated time is still wall-clock time, which moves backward at leap seconds and corrections (Cloudflare's 2016 leap-second incident panicked Go's rand.Int63n() on a negative round-trip). Use a monotonic clock for elapsed-time measurement.

Precision vs authenticity

Precision and authenticity are orthogonal properties of a time service. Meta's framing: years of work made its public time precise (ntpd → chrony, 10 ms → 100 µs); NTS makes it verifiable. "Precision without authenticity only gets you a very accurate number from an unknown source."

Seen in

  • sources/2026-10-06-meta-nts-authenticated-time-at-meta — canonical wiki instance: Meta deploys NTS at nts.meta.com, framing authenticated time as the security complement to precision, and enumerating the four limits above. Cloudflare's time.cloudflare.com (NTS since June 2019) is the prior public-scale instance named in the post.
Last updated · 854 distilled / 2,448 read