<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.39 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-bubblefish-npamp-00" category="info" submissionType="independent" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="N-PAMP">N-PAMP: Native Post-Quantum Agent Messaging Protocol</title>
    <seriesInfo name="Internet-Draft" value="draft-bubblefish-npamp-00"/>
    <author initials="S." surname="Sammartano" fullname="Shawn Sammartano">
      <organization>BubbleFish Technologies, Inc.</organization>
      <address>
        <email>npamp-editor@bubblefish.sh</email>
      </address>
    </author>
    <date year="2026"/>
    <area>ART</area>
    <keyword>post-quantum</keyword>
    <keyword>agents</keyword>
    <keyword>transport</keyword>
    <keyword>ALPN</keyword>
    <abstract>
      <?line 64?>

<t>The Native Post-Quantum Agent Messaging Protocol (N-PAMP) is a binary,
multi-channel, wire-level protocol for authenticated communication between
autonomous software agents. N-PAMP operates beneath application-layer agent
protocols and provides a single fixed-size frame format, a registry of
multiplexed channels, and three escalating security profiles (Standard,
High, and Sovereign) built on standard post-quantum and classical
cryptography. The protocol uses a hybrid key-encapsulation mechanism
combining X25519 with ML-KEM, authenticated encryption with associated
data, and a forward-secure key schedule. N-PAMP runs over QUIC as its
primary transport and over TCP with TLS 1.3 as a fallback, negotiated via
the Application-Layer Protocol Negotiation (ALPN) identifier "n-pamp/2".
This document describes the wire format, channel architecture, profile
negotiation, and cryptographic suites of N-PAMP, and reserves code-point
ranges for extensions defined in companion specifications.</t>
    </abstract>
  </front>
  <middle>
    <?line 81?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Autonomous software agents increasingly communicate with one another over
long-lived associations that carry control traffic, persistent state, capability
delegation, identity attestation, and operational telemetry on a single
connection. Existing transport-layer protocols such as TLS 1.3 <xref target="RFC8446"/> and
QUIC <xref target="RFC9000"/>, and application-layer agent protocols layered above them, do
not by themselves provide a unified binary frame format with semantic channel
multiplexing, profile-negotiated cryptographic strength, and mandatory
authenticated encryption tailored to agent-to-agent traffic.</t>
      <t>N-PAMP addresses this gap. It defines a single fixed-size frame header, a set of
multiplexed channels each carrying a distinct class of agent traffic, and three
negotiated security profiles that hold the wire format constant while escalating
the cryptographic primitives and operational requirements. All three profiles
employ a hybrid key-encapsulation mechanism (KEM) combining the classical X25519
key agreement with a NIST-standardized module-lattice KEM (ML-KEM, <xref target="FIPS203"/>),
so that the confidentiality of an association is preserved if either the
classical or the post-quantum component remains unbroken.</t>
      <t>N-PAMP is deliberately scoped as a transport substrate. It does not define
application-layer semantics for the data carried on its channels; those are the
subject of companion specifications. This document specifies the wire format,
the channel registry, profile negotiation, and the cryptographic suites, and it
reserves code-point ranges so that companion extensions can be defined without
colliding with the core protocol.</t>
      <section anchor="goals">
        <name>Goals</name>
        <t>The design goals of N-PAMP are:</t>
        <ul spacing="normal">
          <li>
            <t>Cryptographic agility within a stable wire format. The frame format does not
change between profiles; the cryptographic primitives, modes, and operational
requirements do.</t>
          </li>
          <li>
            <t>Defense in depth through hybrid post-quantum and classical key establishment,
authenticated encryption, and a forward-secure key schedule.</t>
          </li>
          <li>
            <t>Channel multiplexing so that a single association can carry several classes of
agent traffic with independent sequence spaces and per-channel keying.</t>
          </li>
          <li>
            <t>Interoperability across profiles, so that an endpoint operating at a higher
profile <bcp14>MAY</bcp14> interoperate with a lower-profile peer when local policy permits.</t>
          </li>
        </ul>
      </section>
      <section anchor="non-goals">
        <name>Non-Goals</name>
        <t>This document does NOT:</t>
        <ul spacing="normal">
          <li>
            <t>Replace TLS for ordinary web traffic. N-PAMP is purpose-built for
autonomous-agent, multi-channel traffic over long-lived associations.</t>
          </li>
          <li>
            <t>Define application-layer semantics for the data carried on its channels.</t>
          </li>
          <li>
            <t>Define a general-purpose IP-layer tunneling or VPN protocol.</t>
          </li>
        </ul>
      </section>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>For the purposes of this document:</t>
        <dl>
          <dt>Association:</dt>
          <dd>
            <t>A long-lived, cryptographically authenticated session between two N-PAMP
endpoints, identified by a stable Association ID.</t>
          </dd>
          <dt>Channel:</dt>
          <dd>
            <t>A semantic multiplexing lane within an association, identified by a 16-bit
Channel ID, carrying one class of agent traffic with its own sequence space.</t>
          </dd>
          <dt>Frame:</dt>
          <dd>
            <t>The atomic unit of transmission, consisting of a fixed 36-octet header,
optional extension TLVs, and an AEAD-protected payload.</t>
          </dd>
          <dt>Profile:</dt>
          <dd>
            <t>One of three negotiated levels of cryptographic strength and operational
requirement (Standard, High, Sovereign).</t>
          </dd>
        </dl>
      </section>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

</section>
    <section anchor="protocol-overview">
      <name>Protocol Overview</name>
      <t>N-PAMP is a binary protocol. Every unit of communication is a frame consisting
of a fixed 36-octet header (<xref target="wire-format"/>), zero or more extension TLVs, and a
payload protected by an authenticated-encryption-with-associated-data (AEAD)
construction <xref target="RFC5116"/>. Frames are carried on channels (<xref target="channel-architecture"/>),
each of which has an independent per-direction sequence space.</t>
      <t>An N-PAMP association is established by a handshake that:</t>
      <ol spacing="normal" type="1"><li>
          <t>establishes a hybrid X25519 + ML-KEM shared secret;</t>
        </li>
        <li>
          <t>negotiates a security profile, a KEM, a signature algorithm, and one or more
AEAD suites;</t>
        </li>
        <li>
          <t>authenticates both peers by signing a transcript that binds the negotiated
parameters and both peer identities; and</t>
        </li>
        <li>
          <t>derives a forward-secure key schedule from which per-channel, per-direction
traffic keys are obtained.</t>
        </li>
      </ol>
      <t>The negotiated profile, the KEM identifier, the signature identifier, the
selected AEAD suite(s), and both peer identities are all bound into the
handshake transcript and confirmed by a Finished message authentication code
(MAC). A man-in-the-middle that alters any negotiated parameter or substitutes
an identity invalidates the Finished MAC and aborts the handshake; this is the
structural defense against downgrade, unknown-key-share, and
identity-substitution attacks (see <xref target="security-considerations"/>).</t>
      <t>N-PAMP uses QUIC <xref target="RFC9000"/> (secured with TLS 1.3, <xref target="RFC9001"/>) as its primary
transport and TCP with TLS 1.3 <xref target="RFC8446"/> as a fallback. In both cases, the
application protocol is negotiated using the ALPN extension <xref target="RFC7301"/> with the
identifier "n-pamp/2" (<xref target="iana-considerations"/>).</t>
    </section>
    <section anchor="wire-format">
      <name>Wire Format</name>
      <section anchor="frame-structure">
        <name>Frame Structure</name>
        <t>Every N-PAMP frame has the following structure:</t>
        <figure>
          <name>N-PAMP frame structure</name>
          <artwork><![CDATA[
+--------+-------------+-------------------+-----------+
| Header | Extension   | Payload           | AEAD Tag  |
| 36 B   | TLVs (var)  | (var, encrypted)  | (16 B)    |
+--------+-------------+-------------------+-----------+
]]></artwork>
        </figure>
        <t>The 36-octet header is fixed-size. Zero or more extension TLVs <bcp14>MAY</bcp14> accompany a
