<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" version="3" ipr="trust200902" docName="draft-ietf-ntp-update-registries-16" number="9748" category="std" consensus="true" submissionType="IETF" obsoletes="" updates="5905, 5906, 7821, 7822, 8573" tocInclude="true" sortRefs="true" symRefs="true" xml:lang="en" prepTime="2025-02-28T16:52:37" indexInclude="true" scripts="Common,Latin" tocDepth="3">
  <link href="https://datatracker.ietf.org/doc/draft-ietf-ntp-update-registries-16" rel="prev"/>
  <link href="https://dx.doi.org/10.17487/rfc9748" rel="alternate"/>
  <link href="urn:issn:2070-1721" rel="alternate"/>
  <front>
    <title>Updating the NTP Registries</title>
    <seriesInfo name="RFC" value="9748" stream="IETF"/>
    <author initials="R." surname="Salz" fullname="Rich Salz">
      <organization showOnFrontPage="true">Akamai Technologies</organization>
      <address>
        <email>rsalz@akamai.com</email>
      </address>
    </author>
    <date month="02" year="2025"/>
    <area>INT</area>
    <workgroup>ntp</workgroup>
    <keyword>NTP</keyword>
    <keyword>extensions</keyword>
    <keyword>registries</keyword>
    <keyword>IANA</keyword>
    <abstract pn="section-abstract">
      <t indent="0" pn="section-abstract-1">The Network Time Protocol (NTP) and Network Time Security (NTS) documents
define a number of registries, collectively called the NTP
registries.</t>
      <t indent="0" pn="section-abstract-2">   Some registries are correct, but some include incorrect assignments 
   and some don't follow common practice. For the sake of completeness, 
   this document reviews all NTP and NTS registries, and corrects the 
   registries where necessary.</t>
      <t indent="0" pn="section-abstract-3">This document updates RFCs 5905, 5906, 7821, 7822, and 8573.
