<?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.30 (Ruby 3.2.3) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-chen-lamps-cms-frodokem-00" category="std" consensus="true" submissionType="IETF" xml:lang="en" version="3">
  <!-- xml2rfc v2v3 conversion 3.31.0 -->
  <front>
    <title abbrev="FrodoKEM in the CMS">Use of FrodoKEM in the Cryptographic Message Syntax</title>
    <seriesInfo name="Internet-Draft" value="draft-chen-lamps-cms-frodokem-00"/>
    <author initials="M." surname="Chen" fullname="Meiling Chen">
      <organization>China Mobile</organization>
      <address>
        <postal>
          <city>BeiJing</city>
          <country>China</country>
        </postal>
        <email>chenmeiling@chinamobile.com</email>
      </address>
    </author>
    <author initials="L." surname="Su" fullname="Li Su">
      <organization>China Mobile</organization>
      <address>
        <postal>
          <city>BeiJing</city>
          <country>China</country>
        </postal>
        <email>suli@chinamobile.com</email>
      </address>
    </author>
    <author initials="G." surname="Wang" fullname="Guilin Wang">
      <organization>Huawei Int. Pte Ltd</organization>
      <address>
        <postal>
          <city>Singapore</city>
          <country>Singapore</country>
        </postal>
        <email>wang.guilin@huawei.com</email>
      </address>
    </author>
    <date year="2026" month="February" day="11"/>
    <area>Security</area>
    <workgroup>lamps</workgroup>
    <keyword>Internet-Draft</keyword>
    <keyword>keyword2</keyword>
    <abstract>
      <?line 50?>