frame. The payload is AEAD-sealed, and the associated data covers the 21-octet
header prefix (octets 0-20, through the Payload Length field, the same octets
protected by the header CRC32C) so that any modification to those header fields
is detected on decryption.</t>
      </section>
      <section anchor="frame-header">
        <name>Frame Header</name>
        <t>The fixed header is 36 octets, laid out as follows. Multi-octet integers are
encoded in network byte order (big-endian) unless stated otherwise.</t>
        <figure>
          <name>36-octet N-PAMP frame header</name>
          <artwork><![CDATA[
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     'N'       |     'P'       |     'A'       |     'M'       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Ver   | Flags |          Frame Type           |  Channel ID   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
+                   Sequence Number (64 bits)                   +
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                   Payload Length (32 bits)                    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                   CRC32C over octets 0-20                     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
+             Reserved + Padding (11 octets, zero)              +
|                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
]]></artwork>
        </figure>
        <t>The fields are:</t>
        <table>
          <name>Frame header fields</name>
          <thead>
            <tr>
              <th align="left">Offset</th>
              <th align="left">Size</th>
              <th align="left">Field</th>
              <th align="left">Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0-3</td>
              <td align="left">4 octets</td>
              <td align="left">Magic</td>
              <td align="left">ASCII "NPAM" (0x4E 0x50 0x41 0x4D).</td>
            </tr>
            <tr>
              <td align="left">4</td>
              <td align="left">4 bits</td>
              <td align="left">Ver</td>
              <td align="left">Protocol major version, the high nibble of octet 4. The value 0x2 designates the wire format described in this document (wire major version 2).</td>
            </tr>
            <tr>
              <td align="left">4</td>
              <td align="left">4 bits</td>
              <td align="left">Flags</td>
              <td align="left">The low nibble of octet 4 (see <xref target="frame-flags"/>).</td>
            </tr>
            <tr>
              <td align="left">5-6</td>
              <td align="left">2 octets</td>
              <td align="left">Frame Type</td>
              <td align="left">Frame type within the channel (see <xref target="frame-types"/>).</td>
            </tr>
            <tr>
              <td align="left">7-8</td>
              <td align="left">2 octets</td>
              <td align="left">Channel ID</td>
              <td align="left">The semantic channel (<xref target="channel-architecture"/>).</td>
            </tr>
            <tr>
              <td align="left">9-16</td>
              <td align="left">8 octets</td>
              <td align="left">Sequence Number</td>
              <td align="left">Per-(channel, direction) monotonic sequence number, starting at 0.</td>
            </tr>
            <tr>
              <td align="left">17-20</td>
              <td align="left">4 octets</td>
              <td align="left">Payload Length</td>
              <td align="left">Byte count of the payload following the header.</td>
            </tr>
            <tr>
              <td align="left">21-24</td>
              <td align="left">4 octets</td>
              <td align="left">CRC32C</td>
              <td align="left">CRC32C (Castagnoli polynomial 0x1EDC6F41) computed over header octets 0-20. Receivers <bcp14>MUST</bcp14> validate it before processing any other header field.</td>
            </tr>
            <tr>
              <td align="left">25-35</td>
              <td align="left">11 octets</td>
              <td align="left">Reserved</td>
              <td align="left">
                <bcp14>MUST</bcp14> be zero; receivers <bcp14>MUST</bcp14> reject frames whose reserved octets are non-zero.</td>
            </tr>
          </tbody>
        </table>
        <t>All multi-octet integers are big-endian. The Ver field carries the wire major
version; the value 0x02 corresponds to the ALPN identifier "n-pamp/2".</t>
      </section>
      <section anchor="frame-flags">
        <name>Frame Flags</name>
        <t>The low nibble of header octet 4 carries four flag bits:</t>
        <table>
          <name>Frame flags</name>
          <thead>
            <tr>
              <th align="left">Bit</th>
              <th align="left">Name</th>
              <th align="left">Meaning</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0 (0x01)</td>
              <td align="left">URG</td>
              <td align="left">Urgent-priority scheduling.</td>
            </tr>
            <tr>
              <td align="left">1 (0x02)</td>
              <td align="left">ENC</td>
              <td align="left">Payload is AEAD-encrypted.</td>
            </tr>
            <tr>
              <td align="left">2 (0x04)</td>
              <td align="left">COMP</td>
              <td align="left">Payload is compressed.</td>
            </tr>
            <tr>
              <td align="left">3 (0x08)</td>
              <td align="left">FRAG</td>
              <td align="left">Frame is a fragment of a larger logical message.</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="extension-tlvs">
        <name>Extension TLVs</name>
        <t>Zero or more Type-Length-Value (TLV) extensions <bcp14>MAY</bcp14> accompany a frame. Each TLV
is encoded as:</t>
        <figure>
          <name>Extension TLV encoding</name>
          <artwork><![CDATA[
+---------+---------+-----------+
| Type    | Length  | Value     |
| 16 bits | 16 bits | Length B  |
+---------+---------+-----------+
]]></artwork>
        </figure>
        <t>Type and Length are 16-bit unsigned integers in network byte order; Length is the
byte count of Value (0 to 65535). A receiver that encounters an unknown TLV whose
Type has the high bit (0x8000) clear <bcp14>MUST</bcp14> ignore that TLV. A receiver that
encounters an unknown TLV whose Type has the high bit (0x8000) set <bcp14>MUST</bcp14> treat it
as a forward-incompatible extension and reject the frame. The TLV type registry
maintained by this specification is given in <xref target="tlv-registry"/>.</t>
      </section>
      <section anchor="payload-encoding">
        <name>Payload Encoding</name>
        <t>The payload carries a frame-type-specific body. The body <bcp14>MAY</bcp14> be encoded in a
binary serialization, in deterministic CBOR <xref target="RFC8949"/>, or as raw octets. The
selected encoding is signaled within the channel-local interpretation of the
Frame Type field.</t>
      </section>
      <section anchor="frame-types">
        <name>Reserved Frame Types</name>
        <t>Each channel defines its own frame types in the 0x0000-0xFFFF space. The
