<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.24 (Ruby 3.4.2) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

<!ENTITY RFC8126 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8126.xml">
<!ENTITY RFC8179 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8179.xml">
<!ENTITY RFC8789 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8789.xml">
<!ENTITY RFC9371 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9371.xml">
]>


<rfc ipr="trust200902" docName="draft-paulwh-crypto-components-04" category="info" submissionType="IETF">
  <front>
    <title abbrev="Crypto components">Documenting and Referencing Cryptographic Components in IETF Documents</title>

    <author initials="P." surname="Wouters" fullname="Paul Wouters">
      <organization>Aiven</organization>
      <address>
        <email>paul.wouters@aiven.io</email>
      </address>
    </author>
    <author initials="P." surname="Hoffman" fullname="Paul Hoffman">
      <organization>ICANN</organization>
      <address>
        <email>paul.hoffman@icann.org</email>
      </address>
    </author>

    <date year="2025" month="March" day="03"/>

    
    
    

    <abstract>


<?line 29?>

<t>This document describes the history of how cryptographic components have been documented and referenced in the IETF,
such as in RFCs, Internet Drafts, and exernal sources.
It also gives guidance for how such specification should happen in the future.</t>

<t>%%
(To be removed before publication as an RFC)
This document is being developed in SAAG.
There is a git repo for the document at <eref target="https://github.com/paulehoffman/draft-paulwh-crypto-components">https://github.com/paulehoffman/draft-paulwh-crypto-components</eref>.
%%</t>



    </abstract>



  </front>

  <middle>


<?line 41?>

<section anchor="introduction"><name>Introduction</name>

<t>The IETF has many diverse ways to document and reference cryptographic components that are used in protocols. 
These practices have changed over time, based on the IETF community, the IETF leadership, and the types of components needed by protocols.</t>

<t>The purpose of this document is to increase consistency and transparency in how the IETF handles cryptographic components.
It provides input to IETF working groups that are defining new cryptographic components or updating the way they specify cryptographic components, such as in IANA registries.
This document does not define any new policies, but instead describes the many practices that have been used, particularly the practices that are considered best current practices today.</t>

<t>In this document, items such as cryptographic algorithms, base primitives, functions, methods, and constructions are all lumped under the term "cryptographic components".
Doing so avoids the conflicting definitions of what differentiates, for example, a method from a construction.</t>

<t>This document is informative, and thus does not prohibit exceptions from the current practices.
Given the wide variety of historical practices, the difficulty of differentiating what is a base primitive and what is a cryptographic component, and the variety of needs in IETF working groups, the guidance in this document gives leeway for future specifications.</t>

</section>
<section anchor="referencing-cryptography-in-rfcs"><name>Referencing Cryptography in RFCs</name>

<t>RFCs that define secure protocols need to reference cryptographic components, or those RFCs define the components themselves.
It is uncommon for IETF protocols to define cryptographic components; instead, those components are defined elsewhere and referenced in the protocol RFC.</t>

<t>There are many sources for cryptographic references for RFCs.</t>

<section anchor="external"><name>External References for Specifying Cryptography</name>

<t>There are many sources of references for cryptography other than RFCs.
Such sources include:</t>

<t><list style="symbols">
  <t>National standards development organizations (SDOs) such as the U.S. National Institute of Standards and Technology (NIST) and the German Federal Office for Information Security (BSI)</t>
  <t>International SDOs such as the International Standards Organization (ISO) and the International Telecommunications Union (ITU)</t>
  <t>Academic papers and articles</t>
  <t>Internet Drafts not meant to proceed to RFC status</t>
  <t>Web sites of individual cryptographers</t>
</list></t>

</section>
<section anchor="rfcs-for-specifying-cryptography"><name>RFCs for Specifying Cryptography</name>

<t>In order to be published as an RFC, an Internet Draft must be sponsored by one of the following:</t>