<t>FrodoKEM is a quantum-resistant key encapsulation mechanism (KEM) based on the standard Learning With Errors (LWE) problem. It is one of three KEMs in the process of ISO standardization. This document specifies the conventions for using eight variants of FrodoKEM in the Cryptographic Message Syntax (CMS), by employing the KEMRecipientInfo structure defined in "Use of Key Encapsulation Mechanism (KEM) Algorithms in the Cryptographic Message Syntax (CMS)" <xref target="RFC9629"/>. These eight variants of FrodoKEM are (e)FrodoKEM-976-AES and (e)FrodoKEM-976-SHAKE for security level 3, and (e)FrodoKEM-1344-AES and (e)FrodoKEM-1344-SHAKE for security level 5. </t>
    </abstract>
  </front>
  <middle>
    <?line 54?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>FrodoKEM is one of three KEMs in the process of ISO standardization <xref target="FrodoKEM"/>. Its security is based on a well-studied hard problem in unstructured lattices, called the learning with errors problem. The algorithm details of FrodoKEM are specified in <xref target="I-D.LBES25"/> . FrodoKEM has both AES and SHAKE variants to offer optimized performance across different hardware platforms. AES variants are highly suitable for devices with hardware acceleration for AES (like AES-NI on Intel processors). SHAKE variants provide competitive or better performance on platforms lacking AES hardware acceleration (such as many embedded systems and general-purpose CPUs). To cover both scenarios, this specification include both variants. </t>
	  

      <t> "Using Key Encapsulation Mechanism (KEM) Algorithms in the Cryptographic Message Syntax (CMS)" <xref target="RFC9629"/> defines the KEMRecipientInfo structure for the use of KEM algorithms in the CMS enveloped-data, authenticated-data, and authenticated-enveloped-data content types. This document specifies the conventions for the direct use of eight variants of FrodoKEM in the CMS with the KEMRecipientInfo structure: (e)FrodoKEM-976-AES and (e)FrodoKEM-976-SHAKE for security level 3, and (e)FrodoKEM-1344-AES and (e)FrodoKEM-1344-SHAKE for security level 5. Note that these are all variants of FrodoKEM to be standardized in ISO. </t>
	  
      <section anchor="terminology">
        <name>Terminology</name>
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 <xref target="RFC8174">RFC2119</xref>.</t>
      </section>
      <section anchor="frodokem">
        <name>FrodoKEM</name>
        <t>
	   <!-- 
       FrodoKEM [I-D.LBES25] is one of three KEMs in the process of ISO standardization [FrodoKEM].  Its security is based on a well-studied hard problem in unstructured lattices, called the learning with errors problem. 
		-->
		
		In total, FrodoKEM <xref target="I-D.LBES25"/> <xref target="FrodoKEM"/> has 12 variants. Namely, it offers 3 NIST security levels 1, 3, and 5; the pseudorandom generator (PRG) uses AES128 or SHAKE 128; and the KEM public key can be a long-term key (standard mode) or a short-term key (ephemeral mode). </t>
		
        <t>According to the current standardization progress in ISO, FrodoKEM will be standardized for the 8 variants for NIST security levels 3 and 5.  Namely, there are (e)FrodoKEM-976 and (e)FrodoKEM-1344, but not (e)FrodoKEM-640 for security level 1.  To align with ISO, this specification specifies the use of (e)FrodoKEM varaints for security levels 3 and 5 only, not variants for security level 1.</t>
		
        <t>Based on the above, this document specifies only eight variants of (e)FrodoKEM for Cryptographic Message Syntax.  Namely, (e)FrodoKEM-976-AES and (e)FrodoKEM-976-SHAKE for security level 3, and
   (e)FrodoKEM-1344-AES and (e)FrodoKEM-1344-SHAKE for security level 5.</t>
        <t>Key encapsulation mechanism (KEM) is a kind of key exchange, which allows one entity to encapsulate a secret under a (long-term or ephemeral) public key of another entity. A KEM consists of three algorithms: </t>
        <ul spacing="normal">
          <li>
            <t>KeyGen(k) -&gt; (pk, sk): A probabilistic key generation algorithm, which generates a public encapsulation key pk and a secret decapsulation key sk, when a security parameter k is given.</t>
          </li>
          <li>
            <t>Encaps(pk) -&gt; (ct, ss): A probabilistic encapsulation algorithm, which takes as input a public encapsulation key pk and outputs a ciphertext ct and a shared secret ss.</t>
          </li>
          <li>
            <t>Decaps(sk, ct) -&gt; ss: A decapsulation algorithm, which takes as input a secret decapsulation key sk and ciphertext ct and outputs a shared secret ss.</t>
          </li>
        </ul>
		
        <t>
		<!-- 
          FrodoKEM comes in several parameter sets, each designed to meet one of the NIST Post-Quantum Cryptography (PQC) security levels. 
		-->
		
		Table 1 summarizes the sizes of keys, ciphertext, and shared secret for all variants of FrodoKEM with security levels 3 and 5. Note that using either AES128 or SHAKE 128 does not affect these sizes. </t>
        <artwork><![CDATA[
   +-------+----------------+--------+--------+------------+--------+
   | Level | Algorithms     | Public | Secret | Ciphertext | Shared |
   |       |                | Key pk | Key sk | ct         | Secret |
   |       |                |        |        |            | ss     |
   +-------+----------------+--------+--------+------------+--------+
   | 3     | FrodoKEM-976   | 15,632 | 31,296 | 15,792     | 24     |
   +-------+----------------+--------+--------+------------+--------+
   | 3     | eFrodoKEM-976  | 15,632 | 31,296 | 15,744     | 24     |
   +-------+----------------+--------+--------+------------+--------+
   | 5     | FrodoKEM-1344  | 21,520 | 43,088 | 21,696     | 32     |
   +-------+----------------+--------+--------+------------+--------+
   | 5     | eFrodoKEM-1344 | 21,520 | 43,088 | 21,632     | 32     |
   +-------+----------------+--------+--------+------------+--------+

   Table 1: Size (in bytes) of keys and ciphertexts of FrodoKEM
]]></artwork>
      </section>
    </section>
    <section anchor="use-of-the-frodokem-algorithm-in-the-cms">
      <name>Use of the FrodoKEM Algorithm in the CMS</name>
	  
      <t>The FrodoKEM algorithm MAY be used for one or more recipients in the CMS enveloped-data content type <xref target="RFC5652"/>, the CMS authenticated-data content type <xref target="RFC5652"/>, or the CMS authenticated-enveloped-data content type [RFC5083]. In each case, the KEMRecipientInfo <xref target="RFC9629"/> structure is used with the FrodoKEM algorithm to securely transport a content-encryption key from an originator to one ore multiple recipients.</t>
	  
      <t>The steps for processing FrodoKEM with KEMRecipientInfo follow Section 2 of <xref target="RFC9629"/>. To support the FrodoKEM algorithm, a CMS originator MUST implement the Encapsulate() function, and a CMS recipient MUST implement the Decapsulate() function.</t>
      <section anchor="recipientinfo-conventions">
        <name>RecipientInfo Conventions</name>
        <t>When the FrodoKEM algorithm is used for a recipient, the RecipientInfo choice for that recipient MUST be the OtherRecipientInfo choice using the KEMRecipientInfo structure defined in <xref target="RFC9629"/>. The fields of KEMRecipientInfo have the following meanings:</t>
        <ul spacing="normal">
          <li>
            <t>version is the syntax version number; it MUST be 0.</t>
          </li>
          <li>
            <t>rid identifies the recipient's certificate or public key.</t>
          </li>
          <li>
            <t>kem identifies the KEM algorithm; it MUST contain one of id-kem-frodokem976-shake, id-kem-frodokem1344-shake, id-kem-efrodokem976-shake, id-kem-efrodokem1344-shake, id-kem-frodokem976-aes, id-kem-frodokem1344-aes, id-kem-efrodokem976-aes or id-kem-efrodokem1344-aes. These identifiers are reproduced in Section 3.</t>
          </li>
          <li>
            <t>kemct is the ciphertext generated for this recipient.</t>
          </li>
          <li>
            <t>kdf identifies the key derivation algorithm. Implementations MUST support the HKDF <xref target="RFC5869"/> with SHA-256 [FIPS180] using the id-alg-hkdf-with-sha256 KDF object identifier <xref target="RFC8619"/>. As specified in <xref target="RFC8619"/>, when this object identifier appears in an ASN.1 type AlgorithmIdentifier, the parameters field MUST be absent. Implementations MAY support other KDFs.</t>
          </li>
          <li>
            <t>kekLength is the size of the key-encryption key in octets.</t>
          </li>
          <li>
            <t>ukm is an optional input to the key derivation function. The secure use of FrodoKEM in the CMS does not depend upon the use of the ukm value, and therefore this document has no requirements for this value. See Section 3 of <xref target="RFC9629"/> for more information on the ukm parameter.</t>
          </li>
          <li>
            <t>wrap identifies the key-encryption algorithm used to encrypt the content-encryption key.  </t>
            <ul spacing="normal">
              <li>
                <t>Implementations supporting FrodoKEM-976-AES or FrodoKEM-976-SHAKE MUST support the AES-Wrap-192 Key Wrap algorithm <xref target="RFC3394"/>, using the id-aes192-wrap key-encryption algorithm object identifier <xref target="RFC3565"/>.</t>
              </li>
              <li>
                <t>Implementations supporting FrodoKEM-1344-AES or FrodoKEM-1344-SHAKE MUST support the AES-Wrap-256 Key Wrap algorithm <xref target="RFC3394"/>, using the id-aes256-wrap key-encryption algorithm object identifier <xref target="RFC3565"/>.</t>
              </li>
              <li>
                <t>Implementations MAY support other key-encryption algorithms.</t>
              </li>
            </ul>
          </li>
        </ul>
      </section>
      <section anchor="underlying-components">
        <name>Underlying Components</name>
        <t>When FrodoKEM is used in CMS, the underlying components used in the KEMRecipientInfo structure SHOULD be consistent with the desired minimum security level. To meet the requirements for the KDF and key-wrap algorithm from Section 7 of <xref target="RFC9629"/>, the table below provides the minimum requirements for the components used with FrodoKEM.</t>
        <artwork><![CDATA[
+------------+------------------+--------------+-------------+
| Security   |  Algorithm       | KDF preimage |Symmetric key|
|  Strength  |                  | strength     |encryption   |
|            |                  |              |strength     |
+------------+------------------+--------------+-------------+
| 192-bit    | (e)FrodoKEM-976  | 192-bit      |192-bit      |
+------------+------------------+--------------+-------------+
| 256-bit    | (e)FrodoKEM-1344 | 256-bit      |256-bit      |
+------------+------------------+--------------+-------------+
Table 2: FrodoKEM KEMRecipientInfo component security levels
]]></artwork>
      </section>
      <section anchor="use-of-the-hkdf-based-key-derivation-function">
        <name>Use of the HKDF-based Key Derivation Function</name>
        <t>The HKDF function is a composition of the HKDF-Extract and HKDF-
   Expand functions.</t>
        <t>HKDF(salt, IKM, info, L)
     = HKDF-Expand(HKDF-Extract(salt, IKM), info, L)</t>
        <t>When used with KEMRecipientInfo, the salt parameter is unused, that
   is it is the zero-length string "".  The IKM, info and L parameters
   correspond to the same KDF inputs from Section 5 of <xref target="RFC9629"/>.  The
   info parameter is independently generated by the originator and
   recipient.  Implementations MUST confirm that L is consistent with
   the key size of the key-encryption algorithm.</t>
      </section>
      <section anchor="certificate-conventions">
        <name>Certificate Conventions</name>
        <t><xref target="RFC5280"/> specifies the profile for X.509 certificates used in Internet applications. FrodoKEM requires a static public key for the recipient, which the originator obtains from the recipient's certificate. The conventions for carrying a FrodoKEM public key are specified in <xref target="I-D.S26"/>. </t>
		
      </section>
      <section anchor="smime-capabilities-attribute-conventions">
        <name>SMIME Capabilities Attribute Conventions</name>
        <t>Section 2.5.2 of <xref target="RFC8551"/> defines the SMIMECapabilities attribute for advertising a partial list of algorithms that an S/MIME implementation can support. When constructing a CMS SignedData content type <xref target="RFC5652"/>, a compliant implementation MAY include the SMIMECapabilities attribute to announce support for one or more of the FrodoKEM algorithm identifiers.</t>
        <t>The SMIMECapability SEQUENCE representing a FrodoKEM algorithm MUST contain one of the FrodoKEM object identifiers in the capabilityID field. When one of the FrodoKEM object identifiers appears in the capabilityID field, the parameters MUST NOT be present.</t>
      </section>
    </section>
    <section anchor="identifiers">
      <name>Identifiers</name>
      <t>The identifiers for indicating the use of FrodoKEM in the CMS are defined in <xref target="CSOR"/>