following frame types are reserved across all channels and have the same meaning
on every channel:</t>
        <table>
          <name>Reserved frame types (all channels)</name>
          <thead>
            <tr>
              <th align="left">Type</th>
              <th align="left">Name</th>
              <th align="left">Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0x0000</td>
              <td align="left">(reserved)</td>
              <td align="left">Reserved; <bcp14>MUST NOT</bcp14> be used as a frame type.</td>
            </tr>
            <tr>
              <td align="left">0x0001</td>
              <td align="left">PING</td>
              <td align="left">Liveness probe.</td>
            </tr>
            <tr>
              <td align="left">0x0002</td>
              <td align="left">PONG</td>
              <td align="left">Reply to PING.</td>
            </tr>
            <tr>
              <td align="left">0x0003</td>
              <td align="left">CLOSE</td>
              <td align="left">Authenticated close; AEAD-protected.</td>
            </tr>
            <tr>
              <td align="left">0x0004</td>
              <td align="left">CLOSE_ACK</td>
              <td align="left">Reply to CLOSE.</td>
            </tr>
            <tr>
              <td align="left">0x0005</td>
              <td align="left">ERROR</td>
              <td align="left">Error report; AEAD-protected.</td>
            </tr>
            <tr>
              <td align="left">0x0006</td>
              <td align="left">KEY_UPDATE</td>
              <td align="left">Initiate key update for this (channel, direction).</td>
            </tr>
            <tr>
              <td align="left">0x0007</td>
              <td align="left">KEY_UPDATE_ACK</td>
              <td align="left">Acknowledge key update.</td>
            </tr>
            <tr>
              <td align="left">0x0008</td>
              <td align="left">PATH_CHALLENGE</td>
              <td align="left">Path-migration challenge.</td>
            </tr>
            <tr>
              <td align="left">0x0009</td>
              <td align="left">PATH_RESPONSE</td>
              <td align="left">Path-migration response.</td>
            </tr>
            <tr>
              <td align="left">0x000A</td>
              <td align="left">FLOW_UPDATE</td>
              <td align="left">Connection-level flow-control credit update.</td>
            </tr>
          </tbody>
        </table>
        <t>Channel-specific frame types begin at 0x0100 within each channel's frame
namespace. Frame-type code points at or above 0x0030 that are not reserved here,
and in particular the ranges enumerated in <xref target="extension-points"/>, are reserved
for extensions defined in companion specifications.</t>
      </section>
      <section anchor="close-frame">
        <name>CLOSE Frame</name>
        <t>A CLOSE frame is authenticated like any other frame. A receiver <bcp14>MUST</bcp14> verify the
AEAD tag before honoring a close. An unauthenticated or forged CLOSE frame <bcp14>MUST</bcp14>
be dropped and <bcp14>SHOULD</bcp14> be counted as a security event.</t>
      </section>
    </section>
    <section anchor="channel-architecture">
      <name>Channel Architecture</name>
      <t>N-PAMP multiplexes traffic over channels identified by a 16-bit Channel ID. Each
channel carries one class of agent traffic and has an independent
per-direction sequence space and independent traffic keys
(<xref target="cryptographic-suites"/>). A peer that has not advertised a channel during the
handshake <bcp14>MUST NOT</bcp14> receive frames on that channel; frames on an unadvertised
channel <bcp14>MUST</bcp14> be dropped.</t>
      <section anchor="channel-registry">
        <name>Core Channel Registry</name>
        <t>The following channels are defined and maintained by this specification:</t>
        <table>
          <name>Core channel registry</name>
          <thead>
            <tr>
              <th align="left">ID</th>
              <th align="left">Name</th>
              <th align="left">Purpose</th>
              <th align="left">Min Profile</th>
              <th align="left">Direction</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0x0000</td>
              <td align="left">Control</td>
              <td align="left">Connection control, handshake completion, capability epoch</td>
              <td align="left">Standard</td>
              <td align="left">Bidirectional</td>
            </tr>
            <tr>
              <td align="left">0x0001</td>
              <td align="left">Memory</td>
              <td align="left">Persistent-state create/read/update/delete and retrieval</td>
              <td align="left">Standard</td>
              <td align="left">Multi-stream</td>
            </tr>
            <tr>
              <td align="left">0x0002</td>
              <td align="left">Capability</td>
              <td align="left">Capability issuance, delegation, revocation, lookup</td>
              <td align="left">Standard</td>
              <td align="left">Bidirectional</td>
            </tr>
            <tr>
              <td align="left">0x0003</td>
              <td align="left">Identity</td>
              <td align="left">Identity resolution, attestation, presence</td>
              <td align="left">Standard</td>
              <td align="left">Bidirectional</td>
            </tr>
            <tr>
              <td align="left">0x0004</td>
              <td align="left">Governance</td>
              <td align="left">Policy proposals, votes, quorum closure</td>
              <td align="left">High</td>
              <td align="left">Bidirectional</td>
            </tr>
            <tr>
              <td align="left">0x0005</td>
              <td align="left">Immune</td>
              <td align="left">Anomaly reports and defensive gossip</td>
              <td align="left">Standard</td>
              <td align="left">Bidirectional</td>
            </tr>
            <tr>
              <td align="left">0x0006</td>
              <td align="left">Federation</td>
              <td align="left">Cross-instance synchronization and gossip</td>
              <td align="left">High</td>
              <td align="left">Multi-stream</td>
            </tr>
            <tr>
              <td align="left">0x0007</td>
              <td align="left">Settlement</td>
              <td align="left">Agent-to-agent settlement and receipts</td>
              <td align="left">Standard</td>
              <td align="left">Bidirectional</td>
            </tr>
            <tr>
              <td align="left">0x0008</td>
              <td align="left">Compliance</td>
              <td align="left">Attestation and regulatory export</td>
              <td align="left">High</td>
              <td align="left">Bidirectional</td>
            </tr>
            <tr>
              <td align="left">0x0009</td>
              <td align="left">Sensory</td>
              <td align="left">Bulk telemetry and low-priority observations</td>
              <td align="left">High</td>
              <td align="left">Multi-stream</td>
            </tr>
            <tr>
              <td align="left">0x000A</td>
              <td align="left">Telemetry</td>
              <td align="left">Operational metrics and health reporting</td>
              <td align="left">Standard</td>
              <td align="left">Bidirectional</td>
            </tr>
            <tr>
              <td align="left">0x000B</td>
              <td align="left">Audit</td>
              <td align="left">Audit-epoch commitments and transparency-log entries</td>
              <td align="left">Sovereign</td>
              <td align="left">Bidirectional</td>
            </tr>
            <tr>
              <td align="left">0x000C</td>
              <td align="left">Stream</td>
              <td align="left">Multiplexed full-duplex streaming (tokens, audio, video, file transfer)</td>
              <td align="left">Standard</td>
              <td align="left">Multi-stream</td>
            </tr>
            <tr>
              <td align="left">0x000D</td>
              <td align="left">Bridge</td>
              <td align="left">Encapsulation of external agent protocols within N-PAMP frames</td>
              <td align="left">Standard</td>
              <td align="left">Bidirectional</td>
            </tr>
            <tr>
              <td align="left">0x000E</td>
              <td align="left">Commerce</td>
              <td align="left">Multi-party agentic commerce and payment mandates</td>
              <td align="left">Standard</td>
              <td align="left">Bidirectional</td>
            </tr>
            <tr>
              <td align="left">0x000F</td>
              <td align="left">Interaction</td>
              <td align="left">Agent-to-human user-interface events</td>
              <td align="left">Standard</td>
              <td align="left">Bidirectional</td>
            </tr>
            <tr>
              <td align="left">0x0010</td>
              <td align="left">Discovery</td>
              <td align="left">Agent, tool, and service discovery and capability advertisement</td>
              <td align="left">Standard</td>
              <td align="left">Bidirectional</td>
            </tr>
            <tr>
              <td align="left">0x0011</td>
              <td align="left">Workflow</td>
              <td align="left">Multi-agent orchestration and task delegation</td>
              <td align="left">Standard</td>
              <td align="left">Bidirectional</td>
            </tr>
            <tr>
              <td align="left">0x0012</td>
              <td align="left">Knowledge</td>
              <td align="left">Retrieval queries with ranked results and provenance</td>
              <td align="left">Standard</td>
              <td align="left">Multi-stream</td>
            </tr>
            <tr>
              <td align="left">0x0013</td>
              <td align="left">Spatial</td>
              <td align="left">Physical-world state for robotics and IoT (high-frequency)</td>
              <td align="left">High</td>
              <td align="left">Multi-stream</td>
            </tr>
          </tbody>
        </table>
        <t>The Min Profile column gives the lowest profile at which a channel may be
