<?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.23 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-mattsson-cfrg-aes-gcm-sst-18" category="info" consensus="true" submissionType="IRTF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.27.0 -->
  <front>
    <title abbrev="GCM-SST">Galois Counter Mode with Strong Secure Tags (GCM-SST)</title>
    <seriesInfo name="Internet-Draft" value="draft-mattsson-cfrg-aes-gcm-sst-18"/>
    <author initials="M." surname="Campagna" fullname="Matthew Campagna">
      <organization>Amazon Web Services</organization>
      <address>
        <postal>
          <country>Canada</country>
        </postal>
        <email>campagna@amazon.com</email>
      </address>
    </author>
    <author initials="A." surname="Maximov" fullname="Alexander Maximov">
      <organization abbrev="Ericsson">Ericsson</organization>
      <address>
        <postal>
          <country>Sweden</country>
        </postal>
        <email>alexander.maximov@ericsson.com</email>
      </address>
    </author>
    <author initials="J." surname="Preuß Mattsson" fullname="John Preuß Mattsson">
      <organization abbrev="Ericsson">Ericsson</organization>
      <address>
        <postal>
          <country>Sweden</country>
        </postal>
        <email>john.mattsson@ericsson.com</email>
      </address>
    </author>
    <date year="2025" month="February" day="19"/>
    <area>IRTF</area>
    <workgroup>Crypto Forum</workgroup>
    <keyword>next generation</keyword>
    <keyword>unicorn</keyword>
    <keyword>sparkling distributed ledger</keyword>
    <abstract>
      <?line 508?>

<t>This  document defines the Galois Counter Mode with Strong Secure Tags (GCM-SST) Authenticated Encryption with Associated Data (AEAD) algorithm. GCM-SST can be used with any keystream generator, not just 128-bit block ciphers. The main differences from GCM are the use of an additional subkey H<sub>2</sub>, the derivation of fresh subkeys H and H<sub>2</sub> for each nonce, and the replacement of the GHASH function with the POLYVAL function from AES-GCM-SIV. This enables truncated tags with near-ideal forgery probabilities, even against multiple forgery attacks, which are significant security improvements over GCM. GCM-SST is designed for security protocols with replay protection and addresses the strong industry demand for fast encryption with minimal overhead and high security. This document registers several instances of GCM-SST using Advanced Encryption Standard (AES) and Rijndael-256.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://emanjon.github.io/draft-mattsson-cfrg-aes-gcm-sst/draft-mattsson-cfrg-aes-gcm-sst.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-mattsson-cfrg-aes-gcm-sst/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Crypto Forum Research Group mailing list (<eref target="mailto:cfrg@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/search/?email_list=cfrg"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/cfrg/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/emanjon/draft-mattsson-cfrg-aes-gcm-sst"/>.</t>
    </note>
  </front>
  <middle>
    <?line 512?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>Advanced Encryption Standard (AES) in Galois Counter Mode (AES-GCM) <xref target="GCM"/> is a widely used AEAD algorithm <xref target="RFC5116"/> due to its attractive performance in both software and hardware as well as its provable security. During the NIST standardization, Ferguson pointed out two weaknesses in the GCM authentication function <xref target="Ferguson"/>. The first weakness significantly increases the probability of successful forgery for long messages. The second weakness reveals the subkey H if an attacker succeeds in creating forgeries. Once H is known, the attacker can consistently forge subsequent messages, drastically increasing the probability of multiple successful forgeries. The two weaknesses are problematic for all tag lengths but are especially critical when short tags are used.</t>
      <t>In a comment to NIST, Nyberg et al. <xref target="Nyberg"/> explained how small changes based on proven theoretical constructions mitigate these weaknesses. Unfortunately, NIST did not follow the advice from Nyberg et al. and instead specified additional requirements for use with short tags in Appendix C of <xref target="GCM"/>. NIST did not give any motivations for the parameter choices or the assumed security levels. Mattsson et al. <xref target="Mattsson"/> later demonstrated that attackers can almost always obtain feedback on the success or failure of forgery attempts, contradicting the assumptions NIST made for short tags. Furthermore, NIST appears to have relied on non-optimal attacks when calculating the parameters. Rogaway <xref target="Rogaway"/> criticizes the use of GCM with short tags and recommends prohibiting tags shorter than 96 bits. Reflecting the critique, NIST is planning to remove support for GCM with tags shorter than 96 bits <xref target="Revise"/>. NIST has not addressed the weaknesses for longer tags, such as the absence of reforgeability resistance <xref target="Reforge"/>. When AES-GCM is used in QUIC <xref target="RFC9001"/>, the expected number of forgeries can be equivalent to that of an ideal MAC with a length of 64.4 bits. Reforgeability resistance is a key design criterion in modern AEAD algorithms such as <xref target="AEZ"/>.</t>
      <t>Short tags are widely used, 32-bit tags are standard in most radio link layers including 5G <xref target="Sec5G"/>, 64-bit tags are very common in transport and application layers of the Internet of Things, and 32-, 64-, and 80-bit tags are common in media-encryption applications. Audio packets are small, numerous, and ephemeral. As such, they are highly sensitive to cryptographic overhead, but as each packet typically encodes only 20 ms of audio, forgery of individual packets is not a big concern and barely noticeable. Due to its weaknesses, GCM is typically not used with short tags. The result is either decreased performance from larger than needed tags <xref target="I-D.ietf-moq-transport"/>, or decreased performance from using much slower constructions such as AES-CTR combined with HMAC <xref target="RFC3711"/><xref target="RFC9605"/>. Short tags are also useful to protect packets whose payloads are secured at higher layers, protocols where the security is given by the sum of the tag lengths, and in constrained radio networks, where the low bandwidth limits the number of forgery attempts. For all applications of short tags it is essential that the MAC behaves like an ideal MAC, i.e., the forgery probability is ≈ 1 / 2<sup>tag_length</sup> even after many generated MACs, many forgery attempts, and after a successful forgery. While Counter with CBC-MAC (CCM) <xref target="RFC5116"/> with short tags has forgery probabilities close to ideal, its performance is lower than that of GCM. For a comprehensive discussion on the use cases and requirements of short tags, see <xref target="Comments38B"/>.</t>
      <t>This document defines the Galois Counter Mode with Strong Secure Tags (GCM-SST) Authenticated Encryption with Associated Data (AEAD) algorithm following the recommendations from Nyberg et al. <xref target="Nyberg"/>. GCM-SST is defined with a general interface, allowing it to be used with any keystream generator, not just 128-bit block ciphers. The main differences from GCM <xref target="GCM"/> are the introduction of an additional subkey H<sub>2</sub>, the derivation of fresh subkeys H and H<sub>2</sub> for each nonce, and the replacement of the GHASH function with the POLYVAL function from AES-GCM-SIV <xref target="RFC8452"/>, see <xref target="GCM-SST"/>. These changes enable truncated tags with near-ideal forgery probabilities, even against multiple forgery attacks, see <xref target="Security"/>. GCM-SST is designed for use in security protocols with replay protection such as TLS <xref target="RFC8446"/>, QUIC <xref target="RFC9000"/>, SRTP <xref target="RFC3711"/>, PDCP <xref target="PDCP"/>, etc. Security protocols with replay protection are by far the most important use case for GCM. In unicast scenarios, its authentication tag behaves like an ideal MAC, including reforgeability resistance. Users and implementers of cryptography expect algorithms to behave like ideal MACs. Compared to Poly1305 <xref target="RFC7539"/> and GCM <xref target="RFC5116"/>, GCM-SST can provide better integrity with less overhead. Its performance in hardware and software is similar to GCM <xref target="GCM"/>. In software, the two additional AES invocations are compensated by the use of POLYVAL, the ”little-endian version” of GHASH, which is faster on little-endian architectures. GCM-SST retains the additive encryption characteristic of GCM, which enables efficient implementations on modern processor architectures, see <xref target="Gueron"/> and Section 2.4 of <xref target="GCM-Update"/>.</t>
      <t>This document also registers several GCM-SST instances using Advanced Encryption Standard (AES) <xref target="AES"/> and Rijndael with 256-bit keys and blocks (Rijndael-256) <xref target="Rijndael"/> in counter mode as keystream generators and with tag lengths of 48, 96, and 112 bits, see <xref target="AES-GCM-SST"/>. The authentication tags in all registered GCM-SST instances behave like ideal MACs, which is not the case at all for GCM <xref target="GCM"/>. 3GPP has standardized the use of Rijndael-256 for authentication and key generation in 3GPP TS 35.234–35.237 <xref target="WID23"/>. NIST plans to standardize Rijndael-256 <xref target="Plans"/>, although there might be revisions to the key schedule. Rijndael-256 has very good performance on modern x86-64 platforms equipped with AES-NI and VAES instructions <xref target="Ducker"/>. Compared to AEGIS <xref target="I-D.irtf-cfrg-aegis-aead"/>, AES-GCM-SST offers significantly higher performance in pure hardware implementations while retaining the advantage of being a mode of operation for AES.</t>
      <t>The integrity part of GCM-SST was originally developed by ETSI SAGE, under the name Mac5G, following a request from 3GPP, with several years of discussion and refinement contributing to its design <xref target="SAGE23"/><xref target="SAGE24"/>.  Mac5G is constructed similarly to the integrity algorithms used for SNOW 3G <xref target="UIA2"/> and ZUC <xref target="EIA3"/>. 3GPP has decided to standardize GCM-SST for use with SNOW 5G <xref target="SNOW"/>, AES-256 <xref target="AES"/>, and ZUC-256 <xref target="ZUC"/> in 3GPP TS 35.240–35.248 <xref target="WID24"/>.</t>
    </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?>

