{
  "$schema": "/api/schemas/documents.schema.json",
  "apiVersion": "1.1.0",
  "lastModified": "2026-10-15T20:19:47.396Z",
  "sourcePath": "src/main/data/docs",
  "docId": "RFC5906",
  "document": {
    "abstract": "This memo describes the Autokey security model for authenticating servers to clients using the Network Time Protocol (NTP) and public key cryptography. Its design is based on the premise that IPsec schemes cannot be adopted intact, since that would preclude stateless servers and severely compromise timekeeping accuracy. In addition, Public Key Infrastructure (PKI) schemes presume authenticated time values are always available to enforce certificate lifetimes; however, cryptographically verified timestamps require interaction between the timekeeping and authentication functions. This memo includes the Autokey requirements analysis, design principles, and protocol specification. A detailed description of the protocol states, events, and transition functions is included. A prototype of the Autokey design based on this memo has been implemented, tested, and documented in the NTP version 4 (NTPv4) software distribution for the Unix, Windows, and Virtual Memory System (VMS) operating systems at http://www.ntp.org. This document is not an Internet Standards Track specification; it is published for informational purposes.",
    "abstract$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML abstract",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
      "updated": "2026-10-15T19:19:01.386Z",
      "version": "extractDocs.js@commit:669b9e3c6fef"
    },
    "authors": [
      {
        "name": "Brian Haberman"
      },
      {
        "name": "Professor David L. Mills"
      }
    ],
    "authors$meta": {
      "confidence": "high",
      "note": "Parsed from Datatracker doc page article:author (profile full names)",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
      "updated": "2026-10-15T19:19:01.386Z",
      "version": "extractDocs.js@commit:669b9e3c6fef"
    },
    "docId": "RFC5906",
    "docId$meta": {
      "confidence": "high",
      "note": "Derived from RFC number or Datatracker identifier",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
      "updated": "2026-10-15T19:19:01.386Z",
      "version": "extractDocs.js@commit:669b9e3c6fef"
    },
    "docLabel": "IETF RFC 5906",
    "docLabel$meta": {
      "confidence": "high",
      "note": "Constructed from provider and document identifier",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
      "updated": "2026-10-15T19:19:01.386Z",
      "version": "extractDocs.js@commit:669b9e3c6fef"
    },
    "docNumber": "5906",
    "docNumber$meta": {
      "confidence": "high",
      "note": "Parsed from RFC info page report metadata",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
      "updated": "2026-10-15T19:19:01.386Z",
      "version": "extractDocs.js@commit:669b9e3c6fef"
    },
    "docTitle": "Network Time Protocol Version 4: Autokey Specification",
    "docTitle$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML title",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
      "updated": "2026-10-15T19:19:01.386Z",
      "version": "extractDocs.js@commit:669b9e3c6fef"
    },
    "docType": "Informational",
    "docType$meta": {
      "confidence": "high",
      "note": "Mapped from Datatracker std_level or RFC status text",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
      "updated": "2026-10-15T19:19:01.386Z",
      "version": "extractDocs.js@commit:669b9e3c6fef"
    },
    "doi": "10.17487/RFC5906",
    "doi$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML doi",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
      "updated": "2026-10-15T19:19:01.386Z",
      "version": "extractDocs.js@commit:669b9e3c6fef"
    },
    "href": "https://doi.org/10.17487/RFC5906",
    "href$meta": {
      "confidence": "high",
      "note": "Derived from DOI (https://doi.org/<doi>)",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
      "updated": "2026-10-15T19:19:01.386Z",
      "version": "extractDocs.js@commit:669b9e3c6fef"
    },
    "keywords": [
      "NTP",
      "Public Key Cryptography"
    ],
    "keywords$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML keywords",
      "originalValue": [
        "NTP",
        "Ntpv4",
        "Public Key Cryptography"
      ],
      "overridden": true,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
      "updated": "2026-10-15T20:19:47.396Z",
      "version": "extractDocs.js@commit:5774daa8c9d8"
    },
    "pages": "58",
    "pages$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML page-count",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
      "updated": "2026-10-15T19:19:01.386Z",
      "version": "extractDocs.js@commit:669b9e3c6fef"
    },
    "publicationDate": "2010-06-01",
    "publicationDate$meta": {
      "confidence": "high",
      "note": "Parsed from RFC index XML date",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
      "updated": "2026-10-15T19:19:01.386Z",
      "version": "extractDocs.js@commit:669b9e3c6fef"
    },
    "publisher": "IETF",
    "publisher$meta": {
      "confidence": "high",
      "note": "Static: provider",
      "originalValue": null,
      "source": "parsed",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
      "updated": "2026-10-15T19:19:01.386Z",
      "version": "extractDocs.js@commit:669b9e3c6fef"
    },
    "references": {
      "bibliographic": [
        "RFC1305",
        "RFC2412",
        "RFC2522",
        "RFC2875",
        "RFC3279",
        "RFC4210",
        "RFC4302",
        "RFC4303",
        "RFC4306",
        "RFC5280",
        "orphan/RFC5906/h:e04870a5",
        "orphan/RFC5906/h:5cf15e92",
        "orphan/RFC5906/h:f980e9ee",
        "orphan/RFC5906/h:0daad7af",
        "orphan/RFC5906/h:ea0a5c0b"
      ],
      "bibliographic$meta": {
        "confidence": "medium",
        "flag": "MIXED_REF_LAYOUT_RISK anchored=16 proseBlocks=22 skippedAnchorBlocks=19",
        "note": "Parsed from RFC HTML references/informative sections",
        "originalValue": [],
        "reviewRequired": true,
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
        "updated": "2026-10-15T19:19:01.386Z",
        "version": "extractDocs.js@commit:669b9e3c6fef"
      },
      "normative": [
        "RFC5905"
      ],
      "normative$meta": {
        "confidence": "high",
        "note": "Parsed from RFC HTML normative references sections",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
        "updated": "2026-10-15T19:19:01.386Z",
        "version": "extractDocs.js@commit:669b9e3c6fef"
      }
    },
    "resolvedHref": "https://www.rfc-editor.org/info/rfc5906/",
    "resolvedHref$meta": {
      "confidence": "high",
      "note": "Final URL resolved via URL redirect verification",
      "originalValue": null,
      "source": "resolved",
      "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
      "updated": "2026-10-15T19:19:01.386Z",
      "version": "extractDocs.js@commit:669b9e3c6fef"
    },
    "status": {
      "active": true,
      "active$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
        "updated": "2026-10-15T19:19:01.386Z",
        "version": "extractDocs.js@commit:669b9e3c6fef"
      },
      "amendedBy": [
        "RFC9748"
      ],
      "amendedBy$meta": {
        "confidence": "high",
        "note": "Parsed from RFC index XML",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
        "updated": "2026-10-15T19:19:01.386Z",
        "version": "extractDocs.js@commit:669b9e3c6fef"
      },
      "errataExist": true,
      "errataExist$meta": {
        "confidence": "high",
        "note": "Derived from presence of errata links on RFC/Datatracker pages",
        "originalValue": null,
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
        "updated": "2026-10-15T19:19:01.386Z",
        "version": "extractDocs.js@commit:669b9e3c6fef"
      },
      "errataUrl": [
        "https://www.rfc-editor.org/errata/rfc5906",
        "https://www.rfc-editor.org/errata_search.php?rfc=5906",
        "https://www.rfc-editor.org/rfc/inline-errata/rfc5906.html"
      ],
      "errataUrl$meta": {
        "confidence": "high",
        "note": "Parsed from errata links on RFC/Datatracker pages",
        "originalValue": [],
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
        "updated": "2026-10-15T19:19:01.386Z",
        "version": "extractDocs.js@commit:669b9e3c6fef"
      },
      "latestVersion": true,
      "latestVersion$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
        "updated": "2026-10-15T19:19:01.386Z",
        "version": "extractDocs.js@commit:669b9e3c6fef"
      },
      "statusNote": "Informational",
      "statusNote$meta": {
        "confidence": "high",
        "note": "Mapped from Datatracker doc.json std_level",
        "originalValue": null,
        "source": "parsed",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
        "updated": "2026-10-15T19:19:01.386Z",
        "version": "extractDocs.js@commit:669b9e3c6fef"
      },
      "superseded": false,
      "superseded$meta": {
        "confidence": "high",
        "note": "Derived from supersession relationship fields",
        "originalValue": null,
        "source": "resolved",
        "sourceUrl": "https://www.rfc-editor.org/info/rfc5906/",
        "updated": "2026-10-15T19:19:01.386Z",
        "version": "extractDocs.js@commit:669b9e3c6fef"
      }
    }
  }
}