enabled; a channel is available at that profile and at every higher profile
(for example, a "High" channel is available at High and Sovereign). The Audit
channel is enabled by default only at Sovereign; other profiles <bcp14>MAY</bcp14> enable it.
The Control and Immune channels <bcp14>SHOULD</bcp14> be scheduled at higher priority than bulk
channels (Memory, Sensory, Telemetry) during congestion.</t>
        <t>All N-PAMP channels are full-duplex: each peer maintains an independent send and
receive sequence space and independent per-direction traffic keys, so both peers
<bcp14>MAY</bcp14> transmit on a channel simultaneously. The Direction column classifies each
channel as follows:</t>
        <table>
          <name>Channel directionality</name>
          <thead>
            <tr>
              <th align="left">Direction</th>
              <th align="left">Meaning</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">Bidirectional</td>
              <td align="left">Both peers send and receive frames on a single stream.</td>
            </tr>
            <tr>
              <td align="left">Multi-stream</td>
              <td align="left">Bidirectional, and the channel <bcp14>MAY</bcp14> open multiple concurrent transport streams within its stream family.</td>
            </tr>
          </tbody>
        </table>
        <t>The Stream channel (0x000C) provides general-purpose multiplexed full-duplex
streaming, carrying concurrent bidirectional sub-streams (for example token,
audio, video, and file-transfer streams), each with independent flow control.</t>
        <t>Channel IDs not listed in <xref target="channel-registry"/>, and in particular the ranges
enumerated in <xref target="extension-points"/>, are reserved for extensions defined in
companion specifications.</t>
      </section>
    </section>
    <section anchor="profile-negotiation">
      <name>Profile Negotiation</name>
      <t>N-PAMP defines three security profiles. The profiles share one wire format and
differ in the cryptographic primitives and operational requirements they
mandate. Each profile is an escalation of the previous one in cryptographic
strength.</t>
      <table>
        <name>Security profiles</name>
        <thead>
          <tr>
            <th align="left">Profile</th>
            <th align="left">Code</th>
            <th align="left">Summary</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">Standard</td>
            <td align="left">0x01</td>
            <td align="left">Baseline hybrid post-quantum security.</td>
          </tr>
          <tr>
            <td align="left">High</td>
            <td align="left">0x02</td>
            <td align="left">Stronger KEM parameters and stronger hash; downgrade refusal to Standard.</td>
          </tr>
          <tr>
            <td align="left">Sovereign</td>
            <td align="left">0x03</td>
            <td align="left">Highest standard-crypto strength; downgrade refusal below Sovereign.</td>
          </tr>
        </tbody>
      </table>
      <t>Profile code points 0x00 and 0x04-0xFF are reserved by this specification.</t>
      <t>The profile is offered by the client and selected by the server during the
handshake, and is carried in the handshake transcript. Because the profile is
part of the transcript that the Finished MAC covers, an attacker who strips a
profile from the offer or forces a lower selection invalidates the MAC and
aborts the handshake.</t>
      <t>The profile invariants are:</t>
      <table>
        <name>Profile invariants</name>
        <thead>
          <tr>
            <th align="left">Property</th>
            <th align="left">Standard</th>
            <th align="left">High</th>
            <th align="left">Sovereign</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">Minimum KEM</td>
            <td align="left">X25519MLKEM768</td>
            <td align="left">X25519MLKEM1024</td>
            <td align="left">X25519MLKEM1024</td>
          </tr>
          <tr>
            <td align="left">Allowed signatures</td>
            <td align="left">Ed25519</td>
            <td align="left">Ed25519, ML-DSA-87</td>
            <td align="left">ML-DSA-87</td>
          </tr>
          <tr>
            <td align="left">KDF hash</td>
            <td align="left">SHA-256</td>
            <td align="left">SHA-384</td>
            <td align="left">SHA-384</td>
          </tr>
          <tr>
            <td align="left">Per-frame AEAD diversification</td>
            <td align="left">Off</td>
            <td align="left">On</td>
            <td align="left">On</td>
          </tr>
          <tr>
            <td align="left">Downgrade refusal</td>
            <td align="left">Off</td>
            <td align="left">Refuses Standard</td>
            <td align="left">Refuses below Sovereign</td>
          </tr>
          <tr>
            <td align="left">Mandatory key update</td>
            <td align="left">Yes</td>
            <td align="left">Yes (tighter bounds)</td>
            <td align="left">Yes (tightest bounds)</td>
          </tr>
        </tbody>
      </table>
      <t>The server <bcp14>MUST</bcp14> select a profile from the client's offered set. The selected
profile <bcp14>MUST</bcp14> be no lower than the server's configured minimum acceptable peer
profile. A Sovereign server with a minimum acceptable peer profile of Sovereign
completes a handshake only when the client offers Sovereign and Sovereign is
selected.</t>
      <t>A High or Sovereign endpoint <bcp14>MAY</bcp14> interoperate with a lower-profile peer for
read-only or capability-discovery operations when local policy permits, by
accepting a lower selected profile; otherwise it refuses the downgrade as shown
above.</t>
    </section>
    <section anchor="cryptographic-suites">
      <name>Cryptographic Suites</name>
      <t>All cryptographic primitives used by N-PAMP are published standards.</t>
      <section anchor="key-encapsulation-mechanisms">
        <name>Key Encapsulation Mechanisms</name>
        <table>
          <name>KEM code points</name>
          <thead>
            <tr>
              <th align="left">Code point</th>
              <th align="left">Name</th>
              <th align="left">Profiles</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0x11ec</td>
              <td align="left">X25519MLKEM768</td>
              <td align="left">Standard, High</td>
            </tr>
            <tr>
              <td align="left">0x11ed</td>
              <td align="left">X25519MLKEM1024</td>
              <td align="left">High, Sovereign</td>
            </tr>
          </tbody>
        </table>
        <t>Both are hybrid KEMs combining X25519 ECDH with ML-KEM <xref target="FIPS203"/> (ML-KEM-768
and ML-KEM-1024, respectively). The two shared secrets are concatenated as
(X25519 shared secret || ML-KEM shared secret) and supplied as input keying
material to HKDF-Extract <xref target="RFC5869"/>. The construction follows the established
practice for hybrid key establishment <xref target="I-D.ietf-tls-hybrid-design"/>. The
Sovereign profile <bcp14>MUST NOT</bcp14> accept X25519MLKEM768.</t>
      </section>
      <section anchor="authenticated-encryption">
        <name>Authenticated Encryption</name>
        <table>
          <name>AEAD code points</name>
          <thead>
            <tr>
              <th align="left">Code point</th>
              <th align="left">Name</th>
              <th align="left">Key</th>
              <th align="left">Nonce</th>
              <th align="left">Tag</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0x0001</td>
              <td align="left">AES-256-GCM</td>
              <td align="left">32</td>
              <td align="left">12</td>
              <td align="left">16</td>
            </tr>
            <tr>
              <td align="left">0x0002</td>
              <td align="left">ChaCha20-Poly1305</td>
              <td align="left">32</td>
              <td align="left">12</td>
              <td align="left">16</td>
            </tr>
          </tbody>
        </table>
        <t>AES-256-GCM is used as specified for AEAD ciphers in <xref target="RFC5116"/>;