</t>
    </abstract>
    <boilerplate>
      <section anchor="status-of-memo" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.1">
        <name slugifiedName="name-status-of-this-memo">Status of This Memo</name>
        <t indent="0" pn="section-boilerplate.1-1">
            This is an Internet Standards Track document.
        </t>
        <t indent="0" pn="section-boilerplate.1-2">
            This document is a product of the Internet Engineering Task Force
            (IETF).  It represents the consensus of the IETF community.  It has
            received public review and has been approved for publication by
            the Internet Engineering Steering Group (IESG).  Further
            information on Internet Standards is available in Section 2 of 
            RFC 7841.
        </t>
        <t indent="0" pn="section-boilerplate.1-3">
            Information about the current status of this document, any
            errata, and how to provide feedback on it may be obtained at
            <eref target="https://www.rfc-editor.org/info/rfc9748" brackets="none"/>.
        </t>
      </section>
      <section anchor="copyright" numbered="false" removeInRFC="false" toc="exclude" pn="section-boilerplate.2">
        <name slugifiedName="name-copyright-notice">Copyright Notice</name>
        <t indent="0" pn="section-boilerplate.2-1">
            Copyright (c) 2025 IETF Trust and the persons identified as the
            document authors. All rights reserved.
        </t>
        <t indent="0" pn="section-boilerplate.2-2">
            This document is subject to BCP 78 and the IETF Trust's Legal
            Provisions Relating to IETF Documents
            (<eref target="https://trustee.ietf.org/license-info" brackets="none"/>) in effect on the date of
            publication of this document. Please review these documents
            carefully, as they describe your rights and restrictions with
            respect to this document. Code Components extracted from this
            document must include Revised BSD License text as described in
            Section 4.e of the Trust Legal Provisions and are provided without
            warranty as described in the Revised BSD License.
        </t>
      </section>
    </boilerplate>
    <toc>
      <section anchor="toc" numbered="false" removeInRFC="false" toc="exclude" pn="section-toc.1">
        <name slugifiedName="name-table-of-contents">Table of Contents</name>
        <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1">
          <li pn="section-toc.1-1.1">
            <t indent="0" keepWithNext="true" pn="section-toc.1-1.1.1"><xref derivedContent="1" format="counter" sectionFormat="of" target="section-1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-introduction">Introduction</xref></t>
          </li>
          <li pn="section-toc.1-1.2">
            <t indent="0" pn="section-toc.1-1.2.1"><xref derivedContent="2" format="counter" sectionFormat="of" target="section-2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-existing-registries">Existing Registries</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.2.2">
              <li pn="section-toc.1-1.2.2.1">
                <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.2.1.1"><xref derivedContent="2.1" format="counter" sectionFormat="of" target="section-2.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-reference-id-and-kiss-o-dea">Reference ID and Kiss-o'-Death Registries</xref></t>
              </li>
              <li pn="section-toc.1-1.2.2.2">
                <t indent="0" keepWithNext="true" pn="section-toc.1-1.2.2.2.1"><xref derivedContent="2.2" format="counter" sectionFormat="of" target="section-2.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-extension-field-types">Extension Field Types</xref></t>
              </li>
              <li pn="section-toc.1-1.2.2.3">
                <t indent="0" pn="section-toc.1-1.2.2.3.1"><xref derivedContent="2.3" format="counter" sectionFormat="of" target="section-2.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-network-time-security-regis">Network Time Security Registries</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.3">
            <t indent="0" pn="section-toc.1-1.3.1"><xref derivedContent="3" format="counter" sectionFormat="of" target="section-3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-ntp-registry-updates">NTP Registry Updates</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.3.2">
              <li pn="section-toc.1-1.3.2.1">
                <t indent="0" pn="section-toc.1-1.3.2.1.1"><xref derivedContent="3.1" format="counter" sectionFormat="of" target="section-3.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-designated-experts">Designated Experts</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.4">
            <t indent="0" pn="section-toc.1-1.4.1"><xref derivedContent="4" format="counter" sectionFormat="of" target="section-4"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-iana-considerations">IANA Considerations</xref></t>
            <ul bare="true" empty="true" indent="2" spacing="compact" pn="section-toc.1-1.4.2">
              <li pn="section-toc.1-1.4.2.1">
                <t indent="0" pn="section-toc.1-1.4.2.1.1"><xref derivedContent="4.1" format="counter" sectionFormat="of" target="section-4.1"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-ntp-reference-identifier-co">NTP Reference Identifier Codes</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.2">
                <t indent="0" pn="section-toc.1-1.4.2.2.1"><xref derivedContent="4.2" format="counter" sectionFormat="of" target="section-4.2"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-ntp-kiss-o-death-codes">NTP Kiss-o'-Death Codes</xref></t>
              </li>
              <li pn="section-toc.1-1.4.2.3">
                <t indent="0" pn="section-toc.1-1.4.2.3.1"><xref derivedContent="4.3" format="counter" sectionFormat="of" target="section-4.3"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-ntp-extension-field-types">NTP Extension Field Types</xref></t>
              </li>
            </ul>
          </li>
          <li pn="section-toc.1-1.5">
            <t indent="0" pn="section-toc.1-1.5.1"><xref derivedContent="5" format="counter" sectionFormat="of" target="section-5"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-security-considerations">Security Considerations</xref></t>
          </li>
          <li pn="section-toc.1-1.6">
            <t indent="0" pn="section-toc.1-1.6.1"><xref derivedContent="6" format="counter" sectionFormat="of" target="section-6"/>.  <xref derivedContent="" format="title" sectionFormat="of" target="name-normative-references">Normative References</xref></t>
          </li>
          <li pn="section-toc.1-1.7">
            <t indent="0" pn="section-toc.1-1.7.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.a"/><xref derivedContent="" format="title" sectionFormat="of" target="name-acknowledgements">Acknowledgements</xref></t>
          </li>
          <li pn="section-toc.1-1.8">
            <t indent="0" pn="section-toc.1-1.8.1"><xref derivedContent="" format="none" sectionFormat="of" target="section-appendix.b"/><xref derivedContent="" format="title" sectionFormat="of" target="name-authors-address">Author's Address</xref></t>
          </li>
        </ul>
      </section>
    </toc>
  </front>
  <middle>
    <section anchor="introduction" numbered="true" removeInRFC="false" toc="include" pn="section-1">
      <name slugifiedName="name-introduction">Introduction</name>
      <t indent="0" pn="section-1-1">The Network Time Protocol (NTP) and Network Time Security (NTS) documents
define a number of registries, collectively called the NTP
registries.
The NTP registries can all be found at
<eref target="https://www.iana.org/assignments/ntp-parameters" brackets="angle"/>
and the NTS registries can all be found at
<eref target="https://www.iana.org/assignments/nts" brackets="angle"/>.</t>
      <t indent="0" pn="section-1-2">Some registries are correct, but some include incorrect assignments 
and some don't follow common practice. For the sake of completeness, 
this document reviews all NTP and NTS registries, and corrects the 
registries where necessary.</t>
      <t indent="0" pn="section-1-3">The bulk of this document can be divided into two parts:</t>
      <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-1-4">
        <li pn="section-1-4.1">
          <t indent="0" pn="section-1-4.1.1">a summary of the relevant registries, including syntax requirements, 
registration procedures, and the defining documents.</t>
        </li>
        <li pn="section-1-4.2">
          <t indent="0" pn="section-1-4.2.1">a revised format and entries for each registry 