<t>The following notation is used in the document:</t>
      <ul spacing="normal">
        <li>
          <t>K is the key as defined in <xref target="RFC5116"/></t>
        </li>
        <li>
          <t>N is the nonce as defined in <xref target="RFC5116"/></t>
        </li>
        <li>
          <t>A is the associated data as defined in <xref target="RFC5116"/></t>
        </li>
        <li>
          <t>P is the plaintext as defined in <xref target="RFC5116"/></t>
        </li>
        <li>
          <t>Z is the keystream</t>
        </li>
        <li>
          <t>ct is the ciphertext</t>
        </li>
        <li>
          <t>tag is the authentication tag</t>
        </li>
        <li>
          <t>tag_length is the length of tag in bits</t>
        </li>
        <li>
          <t>= is the assignment operator</t>
        </li>
        <li>
          <t>≠ is the inequality operator</t>
        </li>
        <li>
          <t>x || y is concatenation of the octet strings x and y</t>
        </li>
        <li>
          <t>⊕ is the bitwise exclusive or operator XOR</t>
        </li>
        <li>
          <t>len(x) is the length of x in bits</t>
        </li>
        <li>
          <t>zeropad(x) right pads an octet string x with zeroes to a multiple of 128 bits</t>
        </li>
        <li>
          <t>truncate(x, t) is the truncation operation.  The first t bits of x are kept</t>
        </li>
        <li>
          <t>n is the number of 128-bit chunks in zeropad(P)</t>
        </li>
        <li>
          <t>m is the number of 128-bit chunks in zeropad(A)</t>
        </li>
        <li>
          <t>POLYVAL is defined in <xref target="RFC8452"/></t>
        </li>
        <li>
          <t>BE32(x) is the big-endian encoding of 32-bit integer x</t>
        </li>
        <li>
          <t>LE64(x) is the little-endian encoding of 64-bit integer x</t>
        </li>
        <li>
          <t>V[y] is the 128-bit chunk with index y in the array V; the first chunk has index 0</t>
        </li>
        <li>
          <t>V[x:y] are the range of 128-bit chunks x to y in the array V</t>
        </li>
      </ul>
    </section>
    <section anchor="GCM-SST">
      <name>Galois Counter Mode with Strong Secure Tags (GCM-SST)</name>
      <t>This section defines the Galois Counter Mode with Strong Secure Tags (GCM-SST) AEAD algorithm following the recommendations from Nyberg et al. <xref target="Nyberg"/>. GCM-SST is defined with a general interface so that it can be used with any keystream generator, not just a 128-bit block cipher.</t>
      <t>GCM-SST adheres to an AEAD interface <xref target="RFC5116"/> and the encryption function takes four variable-length octet string parameters. A secret key K, a nonce N, the associated data A, and a plaintext P. The keystream generator is instantiated with K and N. The keystream <bcp14>MAY</bcp14> depend on P and A. The minimum and maximum lengths of all parameters depend on the keystream generator. The keystream generator produces a keystream Z consisting of 128-bit chunks where the first three chunks Z[0], Z[1], and Z[2] are used as the three subkeys H, H<sub>2</sub>, and M. The following keystream chunks Z[3], Z[4], ..., Z[n + 2] are used to encrypt the plaintext. Instead of GHASH <xref target="GCM"/>, GCM-SST makes use of the POLYVAL function from AES-GCM-SIV <xref target="RFC8452"/>, which results in more efficient software implementations on little-endian architectures. GHASH and POLYVAL can be defined in terms of one another <xref target="RFC8452"/>. The subkeys H and H<sub>2</sub> are field elements used in POLYVAL while the subkey M is used for the final masking of the tag. Both encryption and decryption are only defined on inputs that are a whole number of octets. Figures illustrating the GCM-SST encryption and decryption functions can be found in <xref target="SST1"/>, <xref target="SST2"/>, and <xref target="Inoue"/>.</t>
      <t>For every computational procedure that is specified in this document, a conforming implementation <bcp14>MAY</bcp14> replace the given set of steps with any mathematically equivalent set of steps. In other words, different procedures that produce the correct output for every input are permitted.</t>
      <section anchor="authenticated-encryption-function">
        <name>Authenticated Encryption Function</name>
        <t>The encryption function Encrypt(K, N, A, P) encrypts a plaintext and returns the ciphertext along with an authentication tag that verifies the authenticity of the plaintext and associated data, if provided.</t>
        <t>Prerequisites and security:</t>
        <ul spacing="normal">
          <li>
            <t>The key <bcp14>MUST</bcp14> be randomly chosen from a uniform distribution.</t>
          </li>
          <li>
            <t>For a given key, a nonce <bcp14>MUST NOT</bcp14> be reused under any circumstances.</t>
          </li>
          <li>
            <t>Each key <bcp14>MUST</bcp14> be restricted to a single tag_length.</t>
          </li>
          <li>
            <t>Definitions of supported input-output lengths.</t>
          </li>
        </ul>
        <t>Inputs:</t>
        <ul spacing="normal">
          <li>
            <t>Key K (variable-length octet string)</t>
          </li>
          <li>
            <t>Nonce N (variable-length octet string)</t>
          </li>
          <li>
            <t>Associated data A (variable-length octet string)</t>
          </li>
          <li>
            <t>Plaintext P (variable-length octet string)</t>
          </li>
        </ul>
        <t>Outputs:</t>
        <ul spacing="normal">
          <li>
            <t>Ciphertext ct (variable-length octet string)</t>
          </li>
          <li>
            <t>tag (octet string with length tag_length)</t>
          </li>
        </ul>
        <t>Steps:</t>
        <ol spacing="normal" type="1"><li>
            <t>If the lengths of K, N, A, P are not supported return error and abort</t>
          </li>
          <li>
            <t>Initiate keystream generator with K and N</t>
          </li>
          <li>
            <t>Let H = Z[0], H<sub>2</sub> = Z[1], M = Z[2]</t>
          </li>
          <li>
            <t>Let ct = P ⊕ truncate(Z[3:n + 2], len(P))</t>
          </li>
          <li>
            <t>Let S = zeropad(A) || zeropad(ct)</t>
          </li>
          <li>
            <t>Let L = LE64(len(ct)) || LE64(len(A))</t>
          </li>
          <li>
            <t>Let X = POLYVAL(H, S[0], S[1], ...)</t>
          </li>
          <li>
            <t>Let full_tag = POLYVAL(H<sub>2</sub>, X ⊕ L) ⊕ M</t>
          </li>
          <li>
            <t>Let tag = truncate(full_tag, tag_length)</t>
          </li>
          <li>
            <t>Return (ct, tag)</t>
          </li>
        </ol>
        <t>The encoding of L aligns with existing implementations of GCM.</t>
      </section>
      <section anchor="authenticated-decryption-function">
        <name>Authenticated Decryption Function</name>
        <t>The decryption function Decrypt(K, N, A, ct, tag) decrypts a ciphertext, verifies that the authentication tag is correct, and returns the plaintext on success or an error if the tag verification failed.</t>
        <t>Prerequisites and security:</t>
        <ul spacing="normal">
          <li>
            <t>The calculation of the plaintext P (step 10) <bcp14>MAY</bcp14> be done in parallel with the tag verification (step 3-9). If the tag verification fails, the plaintext P and the expected_tag <bcp14>MUST NOT</bcp14> be given as output.</t>
          </li>
          <li>
            <t>Each key <bcp14>MUST</bcp14> be restricted to a single tag_length.</t>
          </li>
          <li>
            <t>Definitions of supported input-output lengths.</t>
          </li>
        </ul>
        <t>Inputs:</t>
        <ul spacing="normal">
          <li>
            <t>Key K (variable-length octet string)</t>
          </li>
          <li>
            <t>Nonce N (variable-length octet string)</t>
          </li>
          <li>
            <t>Associated data A (variable-length octet string)</t>
          </li>
          <li>
            <t>Ciphertext ct (variable-length octet string)</t>
          </li>
          <li>
            <t>tag (octet string with length tag_length)</t>
          </li>
        </ul>
        <t>Outputs:</t>
        <ul spacing="normal">
          <li>
            <t>Plaintext P (variable-length octet string) or an error indicating that the authentication tag is invalid for the given inputs.</t>
          </li>
        </ul>
        <t>Steps:</t>
        <ol spacing="normal" type="1"><li>
            <t>If the lengths of K, N, A, or ct are not supported, or if len(tag) ≠ tag_length return error and abort</t>
          </li>
          <li>
            <t>Initiate keystream generator with K and N</t>
          </li>
          <li>
            <t>Let H = Z[0], H<sub>2</sub> = Z[1], M = Z[2]</t>
          </li>
          <li>
            <t>Let S = zeropad(A) || zeropad(ct)</t>
          </li>
          <li>
            <t>Let L = LE64(len(ct)) || LE64(len(A))</t>
          </li>
          <li>
            <t>Let X = POLYVAL(H, S[0], S[1], ...)</t>
          </li>
          <li>
            <t>Let full_tag = POLYVAL(H<sub>2</sub>, X ⊕ L) ⊕ M</t>
          </li>
          <li>
            <t>Let expected_tag = truncate(full_tag, tag_length)</t>
          </li>
          <li>
            <t>If tag ≠ expected_tag, return error and abort</t>
          </li>
          <li>
            <t>Let P = ct ⊕ truncate(Z[3:n + 2], len(ct))</t>
          </li>
          <li>
            <t>If N passes replay protection, return P</t>
          </li>
        </ol>
        <t>The comparison of tag and expected_tag in step 9 <bcp14>MUST</bcp14> be performed in constant time to prevent any information leakage about the position of the first mismatched byte. For a given key, a plaintext <bcp14>MUST NOT</bcp14> be returned unless it is certain that a plaintext has not been returned for the same nonce. Replay protection can be performed either before step 1 or during step 11. Protocols with nonce-hiding mechanisms <xref target="Bellare"/>, such as QUIC <xref target="RFC9001"/>, implement replay protection after decryption to mitigate timing side-channel attacks.</t>
      </section>
      <section anchor="encoding-ct-tag-tuples">
        <name>Encoding (ct, tag) Tuples</name>
        <t>Applications <bcp14>MAY</bcp14> keep the ciphertext and the authentication tag in distinct structures or encode both as a single octet string C. In the latter case, the tag <bcp14>MUST</bcp14> immediately follow the ciphertext ct:</t>
        <t>C = ct || tag</t>
      </section>
    </section>
    <section anchor="AES-GCM-SST">
      <name>AES and Rijndael-256 in GCM-SST</name>
      <t>This section defines Advanced Encryption Standard (AES) and Rijndael with 256-bit keys and blocks (Rijndael-256) <xref target="Rijndael"/> in Galois Counter Mode with Strong Secure Tags.</t>
      <section anchor="aes-gcm-sst">
        <name>AES-GCM-SST</name>
        <t>When GCM-SSM is instantiated with AES (AES-GCM-SST), the keystream generator is AES in counter mode</t>
        <t>Z[i] = ENC(K, N || BE32(i))</t>
        <t>where ENC is the AES Cipher function <xref target="AES"/>. Big-endian counters align with existing implementations of AES in counter mode.</t>
      </section>
      <section anchor="rijndael-gcm-sst">
        <name>Rijndael-GCM-SST</name>
        <t>When GCM-SST is instantiated with Rijndael-256 (Rijndael-GCM-SST), the keystream generator is Rijndael-256 in counter mode</t>
        <t>Z[2i]   = ENC(K, N || BE32(i))[0]</t>
        <t>Z[2i+1] = ENC(K, N || BE32(i))[1]</t>
        <t>where ENC is the Rijndael-256 Cipher function <xref target="Rijndael"/>.</t>
      </section>
      <section anchor="instances">
        <name>AEAD Instances and Constraints</name>
        <t>We define nine AEAD instances, in the format of <xref target="RFC5116"/>, that use AES-GCM-SST and Rijndael-GCM-SST with tag lengths of 48, 96, and 112 bits. The key length and tag length are related to different security properties, and an application encrypting audio packets with short tags might require high confidentiality.</t>
        <table anchor="iana-algs">
          <name>AEAD Algorithms</name>
          <thead>
            <tr>
              <th align="left">Name</th>
              <th align="right">K_LEN (bytes)</th>
              <th align="right">P_MAX = A_MAX (bytes)</th>
              <th align="right">tag_length (bits)</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">AEAD_AES_128_GCM_SST_6</td>
              <td align="right">16</td>
              <td align="right">2<sup>36</sup> - 48</td>
              <td align="right">48</td>
            </tr>
            <tr>
              <td align="left">AEAD_AES_128_GCM_SST_12</td>
              <td align="right">16</td>
              <td align="right">2<sup>35</sup></td>
              <td align="right">96</td>
            </tr>
            <tr>
              <td align="left">AEAD_AES_128_GCM_SST_14</td>
              <td align="right">16</td>
              <td align="right">2<sup>19</sup></td>
              <td align="right">112</td>
            </tr>
            <tr>
              <td align="left">AEAD_AES_256_GCM_SST_6</td>
              <td align="right">32</td>
              <td align="right">2<sup>36</sup> - 48</td>
              <td align="right">48</td>
            </tr>
            <tr>
              <td align="left">AEAD_AES_256_GCM_SST_12</td>
              <td align="right">32</td>
              <td align="right">2<sup>35</sup></td>
              <td align="right">96</td>
            </tr>
            <tr>
              <td align="left">AEAD_AES_256_GCM_SST_14</td>
              <td align="right">32</td>
              <td align="right">2<sup>19</sup></td>
              <td align="right">112</td>
            </tr>
            <tr>
              <td align="left">AEAD_RIJNDAEL_GCM_SST_6</td>
              <td align="right">32</td>
              <td align="right">2<sup>36</sup> - 48</td>
              <td align="right">48</td>
            </tr>
            <tr>
              <td align="left">AEAD_RIJNDAEL_GCM_SST_12</td>
              <td align="right">32</td>
              <td align="right">2<sup>35</sup></td>
              <td align="right">96</td>
            </tr>
            <tr>
              <td align="left">AEAD_RIJNDAEL_GCM_SST_14</td>
              <td align="right">32</td>
              <td align="right">2<sup>19</sup></td>
              <td align="right">112</td>
            </tr>
          </tbody>
        </table>
        <t>Common parameters for the six AEAD instances:</t>
        <ul spacing="normal">
          <li>
            <t>N_MIN = N_MAX (minimum and maximum size of the nonce) is 12 octets for AES, while for Rijndael-256, it is 28 bytes.</t>
          </li>
          <li>
            <t>C_MAX (maximum size of the ciphertext and tag) is P_MAX + tag_length (in bytes)</t>
          </li>
          <li>
            <t>Q_MAX (maximum number of invocations of the encryption function) is 2<sup>32</sup> for AES-GCM-SST, while for Rijndael-GCM-SST, it is 2<sup>88</sup>.</t>
          </li>
          <li>
            <t>V_MAX (maximum number of invocations of the decryption function) is 2<sup>48</sup> for AES-GCM-SST, while for Rijndael-GCM-SST, it is 2<sup>88</sup>.</t>
          </li>
        </ul>
        <t>The maximum size of the plaintext (P_MAX) and the maximum size of the associated data (A_MAX) have been lowered from GCM <xref target="RFC5116"/>. To enable forgery probability close to ideal, even with maximum size plaintexts and associated data, we set P_MAX = A_MAX = min(2<sup>131 - tag_length</sup>, 2<sup>36</sup> - 48). Protocols that employ GCM-SST <bcp14>MAY</bcp14> impose stricter limits on P_MAX and A_MAX. Just like <xref target="RFC5116"/>, AES-GCM-SST and Rijndael-GCM-SST only allow a fixed nonce length (N_MIN = N_MAX) of 96 bits and 224 bits, respectively. For the AEAD algorithms in <xref target="iana-algs"/> the worst-case forgery probability is bounded by ≈ 1 / 2<sup>tag_length</sup> <xref target="Nyberg"/>. This is true for all allowed plaintext and associated data lengths.</t>
        <t>The V_MAX constraint ensures that the Bernstein bound factor is δ ≈ 1 for AES-GCM-SST in protocols where P_MAX + A_MAX ≈ 2<sup>16</sup>, such as QUIC <xref target="RFC9000"/>, and always δ ≈ 1 for Rijndael-GCM-SST. In addition to restricting the Bernstein bound factor, the Q_MAX constraint establishes a minimum threshold for the complexity of distinguishing attacks and a maximum threshold for the fraction of a plaintext bit that an attacker can recover. Since encryption and decryption queries play an equivalent role in the Bernstein bound, it follows that Q_MAX ≤ V_MAX. Protocols that employ GCM-SST <bcp14>MAY</bcp14> impose stricter limits on Q_MAX and V_MAX.</t>
        <t>Protocols utilizing AES-GCM-SST <bcp14>MUST</bcp14> enforce stricter limits on P_MAX, A_MAX, Q_MAX, and/or V_MAX to ensure that (P_MAX + A_MAX) ⋅ (Q_MAX + V_MAX) ⪅ 2<sup>66</sup>. This ensures that δ ≈ 1.</t>
        <t>Protocols utilizing AES-GCM-SST <bcp14>MUST</bcp14> enforce stricter limits on P_MAX and/or Q_MAX to ensure that Q_MAX ⋅ P_MAX ⪅ 2<sup>63</sup>. This aligns with <xref target="ANSSI"/> requirements and ensures that an attacker cannot recover more than ≈ 1 / 2<sup>10.47</sup> ≈ 0.0007 bits of the plaintexts <xref target="Entropy"/>.</t>
        <t>Refer to Sections <xref target="Int" format="counter"/>, <xref target="Conf" format="counter"/>, and <xref target="Comp" format="counter"/> for further details.</t>
      </section>
    </section>
    <section anchor="Security">
      <name>Security Considerations</name>
      <t>GCM-SST introduces an additional subkey H<sub>2</sub>, alongside the subkey H. The inclusion of H<sub>2</sub> enables truncated tags with forgery probabilities close to ideal. Both H and H<sub>2</sub> are derived for each nonce, which significantly decreases the probability of multiple successful forgeries. These changes are based on proven theoretical constructions and follows the recommendations in <xref target="Nyberg"/>. Inoue et al. <xref target="Inoue"/> prove that GCM-SST is a provably secure authenticated encryption mode, with security guaranteed for evaluations under fresh nonces, even if some earlier nonces have been reused.</t>
      <t>GCM-SST is designed for use in security protocols with replay protection. Every key <bcp14>MUST</bcp14> be randomly chosen from a uniform distribution. GCM-SST <bcp14>MUST</bcp14> be used in a nonce-respecting setting: for a given key, a nonce <bcp14>MUST</bcp14> only be used once in the encryption function and only once in a successful decryption function call. The nonce <bcp14>MAY</bcp14> be public or predictable. It can be a counter, the output of a permutation, or a generator with a long period. The reuse of nonces in successful encryption and decryption function calls enables universal forgery, as demonstrated by <xref target="Joux"/>, <xref target="Lindell"/>, and <xref target="Inoue"/>. Therefore, GCM-SST <bcp14>MUST</bcp14> be used with replay protection. Additionally, GCM-SST <bcp14>MUST NOT</bcp14> be used with random nonces, as this significantly reduces the efficiency of replay protection. For a given tag length, GCM-SST has strictly better security properties than GCM. GCM allows universal forgery with lower complexity than GCM-SST, even when nonces are not reused. Implementations <bcp14>SHOULD</bcp14> add randomness to the nonce by XORing a unique number like a sequence number with a per-key random secret salt of the same length as the nonce. This significantly improves security against precomputation attacks and multi-key attacks <xref target="Bellare"/> and is for example implemented in TLS 1.3 <xref target="RFC8446"/>, OSCORE <xref target="RFC8613"/>, and <xref target="Ascon"/>. By increasing the nonce length from 96 bits to 224 bits, Rijndael-GCM-SST can offer significantly greater security against precomputation and multi-key attacks compared to AES-256-GCM-SST.</t>
      <t>Refer to <xref target="onemany"/> for considerations on using GCM-SST in multicast or broadcast scenarios. Unless otherwise specified, formulas for expected number of forgeries apply to unicast scenarios.</t>
      <section anchor="Int">
        <name>Integrity</name>
        <t>The GCM-SST tag_length <bcp14>SHOULD NOT</bcp14> be smaller than 4 bytes and cannot be larger than 16 bytes. Let ℓ = (P_MAX + A_MAX) / 16 + 1. When tag_length &lt; 128 - log2(ℓ) bits, the worst-case forgery probability is bounded by ≈ 1 / 2<sup>tag_length</sup> <xref target="Nyberg"/>. The tags in the AEAD algorithms listed in <xref target="instances"/> therefore have an almost perfect security level. This is significantly better than GCM where the security level is only tag_length - log2(ℓ) bits <xref target="GCM"/>. For a graph of the forgery probability, refer to Fig. 3 in <xref target="Inoue"/>. As one can note, for 128-bit tags and long messages, the forgery probability is not close to ideal and similar to GCM <xref target="GCM"/>. If tag verification fails, the plaintext and expected_tag <bcp14>MUST NOT</bcp14> be given as output. In GCM-SST, the full_tag is independent of the specified tag length unless the application explicitly incorporates tag length into the keystream or the nonce.</t>
        <t>The expected number of forgeries, when tag_length &lt; 128 - log2(ℓ) bits, depends on the keystream generator. For an ideal keystream generator, the expected number of forgeries is ≈ v / 2<sup>tag_length</sup>, where v is the number of decryption queries, which is ideal. For AES-GCM-SST, the expected number of forgeries is ≈ δ<sub>128</sub> ⋅ v / 2<sup>tag_length</sup>, where the Bernstein bound factor δ<sub>b</sub> ⪅ 1 + (q + v)<sup>2</sup> ⋅ ℓ<sup>2</sup> / 2<sup>b+1</sup>, which is ideal when δ<sub>128</sub> ≈ 1. This far outperforms AES-GCM, where the expected number of forgeries is ≈ δ<sub>128</sub> ⋅ v<sup>2</sup> ⋅ ℓ / 2<sup>tag_length+1</sup>. For Rijndael-GCM-SST, the expected number of forgeries is ≈ δ<sub>256</sub> ⋅ v / 2<sup>tag_length</sup> ≈ v / 2<sup>tag_length</sup>, which is ideal. For further details on the integrity advantages and expected number of forgeries for GCM and GCM-SST, see <xref target="Iwata"/>, <xref target="Inoue"/>, <xref target="Bernstein"/>, and <xref target="Multiple"/>. BSI states that an ideal MAC with a 96-bit tag length is considered acceptable for most applications <xref target="BSI"/>, a requirement that GCM-SST with 96-bit tags satisfies when δ ≈ 1. Achieving a comparable level of security with GCM, CCM, or Poly1305 is nearly impossible.</t>
      </section>
      <section anchor="Conf">
        <name>Confidentiality</name>
        <t>The confidentiality offered by GCM-SST against passive attackers depends on the keystream generator. For block ciphers in counter mode it is determined by the birthday bound, with AES-based ciphers particularly constrained by their narrow 128-bit block size. For AES-GCM-SST, the confidentiality is equal to AES-GCM <xref target="GCM"/>. Regardless of key length, an attacker can mount a distinguishing attack with a complexity of approximately 2<sup>129</sup> / σ, where σ ⪅ P_MAX ⋅ Q_MAX / 16 is is the total plaintext length measured in 128-bit chunks. In contrast, the confidentiality offered by Rijndael-GCM-SST against passive attackers is significantly higher. The complexity of distinguishing attacks for Rijndael-GCM-SST is approximately 2<sup>258</sup> / σ. McGrew, Leurent, and Sibleyras <xref target="Impossible"/><xref target="Difference"/> demonstrate that for block ciphers in counter mode, an attacker with partial knowledge of the plaintext can execute plaintext-recovery attacks against counter mode with roughly the same complexity (up to logaritmic factors) as distinguishing attacks. However, Preuß Mattsson <xref target="Entropy"/> demonstrated that an attacker cannot recover more than ≈ σ<sup>2</sup> / 2<sup>b</sup> bits of the plaintext, where b is the block size. Given the constraints outlined in <xref target="instances"/>, an attacker cannot recover more than 0.0007 bits of AES-GCM-SST plaintexts.</t>
        <t>While Rijndael-256 in counter mode can provide 128-bit confidentiality for plaintexts much larger than 2<sup>36</sup> octets, GHASH and POLYVAL do not offer adequate integrity for long plaintexts. To ensure robust integrity for long plaintexts, an AEAD mode would need to replace POLYVAL with a MAC that has better security properties, such as a Carter-Wegman MAC in a larger field <xref target="Degabriele"/> or other alternatives such as <xref target="SMAC"/>.</t>
        <t>The confidentiality offered by GCM-SST against active attackers is directly linked to the forgery probability. Depending on the protocol and application, forgeries can significantly compromise privacy, in addition to affecting integrity and authenticity. It <bcp14>MUST</bcp14> be assumed that attackers always receive feedback on the success or failure of their forgery attempts. Therefore, attacks on integrity, authenticity, and confidentiality <bcp14>MUST</bcp14> all be carefully evaluated when selecting an appropriate tag length.</t>
      </section>
      <section anchor="weak-keys">
        <name>Weak keys</name>
        <t>In general, there is a very small possibility in GCM-SST that either or both of the subkeys H and H<sub>2</sub> are zero, so called weak keys. If H is zero, the authentication tag depends only on the length of P and A and not on their content. If H<sub>2</sub> is zero, the authentication tag does not depend on P and A. Due to the masking with M, there are no obvious ways to detect this condition for an attacker, and the specification admits this possibility in favor of complicating the flow with additional checks and regeneration of values. In AES-GCM-SST, H and H<sub>2</sub> are generated with a permutation on different input, so H and H<sub>2</sub> cannot both be zero.</t>
      </section>
      <section anchor="replay-protection">
        <name>Replay Protection</name>
        <t>The details of the replay protection mechanism is determined by the security protocol utilizing GCM-SST. If the nonce includes a sequence number, it can be used for replay protection. Alternatively, a separate sequence number can be used, provided there is a one-to-one mapping between sequence numbers and nonces. The choice of a replay protection mechanism depends on factors such as the expected degree of packet reordering, as well as protocol and implementation details. For examples of replay protection mechanisms, see <xref target="RFC4303"/> and <xref target="RFC6479"/>. Implementing replay protection by requiring ciphertexts to arrive in order and terminating the connection if a single decryption fails is <bcp14>NOT RECOMMENDED</bcp14> as this approach reduces robustness and availability while exposing the system to denial-of-service attacks <xref target="Robust"/>.</t>
      </section>
      <section anchor="Comp">
        <name>Comparison with ChaCha20-Poly1305 and AES-GCM</name>
        <t><xref target="comp1"/> compares the integrity of GCM-SST, ChaCha20-Poly1305 <xref target="RFC7539"/>, and AES-GCM <xref target="RFC5116"/> in unicast security protocols with replay protection, where v represents the number of decryption queries. In Poly1305 and GCM, the forgery probability depends on ℓ = (P_MAX + A_MAX) / 16 + 1. In AES-based algorithms, the Bernstein bound introduces a factor δ ⪅ 1 + (q + v)<sup>2</sup> ⋅ ℓ<sup>2</sup> / 2<sup>129</sup>. GCM-SST requires δ ≈ 1, a property not mandated by GCM. Notably, GCM does not provide any reforgeability resistance, which significantly increases the expected number of forgeries. Refer to <xref target="Procter"/>, <xref target="Iwata"/>, and <xref target="Multiple"/> for further details.</t>
        <table anchor="comp1">
          <name>Comparison of integrity among GCM-SST, ChaCha20-Poly1305, and AES-GCM in unicast security protocols with replay protection. v is the number of decryption queries, ℓ is the maximum length of plaintext and associated data, measured in 128-bit chunks, and δ is the Bernstein bound factor.</name>
          <thead>
            <tr>
              <th align="left">Name</th>
              <th align="right">Forgery probability before first forgery</th>
              <th align="right">Forgery probability after first forgery</th>
              <th align="right">Expected number of forgeries</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">GCM_SST_14</td>
              <td align="right">1 / 2<sup>112</sup></td>
              <td align="right">1 / 2<sup>112</sup></td>
              <td align="right">v / 2<sup>112</sup></td>
            </tr>
            <tr>
              <td align="left">GCM_SST_12</td>
              <td align="right">1 / 2<sup>96</sup></td>
              <td align="right">1 / 2<sup>96</sup></td>
              <td align="right">v / 2<sup>96</sup></td>
            </tr>
            <tr>
              <td align="left">POLY1305</td>
              <td align="right">ℓ / 2<sup>103</sup></td>
              <td align="right">ℓ / 2<sup>103</sup></td>
              <td align="right">v ⋅ ℓ / 2<sup>103</sup></td>
            </tr>
            <tr>
              <td align="left">GCM</td>
              <td align="right">ℓ / 2<sup>128</sup></td>
              <td align="right">1</td>
              <td align="right">δ ⋅ v<sup>2</sup> ⋅ ℓ / 2<sup>129</sup></td>
            </tr>
          </tbody>
        </table>
        <t><xref target="comp2"/> compares the integrity of GCM-SST, ChaCha20-Poly1305 <xref target="RFC7539"/>, and AES-GCM <xref target="RFC5116"/> in unicast QUIC <xref target="RFC9000"/><xref target="RFC9001"/>, a security protocol with mandatory replay protection, and where the combined size of plaintext and associated data is less than ≈ 2<sup>16</sup> bytes (ℓ ≈ 2<sup>12</sup>). GCM_SST_14 and GCM_SST_12 provide better integrity than ChaCha20-Poly1305 <xref target="RFC7539"/> and AES-GCM <xref target="RFC5116"/>, while also reducing overhead by 2–4 bytes. For GCM-SST and ChaCha20-Poly1305, the expected number of forgeries is linear in v when replay protection is employed. ChaCha20-Poly1305 achieves a security level equivalent to that of an ideal MAC with a length of 91 bits. For AES-GCM, replay protection does not mitigate reforgeries, the expected number of forgeries grows quadratically with v, and GCM provides significantly worse integrity than GCM-SST and ChaCha20-Poly1305 unless v is kept very small. With v = 2<sup>52</sup> as allowed for AES-GCM in QUIC <xref target="RFC9001"/>, the expected number of forgeries for AES-GCM is equivalent to that of an ideal MAC with a length of 64.4 bits. The effective tag length of AES-GCM in QUIC is 117 - log2(δ ⋅ v).</t>
        <table anchor="comp2">
          <name>Comparison of integrity among GCM-SST, ChaCha20-Poly1305, and AES-GCM in unicast QUIC, where the maximum packet size is 65536 bytes.</name>
          <thead>
            <tr>
              <th align="left">Name</th>
              <th align="right">Tag length (bytes)</th>
              <th align="right">Forgery probability before first forgery</th>
              <th align="right">Forgery probability after first forgery</th>
              <th align="right">Expected number of forgeries</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">GCM_SST_14</td>
              <td align="right">14</td>
              <td align="right">1 / 2<sup>112</sup></td>
              <td align="right">1 / 2<sup>112</sup></td>
              <td align="right">v / 2<sup>112</sup></td>
            </tr>
            <tr>
              <td align="left">GCM_SST_12</td>
              <td align="right">12</td>
              <td align="right">1 / 2<sup>96</sup></td>
              <td align="right">1 / 2<sup>96</sup></td>
              <td align="right">v / 2<sup>96</sup></td>
            </tr>
            <tr>
              <td align="left">POLY1305</td>
              <td align="right">16</td>
              <td align="right">1 / 2<sup>91</sup></td>
              <td align="right">1 / 2<sup>91</sup></td>
              <td align="right">v / 2<sup>91</sup></td>
            </tr>
            <tr>
              <td align="left">GCM</td>
              <td align="right">16</td>
              <td align="right">1 / 2<sup>116</sup></td>
              <td align="right">1</td>
              <td align="right">δ ⋅ v<sup>2</sup> / 2<sup>117</sup></td>
            </tr>
          </tbody>
        </table>
        <t><xref target="comp3"/> compares the confidentiality of Rijndael-GCM-SST, AES-256-GCM-SST, SNOW 5G-GCM-SST, and ChaCha20-Poly1305 <xref target="RFC7539"/>, all of which use 256-bit keys, against passive attackers. The confidentiality of block ciphers in counter mode is determined by the birthday bound, with AES-based ciphers particularly constrained by their narrow 128-bit block size. While plaintext-recovery attacks on block ciphers in counter mode have a complexity similar to distinguishing attacks, the attacker cannot recover more than ≈ σ<sup>2</sup> / 2<sup>b</sup> bits of the plaintexts <xref target="Entropy"/>.</t>
        <table anchor="comp3">
          <name>Comparison of confidentiality against passive attackers among Rijndael-GCM-SST, SNOW 5G-GCM-SST, ChaCha20-Poly1305, and AES-256-GCM. σ is is the total plaintext length measured in 128-bit chunks.</name>
          <thead>
            <tr>
              <th align="left">Name</th>
              <th align="center">Key size (bits)</th>
              <th align="center">Complexity of distinguishing attacks</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">CHACHA20_POLY1305</td>
              <td align="center">256</td>
              <td align="center">2<sup>256</sup></td>
            </tr>
            <tr>
              <td align="left">SNOW_5G_GCM_SST</td>
              <td align="center">256</td>
              <td align="center">2<sup>256</sup></td>
            </tr>
            <tr>
              <td align="left">RIJNDAEL_GCM_SST</td>
              <td align="center">256</td>
              <td align="center">≈ 2<sup>258</sup> / σ</td>
            </tr>
            <tr>
              <td align="left">AES_256_GCM_SST</td>
              <td align="center">256</td>
              <td align="center">≈ 2<sup>129</sup> / σ</td>
            </tr>
          </tbody>
        </table>
      </section>
      <section anchor="onemany">
        <name>Multicast and Broadcast</name>
        <t>While GCM-SST offers stronger security properties than GCM for a given tag length in multicast or broadcast contexts, it does not behave exactly like an ideal MAC. With an ideal MAC, a successful forgery against one recipient allows the attacker to reuse the same forgery against all other recipients. In contrast, with GCM, a successful forgery against one recipient enables the attacker to generate an unlimited number of new forgeries for all recipients.</t>
        <t>With GCM-SST, a few successful forgeries against a few recipients allow the attacker to create one new forgery for all other recipients. While the total number of forgeries in GCM-SST matches that of an ideal MAC, the diversity of these forgeries is higher. To achieve one distinct forgery per recipient with an ideal MAC, the attacker would need to send on average 2<sup>tag_length</sup> forgery attempts to each recipient. GCM-SST performs equally well or better than an ideal MAC with length tag_length - log2(r), where r is the number of recipients. Thus, in one-to-many scenarios with replay protection, the expected number of distinct forgeries is ≈ v ⋅ r / 2<sup>tag_length</sup>, and the effective tag length of GCM-SST is tag_length - log2(r).</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>IANA is requested to assign the entries in the first column of <xref target="iana-algs"/> to the "AEAD Algorithms" registry under the "Authenticated Encryption with Associated Data (AEAD) Parameters" heading with this document as reference.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <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="RFC8452">
          <front>
            <title>AES-GCM-SIV: Nonce Misuse-Resistant Authenticated Encryption</title>
            <author fullname="S. Gueron" initials="S." surname="Gueron"/>
            <author fullname="A. Langley" initials="A." surname="Langley"/>
            <author fullname="Y. Lindell" initials="Y." surname="Lindell"/>
            <date month="April" year="2019"/>
            <abstract>
              <t>This memo specifies two authenticated encryption algorithms that are nonce misuse resistant -- that is, they do not fail catastrophically if a nonce is repeated.</t>
              <t>This document is the product of the Crypto Forum Research Group.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8452"/>
          <seriesInfo name="DOI" value="10.17487/RFC8452"/>
        </reference>
        <reference anchor="AES" target="https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.197-upd1.pdf">
          <front>
            <title>Advanced Encryption Standard (AES)</title>
            <author>
              <organization/>
            </author>
            <date year="2023" month="May"/>
          </front>
          <seriesInfo name="NIST" value="Federal Information Processing Standards Publication 197"/>
        </reference>
        <reference anchor="Rijndael" target="https://csrc.nist.gov/csrc/media/projects/cryptographic-standards-and-guidelines/documents/aes-development/rijndael-ammended.pdf">
          <front>
            <title>AES Proposal: Rijndael</title>
            <author initials="" surname="Joan Daemen">
              <organization/>
            </author>
            <author initials="" surname="Vincent Rijmen">
              <organization/>
            </author>
            <date year="2003" month="September"/>
          </front>
        </reference>
        <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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC3711">
          <front>
            <title>The Secure Real-time Transport Protocol (SRTP)</title>
            <author fullname="M. Baugher" initials="M." surname="Baugher"/>
            <author fullname="D. McGrew" initials="D." surname="McGrew"/>
            <author fullname="M. Naslund" initials="M." surname="Naslund"/>
            <author fullname="E. Carrara" initials="E." surname="Carrara"/>
            <author fullname="K. Norrman" initials="K." surname="Norrman"/>
            <date month="March" year="2004"/>
            <abstract>
              <t>This document describes the Secure Real-time Transport Protocol (SRTP), a profile of the Real-time Transport Protocol (RTP), which can provide confidentiality, message authentication, and replay protection to the RTP traffic and to the control traffic for RTP, the Real-time Transport Control Protocol (RTCP). [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3711"/>
          <seriesInfo name="DOI" value="10.17487/RFC3711"/>
        </reference>
        <reference anchor="RFC4303">
          <front>
            <title>IP Encapsulating Security Payload (ESP)</title>
            <author fullname="S. Kent" initials="S." surname="Kent"/>
            <date month="December" year="2005"/>
            <abstract>
              <t>This document describes an updated version of the Encapsulating Security Payload (ESP) protocol, which is designed to provide a mix of security services in IPv4 and IPv6. ESP is used to provide confidentiality, data origin authentication, connectionless integrity, an anti-replay service (a form of partial sequence integrity), and limited traffic flow confidentiality. This document obsoletes RFC 2406 (November 1998). [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4303"/>
          <seriesInfo name="DOI" value="10.17487/RFC4303"/>
        </reference>
        <reference anchor="RFC6479">
          <front>
            <title>IPsec Anti-Replay Algorithm without Bit Shifting</title>
            <author fullname="X. Zhang" initials="X." surname="Zhang"/>
            <author fullname="T. Tsou" initials="T." surname="Tsou"/>
            <date month="January" year="2012"/>
            <abstract>
              <t>This document presents an alternate method to do the anti-replay checks and updates for IP Authentication Header (AH) and Encapsulating Security Protocol (ESP). The method defined in this document obviates the need for bit shifting and it reduces the number of times an anti-replay window is adjusted. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6479"/>
          <seriesInfo name="DOI" value="10.17487/RFC6479"/>
        </reference>
        <reference anchor="RFC7539">
          <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="May" year="2015"/>
            <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>This document does not introduce any new crypto, but is meant to serve as a stable reference and an implementation guide. It is a product of the Crypto Forum Research Group (CFRG).</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7539"/>
          <seriesInfo name="DOI" value="10.17487/RFC7539"/>
        </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="RFC8613">
          <front>
            <title>Object Security for Constrained RESTful Environments (OSCORE)</title>
            <author fullname="G. Selander" initials="G." surname="Selander"/>
            <author fullname="J. Mattsson" initials="J." surname="Mattsson"/>
            <author fullname="F. Palombini" initials="F." surname="Palombini"/>
            <author fullname="L. Seitz" initials="L." surname="Seitz"/>
            <date month="July" year="2019"/>
            <abstract>
              <t>This document defines Object Security for Constrained RESTful Environments (OSCORE), a method for application-layer protection of the Constrained Application Protocol (CoAP), using CBOR Object Signing and Encryption (COSE). OSCORE provides end-to-end protection between endpoints communicating using CoAP or CoAP-mappable HTTP. OSCORE is designed for constrained nodes and networks supporting a range of proxy operations, including translation between different transport protocols.</t>
              <t>Although an optional functionality of CoAP, OSCORE alters CoAP options processing and IANA registration. Therefore, this document updates RFC 7252.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8613"/>
          <seriesInfo name="DOI" value="10.17487/RFC8613"/>
        </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="RFC9605">
          <front>
            <title>Secure Frame (SFrame): Lightweight Authenticated Encryption for Real-Time Media</title>
            <author fullname="E. Omara" initials="E." surname="Omara"/>
            <author fullname="J. Uberti" initials="J." surname="Uberti"/>
            <author fullname="S. G. Murillo" initials="S. G." surname="Murillo"/>
            <author fullname="R. Barnes" initials="R." role="editor" surname="Barnes"/>
            <author fullname="Y. Fablet" initials="Y." surname="Fablet"/>
            <date month="August" year="2024"/>
            <abstract>
              <t>This document describes the Secure Frame (SFrame) end-to-end encryption and authentication mechanism for media frames in a multiparty conference call, in which central media servers (Selective Forwarding Units or SFUs) can access the media metadata needed to make forwarding decisions without having access to the actual media.</t>
              <t>This mechanism differs from the Secure Real-Time Protocol (SRTP) in that it is independent of RTP (thus compatible with non-RTP media transport) and can be applied to whole media frames in order to be more bandwidth efficient.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9605"/>
          <seriesInfo name="DOI" value="10.17487/RFC9605"/>
        </reference>
        <reference anchor="I-D.ietf-moq-transport">
          <front>
            <title>Media over QUIC Transport</title>
            <author fullname="Luke Curley" initials="L." surname="Curley">
              <organization>Discord</organization>
            </author>
            <author fullname="Kirill Pugin" initials="K." surname="Pugin">
              <organization>Meta</organization>
            </author>
            <author fullname="Suhas Nandakumar" initials="S." surname="Nandakumar">
              <organization>Cisco</organization>
            </author>
            <author fullname="Victor Vasiliev" initials="V." surname="Vasiliev">
              <organization>Google</organization>
            </author>
            <author fullname="Ian Swett" initials="I." surname="Swett">
              <organization>Google</organization>
            </author>
            <date day="12" month="February" year="2025"/>
            <abstract>
              <t>   This document defines the core behavior for Media over QUIC Transport
   (MOQT), a media transport protocol designed to operate over QUIC and
   WebTransport, which have similar functionality.  MOQT allows a
   producer of media to publish data and have it consumed via
   subscription by a multiplicity of endpoints.  It supports
   intermediate content distribution networks and is designed for high
   scale and low latency distribution.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-moq-transport-08"/>
        </reference>
        <reference anchor="I-D.irtf-cfrg-aegis-aead">
          <front>
            <title>The AEGIS Family of Authenticated Encryption Algorithms</title>
            <author fullname="Frank Denis" initials="F." surname="Denis">
              <organization>Fastly Inc.</organization>
            </author>
            <author fullname="Samuel Lucas" initials="S." surname="Lucas">
              <organization>Individual Contributor</organization>
            </author>
            <date day="17" month="February" year="2025"/>
            <abstract>
              <t>   This document describes the AEGIS-128L, AEGIS-256, AEGIS-128X, and
   AEGIS-256X AES-based authenticated encryption algorithms designed for
   high-performance applications.

   The document is a product of the Crypto Forum Research Group (CFRG).
   It is not an IETF product and is not a standard.

Discussion Venues

   This note is to be removed before publishing as an RFC.

   Source for this draft and an issue tracker can be found at
   https://github.com/cfrg/draft-irtf-cfrg-aegis-aead.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-irtf-cfrg-aegis-aead-16"/>
        </reference>
        <reference anchor="UIA2" target="https://www.gsma.com/solutions-and-impact/technologies/security/wp-content/uploads/2019/05/uea2uia2d1v21.pdf">
          <front>
            <title>UEA2 and UIA2 Specification</title>
            <author initials="" surname="ETSI SAGE">
              <organization/>
            </author>
            <date year="2009" month="March"/>
          </front>
        </reference>
        <reference anchor="EIA3" target="https://www.gsma.com/solutions-and-impact/technologies/security/wp-content/uploads/2019/05/EEA3_EIA3_specification_v1_8.pdf">
          <front>
            <title>128-EEA3 and 128-EIA3 Specification</title>
            <author initials="" surname="ETSI SAGE">
              <organization/>
            </author>
            <date year="2019" month="January"/>
          </front>
        </reference>
        <reference anchor="BSI" target="https://www.bsi.bund.de/SharedDocs/Downloads/EN/BSI/Publications/TechGuidelines/TG02102/BSI-TR-02102-1.html">
          <front>
            <title>Cryptographic Mechanisms Recommendations and Key Lengths</title>
            <author>
              <organization/>
            </author>
            <date year="2024" month="February"/>
          </front>
          <seriesInfo name="BSI" value="Technical Guideline TR-02102-1"/>
        </reference>
        <reference anchor="ANSSI" target="https://cyber.gouv.fr/sites/default/files/2021/03/anssi-guide-mecanismes_crypto-2.04.pdf">
          <front>
            <title>Guide des mécanismes cryptographiques</title>
            <author>
              <organization/>
            </author>
            <date year="2020" month="January"/>
          </front>
          <seriesInfo name="ANSSI" value="PG-083"/>
        </reference>
        <reference anchor="Multiple" target="https://csrc.nist.gov/csrc/media/projects/block-cipher-techniques/documents/bcm/comments/cwc-gcm/multi-forge-01.pdf">
          <front>
            <title>Multiple Forgery Attacks Against Message Authentication Codes</title>
            <author initials="" surname="David McGrew">
              <organization/>
            </author>
            <author initials="" surname="Scott Fluhrer">
              <organization/>
            </author>
            <date year="2005" month="May"/>
          </front>
        </reference>
        <reference anchor="Difference" target="https://link.springer.com/chapter/10.1007/978-3-319-78375-8_24">
          <front>
            <title>The Missing Difference Problem, and Its Applications to Counter Mode Encryption</title>
            <author initials="" surname="Gaëtan Leurent">
              <organization/>
            </author>
            <author initials="" surname="Ferdinand Sibleyras">
              <organization/>
            </author>
            <date year="2018" month="March"/>
          </front>
        </reference>
        <reference anchor="Impossible" target="https://eprint.iacr.org/2012/623.pdf">
          <front>
            <title>Impossible plaintext cryptanalysis and probable-plaintext collision attacks of 64-bit block cipher modes</title>
            <author initials="" surname="David McGrew">
              <organization/>
            </author>
            <date year="2012" month="November"/>
          </front>
        </reference>
        <reference anchor="Reforge" target="https://eprint.iacr.org/2017/332.pdf">
          <front>
            <title>Reforgeability of Authenticated Encryption Schemes</title>
            <author initials="" surname="Christian Forler">
              <organization/>
            </author>
            <author initials="" surname="Eik List">
              <organization/>
            </author>
            <author initials="" surname="Stefan Lucks">
              <organization/>
            </author>
            <author initials="" surname="akob Wenzel">
              <organization/>
            </author>
            <date year="2017" month="April"/>
          </front>
        </reference>
        <reference anchor="Inoue" target="https://eprint.iacr.org/2024/1928.pdf">
          <front>
            <title>Generic Security of GCM-SST</title>
            <author initials="" surname="Akiko Inoue">
              <organization/>
            </author>
            <author initials="" surname="Ashwin Jha">
              <organization/>
            </author>
            <author initials="" surname="Bart Mennink">
              <organization/>
            </author>
            <author initials="" surname="Kazuhiko Minematsu">
              <organization/>
            </author>
            <date year="2024" month="November"/>
          </front>
        </reference>
        <reference anchor="Iwata" target="https://eprint.iacr.org/2012/438.pdf">
          <front>
            <title>Breaking and Repairing GCM Security Proofs</title>
            <author initials="" surname="Tetsu Iwata">
              <organization/>
            </author>
            <author initials="" surname="Keisuke Ohashi">
              <organization/>
            </author>
            <author initials="" surname="Kazuhiko Minematsu">
              <organization/>
            </author>
            <date year="2012" month="August"/>
          </front>
        </reference>
        <reference anchor="Bernstein" target="https://cr.yp.to/antiforgery/permutations-20050323.pdf">
          <front>
            <title>Stronger Security Bounds for Permutations</title>
            <author initials="" surname="Daniel J Bernstein">
              <organization/>
            </author>
            <date year="2005" month="March"/>
          </front>
        </reference>
        <reference anchor="Ducker" target="https://rd.springer.com/chapter/10.1007/978-3-030-97652-1_18">
          <front>
            <title>Software Optimization of Rijndael for Modern x86-64 Platforms</title>
            <author initials="" surname="Nir Drucker">
              <organization/>
            </author>
            <author initials="" surname="Shay Gueron">
              <organization/>
            </author>
            <date year="2022" month="May"/>
          </front>
        </reference>
        <reference anchor="Bellare" target="https://eprint.iacr.org/2016/564.pdf">
          <front>
            <title>The Multi-User Security of Authenticated Encryption: AES-GCM in TLS 1.3</title>
            <author initials="M." surname="Bellare">
              <organization/>
            </author>
            <author initials="B." surname="Tackmann">
              <organization/>
            </author>
            <date year="2017" month="November"/>
          </front>
        </reference>
        <reference anchor="Procter" target="https://eprint.iacr.org/2014/613.pdf">
          <front>
            <title>A Security Analysis of the Composition of ChaCha20 and Poly1305</title>
            <author initials="" surname="Gordon Procter">
              <organization/>
            </author>
            <date year="2014" month="August"/>
          </front>
        </reference>
        <reference anchor="SAGE23" target="https://www.3gpp.org/ftp/TSG_SA/WG3_Security/TSGS3_110_Athens/docs/S3-230642.zip">
          <front>
            <title>Specification of the 256-bit air interface algorithms</title>
            <author initials="" surname="ETSI SAGE">
              <organization/>
            </author>
            <date year="2023" month="February"/>
          </front>
        </reference>
        <reference anchor="SAGE24" target="https://www.3gpp.org/ftp/tsg_sa/WG3_Security/TSGS3_117_Maastricht/docs/S3-243394.zip">
          <front>
            <title>Version 2.0 of 256-bit Confidentiality and Integrity Algorithms for the Air Interface</title>
            <author initials="" surname="ETSI SAGE">
              <organization/>
            </author>
            <date year="2024" month="August"/>
          </front>
        </reference>
        <reference anchor="WID23" target="https://www.3gpp.org/ftp/tsg_sa/WG3_Security/TSGS3_113_Chicago/Docs/S3-235072.zip">
          <front>
            <title>New WID on Milenage-256 algorithm</title>
            <author initials="" surname="3GPP">
              <organization/>
            </author>
            <date year="2023" month="November"/>
          </front>
        </reference>
        <reference anchor="WID24" target="https://www.3gpp.org/ftp/tsg_sa/TSG_SA/TSGS_103_Maastricht_2024-03/Docs/SP-240476.zip">
          <front>
            <title>New WID on Addition of 256-bit security Algorithms</title>
            <author initials="" surname="3GPP">
              <organization/>
            </author>
            <date year="2024" month="March"/>
          </front>
        </reference>
        <reference anchor="ZUC" target="https://eprint.iacr.org/2021/1439">
          <front>
            <title>An Addendum to the ZUC-256 Stream Cipher</title>
            <author initials="" surname="ZUC Design Team">
              <organization/>
            </author>
            <date year="2024" month="September"/>
          </front>
        </reference>
        <reference anchor="Plans" target="https://csrc.nist.gov/pubs/sp/800/197/iprd">
          <front>
            <title>NIST Proposes to Standardize a Wider Variant of AES</title>
            <author initials="" surname="NIST">
              <organization/>
            </author>
            <date year="2024" month="December"/>
          </front>
        </reference>
        <reference anchor="Comments38B" target="https://csrc.nist.gov/csrc/media/Projects/crypto-publication-review-project/documents/initial-comments/sp800-38b-initial-public-comments-2024.pdf">
          <front>
            <title>Public Comments on SP 800-38B</title>
            <author initials="" surname="NIST">
              <organization/>
            </author>
            <date year="2024" month="September"/>
          </front>
        </reference>
        <reference anchor="Sec5G" target="https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3169">
          <front>
            <title>Security architecture and procedures for 5G System</title>
            <author initials="" surname="3GPP TS 33 501">
              <organization/>
            </author>
            <date year="2024" month="September"/>
          </front>
        </reference>
        <reference anchor="PDCP" target="https://portal.3gpp.org/desktopmodules/Specifications/SpecificationDetails.aspx?specificationId=3196">
          <front>
            <title>NR; Packet Data Convergence Protocol (PDCP) specification</title>
            <author initials="" surname="3GPP TS 38 323">
              <organization/>
            </author>
            <date year="2024" month="December"/>
          </front>
        </reference>
        <reference anchor="Entropy" target="https://eprint.iacr.org/2024/1111.pdf">
          <front>
            <title>Collision-Based Attacks on Block Cipher Modes - Exploiting Collisions and Their Absence</title>
            <author initials="J." surname="Preuß Mattsson">
              <organization/>
            </author>
            <date year="2025" month="February"/>
          </front>
        </reference>
        <reference anchor="Lindell" target="https://mailarchive.ietf.org/arch/browse/cfrg/?gbt=1&amp;index=cWpv0QgX2ltkWhtd3R9pEW7E1CA">
          <front>
            <title>Comment on AES-GCM-SST</title>
            <author initials="Y." surname="Lindell">
              <organization/>
            </author>
            <date year="2024" month="May"/>
          </front>
        </reference>
        <reference anchor="Degabriele" target="https://doi.org/10.3929/ethz-b-000654260">
          <front>
            <title>SoK: Efficient Design and Implementation of Polynomial Hash Functions over Prime Fields</title>
            <author initials="J." surname="Degabriele">
              <organization/>
            </author>
            <author initials="J." surname="Gilcher">
              <organization/>
            </author>
            <author initials="J." surname="Govinden">
              <organization/>
            </author>
            <author initials="K." surname="Paterson">
              <organization/>
            </author>
            <date year="2024" month="May"/>
          </front>
        </reference>
        <reference anchor="SMAC" target="https://eprint.iacr.org/2024/819">
          <front>
            <title>A new stand-alone MAC construct called SMAC</title>
            <author initials="D." surname="Wang">
              <organization/>
            </author>
            <author initials="A." surname="Maximov">
              <organization/>
            </author>
            <author initials="P." surname="Ekdahl">
              <organization/>
            </author>
            <author initials="T." surname="Johansson">
              <organization/>
            </author>
            <date year="2024" month="June"/>
          </front>
        </reference>
        <reference anchor="AEZ" target="https://eprint.iacr.org/2014/793.pdf">
          <front>
            <title>Robust Authenticated-Encryption: AEZ and the Problem that it Solves</title>
            <author initials="" surname="Viet Tung Hoang">
              <organization/>
            </author>
            <author initials="" surname="Ted Krovetz">
              <organization/>
            </author>
            <author initials="" surname="Phillip Rogaway">
              <organization/>
            </author>
            <date year="2017" month="March"/>
          </front>
        </reference>
        <reference anchor="Robust" target="https://link.springer.com/article/10.1007/s00145-023-09489-9">
          <front>
            <title>Robust Channels: Handling Unreliable Networks in the Record Layers of QUIC and DTLS 1.3</title>
            <author initials="M." surname="Fischlin">
              <organization/>
            </author>
            <author initials="F." surname="Günther">
              <organization/>
            </author>
            <author initials="C." surname="Janson">
              <organization/>
            </author>
            <date year="2024" month="January"/>
          </front>
        </reference>
        <reference anchor="Revise" target="https://csrc.nist.gov/news/2023/proposal-to-revise-sp-800-38d">
          <front>
            <title>Announcement of Proposal to Revise SP 800-38D</title>
            <author initials="" surname="NIST">
              <organization/>
            </author>
            <date year="2023" month="August"/>
          </front>
        </reference>
        <reference anchor="SNOW" target="https://eprint.iacr.org/2021/236">
          <front>
            <title>SNOW-Vi: an extreme performance variant of SNOW-V for lower grade CPUs</title>
            <author initials="P." surname="Ekdahl">
              <organization/>
            </author>
            <author initials="T." surname="Johansson">
              <organization/>
            </author>
            <author initials="A." surname="Maximov">
              <organization/>
            </author>
            <author initials="J." surname="Yang">
              <organization/>
            </author>
            <date year="2021" month="March"/>
          </front>
        </reference>
        <reference anchor="SST1" target="https://csrc.nist.gov/csrc/media/Events/2023/third-workshop-on-block-cipher-modes-of-operation/documents/accepted-papers/Galois%20Counter%20Mode%20with%20Secure%20Short%20Tags.pdf">
          <front>
            <title>Galois Counter Mode with Strong Secure Tags (GCM-SST)</title>
            <author initials="M." surname="Campagna">
              <organization/>
            </author>
            <author initials="A." surname="Maximov">
              <organization/>
            </author>
            <author initials="J." surname="Preuß Mattsson">
              <organization/>
            </author>
            <date year="2023" month="October"/>
          </front>
        </reference>
        <reference anchor="SST2" target="https://csrc.nist.gov/csrc/media/Presentations/2023/galois-counter-mode-with-secure-short-tags/images-media/sess-5-mattsson-bcm-workshop-2023.pdf">
          <front>
            <title>Galois Counter Mode with Strong Secure Tags (GCM-SST)</title>
            <author initials="M." surname="Campagna">
              <organization/>
            </author>
            <author initials="A." surname="Maximov">
              <organization/>
            </author>
            <author initials="J." surname="Preuß Mattsson">
              <organization/>
            </author>
            <date year="2023" month="October"/>
          </front>
        </reference>
        <reference anchor="GCM" target="https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-38d.pdf">
          <front>
            <title>Recommendation for Block Cipher Modes of Operation: Galois/Counter Mode (GCM) and GMAC</title>
            <author initials="M." surname="Dworkin">
              <organization/>
            </author>
            <date year="2007" month="November"/>
          </front>
          <seriesInfo name="NIST" value="Special Publication 800-38D"/>
        </reference>
        <reference anchor="Ascon" target="https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-232.ipd.pdf">
          <front>
            <title>Ascon-Based Lightweight Cryptography Standards for Constrained Devices</title>
            <author initials="" surname="Meltem Sönmez Turan">
              <organization/>
            </author>
            <author initials="" surname="Kerry A McKay">
              <organization/>
            </author>
            <author initials="" surname="Donghoon Chang">
              <organization/>
            </author>
            <author initials="" surname="Jinkeon Kang">
              <organization/>
            </author>
            <author initials="" surname="John Kelsey">
              <organization/>
            </author>
            <date year="2024" month="November"/>
          </front>
          <seriesInfo name="NIST" value="Special Publication 800-232 Initial Public Draft"/>
        </reference>
        <reference anchor="GCM-Update" target="https://csrc.nist.gov/csrc/media/projects/block-cipher-techniques/documents/bcm/comments/cwc-gcm/gcm-update.pdf">
          <front>
            <title>GCM Update</title>
            <author initials="D." surname="McGrew">
              <organization/>
            </author>
            <author initials="J." surname="Viega">
              <organization/>
            </author>
            <date year="2005" month="May"/>
          </front>
        </reference>
        <reference anchor="Gueron" target="https://csrc.nist.gov/csrc/media/Presentations/2023/constructions-based-on-the-aes-round/images-media/sess-5-gueron-bcm-workshop-2023.pdf">
          <front>
            <title>Constructions based on the AES Round and Polynomial Multiplication that are Efficient on Modern Processor Architectures</title>
            <author initials="S." surname="Gueron">
              <organization/>
            </author>
            <date year="2023" month="October"/>
          </front>
        </reference>
        <reference anchor="Ferguson" target="https://csrc.nist.gov/CSRC/media/Projects/Block-Cipher-Techniques/documents/BCM/Comments/CWC-GCM/Ferguson2.pdf">
          <front>
            <title>Authentication weaknesses in GCM</title>
            <author initials="N." surname="Ferguson">
              <organization/>
            </author>
            <date year="2005" month="May"/>
          </front>
        </reference>
        <reference anchor="Joux" target="https://csrc.nist.gov/csrc/media/projects/block-cipher-techniques/documents/bcm/comments/800-38-series-drafts/gcm/joux_comments.pdf">
          <front>
            <title>Authentication Failures in NIST version of GCM</title>
            <author initials="A." surname="Joux">
              <organization/>
            </author>
            <date year="2006" month="April"/>
          </front>
        </reference>
        <reference anchor="Nyberg" target="https://csrc.nist.gov/CSRC/media/Projects/Block-Cipher-Techniques/documents/BCM/Comments/general-comments/papers/Nyberg_Gilbert_and_Robshaw.pdf">
          <front>
            <title>Galois MAC with forgery probability close to ideal</title>
            <author initials="K." surname="Nyberg">
              <organization/>
            </author>
            <author initials="H." surname="Gilbert">
              <organization/>
            </author>
            <author initials="M." surname="Robshaw">
              <organization/>
            </author>
            <date year="2005" month="June"/>
          </front>
        </reference>
        <reference anchor="Mattsson" target="https://eprint.iacr.org/2015/477.pdf">
          <front>
            <title>Authentication Key Recovery on Galois/Counter Mode (GCM)</title>
            <author initials="J." surname="Mattsson">
              <organization/>
            </author>
            <author initials="M." surname="Westerlund">
              <organization/>
            </author>
            <date year="2015" month="May"/>
          </front>
        </reference>
        <reference anchor="Rogaway" target="https://www.cryptrec.go.jp/exreport/cryptrec-ex-2012-2010r1.pdf">
          <front>
            <title>Evaluation of Some Blockcipher Modes of Operation</title>
            <author initials="P." surname="Rogaway">
              <organization/>
            </author>
            <date year="2011" month="February"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 797?>

<section anchor="aes-gcm-sst-test-vectors">
      <name>AES-GCM-SST Test Vectors</name>
      <section anchor="aes-gcm-sst-test-1-128-bit-key">
        <name>AES-GCM-SST Test #1 (128-bit key)</name>
        <artwork><![CDATA[
         K = { 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f }
         N = { 30 31 32 33 34 35 36 37 38 39 3a 3b }
         H = { 22 ce 92 da cb 50 77 4b ab 0d 18 29 3d 6e ae 7f }
       H_2 = { 03 13 63 96 74 be fa 86 4d fa fb 80 36 b7 a0 3c }
         M = { 9b 1d 49 ea 42 b0 0a ec b0 bc eb 8d d0 ef c2 b9 }
]]></artwork>
        <section numbered="false" anchor="case-1a">
          <name>Case #1a</name>
          <artwork><![CDATA[
         A = { }
         P = { }
         L = { 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 }
  full_tag = { 9b 1d 49 ea 42 b0 0a ec b0 bc eb 8d d0 ef c2 b9 }
       tag = { 9b 1d 49 ea 42 b0 0a ec b0 bc eb 8d }
        ct = { }
]]></artwork>
        </section>
        <section numbered="false" anchor="case-1b">
          <name>Case #1b</name>
          <artwork><![CDATA[
         A = { 40 41 42 43 44 }
         P = { }
         L = { 00 00 00 00 00 00 00 00 28 00 00 00 00 00 00 00 }
  full_tag = { 7f f3 cb a4 d5 f3 08 a5 70 4e 2f d5 f2 3a e8 f9 }
       tag = { 7f f3 cb a4 d5 f3 08 a5 70 4e 2f d5 }
        ct = { }
]]></artwork>
        </section>
        <section numbered="false" anchor="case-1c">
          <name>Case #1c</name>
          <artwork><![CDATA[
         A = { }
         P = { 60 61 62 63 64 65 66 67 68 69 6a 6b }
         L = { 60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 }
  full_tag = { f8 de 17 85 fd 1a 90 d9 81 8f cb 7b 44 69 8a 8b }
       tag = { f8 de 17 85 fd 1a 90 d9 81 8f cb 7b }
        ct = { 64 f0 5b ae 1e d2 40 3a 71 25 5e dd }
]]></artwork>
        </section>
        <section numbered="false" anchor="case-1d">
          <name>Case #1d</name>
          <artwork><![CDATA[
         A = { 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f }
         P = { 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f
               70 71 72 73 74 75 76 77 78 79 7a 7b 7c 7d 7e }
         L = { f8 00 00 00 00 00 00 00 80 00 00 00 00 00 00 00 }
  full_tag = { 93 43 56 14 0b 84 48 2c d0 14 c7 40 7e e9 cc b6 }
       tag = { 93 43 56 14 0b 84 48 2c d0 14 c7 40 }
        ct = { 64 f0 5b ae 1e d2 40 3a 71 25 5e dd 53 49 5c e1
               7d c0 cb c7 85 a7 a9 20 db 42 28 ff 63 32 10 }
]]></artwork>
        </section>
        <section numbered="false" anchor="case-1e">
          <name>Case #1e</name>
          <artwork><![CDATA[
         A = { 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e }
         P = { 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f
               70 }
         L = { 88 00 00 00 00 00 00 00 78 00 00 00 00 00 00 00 }
  full_tag = { f8 50 b7 97 11 43 ab e9 31 5a d7 eb 3b 0a 16 81 }
       tag = { f8 50 b7 97 11 43 ab e9 31 5a d7 eb }
        ct = { 64 f0 5b ae 1e d2 40 3a 71 25 5e dd 53 49 5c e1
               7d }
]]></artwork>
        </section>
      </section>
      <section anchor="aes-gcm-sst-test-2-128-bit-key">
        <name>AES-GCM-SST Test #2 (128-bit key)</name>
        <artwork><![CDATA[
         K = { 29 23 be 84 e1 6c d6 ae 52 90 49 f1 f1 bb e9 eb }
         N = { 9a 50 ee 40 78 36 fd 12 49 32 f6 9e }
         A = { 1f 03 5a 7d 09 38 25 1f 5d d4 cb fc 96 f5 45 3b
               13 0d }
         P = { ad 4f 14 f2 44 40 66 d0 6b c4 30 b7 32 3b a1 22
               f6 22 91 9d }
         H = { 2d 6d 7f 1c 52 a7 a0 6b f2 bc bd 23 75 47 03 88 }
       H_2 = { 3b fd 00 96 25 84 2a 86 65 71 a4 66 e5 62 05 92 }
         M = { 9e 6c 98 3e e0 6c 1a ab c8 99 b7 8d 57 32 0a f5 }
         L = { a0 00 00 00 00 00 00 00 90 00 00 00 00 00 00 00 }
  full_tag = { 45 03 bf b0 96 82 39 b3 67 e9 70 c3 83 c5 10 6f }
       tag = { 45 03 bf b0 96 82 }
        ct = { b8 65 d5 16 07 83 11 73 21 f5 6c b0 75 45 16 b3
               da 9d b8 09 }
]]></artwork>
      </section>
      <section anchor="aes-gcm-sst-test-3-256-bit-key">
        <name>AES-GCM-SST Test #3 (256-bit key)</name>
        <artwork><![CDATA[
         K = { 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f
               10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f }
         N = { 30 31 32 33 34 35 36 37 38 39 3a 3b }
         H = { 3b d9 9f 8d 38 f0 2e a1 80 96 a4 b0 b1 d9 3b 1b }
       H_2 = { af 7f 54 00 16 aa b8 bc 91 56 d9 d1 83 59 cc e5 }
         M = { b3 35 31 c0 e9 6f 4a 03 2a 33 8e ec 12 99 3e 68 }
]]></artwork>
        <section numbered="false" anchor="case-3a">
          <name>Case #3a</name>
          <artwork><![CDATA[
         A = { }
         P = { }
         L = { 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 }
  full_tag = { b3 35 31 c0 e9 6f 4a 03 2a 33 8e ec 12 99 3e 68 }
       tag = { b3 35 31 c0 e9 6f 4a 03 2a 33 8e ec }
        ct = { }
]]></artwork>
        </section>
        <section numbered="false" anchor="case-3b">
          <name>Case #3b</name>
          <artwork><![CDATA[
         A = { 40 41 42 43 44 }
         P = { }
         L = { 00 00 00 00 00 00 00 00 28 00 00 00 00 00 00 00 }
  full_tag = { 63 ac ca 4d 20 9f b3 90 28 ff c3 17 04 01 67 61 }
       tag = { 63 ac ca 4d 20 9f b3 90 28 ff c3 17 }
        ct = { }
]]></artwork>
        </section>
        <section numbered="false" anchor="case-3c">
          <name>Case #3c</name>
          <artwork><![CDATA[
         A = { }
         P = { 60 61 62 63 64 65 66 67 68 69 6a 6b }
         L = { 60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 }
  full_tag = { e1 de bf fd 5f 3a 85 e3 48 bd 6f cc 6e 62 10 90 }
       tag = { e1 de bf fd 5f 3a 85 e3 48 bd 6f cc }
        ct = { fc 46 2d 34 a7 5b 22 62 4f d7 3b 27 }
]]></artwork>
        </section>
        <section numbered="false" anchor="case-3d">
          <name>Case #3d</name>
          <artwork><![CDATA[
         A = { 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f }
         P = { 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f
               70 71 72 73 74 75 76 77 78 79 7a 7b 7c 7d 7e }
         L = { f8 00 00 00 00 00 00 00 80 00 00 00 00 00 00 00 }
  full_tag = { c3 5e d7 83 9f 21 f7 bb a5 a8 a2 8e 1f 49 ed 04 }
       tag = { c3 5e d7 83 9f 21 f7 bb a5 a8 a2 8e }
        ct = { fc 46 2d 34 a7 5b 22 62 4f d7 3b 27 84 de 10 51
               33 11 7e 17 58 b5 ed d0 d6 5d 68 32 06 bb ad }
]]></artwork>
        </section>
        <section numbered="false" anchor="case-3e">
          <name>Case #3e</name>
          <artwork><![CDATA[
         A = { 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e }
         P = { 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f
               70 }
         L = { 88 00 00 00 00 00 00 00 78 00 00 00 00 00 00 00 }
  full_tag = { 49 7c 14 77 67 a5 3d 57 64 ce fd 03 26 fe e7 b5 }
       tag = { 49 7c 14 77 67 a5 3d 57 64 ce fd 03 }
        ct = { fc 46 2d 34 a7 5b 22 62 4f d7 3b 27 84 de 10 51
               33 }
]]></artwork>
        </section>
      </section>
      <section anchor="aes-gcm-sst-test-4-256-bit-key">
        <name>AES-GCM-SST Test #4 (256-bit key)</name>
        <artwork><![CDATA[
         K = { 29 23 be 84 e1 6c d6 ae 52 90 49 f1 f1 bb e9 eb
               b3 a6 db 3c 87 0c 3e 99 24 5e 0d 1c 06 b7 b3 12 }
         N = { 9a 50 ee 40 78 36 fd 12 49 32 f6 9e }
         A = { 1f 03 5a 7d 09 38 25 1f 5d d4 cb fc 96 f5 45 3b
               13 0d }
         P = { ad 4f 14 f2 44 40 66 d0 6b c4 30 b7 32 3b a1 22
               f6 22 91 9d }
         H = { 13 53 4b f7 8a 91 38 fd f5 41 65 7f c2 39 55 23 }
       H_2 = { 32 69 75 a3 3a ff ae ac af a8 fb d1 bd 62 66 95 }
         M = { 59 48 44 80 b6 cd 59 06 69 27 5e 7d 81 4a d1 74 }
         L = { a0 00 00 00 00 00 00 00 90 00 00 00 00 00 00 00 }
  full-tag = { c4 a1 ca 9a 38 c6 73 af bf 9c 73 49 bf 3c d5 4d }
       tag = { c4 a1 ca 9a 38 c6 73 af bf 9c 73 49 bf 3c }
        ct = { b5 c2 a4 07 f3 3e 99 88 de c1 2f 10 64 7b 3d 4f
               eb 8f f7 cc }
]]></artwork>
      </section>
    </section>
    <section anchor="compatibility-with-3gpp-algorithms">
      <name>Compatibility with 3GPP Algorithms</name>
      <t>The integrity part of GCM-SST was originally developed by ETSI SAGE under the name Mac5G, following a request from 3GPP. Its design evolved over several years of discussion and refinement <xref target="SAGE23"/><xref target="SAGE24"/>. Mac5G shares structural similarities with the integrity algorithms used for SNOW 3G <xref target="UIA2"/> and ZUC <xref target="EIA3"/>.</t>
      <t>3GPP has decided to standardize GCM-SST for use with SNOW 5G <xref target="SNOW"/>, AES-256 <xref target="AES"/>, and ZUC-256 <xref target="ZUC"/> in 3GPP TS 35.240–35.248 <xref target="WID24"/>. These AEAD algorithms are designated as NCA4, NCA5, and NCA6, respectively. GCM-SST, as specified in this document, is fully compatible with the SNOW 5G-based NCA4 and the ZUC-256-based NCA6. The AES-based NCA5 differs only in its subkey generation but is otherwise identical. SNOW 5G is functionally equivalent to SNOW-Vi <xref target="SNOW"/>, except that its FSM adders have been changed from 32-bit to 16-bit. Additionally, the NCA algorithms introduce more detailed specifications for nonce construction based on 3GPP protocols.</t>
      <t>The version of GCM-SST specified in this document imposes stricter security considerations and constraints than the 3GPP and ETSI SAGE specifications for the NCA algorithms. We recommend 3GPP to follow the additional security measures outlined in this document.</t>
    </section>
    <section removeInRFC="true" numbered="false" anchor="change-log">
      <name>Change Log</name>
      <t>Changes from -17 to -18:</t>
      <ul spacing="normal">
        <li>
          <t>Improved explanation why replay protection is required and random nonces forbidden.</t>
        </li>
        <li>
          <t>New appendix discussing compatibility with 3GPP algorithms.</t>
        </li>
        <li>
          <t>Editorial changes</t>
        </li>
      </ul>
      <t>Changes from -16 to -17:</t>
      <ul spacing="normal">
        <li>
          <t>Align with ANSSI requirement on the maximum number of plaintext blocks.</t>
        </li>
        <li>
          <t>Added information of how small fraction of a bit an attacker can theoretically recover.</t>
        </li>
        <li>
          <t>Editorial changes</t>
        </li>
      </ul>
      <t>Changes from -15 to -16:</t>
      <ul spacing="normal">
        <li>
          <t>Added section on multicast or broadcast allowing use in one-to-many scenarios. GCM-SST provides good security in such scenarios.</t>
        </li>
        <li>
          <t>Renamed Q to H<sub>2</sub> and some q to σ to avoid using the same symbol for different things.</t>
        </li>
        <li>
          <t>Updated information on confidentiality against passive attackers including comparison and links to papers showing that plaintext-recovery have similar complexity as distinguishing attacks.</t>
        </li>
        <li>
          <t>Editorial changes</t>
        </li>
      </ul>
      <t>Changes from -14 to -15:</t>
      <ul spacing="normal">
        <li>
          <t>Added 48-bit tags after feedback from media people.</t>
        </li>
        <li>
          <t>Added comparison to AEGIS in pure hardware based on Scott Fluhrer's analysis</t>
        </li>
        <li>
          <t>Changed "acceptable level" to "minimum threshold" as it can be discussed if 64-bit security is acceptable.</t>
        </li>
        <li>
          <t>Added requirement that security protocols using AES-GCM-SST <bcp14>MUST</bcp14> enforce limits to ensure that δ ≈ 1.</t>
        </li>
        <li>
          <t>Added that this specification does not allow use in multicast or broadcast. This simplify security considerations.</t>
        </li>
        <li>
          <t>Editorial changes</t>
        </li>
      </ul>
      <t>Changes from -13 to -14:</t>
      <ul spacing="normal">
        <li>
          <t>Explained the formatting of L as well as why replay protection after decryption may be used.</t>
        </li>
        <li>
          <t>Updated link to NIST's plans to standardize Rijndael-256 and aligned the name with NIST</t>
        </li>
        <li>
          <t>Aligned test vector tag length and terminology with the rest of the specification</t>
        </li>
        <li>
          <t>Editorial changes</t>
        </li>
      </ul>
      <t>Changes from -12 to -13:</t>
      <ul spacing="normal">
        <li>
          <t>Changed name to Strong Secure Tags to better illustrate that GCM-SST is intended to improve security for all tag lengths.</t>
        </li>
        <li>
          <t>Editorial changes</t>
        </li>
      </ul>
      <t>Changes from -11 to -12:</t>
      <ul spacing="normal">
        <li>
          <t>Introduced Q_MAX and V_MAX as formal names for the invocation constraints.</t>
        </li>
        <li>
          <t>Described that masking is important to mitigate weak keys.</t>
        </li>
        <li>
          <t>Improved and expanded the section comparing GCM-SST with Poly1305 and GCM.</t>
        </li>
        <li>
          <t>Editorial changes including subsections in the security considerations.</t>
        </li>
      </ul>
      <t>Changes from -10 to -11:</t>
      <ul spacing="normal">
        <li>
          <t>Added that protocols can impose stricter limits on P_MAX and A_MAX</t>
        </li>
        <li>
          <t>Added constraints on the number of decryption queries v</t>
        </li>
        <li>
          <t>More info on replay protection implementation</t>
        </li>
        <li>
          <t>More info on nonce constructions</t>
        </li>
        <li>
          <t>Introduced the Bernstein bound factor δ instead of just assuming that δ &lt; 2</t>
        </li>
        <li>
          <t>Clarified differences between GCM-SST with different keystream generators (ideal, AES, Rijndael)</t>
        </li>
        <li>
          <t>Made it clearer that Table 1 is for unicast security protocols with replay protection and that Poly1305 is keyed with ChaCha20.</t>
        </li>
        <li>
          <t>Editorial changes including RFC 2119 terminology</t>
        </li>
      </ul>
      <t>Changes from -09 to -10:</t>
      <ul spacing="normal">
        <li>
          <t>Corrected some probabilities that were off by a factor 2</t>
        </li>
        <li>
          <t>Editorial changes.</t>
        </li>
      </ul>
      <t>Changes from -07 to -09:</t>
      <ul spacing="normal">
        <li>
          <t>Changed replay requirements to allow replay protection after decryption to align with protocols like QUIC and DTLS 1.3.</t>
        </li>
        <li>
          <t>Added a comparison between GCM_SST_14, GCM_SST_12, GCM_16, POLY1305 in protocols like QUIC</t>
        </li>
        <li>
          <t>Added text on the importance of behaving like an ideal MAC</t>
        </li>
        <li>
          <t>Consideration on replay protection mechanisms</t>
        </li>
        <li>
          <t>Added text and alternative implementations borrowed from NIST</t>
        </li>
        <li>
          <t>Added constraints of 2^32 encryption invocations aligning with NIST</t>
        </li>
        <li>
          <t>Added text explaining that GCM-SST offer strictly better security than GCM and that "GCM allows universal forgery with lower complexity than GCM-SST, even when nonces are not reused", to avoid any misconceptions that Lindell's attack makes GCM-SST weaker than GCM in any way.</t>
        </li>
      </ul>
      <t>Changes from -06 to -07:</t>
      <ul spacing="normal">
        <li>
          <t>Replaced 80-bit tags with 96- and 112-bit tags.</t>
        </li>
        <li>
          <t>Changed P_MAX and A_MAX and made them tag_length dependent to enable 96- and 112-bit tags with near-ideal security.</t>
        </li>
        <li>
          <t>Clarified that GCM-SST tags have near-ideal forgery probabilities, even against multiple forgery attacks, which is not the case at all for GCM.</t>
        </li>
        <li>
          <t>Added formulas for expected number of forgeries for GCM-SST (q ⋅ 2<sup>-tag_length</sup>) and GCM (q<sup>2</sup> ⋅ (n + m + 1) ⋅ 2<sup>-tag_length + 1</sup>) and stated that GCM-SST fulfils BSI recommendation of using 96-bit ideal MACs.</t>
        </li>
      </ul>
      <t>Changes from -04 to -06:</t>
      <ul spacing="normal">
        <li>
          <t>Reference to Inoue et al. for security proof, forgery probability graph, and improved attack when GCM-SST is used without replay protection.</t>
        </li>
        <li>
          <t>Editorial changes.</t>
        </li>
      </ul>
      <t>Changes from -03 to -04:</t>
      <ul spacing="normal">
        <li>
          <t>Added that GCM-SST is designed for unicast protocol with replay protection</t>
        </li>
        <li>
          <t>Update info on use cases for short tags</t>
        </li>
        <li>
          <t>Updated info on ETSI and 3GPP standardization of GCM-SST</t>
        </li>
        <li>
          <t>Added Rijndael-256-256</t>
        </li>
        <li>
          <t>Added that replay is required and that random nonces, multicast, and broadcast are forbidden based on attack from Yehuda Lindell</t>
        </li>
        <li>
          <t>Security considerations for active attacks on privacy as suggested by Thomas Bellebaum</t>
        </li>
        <li>
          <t>Improved text on H and Q being zero.</t>
        </li>
        <li>
          <t>Editorial changes.</t>
        </li>
      </ul>
      <t>Changes from -02 to -03:</t>
      <ul spacing="normal">
        <li>
          <t>Added performance information and considerations.</t>
        </li>
        <li>
          <t>Editorial changes.</t>
        </li>
      </ul>
      <t>Changes from -01 to -02:</t>
      <ul spacing="normal">
        <li>
          <t>The length encoding chunk is now called L</t>
        </li>
        <li>
          <t>Use of the notation POLYVAL(H, X_1, X_2, ...) from RFC 8452</t>
        </li>
        <li>
          <t>Removed duplicated text in security considerations.</t>
        </li>
      </ul>
      <t>Changes from -00 to -01:</t>
      <ul spacing="normal">
        <li>
          <t>Link to NIST decision to remove support for GCM with tags shorter than 96-bits based on Mattsson et al.</t>
        </li>
        <li>
          <t>Mention that 3GPP 5G Advance will use GCM-SST with AES-256 and SNOW 5G.</t>
        </li>
        <li>
          <t>Corrected reference to step numbers during decryption</t>
        </li>
        <li>
          <t>Changed T to full_tag to align with tag and expected_tag</t>
        </li>
        <li>
          <t>Link to images from the NIST encryption workshop illustrating the GCM-SST encryption and decryption functions.</t>
        </li>
        <li>
          <t>Updated definitions</t>
        </li>
        <li>
          <t>Editorial changes.</t>
        </li>
      </ul>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors thank <contact fullname="Richard Barnes"/>, <contact fullname="Thomas Bellebaum"/>, <contact fullname="Patrik Ekdahl"/>, <contact fullname="Scott Fluhrer"/>, <contact fullname="Eric Lagergren"/>, <contact fullname="Yehuda Lindell"/>, <contact fullname="Kazuhiko Minematsu"/>, <contact fullname="Santeri Paavolainen"/>, <contact fullname="Sini Ruohomaa"/>, <contact fullname="Erik Thormarker"/>, and <contact fullname="Magnus Westerlund"/> for their valuable comments and feedback. Some of the formatting and text were inspired by and borrowed from <xref target="I-D.irtf-cfrg-aegis-aead"/>.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
aPhxOqt7s3hel1imCD/lFEN9/x/hWUtyAvEAAA==

-->

</rfc>