ChaCha20-Poly1305 is used as specified in <xref target="RFC8439"/>. Endpoints operating at the
High and Sovereign profiles <bcp14>MUST</bcp14> support both AEAD suites because per-frame AEAD
diversification at those profiles selects between them. Endpoints operating at
the Standard profile <bcp14>MUST</bcp14> support at least one of the two.</t>
      </section>
      <section anchor="signatures">
        <name>Signatures</name>
        <table>
          <name>Signature code points</name>
          <thead>
            <tr>
              <th align="left">Code point</th>
              <th align="left">Name</th>
              <th align="left">Usage</th>
              <th align="left">Profiles</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0x0807</td>
              <td align="left">Ed25519</td>
              <td align="left">Identity, capability tokens</td>
              <td align="left">All</td>
            </tr>
            <tr>
              <td align="left">0x0905</td>
              <td align="left">ML-DSA-87</td>
              <td align="left">Identity, audit epoch</td>
              <td align="left">High, Sovereign</td>
            </tr>
          </tbody>
        </table>
        <t>Ed25519 is used as specified in <xref target="RFC8032"/>. ML-DSA-87 is the
module-lattice-based digital signature algorithm standardized in <xref target="FIPS204"/>. The
Sovereign profile uses ML-DSA-87 for identity and audit signatures.</t>
      </section>
      <section anchor="key-derivation-and-hashing">
        <name>Key Derivation and Hashing</name>
        <t>All key derivation uses HKDF <xref target="RFC5869"/>. The KDF hash is SHA-256 at the Standard
profile and SHA-384 at the High and Sovereign profiles. The HKDF-Expand-Label
construction follows TLS 1.3 <xref target="RFC8446"/>, with a protocol-specific label prefix
that provides domain separation from TLS 1.3, from QUIC, and from earlier N-PAMP
versions.</t>
      </section>
      <section anchor="key-schedule-and-nonces">
        <name>Key Schedule and Nonces</name>
        <t>Traffic secrets are derived per (direction, epoch, AEAD suite, channel) tuple, so
that no two distinct contexts share a key. Each traffic secret yields an AEAD
key, an AEAD initialization vector, and a header-protection key by
HKDF-Expand-Label. The per-frame nonce is the AEAD IV exclusive-ORed with the
left-zero-padded sequence number, identical in form to the construction used in
TLS 1.3 <xref target="RFC8446"/> and QUIC <xref target="RFC9001"/>. This namespace partitioning prevents
cross-direction, cross-suite, and cross-channel nonce reuse, and supports forward
secrecy: on key update, traffic secrets for the new epoch are derived afresh and
the prior epoch's secrets are zeroized.</t>
      </section>
      <section anchor="random-number-generation">
        <name>Random Number Generation</name>
        <t>All randomness that participates in security <bcp14>MUST</bcp14> come from a cryptographically
secure random number generator. Implementations <bcp14>MUST NOT</bcp14> use a non-cryptographic
source for any field that participates in security.</t>
      </section>
    </section>
    <section anchor="extension-points">
      <name>Extension Points</name>
      <t>N-PAMP reserves code-point ranges for extensions defined in companion
specifications. The core protocol in this document neither defines nor requires
any extension; it only reserves the ranges below so that extensions can be
specified without colliding with the core wire format. The algorithms and
semantics that occupy these ranges are out of scope for this document and are
defined in companion specifications.</t>
      <section anchor="reserved-frame-type-ranges">
        <name>Reserved Frame-Type Ranges</name>
        <t>The following per-channel frame-type code points are reserved for extensions
defined in companion specifications:</t>
        <table>
          <name>Reserved frame-type ranges (companion specifications)</name>
          <thead>
            <tr>
              <th align="left">Range</th>
              <th align="left">Reserved for</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0x0035 - 0x0036</td>
              <td align="left">Memory-channel eviction and revive extension frames</td>
            </tr>
            <tr>
              <td align="left">0x0060 - 0x0063</td>
              <td align="left">Capability-channel token extension frames</td>
            </tr>
            <tr>
              <td align="left">0x0080 - 0x0080</td>
              <td align="left">Control-channel flow-extension frames</td>
            </tr>
            <tr>
              <td align="left">0x0090 - 0x0090</td>
              <td align="left">Audit-channel per-frame integrity-extension frames</td>
            </tr>
            <tr>
              <td align="left">0x00A0 - 0x00A3</td>
              <td align="left">Settlement/Audit batch-commitment extension frames</td>
            </tr>
            <tr>
              <td align="left">0x00B0 - 0x00B4</td>
              <td align="left">Governance-channel quorum extension frames</td>
            </tr>
            <tr>
              <td align="left">0x00C0 - 0x00C4</td>
              <td align="left">Immune-channel propagation extension frames</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="reserved-tlv-tags">
        <name>Reserved TLV Tags</name>
        <t>The TLV types 0x0010, 0x0013, and 0x0014 are reserved for extension TLVs defined
in companion specifications. TLV types in the range 0x8000-0xFFFF remain reserved
as forward-incompatible extension points per <xref target="wire-format"/>.</t>
      </section>
      <section anchor="reserved-channel-id-range">
        <name>Reserved Channel-ID Range</name>
        <t>Channel IDs in the range 0x0014-0xFFFF are reserved. Channels 0x0014-0x001F are
reserved for future core additions by this specification; 0x0020-0xEFFF are
reserved for extension channels defined in companion specifications; 0xF000-0xFFFE
are GREASE values that receivers <bcp14>MUST</bcp14> ignore; and 0xFFFF <bcp14>MUST NOT</bcp14> appear on the
wire. The specific extension assignments are out of scope for this document.</t>
        <t>No algorithms, parameters, or semantics for any reserved range are defined in
this document.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <section anchor="alpn-protocol-identifier">
        <name>ALPN Protocol Identifier</name>
        <t>This document requests that IANA register the following value in the "TLS
Application-Layer Protocol Negotiation (ALPN) Protocol IDs" registry established
by <xref target="RFC7301"/>:</t>
        <table>
          <name>Requested ALPN registration</name>
          <thead>
            <tr>
              <th align="left">Protocol</th>
              <th align="left">Identification Sequence</th>
              <th align="left">Reference</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">N-PAMP, wire major version 2</td>
              <td align="left">0x6E 0x2D 0x70 0x61 0x6D 0x70 0x2F 0x32 ("n-pamp/2")</td>
              <td align="left">(this document)</td>
            </tr>
          </tbody>
        </table>
        <t>The identification sequence is the 8-octet UTF-8 string "n-pamp/2". The trailing
digit "2" equals the N-PAMP wire major version (the value 0x02 carried in the Ver
field of the frame header, <xref target="wire-format"/>). The registration policy for the ALPN
registry is Expert Review <xref target="RFC8126"/>.</t>
        <t>The earlier identifier "n-pamp/1" is deprecated. Implementations <bcp14>SHOULD NOT</bcp14>
negotiate "n-pamp/1" for new associations. Future wire major versions will use
distinct ALPN identifiers (for example, "n-pamp/3").</t>
      </section>
      <section anchor="uri-scheme-registration">
        <name>URI Scheme Registration</name>
        <t>This document requests provisional registration of the "npamp" URI scheme in the
"Uniform Resource Identifier (URI) Schemes" registry, following the template and
the provisional-registration procedure (First Come First Served) of <xref target="RFC7595"/>.</t>
        <t><strong>Scheme name:</strong> npamp</t>
        <t><strong>Status:</strong> Provisional</t>
        <t><strong>Applications/protocols that use this scheme:</strong> The protocol defined in this
document (N-PAMP). An "npamp" URI names an N-PAMP endpoint and an optional
resource path within that endpoint.</t>
        <t><strong>URI scheme syntax:</strong> The "npamp" scheme uses the generic URI syntax of