being modified. </t>
        </li>
      </ul>
    </section>
    <section anchor="existing-registries" numbered="true" removeInRFC="false" toc="include" pn="section-2">
      <name slugifiedName="name-existing-registries">Existing Registries</name>
      <t indent="0" pn="section-2-1">This section describes the registries and the rules for them.
It is intended to be a short summary of the syntax and registration
requirements for each registry.
The semantics and protocol processing rules for each registry -- that is,
how an implementation acts when sending or receiving any of the fields --
are not described here.</t>
      <section anchor="reference-id-kiss-o-death" numbered="true" removeInRFC="false" toc="include" pn="section-2.1">
        <name slugifiedName="name-reference-id-and-kiss-o-dea">Reference ID and Kiss-o'-Death Registries</name>
        <t indent="0" pn="section-2.1-1"><xref target="RFC5905" format="default" sectionFormat="of" derivedContent="RFC5905"/> defines two registries:
	"NTP Reference Identifier Codes" in Section <xref target="RFC5905" section="7.3" sectionFormat="bare" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5905#section-7.3" derivedContent="RFC5905"/> and the
"NTP Kiss-o'-Death Codes" in Section <xref target="RFC5905" section="7.4" sectionFormat="bare" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5905#section-7.4" derivedContent="RFC5905"/>.  Reference identifiers and kiss codes can be up to four ASCII characters, 
padded on the right with all-bits-zero if necessary.
Entries that start with 0x58, the ASCII
letter uppercase X, are reserved for Private or Experimental Use.
Both registries are First Come First Served. The registries were created
per <xref section="16" sectionFormat="of" target="RFC5905" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5905#section-16" derivedContent="RFC5905"/>.</t>
      </section>
      <section anchor="extension-field-types" numbered="true" removeInRFC="false" toc="include" pn="section-2.2">
        <name slugifiedName="name-extension-field-types">Extension Field Types</name>
        <t indent="0" pn="section-2.2-1"><xref section="7.5" sectionFormat="of" target="RFC5905" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5905#section-7.5" derivedContent="RFC5905"/> defines the on-the-wire format of extension
fields but does not create a registry for them.</t>
        <t indent="0" pn="section-2.2-2"><xref target="RFC5906" sectionFormat="of" section="13" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5906#section-13" derivedContent="RFC5906"/> mentions the "NTP Extension Field Types" registry, and defines it
indirectly by defining 30 extensions (10 each for request, response, and
error response).
It does not provide a formal definition of the columns in the registry.
<xref section="10" sectionFormat="of" target="RFC5906" format="default" derivedLink="https://rfc-editor.org/rfc/rfc5906#section-10" derivedContent="RFC5906"/> splits the Field Type into four subfields,
only for use within the Autokey extensions.</t>
        <t indent="0" pn="section-2.2-3"><xref target="RFC7821" format="default" sectionFormat="of" derivedContent="RFC7821"/> adds a new entry, Checksum Complement, to the "NTP Extension Field Types" registry.</t>
        <t indent="0" pn="section-2.2-4"><xref target="RFC7822" format="default" sectionFormat="of" derivedContent="RFC7822"/> clarifies the processing rules for Extension Field Types,
particularly around the interaction with the Message Authentication
Code (MAC) field. NTPv4 packets may contain a MAC that appears where
one would expect the next extension field header.</t>
        <t indent="0" pn="section-2.2-5"><xref target="RFC8573" format="default" sectionFormat="of" derivedContent="RFC8573"/> changes the cryptography used in the MAC field.</t>
        <t indent="0" pn="section-2.2-6"><xref target="RFC8915" format="default" sectionFormat="of" derivedContent="RFC8915"/> adds four new entries to the "NTP Extension Field Types" registry.</t>
        <t indent="0" pn="section-2.2-7">The following problems exist with the current registry:</t>
        <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-2.2-8">
          <li pn="section-2.2-8.1">
            <t indent="0" pn="section-2.2-8.1.1">Many of the entries in the "NTP Extension Field Types" registry have
swapped some of the nibbles; for example, 0x0302 was listed for Cookie Message 
Request instead of 0x0203.  
The errors are due to documentation errors with the original implementation
of Autokey.
This document marks the erroneous values as reserved, in case there
is an implementation using the registered values
instead of what the original implementation used.
Applications that used those values would have realized
that they did not interoperate with the dominant (if not only)
implementation at the time.
Marking the values as reserved ensures that any such applications continue
to work as is.</t>
          </li>
          <li pn="section-2.2-8.2">
            <t indent="0" pn="section-2.2-8.2.1">Some values were mistakenly reused.</t>
          </li>
        </ul>
      </section>
      <section anchor="network-time-security-registries" numbered="true" removeInRFC="false" toc="include" pn="section-2.3">
        <name slugifiedName="name-network-time-security-regis">Network Time Security Registries</name>
        <t indent="0" pn="section-2.3-1"><xref target="RFC8915" format="default" sectionFormat="of" derivedContent="RFC8915"/> defines the NTS protocol.