and <xref target="RFC8619"/>. For convenience, they are reproduced here.</t>
      <t>frodokem OBJECT IDENTIFIER ::= { iso(1) standard(0)
     encryption-algorithms(18033) part2(2)
     key-encapsulation-mechanism(2) 7 }</t>
      <artwork><![CDATA[
 id-kem-frodokem976-shake OBJECT IDENTIFIER ::= { frodokem 1 }

 id-kem-frodokem1344-shake OBJECT IDENTIFIER ::= { frodokem 2 }

 id-kem-efrodokem976-shake OBJECT IDENTIFIER ::= { frodokem 3 }

 id-kem-efrodokem1344-shake OBJECT IDENTIFIER ::= { frodokem 4 }

 id-kem-frodokem976-aes OBJECT IDENTIFIER ::= { frodokem 5 }

 id-kem-frodokem1344-aes OBJECT IDENTIFIER ::= { frodokem 6 }

 id-kem-efrodokem976-aes OBJECT IDENTIFIER ::= { frodokem 7 }

 id-kem-efrodokem1344-aes OBJECT IDENTIFIER ::= { frodokem 8 }
 
 id-alg-hkdf-with-sha256 OBJECT IDENTIFIER ::= { iso(1)
    member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs-9(9)
    smime(16) alg(3) 28 }
 
 id-alg-hkdf-with-sha256 OBJECT IDENTIFIER ::= { iso(1)
    member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs-9(9)
    smime(16) alg(3) 28 }
 
 aes OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840)
    organization(1) gov(101) csor(3) nistAlgorithm(4) 1 } 
 
 id-aes192-wrap OBJECT IDENTIFIER ::= { aes 25 }

 id-aes256-wrap OBJECT IDENTIFIER ::= { aes 45 }
 
 hashAlgs OBJECT IDENTIFIER ::= { joint-iso-itu-t(2) country(16) us(840)
    organization(1) gov(101) csor(3) nistAlgorithm(4) 2 }
 
 id-shake256 OBJECT IDENTIFIER ::= { hashAlgs 12 }
 
]]></artwork>
 
 
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The security considerations sections of [I-D.draft-smyslov-lamps-frodokem-certificates] and <xref target="RFC9629"/> apply to this specification as well.</t>
      <t>Implementations MUST protect the FrodoKEM private key, the key-encryption key, the content-encryption key, the message-authentication key, and the content-authentication-encryption key. Of these keys, all but the private key are ephemeral and MUST be erased after use. Compromise of the FrodoKEM private key can lead to the compromise of all messages protected with that key.</t>
      <t>The generation of the private key and the FrodoKEM encapsulation function depend on random numbers. The use of inadequate pseudo-random number generators (PRNGs) to generate these values can result in little or no security. Generation of high-quality random numbers is difficult; see [FRODO-SPEC] for more information.</t>
      <t>The encapsulation and decapsulation of FrodoKEM only output the shared secret and the ciphertext. Implementations MUST NOT use the intermediate values directly for any purpose. Implementations SHOULD NOT leak information about the intermediate values or computations through timing or other "side channels", as an attacker may be able to determine information about keying data and/or the recipient's private key.</t>
      <t>In general, it is good cryptographic practice to use a given FrodoKEM key pair in only one scheme. This practice avoids the risk that a vulnerability in one scheme could compromise the security of the other.</t>
    </section>
    <section anchor="IANA">
      <name>IANA Considerations</name>
      <t>TBD</t>
    </section>
    <section anchor="acknowledgements">
      
	  <name>Acknowledgements</name>
      <t>This document borrows heavily from <xref target="W-D.POV26"/>, <xref target="RFC9629"/>, and the FrodoKEM specification <xref target="I-D.LBES25"/>. Thanks go to the authors of those documents.</t>
	  
    </section>
  </middle>
  <back>
    <references anchor="sec-normative-references">
      <name>Normative References</name>
      <reference anchor="RFC2119">
        <front>
          <title>Key words for use in RFCs to Indicate Requirement Levels</title>
          <author fullname="S. Bradner" initials="S." surname="Bradner"/>
          <date month="March" year="1997"/>
          <abstract>
            <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="2119"/>
        <seriesInfo name="DOI" value="10.17487/RFC2119"/>
      </reference>
      <reference anchor="RFC3394">
        <front>
          <title>Advanced Encryption Standard (AES) Key Wrap Algorithm</title>
          <author fullname="J. Schaad" initials="J." surname="Schaad"/>
          <author fullname="R. Housley" initials="R." surname="Housley"/>
          <date month="September" year="2002"/>
        </front>
        <seriesInfo name="RFC" value="3394"/>
        <seriesInfo name="DOI" value="10.17487/RFC3394"/>
      </reference>
      <reference anchor="RFC3565">
        <front>
          <title>Use of the Advanced Encryption Standard (AES) Encryption Algorithm in Cryptographic Message Syntax (CMS)</title>
          <author fullname="J. Schaad" initials="J." surname="Schaad"/>
          <date month="July" year="2003"/>
          <abstract>
            <t>This document specifies the conventions for using the Advanced Encryption Standard (AES) algorithm for encryption with the Cryptographic Message Syntax (CMS). [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="3565"/>
        <seriesInfo name="DOI" value="10.17487/RFC3565"/>
      </reference>
      <reference anchor="RFC5280">
        <front>
          <title>Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile</title>
          <author fullname="D. Cooper" initials="D." surname="Cooper"/>
          <author fullname="S. Santesson" initials="S." surname="Santesson"/>
          <author fullname="S. Farrell" initials="S." surname="Farrell"/>
          <author fullname="S. Boeyen" initials="S." surname="Boeyen"/>
          <author fullname="R. Housley" initials="R." surname="Housley"/>
          <author fullname="W. Polk" initials="W." surname="Polk"/>
          <date month="May" year="2008"/>
          <abstract>
            <t>This memo profiles the X.509 v3 certificate and X.509 v2 certificate revocation list (CRL) for use in the Internet. An overview of this approach and model is provided as an introduction. The X.509 v3 certificate format is described in detail, with additional information regarding the format and semantics of Internet name forms. Standard certificate extensions are described and two Internet-specific extensions are defined. A set of required certificate extensions is specified. The X.509 v2 CRL format is described in detail along with standard and Internet-specific extensions. An algorithm for X.509 certification path validation is described. An ASN.1 module and examples are provided in the appendices. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="5280"/>
        <seriesInfo name="DOI" value="10.17487/RFC5280"/>
      </reference>
      <reference anchor="RFC5652">
        <front>
          <title>Cryptographic Message Syntax (CMS)</title>
          <author fullname="R. Housley" initials="R." surname="Housley"/>
          <date month="September" year="2009"/>
          <abstract>
            <t>This document describes the Cryptographic Message Syntax (CMS). This syntax is used to digitally sign, digest, authenticate, or encrypt arbitrary message content. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="70"/>
        <seriesInfo name="RFC" value="5652"/>
        <seriesInfo name="DOI" value="10.17487/RFC5652"/>
      </reference>
      <reference anchor="RFC5869">
        <front>
          <title>HMAC-based Extract-and-Expand Key Derivation Function (HKDF)</title>
          <author fullname="H. Krawczyk" initials="H." surname="Krawczyk"/>
          <author fullname="P. Eronen" initials="P." surname="Eronen"/>
          <date month="May" year="2010"/>
          <abstract>
            <t>This document specifies a simple Hashed Message Authentication Code (HMAC)-based key derivation function (HKDF), which can be used as a building block in various protocols and applications. The key derivation function (KDF) is intended to support a wide range of applications and requirements, and is conservative in its use of cryptographic hash functions. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="5869"/>
        <seriesInfo name="DOI" value="10.17487/RFC5869"/>
      </reference>
      <reference anchor="RFC8174">
        <front>
          <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
          <author fullname="B. Leiba" initials="B." surname="Leiba"/>
          <date month="May" year="2017"/>
          <abstract>
            <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="8174"/>
        <seriesInfo name="DOI" value="10.17487/RFC8174"/>
      </reference>
      <reference anchor="RFC8551">
        <front>
          <title>Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 4.0 Message Specification</title>
          <author fullname="J. Schaad" initials="J." surname="Schaad"/>
          <author fullname="B. Ramsdell" initials="B." surname="Ramsdell"/>
          <author fullname="S. Turner" initials="S." surname="Turner"/>
          <date month="April" year="2019"/>
          <abstract>
            <t>This document defines Secure/Multipurpose Internet Mail Extensions (S/MIME) version 4.0. S/MIME provides a consistent way to send and receive secure MIME data. Digital signatures provide authentication, message integrity, and non-repudiation with proof of origin. Encryption provides data confidentiality. Compression can be used to reduce data size. This document obsoletes RFC 5751.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8551"/>
        <seriesInfo name="DOI" value="10.17487/RFC8551"/>
      </reference>
      <reference anchor="RFC8619">
        <front>
          <title>Algorithm Identifiers for the HMAC-based Extract-and-Expand Key Derivation Function (HKDF)</title>
          <author fullname="R. Housley" initials="R." surname="Housley"/>
          <date month="June" year="2019"/>
          <abstract>
            <t>RFC 5869 specifies the HMAC-based Extract-and-Expand Key Derivation Function (HKDF) algorithm. This document assigns algorithm identifiers to the HKDF algorithm when used with three common one-way hash functions.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8619"/>
        <seriesInfo name="DOI" value="10.17487/RFC8619"/>
      </reference>
      <reference anchor="RFC9629">
        <front>
          <title>Using Key Encapsulation Mechanism (KEM) Algorithms in the Cryptographic Message Syntax (CMS)</title>
          <author fullname="R. Housley" initials="R." surname="Housley"/>
          <author fullname="J. Gray" initials="J." surname="Gray"/>
          <author fullname="T. Okubo" initials="T." surname="Okubo"/>
          <date month="August" year="2024"/>
          <abstract>
            <t>The Cryptographic Message Syntax (CMS) supports key transport and key agreement algorithms. In recent years, cryptographers have been specifying Key Encapsulation Mechanism (KEM) algorithms, including quantum-secure KEM algorithms. This document defines conventions for the use of KEM algorithms by the originator and recipients to encrypt and decrypt CMS content. This document updates RFC 5652.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="9629"/>
        <seriesInfo name="DOI" value="10.17487/RFC9629"/>
      </reference>

<!-- From here, New References Added by Guilin -->

      <reference anchor="CSOR"  target="https://csrc.nist.gov/projects/computer-security-objects-register/algorithm-registration">
          <front>
            <title>Computer Security Objects Register </title>
			<author fullname="NIST" initials="" surname="NIST"/>
            <date month="August" year="2024"/>
            <abstract>
              <t> .. </t>
            </abstract>
          </front>
          <seriesInfo name="" value=""/>
        </reference>

     <reference anchor="I-D.LBES25"  target="https://datatracker.ietf.org/doc/draft-longa-cfrg-frodokem/">
          <front>
            <title>FrodoKEM: key encapsulation from learning with errors</title>
            <author fullname="P. Longa" initials="P." surname="Longa"/>
            <author fullname="J. W. Bos" initials="J. W." surname="Bos"/>
			<author fullname="S. Ehlen" initials="S." surname="Ehlen"/>
            <author fullname="D. Stebila" initials="D. " surname="Stebila"/>
            <date month="september" year="2025"/>
            <abstract>
              <t> .. </t>
            </abstract>
          </front>
          <seriesInfo name="Work in Progress (v01), " value="Internet-Draft"/>
        </reference>
	</references>
    <?line 237?>
	
 <references>  <name>Informative References</name>
		
	  <reference anchor="FrodoKEM"  target="https://frodokem.org/files/FrodoKEM_standard_proposal_20250929.pdf">
          <front>
            <title>FrodoKEM: Learning With Errors Key Encapsulation</title>
            <author fullname="E. Alkim" initials="E." surname="Alkim"/>
            <author fullname="J. W. Bos" initials="J. W." surname="Bos"/>
			<author fullname="L. Ducas" initials="L." surname="Ducas"/>
			<author fullname="P. Longa" initials="P." surname="Longa"/>
            <author fullname="I. Mironov" initials="I. " surname="Mironov"/>
			<author fullname="M. Naehrig" initials="N." surname="Naehrig"/>
			<author fullname="V. Nikolaenko" initials="V." surname="Nikolaenko"/>
			<author fullname="C. Peikert" initials="C." surname="Peikert"/>
			<author fullname="A. Raghunathan" initials="A." surname="Raghunathan"/>
            <author fullname="D. Stebila" initials="D. " surname="Stebila"/>
            <date month="september" year="2025"/>
            <abstract>
              <t> .. </t>
            </abstract>
          </front>
          <seriesInfo name="Standardization Proposal submitted to ISO" value=""/>
        </reference>
		
		<reference anchor="W-D.POV26"  target="https://datatracker.ietf.org/doc/draft-ietf-lamps-cms-kyber/">
          <front>
            <title>Use of ML-KEM in the Cryptographic Message Syntax (CMS) </title>
            <author fullname="Julien Prat" initials="J." surname="Prat"/>
			<author fullname="Mike Ounsworth" initials="M." surname="Ounsworth"/>
			<author fullname="Daniel Van Geest" initials="D." surname="Van Geest"/>
            <date month="February" year="2026"/>
            <abstract>
              <t> .. </t>
            </abstract>
          </front>
          <seriesInfo name="Work in Progress (v13), " value="Internet-Draft (Group Documet of LAMPS), IETF"/>
        </reference>
		
		<reference anchor="I-D.S26"  target="https://datatracker.ietf.org/doc/draft-smyslov-lamps-frodokem-certificates/">
          <front>
            <title> Internet X.509 Public Key Infrastructure - Algorithm Identifiers for FrodoKEM </title>
            <author fullname="Valery Smyslov" initials="V." surname="Smyslov"/>
            <date month="February" year="2026"/>
            <abstract>
              <t> .. </t>
            </abstract>
          </front>
          <seriesInfo name="Work in Progress (v00), " value="Internet-Draft, IETF"/>
        </reference>
		 	
    </references>


  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