<xref target="RFC3986"/>:</t>
        <sourcecode type="abnf"><![CDATA[
npamp-URI = "npamp://" authority path-abempty [ "?" query ]
]]></sourcecode>
        <t>where "authority", "path-abempty", and "query" are as defined in <xref target="RFC3986"/>. The
"authority" component identifies the N-PAMP endpoint (host and optional port).
N-PAMP does not reserve a fixed default port; the underlying transport is
negotiated as described in <xref target="protocol-overview"/>.</t>
        <t><strong>Encoding considerations:</strong> "npamp" URIs are processed as defined in
<xref target="RFC3986"/>; non-ASCII characters in the path or query components are
percent-encoded UTF-8 octets.</t>
        <t><strong>Interoperability considerations:</strong> None beyond those of <xref target="RFC3986"/>. The scheme
carries no protocol semantics of its own; all behavior is defined by N-PAMP.</t>
        <t><strong>Security considerations:</strong> See <xref target="security-considerations"/>. An "npamp" URI is
only an identifier. Connecting to an "npamp" endpoint invokes the N-PAMP
handshake and its authentication, confidentiality, and downgrade protections;
dereferencing an "npamp" URI <bcp14>MUST NOT</bcp14> bypass the security profile negotiated by
N-PAMP.</t>
        <t><strong>Contact:</strong> Shawn Sammartano, BubbleFish Technologies, Inc.</t>
        <t><strong>Change controller:</strong> Shawn Sammartano, BubbleFish Technologies, Inc.</t>
        <t><strong>Reference:</strong> This document.</t>
      </section>
      <section anchor="registries-maintained-by-this-specification">
        <name>Registries Maintained by This Specification</name>
        <t>The N-PAMP channel registry (<xref target="channel-registry"/>), the frame-type registry
(<xref target="frame-types"/>), and the TLV type registry (<xref target="tlv-registry"/>) are defined and
maintained within this specification. Because this document is published through
the Independent Submission stream, it does not request the creation of new
IANA-hosted registries for these code points; the registries are normative within
this document and are extended by companion specifications and by future
revisions of this document, not by IANA registration actions.</t>
      </section>
      <section anchor="tlv-registry">
        <name>TLV Type Registry</name>
        <t>The following TLV tags are defined by this specification. Tags marked "reserved"
are described in <xref target="extension-points"/>.</t>
        <table>
          <name>TLV type registry</name>
          <thead>
            <tr>
              <th align="left">Tag</th>
              <th align="left">Name</th>
              <th align="left">Length</th>
              <th align="left">Description</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0x01</td>
              <td align="left">ProfileOffer</td>
              <td align="left">4</td>
              <td align="left">Profiles offered by the client (handshake only).</td>
            </tr>
            <tr>
              <td align="left">0x02</td>
              <td align="left">ProfileSelect</td>
              <td align="left">1</td>
              <td align="left">Profile selected by the server (handshake only).</td>
            </tr>
            <tr>
              <td align="left">0x03</td>
              <td align="left">KEMOffer</td>
              <td align="left">var</td>
              <td align="left">KEMs offered by the client.</td>
            </tr>
            <tr>
              <td align="left">0x04</td>
              <td align="left">KEMSelect</td>
              <td align="left">2</td>
              <td align="left">KEM selected by the server.</td>
            </tr>
            <tr>
              <td align="left">0x05</td>
              <td align="left">SigOffer</td>
              <td align="left">var</td>
              <td align="left">Signature algorithms offered.</td>
            </tr>
            <tr>
              <td align="left">0x06</td>
              <td align="left">SigSelect</td>
              <td align="left">2</td>
              <td align="left">Signature algorithm selected.</td>
            </tr>
            <tr>
              <td align="left">0x07</td>
              <td align="left">KEMShare</td>
              <td align="left">var</td>
              <td align="left">Public KEM share.</td>
            </tr>
            <tr>
              <td align="left">0x08</td>
              <td align="left">KEMCiphertext</td>
              <td align="left">var</td>
              <td align="left">KEM encapsulation ciphertext.</td>
            </tr>
            <tr>
              <td align="left">0x10</td>
              <td align="left">(reserved)</td>
              <td align="left">var</td>
              <td align="left">Reserved for a companion specification.</td>
            </tr>
            <tr>
              <td align="left">0x12</td>
              <td align="left">AnomalyCharge</td>
              <td align="left">32</td>
              <td align="left">Per-frame integrity charge.</td>
            </tr>
            <tr>
              <td align="left">0x13</td>
              <td align="left">(reserved)</td>
              <td align="left">var</td>
              <td align="left">Reserved for a companion specification.</td>
            </tr>
            <tr>
              <td align="left">0x14</td>
              <td align="left">(reserved)</td>
              <td align="left">32</td>
              <td align="left">Reserved for a companion specification (handshake only).</td>
            </tr>
            <tr>
              <td align="left">0x15</td>
              <td align="left">PathChallenge</td>
              <td align="left">32</td>
              <td align="left">Path-migration challenge nonce.</td>
            </tr>
            <tr>
              <td align="left">0x16</td>
              <td align="left">PathResponse</td>
              <td align="left">64</td>
              <td align="left">Path-migration response.</td>
            </tr>
            <tr>
              <td align="left">0x17</td>
              <td align="left">KeyUpdateMarker</td>
              <td align="left">8</td>
              <td align="left">Key-update epoch marker.</td>
            </tr>
            <tr>
              <td align="left">0x18</td>
              <td align="left">ProtectionMode</td>
              <td align="left">1</td>
              <td align="left">Protection-mode selector.</td>
            </tr>
            <tr>
              <td align="left">0x8000-0xFFFF</td>
              <td align="left">(reserved)</td>
              <td align="left">--</td>
              <td align="left">Forward-incompatible extension points (Type high bit set).</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>This section follows the spirit of <xref target="RFC3552"/>. N-PAMP inherits the security
properties of its underlying transports, TLS 1.3 <xref target="RFC8446"/> and QUIC
<xref target="RFC9001"/>, and adds the considerations below.</t>
      <section anchor="hybrid-key-establishment">
        <name>Hybrid Key Establishment</name>
        <t>Every profile uses a hybrid KEM that concatenates an X25519 shared secret with an
ML-KEM shared secret <xref target="FIPS203"/> before key derivation. The confidentiality of an
association is preserved as long as at least one of the two components remains
unbroken; an adversary must defeat both the classical and the post-quantum
component to recover traffic keys. N-PAMP makes no claim of unconditional or
"quantum-proof" security; it provides post-quantum hybrid security against the
adversaries addressed by its component primitives.</t>
      </section>
      <section anchor="downgrade-unknown-key-share-and-identity-substitution">
        <name>Downgrade, Unknown-Key-Share, and Identity Substitution</name>
        <t>The negotiated profile, KEM, signature algorithm, AEAD suite(s), and both peer
identities are bound into the handshake transcript and confirmed by the Finished
MAC (<xref target="protocol-overview"/>, <xref target="profile-negotiation"/>). Altering any negotiated
parameter, stripping a profile from the offer, or substituting a peer identity
invalidates the Finished MAC and aborts the handshake. The High and Sovereign
profiles additionally refuse to complete at a profile below their configured
minimum.</t>
      </section>
      <section anchor="authenticated-encryption-and-nonce-management">
        <name>Authenticated Encryption and Nonce Management</name>
        <t>All payloads are protected by AEAD <xref target="RFC5116"/>. Traffic keys are partitioned per