The related registries are listed here for completeness, but there are no
changes specified in this document.</t>
        <t indent="0" pn="section-2.3-2">In <xref target="RFC8915" format="default" sectionFormat="of" derivedContent="RFC8915"/>:</t>
        <t indent="0" pn="section-2.3-3">Sections <xref target="RFC8915" section="7.1" sectionFormat="bare" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8915#section-7.1" derivedContent="RFC8915"/> through <xref target="RFC8915" section="7.5" sectionFormat="bare" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8915#section-7.5" derivedContent="RFC8915"/> (inclusive) added entries to existing registries.</t>
        <t indent="0" pn="section-2.3-4">Section <xref target="RFC8915" section="7.6" sectionFormat="bare" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8915#section-7.6" derivedContent="RFC8915"/> created the "Network Time Security Key Establishment Record Types" registry that partitions the range into three different registration policies:
IETF Review, Specification Required, and Private or Experimental Use.</t>
        <t indent="0" pn="section-2.3-5">Section <xref target="RFC8915" section="7.7" sectionFormat="bare" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8915#section-7.7" derivedContent="RFC8915"/> created the "Network Time Security Next Protocols" registry that similarly partitions the range.</t>
        <t indent="0" pn="section-2.3-6">Section <xref target="RFC8915" section="7.8" sectionFormat="bare" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8915#section-7.8" derivedContent="RFC8915"/> created the "Network Time Security Error Codes" and "Network Time Security Warning Codes" registries.  
Both registries are partitioned the same way.</t>
      </section>
    </section>
    <section anchor="registry-updates" numbered="true" removeInRFC="false" toc="include" pn="section-3">
      <name slugifiedName="name-ntp-registry-updates">NTP Registry Updates</name>
      <t indent="0" pn="section-3-1">The following general guidelines apply to the NTP registries:</t>
      <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-3-2">
        <li pn="section-3-2.1">
          <t indent="0" pn="section-3-2.1.1">A partition of the "NTP Extension Field Types" registry is reserved for Private or Experimental Use.</t>
        </li>
        <li pn="section-3-2.2">
          <t indent="0" pn="section-3-2.2.1">In the "NTP Reference Identifier Codes" and "NTP Kiss-o'-Death Codes" registries, entries with ASCII fields are now limited to uppercase letters or digits.  Fields
starting with 0x58, the uppercase letter "X", are reserved for Private or
Experimental Use.</t>
        </li>
        <li pn="section-3-2.3">
          <t indent="0" pn="section-3-2.3.1">The policy for each registry is now Specification Required, as defined
in <xref section="4.6" sectionFormat="comma" target="RFC8126" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8126#section-4.6" derivedContent="RFC8126"/>.</t>
        </li>
      </ul>
      <section anchor="designated-experts" numbered="true" removeInRFC="false" toc="include" pn="section-3.1">
        <name slugifiedName="name-designated-experts">Designated Experts</name>
        <t indent="0" pn="section-3.1-1">The IESG is requested to choose three designated experts (DEs), with approvals from two being required to implement a change. Guidance for the experts is given below.</t>
        <t indent="0" pn="section-3.1-2">The DEs should be familiar with <xref target="RFC8126" format="default" sectionFormat="of" derivedContent="RFC8126"/>, particularly
Section <xref target="RFC8126" section="5" sectionFormat="bare" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8126#section-5" derivedContent="RFC8126"/>. As that reference suggests, the DE should ascertain the existence
of a suitable specification and verify that it is publicly available. The DE
is also expected to check the clarity of purpose and use of the requested
code points.</t>
        <t indent="0" pn="section-3.1-3">In addition, the DE is expected to be familiar with this document,
specifically the history documented here.</t>
      </section>
    </section>
    <section anchor="iana-considerations" numbered="true" removeInRFC="false" toc="include" pn="section-4">
      <name slugifiedName="name-iana-considerations">IANA Considerations</name>
      <t indent="0" pn="section-4-1">Each entry described in the subsections below is intended to completely