<t><list style="symbols">
  <t>An IETF working group (and then the working group's Area Director)</t>
  <t>A research group in the Internet Research Task Force (IRTF)</t>
  <t>An Area Director who is individually sponsoring the draft</t>
  <t>The Independent Submissions Editor (ISE)</t>
  <t>The Internet Architecture Board</t>
</list></t>

<t>RFCs describing cryptographic components have been published by the first four of those.
Note, however, that Area Directors may not be willing to individually sponsor drafts for cryptographic components because other venues for RFC publication can garner better reviews, and because RFCs are often not required for specifying cryptographic components (see <xref target="external"/>).
Documents from working groups and those sponsored by Area Directors must get IETF consensus (as determined by the IESG) before publication as RFCs; see <xref target="RFC8789"/>.</t>

<t>Many RFCs are specifications of cryptographic components, some are specific use cases of cryptography where additional operational constraints apply, and still others simply list cryptographic identifiers such as OIDs or IANA registration values.</t>

<t>An IETF protocol that uses cryptographic components does not need to refer to RFCs for those components;
it can refer to external references as described in <xref target="external"/>.
Whenever possible, cryptographic components related to a specific protocol should be specified separately from the protocol itself.
This allows better review of the cryptography by cryptographers, and better review of the protocol by protocol experts.</t>

</section>
</section>
<section anchor="using-identifiers-for-cryptography-in-protocols"><name>Using Identifiers for Cryptography in Protocols</name>

<t>IETF working groups often produce RFCs that create registries for cryptographic components.
IRTF research groups, particularly the Crypto Forum Research Group (CFRG), also produce RFCs that create registries for cryptographic components.
Cryptographic components that originate in the IRTF can appear in IETF protocols.</t>

<t>Although a proliferation of cryptographic components is a barrier to interoperability, the IETF encourages experimenting with new cryptographic components.
Identifiers used in IETF protocols are meant to be easy to obtain, as the IETF encourages experimentation and operational testing.
These identifiers are often called "code points" when they are listed in IANA registries, but might also be object identifiers (OIDs).
OIDs are covered in <xref target="oids"/>.</t>

<t>IANA registries are described in depth in <xref target="RFC8126"/>.
The following sections cover aspects of using IANA registries for cryptographic protocols; most of these aspects are the same for non-cryptographic protocols as well.</t>

<section anchor="per-registry-requirements-for-adding-code-points"><name>Per-Registry Requirements for Adding Code Points</name>

<t>In the past, some working groups allowed only a narrow ability to add cryptographic component code points to IANA registries for their protocols, by requiring an RFC.
Recently, the rules for many registries have been updated to make it easier to get code points.
Registry rules with looser requirement may reduce the likelihood that vendors will just take unallocated codepoints (also known as "squatting") because they can create a stable document for their uses; this also leads to more well-documented experimentation.
While the specific registration conditions for "Expert Review" and "Specification Required" are a matter for the WG to specify when creating or updating a registry, overall IETF policies do not require that these specifications be RFCs; they should, however, be stable references.</t>

<t>Stable specifications are important references for developers who rely on a registry with code points.
Individual web sites are probably the least-used references for cryptographic components for good reasons: the URLs for them might change or disappear, the content of the web sites might change in ways that would affect the components' definition, and so on.</t>

<t>Although there is no IETF-wide consensus at the time of this writing as to whether an Internet Drafts are appropriate for all registries as stable references, they have been used in the past.
Most RFCs do not define whether drafts are acceptable a stable reference, but some do give guidance to designated experts on this topic.</t>

<t>There are some IANA registries where the limited allocation space does not allow for handing out many experimental code points, such as those where the number of code points is limited to 256 or fewer.
This necessitates a more conservative approach to code point allocation, and might instead force experiments to use private use code points instead of having allocations for code points that might only be used occasionally.</t>

</section>
<section anchor="private-use-code-points"><name>Private-Use Code Points</name>

<t>Every IANA registry for cryptographic components should reserve some code points for "private use".
These private-use code points can be used by protocol implementers to indicate components that do not have their own code points.
Generally, the RFC describing the protocol will define how the private-use code points can be used in practice.</t>

</section>
<section anchor="vendor-space-code-points"><name>Vendor Space Code Points</name>

<t>Some IANA registries use an allocation scheme that allows for unlimited code points based on "vendor strings".
This allows for wide experimentation in a "vendor space" that acts as a private-use registration.
Such registrations might later be converted to an allocation not based on vendor names if the cryptographic component achieves IETF-wide consensus.</t>

</section>
<section anchor="recommendations-in-iana-registries"><name>Recommendations in IANA Registries</name>

<t>%%
This section needs major work.
It needs to incorporate different models for recommendations in registries, such the differences between TLS and DNSSEC algorithm registries.
It might have suggestions for models.
%%</t>

<!--
Each IETF working group and IRTF research group gets to specify the rules for the registries for the cryptographic components they create.

Some IANA registries for specific cryptographic protocols have a column with a name such as "status" or "recommended" that indicates whether the the IETF recommends that a cryptographic component be used in that protocol.
The definition of the column should differentiate between recommending for implementation and recommending for deployment.

- Recommendations for implementation tell developers of the protocol whether they should or must include the cryptographic component in their software or hardware implementations.
Such recommendations make the component available to users, letting them choose whether or not to use the component in their deployments.
- Recommendations for deployment tell the users of the protocol whether they should or must use the component in their deployments.

In the former case, the IETF is only speaking to developers; in the latter, the IETF is speaking directly to users who configure their use of the protocol.
This difference between "implementation" and "deployment" has sometimes tripped up working groups, but it is quite important to people trying to understand the IANA registry contents.

Working groups setting up such registries should strongly consider mandating that
decisions on setting the values in these columns to anything other than "MAY" require a standards track RFC.
That is, Independent Stream and IRTF RFCs would not be able to set or change the values in such a table in an IANA registry.

A working group's decision about whether a particular cryptographic component is mandatory, suggested, suggested against, or must not be used, might not be an easy one to make, particularly in light of also having to decide for both implementation and deployment.
Deployed cryptographic components that are known to be weak, such as those with keys that are now considered to be too small, present a significant challenge for working groups.
For such a weak component, clearly the recommendation should be against deployment, but a similar recommend against allowing implementation can make deployed systems unusable.
Such decisions are left to working groups, an are not covered here in any significant depth.
Working groups might batch their decision-making into periodic chosen intervals.
Working groups that choose to go against IETF-wide trends for cryptographic component should clearly state why their choices differ.

Having too many algorithms with a "recommended" status complicates implementations and deployments, and can delay migrations to newer algorithms.

Registries that do not have columns for "implementation" and/or "deployment" can be updated by working groups or the IETF to add those columns.
-->

</section>
<section anchor="oids"><name>OIDs</name>

<t>Some IETF cryptographic protocols (notably CMS, CMP, S/MIME, and PKIX) use OIDs as code points instead of values in IANA registries.
A few IANA registries list OIDs, but currently most OIDs are only listed in RFCs.
OIDs are a hierarchical numbering system, normally stored in ASN.1 DER or BER encoding, and displayed as a series of positive integers separated by period (".") characters.</t>

<t>In IETF standards, many OIDs for cryptographic components normally are based on a part of the OID tree that was established in the early 1990s.
However, many OIDs come from other parts of the OID tree, and no particular part of the OID tree is better or worse than any other for unique identification of cryptographic components.
In fact, individuals who want to control part of the OID tree (called "private enterprise numbers") can get their own OID prefix directly from IANA as described in <xref target="RFC9371"/>.
The ASN.1 prefix for the IANA PEN tree is 1.3.6.1.4.1.</t>

<t>There is no definitive central source for OID assignments like the IANA registries.
This means that OIDs that are assigned in RFCs are only visible to readers of those RFCs, which can cause authors of Internet Drafts to accidentally assign OIDs that are already assigned elsewhere.</t>

<t>Assigning OIDs for cryptographic components in RFCs does not have the flexibility and semantic richness available in IANA registries.
Because of this, OIDs are rarely used for cryptographic identifiers in new protocols unless those new protocols are closely aligned with protocols that already use OIDs.</t>

</section>
<section anchor="identifiers-and-intellectual-property"><name>Identifiers and Intellectual Property</name>

<t>Assigning code points for proprietary cryptographic components or cryptographic components that have known intellectual property rights (IPR) is acceptable as long as any IETF protocol using those code points also allow the protocol to be run without using those components.
The IETF policy on IPR can be found in <xref target="RFC8179"/>.</t>

</section>
</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>This document contains no actions for IANA.
However, it discusses the use of IANA registries in many places.</t>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>This document is about the use of cryptography in IETF protocols, and how that cryptography is referenced in those protocols.</t>

<t>Reusing cryptographic components that have already been reviewed and approved in the IETF is usually better than creating new cryptography that must be reviewed before it is used in protocols.</t>

</section>


  </middle>

  <back>


<references title='References' anchor="sec-combined-references">

    <references title='Normative References' anchor="sec-normative-references">

&RFC8126;


    </references>

    <references title='Informative References' anchor="sec-informative-references">

&RFC8179;
&RFC8789;
&RFC9371;


    </references>

</references>



  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA6VbbXPbRpL+zl8xR9fWSlUkbWf3krW8tbWKLTuqW9sqUT7f
fRwCQxIxiEEwAGleKv/9nu6eGQxAUcnVfYgjkcBMT788/XT3aD6fT9qiLc2V
emuzbmeqtqg2Sle5ujdr05gqo9/fNMe6tZtG19siU2/srrYVHnWqqNTtzcO7
+LKb6NWqMfsr/4rK4rOT3GaV3mGnvNHrdl7rrjxs5xk/N++fm7/466SomyvV
Np1rv3vx4tWL7yauW+0K5wpbtccaS9Cmk0y3V5BgbScT3bVb21xNlJrjP4VP
3ZW6W6gvtmtN4/gz2fwO2w4+ts1GV8X/6BaLX6nrYm8q/tzsdFFeKRJzcZDn
/6np20VhT/b5ya7XO12N90k/Hu5z++b648eTfbby/D+LTFfVAm9MJnS+Zoe3
9oaOd//uzd9e/vAq/PjD38KPr/7yw8uryaQ6efi77/HxfD5XeuXaRmftZPKw
LZzKvclUblzWFCvjVLs1Cl+1tjkqu1Zbe1DZwPK9ldRW741aGVPFhUzOftN4
v8Gv8A5akow1gwmzrdLsMpDLzdQtXmkq06q35A/4gN423/CZLpWzXZMZt5jc
tkqXzqoNzuTUpityjbUVlMLy8aquNlmxhtJIt8ptbVfmELCuIZ2XYd21XWMW
k8mf/jS5eLCQHILu7B5SrgwWM6ruVmVYAmJqFvNypCv8vDIUEbnZm9LWcsjl
9fX7BZ7EuekJDWFbLF9bFpO2jwvoVv1927a1u3r+HE9tu9UCSn1O1jfe+s+f
jo9/LOgMbNFdkeelmUyekS4bm3cZSU/2FaVDB05hxaPKob3GGXXQR5jZJvKk
Fjtv7XYLwTWO1zk5ct3Y1ma2dAtF22HpmnyrgM3ENbKtrjZ4FiqGCoqdmamV
ppdt7xS0w66rivY46z8rjc4h67aoxSPoCwp6Ry6ZiFQZk5P1jokscvS6a2oL
ifB8O7Yezl5UWWMgCharHLwdJz/KTo2uXK0b/gBnJP9qe1VW0LU7qyL2VEiy
LxBPeLvuWtqM3z3Y5is5zaaxXZ0oMzfroqIvKvNEpMGFujrXDMwkDmxI/z96
tz+efXOmkpi7vf54DUtvcOCmoMAagYCF1JVtRSajyGlIqtoiKPA8rIcDAe5a
mGcEGexhvfn5eD08kMfMAG8Nvu1K3ZQs/fh5UgfbA7bnmHStyrqmIdmSR22u
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
ULlO/he596JgnDcAAA==

-->

</rfc>