(direction, epoch, suite, channel), which structurally prevents nonce reuse
across directions, AEAD suites, and channels. AEAD tag verification <bcp14>MUST</bcp14> be
performed before any payload is processed, and equality comparisons of
authentication values <bcp14>MUST</bcp14> be constant-time to avoid timing side channels.</t>
      </section>
      <section anchor="replay">
        <name>Replay</name>
        <t>Each (channel, direction) pair maintains a sliding replay window over sequence
numbers. Frames outside the window or already recorded within it <bcp14>MUST</bcp14> be
rejected. Where 0-RTT data is permitted, it <bcp14>MUST</bcp14> be limited to idempotent
operations and protected against replay by an anti-replay mechanism scoped to the
current epoch; the Sovereign profile disables 0-RTT entirely.</t>
      </section>
      <section anchor="forward-secrecy-and-key-update">
        <name>Forward Secrecy and Key Update</name>
        <t>Endpoints <bcp14>MUST</bcp14> perform key updates within profile-specific bounds on elapsed
time, frames sent, and bytes protected, with the tightest bounds at the Sovereign
profile. On key update, the prior epoch's traffic secrets <bcp14>MUST</bcp14> be zeroized so
that compromise of the current epoch does not expose previously protected
traffic. Rotation of the master secret requires a fresh handshake.</t>
      </section>
      <section anchor="connection-migration">
        <name>Connection Migration</name>
        <t>When carried over QUIC, an endpoint <bcp14>MUST</bcp14> validate a peer's new path with a
challenge-response exchange (PATH_CHALLENGE / PATH_RESPONSE) before accepting an
address change, to prevent off-path migration spoofing.</t>
      </section>
      <section anchor="authenticated-close">
        <name>Authenticated Close</name>
        <t>CLOSE frames are AEAD-protected and <bcp14>MUST</bcp14> be verified before being honored, so
that an off-path attacker cannot tear down an association with a forged CLOSE.</t>
      </section>
      <section anchor="sec-extension-points">
        <name>Extension Points</name>
        <t>The reserved code-point ranges in <xref target="extension-points"/> carry no algorithms or
semantics in this document. Any security properties of extensions occupying those
ranges are the responsibility of the companion specifications that define them and
are out of scope here.</t>
      </section>
      <section anchor="implementation-considerations">
        <name>Implementation Considerations</name>
        <t>Where the wire format requires deterministic encoding (for example, deterministic
CBOR <xref target="RFC8949"/> or canonical integer encodings), implementations <bcp14>MUST</bcp14> produce
byte-identical output for identical inputs, because non-deterministic encodings
can invalidate transcript and integrity computations across peers.</t>
      </section>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
        <reference anchor="RFC5116">
          <front>
            <title>An Interface and Algorithms for Authenticated Encryption</title>
            <author fullname="D. McGrew" initials="D." surname="McGrew"/>
            <date month="January" year="2008"/>
            <abstract>
              <t>This document defines algorithms for Authenticated Encryption with Associated Data (AEAD), and defines a uniform interface and a registry for such algorithms. The interface and registry can be used as an application-independent set of cryptoalgorithm suites. This approach provides advantages in efficiency and security, and promotes the reuse of crypto implementations. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5116"/>
          <seriesInfo name="DOI" value="10.17487/RFC5116"/>
        </reference>
        <reference anchor="RFC5869">
          <front>
            <title>HMAC-based Extract-and-Expand Key Derivation Function (HKDF)</title>
            <author fullname="H. Krawczyk" initials="H." surname="Krawczyk"/>
            <author fullname="P. Eronen" initials="P." surname="Eronen"/>
            <date month="May" year="2010"/>
            <abstract>
              <t>This document specifies a simple Hashed Message Authentication Code (HMAC)-based key derivation function (HKDF), which can be used as a building block in various protocols and applications. The key derivation function (KDF) is intended to support a wide range of applications and requirements, and is conservative in its use of cryptographic hash functions. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5869"/>
          <seriesInfo name="DOI" value="10.17487/RFC5869"/>
        </reference>
        <reference anchor="RFC7301">
          <front>
            <title>Transport Layer Security (TLS) Application-Layer Protocol Negotiation Extension</title>
            <author fullname="S. Friedl" initials="S." surname="Friedl"/>
            <author fullname="A. Popov" initials="A." surname="Popov"/>
            <author fullname="A. Langley" initials="A." surname="Langley"/>
            <author fullname="E. Stephan" initials="E." surname="Stephan"/>
            <date month="July" year="2014"/>
            <abstract>
              <t>This document describes a Transport Layer Security (TLS) extension for application-layer protocol negotiation within the TLS handshake. For instances in which multiple application protocols are supported on the same TCP or UDP port, this extension allows the application layer to negotiate which protocol will be used within the TLS connection.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7301"/>
          <seriesInfo name="DOI" value="10.17487/RFC7301"/>
        </reference>
        <reference anchor="RFC3986">
          <front>
            <title>Uniform Resource Identifier (URI): Generic Syntax</title>
            <author fullname="T. Berners-Lee" initials="T." surname="Berners-Lee"/>
            <author fullname="R. Fielding" initials="R." surname="Fielding"/>
            <author fullname="L. Masinter" initials="L." surname="Masinter"/>
            <date month="January" year="2005"/>
            <abstract>
              <t>A Uniform Resource Identifier (URI) is a compact sequence of characters that identifies an abstract or physical resource. This specification defines the generic URI syntax and a process for resolving URI references that might be in relative form, along with guidelines and security considerations for the use of URIs on the Internet. The URI syntax defines a grammar that is a superset of all valid URIs, allowing an implementation to parse the common components of a URI reference without knowing the scheme-specific requirements of every possible identifier. This specification does not define a generative grammar for URIs; that task is performed by the individual specifications of each URI scheme. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="66"/>
          <seriesInfo name="RFC" value="3986"/>
          <seriesInfo name="DOI" value="10.17487/RFC3986"/>
        </reference>
        <reference anchor="RFC7595">
          <front>
            <title>Guidelines and Registration Procedures for URI Schemes</title>
            <author fullname="D. Thaler" initials="D." role="editor" surname="Thaler"/>
            <author fullname="T. Hansen" initials="T." surname="Hansen"/>
            <author fullname="T. Hardie" initials="T." surname="Hardie"/>
            <date month="June" year="2015"/>
            <abstract>
              <t>This document updates the guidelines and recommendations, as well as the IANA registration processes, for the definition of Uniform Resource Identifier (URI) schemes. It obsoletes RFC 4395.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="35"/>
          <seriesInfo name="RFC" value="7595"/>
          <seriesInfo name="DOI" value="10.17487/RFC7595"/>
        </reference>
        <reference anchor="RFC8032">
          <front>
            <title>Edwards-Curve Digital Signature Algorithm (EdDSA)</title>
            <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
            <author fullname="I. Liusvaara" initials="I." surname="Liusvaara"/>
            <date month="January" year="2017"/>
            <abstract>
              <t>This document describes elliptic curve signature scheme Edwards-curve Digital Signature Algorithm (EdDSA). The algorithm is instantiated with recommended parameters for the edwards25519 and edwards448 curves. An example implementation and test vectors are provided.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8032"/>
          <seriesInfo name="DOI" value="10.17487/RFC8032"/>
        </reference>
        <reference anchor="RFC8439">
          <front>
            <title>ChaCha20 and Poly1305 for IETF Protocols</title>
            <author fullname="Y. Nir" initials="Y." surname="Nir"/>
            <author fullname="A. Langley" initials="A." surname="Langley"/>
            <date month="June" year="2018"/>
            <abstract>
              <t>This document defines the ChaCha20 stream cipher as well as the use of the Poly1305 authenticator, both as stand-alone algorithms and as a "combined mode", or Authenticated Encryption with Associated Data (AEAD) algorithm.</t>
              <t>RFC 7539, the predecessor of this document, was meant to serve as a stable reference and an implementation guide. It was a product of the Crypto Forum Research Group (CFRG). This document merges the errata filed against RFC 7539 and adds a little text to the Security Considerations section.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8439"/>
          <seriesInfo name="DOI" value="10.17487/RFC8439"/>
        </reference>
        <reference anchor="RFC8446">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
        <reference anchor="RFC8949">
          <front>
            <title>Concise Binary Object Representation (CBOR)</title>
            <author fullname="C. Bormann" initials="C." surname="Bormann"/>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="December" year="2020"/>
            <abstract>
              <t>The Concise Binary Object Representation (CBOR) is a data format whose design goals include the possibility of extremely small code size, fairly small message size, and extensibility without the need for version negotiation. These design goals make it different from earlier binary serializations such as ASN.1 and MessagePack.</t>
              <t>This document obsoletes RFC 7049, providing editorial improvements, new details, and errata fixes while keeping full compatibility with the interchange format of RFC 7049. It does not create a new version of the format.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="94"/>
          <seriesInfo name="RFC" value="8949"/>
          <seriesInfo name="DOI" value="10.17487/RFC8949"/>
        </reference>
        <reference anchor="RFC9000">
          <front>
            <title>QUIC: A UDP-Based Multiplexed and Secure Transport</title>
            <author fullname="J. Iyengar" initials="J." role="editor" surname="Iyengar"/>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson"/>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document defines the core of the QUIC transport protocol. QUIC provides applications with flow-controlled streams for structured communication, low-latency connection establishment, and network path migration. QUIC includes security measures that ensure confidentiality, integrity, and availability in a range of deployment circumstances. Accompanying documents describe the integration of TLS for key negotiation, loss detection, and an exemplary congestion control algorithm.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9000"/>
          <seriesInfo name="DOI" value="10.17487/RFC9000"/>
        </reference>
        <reference anchor="RFC9001">
          <front>
            <title>Using TLS to Secure QUIC</title>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson"/>
            <author fullname="S. Turner" initials="S." role="editor" surname="Turner"/>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document describes how Transport Layer Security (TLS) is used to secure QUIC.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9001"/>
          <seriesInfo name="DOI" value="10.17487/RFC9001"/>
        </reference>
        <reference anchor="FIPS203">
          <front>
            <title>Module-Lattice-Based Key-Encapsulation Mechanism Standard</title>
            <author>
              <organization>National Institute of Standards and Technology (NIST)</organization>
            </author>
            <date year="2024"/>
          </front>
          <seriesInfo name="FIPS" value="203"/>
        </reference>
        <reference anchor="FIPS204">
          <front>
            <title>Module-Lattice-Based Digital Signature Standard</title>
            <author>
              <organization>National Institute of Standards and Technology (NIST)</organization>
            </author>
            <date year="2024"/>
          </front>
          <seriesInfo name="FIPS" value="204"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="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>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>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>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="RFC3552">
          <front>
            <title>Guidelines for Writing RFC Text on Security Considerations</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <author fullname="B. Korver" initials="B." surname="Korver"/>
            <date month="July" year="2003"/>
            <abstract>
              <t>All RFCs are required to have a Security Considerations section. Historically, such sections have been relatively weak. This document provides guidelines to RFC authors on how to write a good Security Considerations section. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="72"/>
          <seriesInfo name="RFC" value="3552"/>
          <seriesInfo name="DOI" value="10.17487/RFC3552"/>
        </reference>
        <reference anchor="I-D.ietf-tls-hybrid-design">
          <front>
            <title>Hybrid key exchange in TLS 1.3</title>
            <author fullname="Douglas Stebila" initials="D." surname="Stebila">
              <organization>University of Waterloo</organization>
            </author>
            <author fullname="Scott Fluhrer" initials="S." surname="Fluhrer">
              <organization>Cisco Systems</organization>
            </author>
            <author fullname="Shay Gueron" initials="S." surname="Gueron">
              <organization>University of Haifa and Meta</organization>
            </author>
            <date day="7" month="September" year="2025"/>
            <abstract>
              <t>   Hybrid key exchange refers to using multiple key exchange algorithms
   simultaneously and combining the result with the goal of providing
   security even if a way is found to defeat the encryption for all but
   one of the component algorithms.  It is motivated by transition to
   post-quantum cryptography.  This document provides a construction for
   hybrid key exchange in the Transport Layer Security (TLS) protocol
   version 1.3.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tls-hybrid-design-16"/>
        </reference>
      </references>
    </references>
    <?line 750?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The author thanks the reviewers of earlier N-PAMP drafts for their feedback.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