replace the existing entry with the same name.</t>
      <section anchor="ntp-reference-identifier-codes" numbered="true" removeInRFC="false" toc="include" pn="section-4.1">
        <name slugifiedName="name-ntp-reference-identifier-co">NTP Reference Identifier Codes</name>
        <t indent="0" pn="section-4.1-1">The registration procedure has been changed to Specification Required and this document has been added as a reference.</t>
        <t indent="0" pn="section-4.1-2">The Note has been changed to read as follows:</t>
        <blockquote pn="section-4.1-3">Codes beginning with the character "X" are reserved for
	experimentation and development. IANA cannot assign them.</blockquote>
        <t indent="0" pn="section-4.1-4">The columns are defined as follows:</t>
        <dl spacing="compact" newline="false" indent="3" pn="section-4.1-5">
          <dt pn="section-4.1-5.1">ID (required):</dt>
          <dd pn="section-4.1-5.2"> a four-byte value padded on the right
          with all-bits-zero.  Each byte other than padding must be ASCII
          uppercase letters or digits.</dd>
          <dt pn="section-4.1-5.3">Clock source (required):</dt>
          <dd pn="section-4.1-5.4">a brief text description of the ID.</dd>
          <dt pn="section-4.1-5.5">Reference (required):</dt>
          <dd pn="section-4.1-5.6">the publication defining the ID.</dd>
        </dl>
        <t indent="0" pn="section-4.1-6">The existing entries are left unchanged.</t>
      </section>
      <section anchor="ntp-kiss-o-death-codes" numbered="true" removeInRFC="false" toc="include" pn="section-4.2">
        <name slugifiedName="name-ntp-kiss-o-death-codes">NTP Kiss-o'-Death Codes</name>
        <t indent="0" pn="section-4.2-1">The registration procedure is changed to Specification Required and this document has been added as a reference.</t>
        <t indent="0" pn="section-4.2-2">The Note has been changed to read as follows:</t>
        <blockquote pn="section-4.2-3">Codes beginning with the character "X" are reserved for
        experimentation and development. IANA cannot assign them.</blockquote>
        <t indent="0" pn="section-4.2-4">The columns are defined as follows:</t>
        <dl spacing="compact" newline="false" indent="3" pn="section-4.2-5">
          <dt pn="section-4.2-5.1">ID (required):</dt>
          <dd pn="section-4.2-5.2">a four-byte value padded on the right
          with all-bits-zero.  Each byte other than padding must be ASCII
          uppercase letters or digits.</dd>
          <dt pn="section-4.2-5.3">Meaning source (required):</dt>
          <dd pn="section-4.2-5.4">a brief text description of the ID.</dd>
          <dt pn="section-4.2-5.5">Reference (required):</dt>
          <dd pn="section-4.2-5.6">the publication defining the ID.</dd>
        </dl>
        <t indent="0" pn="section-4.2-6">The existing entries are left unchanged.</t>
      </section>
      <section anchor="ntp-extension-field-types" numbered="true" removeInRFC="false" toc="include" pn="section-4.3">
        <name slugifiedName="name-ntp-extension-field-types">NTP Extension Field Types</name>
        <t indent="0" pn="section-4.3-1">The registration procedure has been changed to Specification Required and <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/> and this document have been added as references.</t>
        <t indent="0" pn="section-4.3-2">The following two Notes have been added:</t>
        <blockquote pn="section-4.3-3">Field Types in the range 0xF000 through 0xFFFF,
        inclusive, are reserved for experimentation and development. IANA
        cannot assign them.  Both NTS Cookie and Autokey Message Request have
        the same Field Type; in practice this is not a problem as the field
        semantics will be determined by other parts of the message.</blockquote>
        <blockquote pn="section-4.3-4">The "Reserved for historic reasons" is for differences
        between the original documentation and implementation of Autokey and
        marks the erroneous values as reserved, in case there is an
        implementation that used the registered values instead of what the
        original implementation used.</blockquote>
        <t indent="0" pn="section-4.3-5">The columns are defined as follows:</t>
        <dl spacing="compact" newline="false" indent="3" pn="section-4.3-6">
          <dt pn="section-4.3-6.1">Field Type (required):</dt>
          <dd pn="section-4.3-6.2">a two-byte value in hexadecimal.</dd>
          <dt pn="section-4.3-6.3">Meaning (required):</dt>
          <dd pn="section-4.3-6.4">a brief text description of the field type.</dd>
          <dt pn="section-4.3-6.5">Reference (required):</dt>
          <dd pn="section-4.3-6.6">the publication defining the field type.</dd>
        </dl>
        <t indent="0" pn="section-4.3-7">IANA has updated the registry as shown in <xref target="tab1" format="default" sectionFormat="of" derivedContent="Table 1"/>.</t>
        <table anchor="tab1" align="center" pn="table-1">
          <thead>
            <tr>
              <th align="left" colspan="1" rowspan="1">Field Type</th>
              <th align="left" colspan="1" rowspan="1">Meaning</th>
              <th align="left" colspan="1" rowspan="1">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0000</td>
              <td align="left" colspan="1" rowspan="1">Crypto-NAK; authentication failure</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5905" format="default" sectionFormat="of" derivedContent="RFC5905"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0002</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0102</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0104</td>
              <td align="left" colspan="1" rowspan="1">Unique Identifier</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC8915" sectionFormat="comma" section="5.3" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8915#section-5.3" derivedContent="RFC8915"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0200</td>
              <td align="left" colspan="1" rowspan="1">No-Operation Request</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0201</td>
              <td align="left" colspan="1" rowspan="1">Association Message Request</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0202</td>
              <td align="left" colspan="1" rowspan="1">Certificate Message Request</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0203</td>
              <td align="left" colspan="1" rowspan="1">Cookie Message Request</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0204</td>
              <td align="left" colspan="1" rowspan="1">Autokey Message Request</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0204</td>
              <td align="left" colspan="1" rowspan="1">NTS Cookie</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC8915" sectionFormat="comma" section="5.4" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8915#section-5.4" derivedContent="RFC8915"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0205</td>
              <td align="left" colspan="1" rowspan="1">Leapseconds Message Request</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0206</td>
              <td align="left" colspan="1" rowspan="1">Sign Message Request</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0207</td>
              <td align="left" colspan="1" rowspan="1">IFF Identity Message Request</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0208</td>
              <td align="left" colspan="1" rowspan="1">GQ Identity Message Request</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0209</td>
              <td align="left" colspan="1" rowspan="1">MV Identity Message Request</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0302</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0304</td>
              <td align="left" colspan="1" rowspan="1">NTS Cookie Placeholder</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC8915" sectionFormat="comma" section="5.5" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8915#section-5.5" derivedContent="RFC8915"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0402</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0404</td>
              <td align="left" colspan="1" rowspan="1">NTS Authenticator and Encrypted Extension Fields</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC8915" sectionFormat="comma" section="5.6" format="default" derivedLink="https://rfc-editor.org/rfc/rfc8915#section-5.6" derivedContent="RFC8915"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0502</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0602</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0702</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0802</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x0902</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x2005</td>
              <td align="left" colspan="1" rowspan="1">UDP Checksum Complement</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC7821" format="default" sectionFormat="of" derivedContent="RFC7821"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8002</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8102</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8200</td>
              <td align="left" colspan="1" rowspan="1">No-Operation Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8201</td>
              <td align="left" colspan="1" rowspan="1">Association Message Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8202</td>
              <td align="left" colspan="1" rowspan="1">Certificate Message Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8203</td>
              <td align="left" colspan="1" rowspan="1">Cookie Message Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8204</td>
              <td align="left" colspan="1" rowspan="1">Autokey Message Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8205</td>
              <td align="left" colspan="1" rowspan="1">Leapseconds Message Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8206</td>
              <td align="left" colspan="1" rowspan="1">Sign Message Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8207</td>
              <td align="left" colspan="1" rowspan="1">IFF Identity Message Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8208</td>
              <td align="left" colspan="1" rowspan="1">GQ Identity Message Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8209</td>
              <td align="left" colspan="1" rowspan="1">MV Identity Message Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8302</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8402</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8502</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8602</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8702</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8802</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0x8902</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC002</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC102</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC200</td>
              <td align="left" colspan="1" rowspan="1">No-Operation Error Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC201</td>
              <td align="left" colspan="1" rowspan="1">Association Message Error Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC202</td>
              <td align="left" colspan="1" rowspan="1">Certificate Message Error Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC203</td>
              <td align="left" colspan="1" rowspan="1">Cookie Message Error Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC204</td>
              <td align="left" colspan="1" rowspan="1">Autokey Message Error Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC205</td>
              <td align="left" colspan="1" rowspan="1">Leapseconds Message Error Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC206</td>
              <td align="left" colspan="1" rowspan="1">Sign Message Error Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC207</td>
              <td align="left" colspan="1" rowspan="1">IFF Identity Message Error Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC208</td>
              <td align="left" colspan="1" rowspan="1">GQ Identity Message Error Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC209</td>
              <td align="left" colspan="1" rowspan="1">MV Identity Message Error Response</td>
              <td align="left" colspan="1" rowspan="1">
                <xref target="RFC5906" format="default" sectionFormat="of" derivedContent="RFC5906"/></td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC302</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC402</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC502</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC602</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC702</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC802</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xC902</td>
              <td align="left" colspan="1" rowspan="1">Reserved for historic reasons</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
            <tr>
              <td align="left" colspan="1" rowspan="1">0xF000-0xFFFF</td>
              <td align="left" colspan="1" rowspan="1">Reserved for Private or Experimental Use</td>
              <td align="left" colspan="1" rowspan="1">RFC 9748</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
    <section anchor="security-considerations" numbered="true" removeInRFC="false" toc="include" pn="section-5">
      <name slugifiedName="name-security-considerations">Security Considerations</name>
      <t indent="0" pn="section-5-1">This document adds no new security considerations, as they are defined
in the document that defines the extension.  See the References column of the
appropriate IANA registry.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-normative-references" pn="section-6">
      <name slugifiedName="name-normative-references">Normative References</name>
      <reference anchor="RFC5905" target="https://www.rfc-editor.org/info/rfc5905" quoteTitle="true" derivedAnchor="RFC5905">
        <front>
          <title>Network Time Protocol Version 4: Protocol and Algorithms Specification</title>
          <author fullname="D. Mills" initials="D." surname="Mills"/>
          <author fullname="J. Martin" initials="J." role="editor" surname="Martin"/>
          <author fullname="J. Burbank" initials="J." surname="Burbank"/>
          <author fullname="W. Kasch" initials="W." surname="Kasch"/>
          <date month="June" year="2010"/>
          <abstract>
            <t indent="0">The Network Time Protocol (NTP) is widely used to synchronize computer clocks in the Internet. This document describes NTP version 4 (NTPv4), which is backwards compatible with NTP version 3 (NTPv3), described in RFC 1305, as well as previous versions of the protocol. NTPv4 includes a modified protocol header to accommodate the Internet Protocol version 6 address family. NTPv4 includes fundamental improvements in the mitigation and discipline algorithms that extend the potential accuracy to the tens of microseconds with modern workstations and fast LANs. It includes a dynamic server discovery scheme, so that in many cases, specific server configuration is not required. It corrects certain errors in the NTPv3 design and implementation and includes an optional extension mechanism. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="5905"/>
        <seriesInfo name="DOI" value="10.17487/RFC5905"/>
      </reference>
      <reference anchor="RFC5906" target="https://www.rfc-editor.org/info/rfc5906" quoteTitle="true" derivedAnchor="RFC5906">
        <front>
          <title>Network Time Protocol Version 4: Autokey Specification</title>
          <author fullname="B. Haberman" initials="B." role="editor" surname="Haberman"/>
          <author fullname="D. Mills" initials="D." surname="Mills"/>
          <date month="June" year="2010"/>
          <abstract>
            <t indent="0">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.</t>
            <t indent="0">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.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="5906"/>
        <seriesInfo name="DOI" value="10.17487/RFC5906"/>
      </reference>
      <reference anchor="RFC7821" target="https://www.rfc-editor.org/info/rfc7821" quoteTitle="true" derivedAnchor="RFC7821">
        <front>
          <title>UDP Checksum Complement in the Network Time Protocol (NTP)</title>
          <author fullname="T. Mizrahi" initials="T." surname="Mizrahi"/>
          <date month="March" year="2016"/>
          <abstract>
            <t indent="0">The Network Time Protocol (NTP) allows clients to synchronize to a time server using timestamped protocol messages. To facilitate accurate timestamping, some implementations use hardware-based timestamping engines that integrate the accurate transmission time into every outgoing NTP packet during transmission. Since these packets are transported over UDP, the UDP Checksum field is then updated to reflect this modification. This document proposes an extension field that includes a 2-octet Checksum Complement, allowing timestamping engines to reflect the checksum modification in the last 2 octets of the packet rather than in the UDP Checksum field. The behavior defined in this document is interoperable with existing NTP implementations.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7821"/>
        <seriesInfo name="DOI" value="10.17487/RFC7821"/>
      </reference>
      <reference anchor="RFC7822" target="https://www.rfc-editor.org/info/rfc7822" quoteTitle="true" derivedAnchor="RFC7822">
        <front>
          <title>Network Time Protocol Version 4 (NTPv4) Extension Fields</title>
          <author fullname="T. Mizrahi" initials="T." surname="Mizrahi"/>
          <author fullname="D. Mayer" initials="D." surname="Mayer"/>
          <date month="March" year="2016"/>
          <abstract>
            <t indent="0">The Network Time Protocol version 4 (NTPv4) defines the optional usage of extension fields. An extension field, as defined in RFC 5905, is an optional field that resides at the end of the NTP header and that can be used to add optional capabilities or additional information that is not conveyed in the standard NTP header. This document updates RFC 5905 by clarifying some points regarding NTP extension fields and their usage with Message Authentication Codes (MACs).</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="7822"/>
        <seriesInfo name="DOI" value="10.17487/RFC7822"/>
      </reference>
      <reference anchor="RFC8126" target="https://www.rfc-editor.org/info/rfc8126" quoteTitle="true" derivedAnchor="RFC8126">
        <front>
          <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
          <author fullname="M. Cotton" initials="M." surname="Cotton"/>
          <author fullname="B. Leiba" initials="B." surname="Leiba"/>
          <author fullname="T. Narten" initials="T." surname="Narten"/>
          <date month="June" year="2017"/>
          <abstract>
            <t indent="0">Many protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
            <t indent="0">To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
            <t indent="0">This is the third edition of this document; it obsoletes RFC 5226.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="26"/>
        <seriesInfo name="RFC" value="8126"/>
        <seriesInfo name="DOI" value="10.17487/RFC8126"/>
      </reference>
      <reference anchor="RFC8573" target="https://www.rfc-editor.org/info/rfc8573" quoteTitle="true" derivedAnchor="RFC8573">
        <front>
          <title>Message Authentication Code for the Network Time Protocol</title>
          <author fullname="A. Malhotra" initials="A." surname="Malhotra"/>
          <author fullname="S. Goldberg" initials="S." surname="Goldberg"/>
          <date month="June" year="2019"/>
          <abstract>
            <t indent="0">The Network Time Protocol (NTP), as described in RFC 5905, states that NTP packets should be authenticated by appending NTP data to a 128-bit key and hashing the result with MD5 to obtain a 128-bit tag. This document deprecates MD5-based authentication, which is considered too weak, and recommends the use of AES-CMAC as described in RFC 4493 as a replacement.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8573"/>
        <seriesInfo name="DOI" value="10.17487/RFC8573"/>
      </reference>
      <reference anchor="RFC8915" target="https://www.rfc-editor.org/info/rfc8915" quoteTitle="true" derivedAnchor="RFC8915">
        <front>
          <title>Network Time Security for the Network Time Protocol</title>
          <author fullname="D. Franke" initials="D." surname="Franke"/>
          <author fullname="D. Sibold" initials="D." surname="Sibold"/>
          <author fullname="K. Teichel" initials="K." surname="Teichel"/>
          <author fullname="M. Dansarie" initials="M." surname="Dansarie"/>
          <author fullname="R. Sundblad" initials="R." surname="Sundblad"/>
          <date month="September" year="2020"/>
          <abstract>
            <t indent="0">This memo specifies Network Time Security (NTS), a mechanism for using Transport Layer Security (TLS) and Authenticated Encryption with Associated Data (AEAD) to provide cryptographic security for the client-server mode of the Network Time Protocol (NTP).</t>
            <t indent="0">NTS is structured as a suite of two loosely coupled sub-protocols. The first (NTS Key Establishment (NTS-KE)) handles initial authentication and key establishment over TLS. The second (NTS Extension Fields for NTPv4) handles encryption and authentication during NTP time synchronization via extension fields in the NTP packets, and holds all required state only on the client via opaque cookies.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8915"/>
        <seriesInfo name="DOI" value="10.17487/RFC8915"/>
      </reference>
    </references>
    <section anchor="acknowledgements" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.a">
      <name slugifiedName="name-acknowledgements">Acknowledgements</name>
      <t indent="0" pn="section-appendix.a-1">The members of the NTP Working Group helped a great deal.