/PH18c728UZgdM/h+nB+KrkuhwGoHXj8OmKvm45YwuthVYrNAFkFYwTQouZ4
KBNSyNJ6ZFGRFC5nDQhVMLfeNBdsC8vZQCseM+skvCeEIWbLGnFBVl9ZfaQt
4Z61Yr1pkI1JwRkRnW0QM8txk883CzQDnI6PWQ01AihitsziT3/Js+0lz3bQ
vU9/2jG7Zs/sm5fmwLz6Lc8Iv//J/xFp4ee7y+8c4fH3q873o873C/f9X7KG
nwnsGPssT8a1ziE31owECHdpMYfAGP6XreGf+6E1LHl6Y3XPy9lkANTa3yWN
q6k3lrT9l6zhvwUOHfawvrO9chP/bWsQJiOOrICP/T+Fw2/56eLDtb27+AOB
c8Su7vV+3/EvGGYdeH59Dd+wz44gc6KqLfKZo1pxJtxZXelP5v3dHW7QnswN
LteIRPFn+vckFVUXDJ4kNEnN1n/UcyveoXa79riezEUyJq2eRPvN8fm5Wbuk
JZBCs/Vp99Rsfdrbol+7ffw6IQ0YA+xyd6CaERbx5K3sSfKfJFMh8thJxeIo
I3FWZIiLgnkoG90VaUqq7yylsbf15sBpweHdXMtV0navrHO71qRme9kyLQfD
pCSFFtdjNV0GfXyH5tDeeKS9eJ+6bnuIBezPfmnwRX2H4a1Oa1g08sO+jA/a
wwbcU1bavQN+xv6WIV/FfSz1wI/ZZXV0VmTXrTsrz1l4G6QcFHSKBdx3tlPB
nXqQs5X10W/JVP2XoPMWInUY0pN5A+k9JLtM/JeB+uTVWK+xyLikJW3vtsdV
JuM+rB8ntKBxUeYZHP3zopxkZPtsfeqfnhzvn+32+dZ0OmPVAJxJdZOAQW0S
5Q/TjHUzdoNZI4wsETNI7/SWawgnNLZNupPEQ4S6ki54L97Zo8U5tkGfHVt5
ktEHKbOS16Zqz1qlfJl4J16XR9bG3HWqjgb7tiiLGANgRs82zgI2ofwB3ALX
zpMVOpbxSpRQ4M+2q/p7AvJjsoqUrORSzdLr1nYQulmLJqnm04qgG686Cil+
fhFSmrC4NmGGh0bYYJd3V85oxdSLSZt54ZsMjPASgxO804R9Kh3mB8YHprZF
yPFkPlz/iN8VhzmQ3Vmy10ddIrjPEhTnDtvocHp5HCC4Vf6dhaOYwO130f74
PbHxVgdgJMdMaOMdbnyAxmfXRz86RmL9iWNmcOxHzBNaKC6KxnyvqI6KZbjA
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

-->

</rfc>