Notable contributors include:</t>
      <ul spacing="normal" bare="false" empty="false" indent="3" pn="section-appendix.a-2">
        <li pn="section-appendix.a-2.1">
          <t indent="0" pn="section-appendix.a-2.1.1"><contact fullname="Miroslav Lichvar"/>, Red Hat</t>
        </li>
        <li pn="section-appendix.a-2.2">
          <t indent="0" pn="section-appendix.a-2.2.1"><contact fullname="Daniel Franke"/>, formerly at Akamai Technologies</t>
        </li>
        <li pn="section-appendix.a-2.3">
          <t indent="0" pn="section-appendix.a-2.3.1"><contact fullname="Danny Mayer"/>, Network Time Foundation</t>
        </li>
        <li pn="section-appendix.a-2.4">
          <t indent="0" pn="section-appendix.a-2.4.1"><contact fullname="Michelle Cotton"/>, formerly at IANA</t>
        </li>
        <li pn="section-appendix.a-2.5">
          <t indent="0" pn="section-appendix.a-2.5.1"><contact fullname="Tamme Dittrich"/>, Tweede Golf</t>
        </li>
      </ul>
    </section>
    <section anchor="authors-addresses" numbered="false" removeInRFC="false" toc="include" pn="section-appendix.b">
      <name slugifiedName="name-authors-address">Author's Address</name>
      <author initials="R." surname="Salz" fullname="Rich Salz">
        <organization showOnFrontPage="true">Akamai Technologies</organization>
        <address>
          <email>rsalz@akamai.com</email>
        </address>
      </author>
    </section>
  </back>
</rfc>
