<?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.38 (Ruby 2.6.10) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-lamps-rfc6211-update-01" category="std" consensus="true" submissionType="IETF" updates="6211" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.34.0 -->
  <front>
    <title abbrev="Update to RFC 6211">Update to the Cryptographic Message Syntax (CMS) Algorithm Identifier Protection Attribute</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-lamps-rfc6211-update-01"/>
    <author initials="R." surname="Housley" fullname="Russ Housley">
      <organization abbrev="Vigil Security">Vigil Security, LLC</organization>
      <address>
        <postal>
          <city>Herndon, VA</city>
          <country>US</country>
        </postal>
        <email>housley@vigilsec.com</email>
      </address>
    </author>
    <author initials="S." surname="Turner" fullname="Sean Turner">
      <organization abbrev="sn3rd">sn3rd llc</organization>
      <address>
        <postal>
          <city>Washington, DC</city>
          <country>US</country>
        </postal>
        <email>sean@sn3rd.com</email>
      </address>
    </author>
    <date year="2026" month="September" day="09"/>
    <workgroup>LAMPS</workgroup>
    <keyword>CMS</keyword>
    <keyword>attribute</keyword>
    <keyword>algorithm identifier</keyword>
    <abstract>
      <?line 54?>

<t>This document updates RFC 6211. It corrects an error in the definition
of the id-aa-CMSAlgorithmProtect ASN.1 object identifier. The IANA
registry entry has always been correct.</t>
    </abstract>
  </front>
  <middle>
    <?line 60?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document corrects a mistake in <xref target="RFC6211"/>.  It corrects an error
in definition of the id-aa-CMSAlgorithmProtection ASN.1 object identifier.</t>
      <t>The IANA registry entry for this ASN.1 object identifier does not need
to be updated; it has always been correct.</t>
      <t>The authors are aware of two implementations of RFC 6211, but they did not
interoperate because one used the ASN.1 object identifier from RFC 6211 and
the other used the ASN.1 object identifier from the IANA registry.</t>
      <t>The mistakes were reported in <xref target="Err9144"/> and <xref target="Err9145"/>.</t>
      <t>In addition, the body of the document says that the set of attributes will
"include only one instance of the algorithm protection attribute." This
requirement can be included in the ASN.1 defintion.</t>
      <t>This update to RFC 6211 will hopefully resolve future interoperability troubles.</t>
    </section>
    <section anchor="update-to-section-2-of-rfc-6211">
      <name>Update to Section 2 of RFC 6211</name>
      <t>OLD:</t>
      <artwork><![CDATA[
       aa-cmsAlgorithmProtection ATTRIBUTE ::= {
           TYPE CMSAlgorithmProtection
           IDENTIFIED BY { id-aa-CMSAlgorithmProtection }
       }

   The following object identifier identifies the algorithm protection
   attribute:

       id-aa-CMSAlgorithmProtection OBJECT IDENTIFIER ::= { iso(1)
            member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs9(9) 52 }
]]></artwork>
      <t>NEW:</t>
      <artwork><![CDATA[
       aa-cmsAlgorithmProtection ATTRIBUTE ::= {
           TYPE CMSAlgorithmProtection
           COUNTS MAX 1
           IDENTIFIED BY id-aa-CMSAlgorithmProtect
       }

   The following object identifier identifies the algorithm protection
   attribute:

       id-aa-CMSAlgorithmProtect OBJECT IDENTIFIER ::= { iso(1)
            member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs9(9)
            smime(16) aa(2) 52 }
]]></artwork>
    </section>
    <section anchor="update-to-appendix-a-of-rfc-6211">
      <name>Update to Appendix A of RFC 6211</name>
      <t>OLD:</t>
      <artwork><![CDATA[
     aa-cmsAlgorithmProtection ATTRIBUTE ::= {
        TYPE CMSAlgorithmProtection
        IDENTIFIED BY { id-aa-cmsAlgorithmProtect }
     }

     id-aa-cmsAlgorithmProtect OBJECT IDENTIFIER ::= {
        iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1)
        pkcs9(9) 52 }
]]></artwork>
      <t>NEW:</t>
      <artwork><![CDATA[
     aa-cmsAlgorithmProtection ATTRIBUTE ::= {
           TYPE CMSAlgorithmProtection
           COUNTS MAX 1
           IDENTIFIED BY id-aa-CMSAlgorithmProtect
     }

     id-aa-cmsAlgorithmProtect OBJECT IDENTIFIER ::= {
        iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1)
        pkcs9(9) smime(16) aa(2) 52 }
]]></artwork>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>No IANA registry updates are needed. The IANA registry is correct.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The CMS attribute specified in <xref target="RFC6211"/> is designed to address the
security issue of algorithm substitutions. That is, the originator uses
one algorithm, an attacker modifies the message, and then the validator
uses a different algorithm. The specified protection is not successful
unless all implementers use the same ASN.1 object identifier for the
attribute.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC6211">
          <front>
            <title>Cryptographic Message Syntax (CMS) Algorithm Identifier Protection Attribute</title>
            <author fullname="J. Schaad" initials="J." surname="Schaad"/>
            <date month="April" year="2011"/>
            <abstract>
              <t>The Cryptographic Message Syntax (CMS), unlike X.509/PKIX certificates, is vulnerable to algorithm substitution attacks. In an algorithm substitution attack, the attacker changes either the algorithm being used or the parameters of the algorithm in order to change the result of a signature verification process. In X.509 certificates, the signature algorithm is protected because it is duplicated in the TBSCertificate.signature field with the proviso that the validator is to compare both fields as part of the signature validation process. This document defines a new attribute that contains a copy of the relevant algorithm identifiers so that they are protected by the signature or authentication process. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6211"/>
          <seriesInfo name="DOI" value="10.17487/RFC6211"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="Err9144" target="https://errata.rfc-editor.org/eid9144/">
          <front>
            <title>RFC 6211 Errata Report ID 9144</title>
            <author>
              <organization>RFC Editor</organization>
            </author>
            <date year="2026" month="August" day="19"/>
          </front>
        </reference>
        <reference anchor="Err9145" target="https://errata.rfc-editor.org/eid9145/">
          <front>
            <title>RFC 6211 Errata Report ID 9145</title>
            <author>
              <organization>RFC Editor</organization>
            </author>
            <date year="2026" month="August" day="19"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 158?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Thanks to Paul Timmel for being the first person to spot the error in <xref target="RFC6211"/>.</t>
      <t>Thanks to Corey Bonnell and Mike StJohns for their careful review and constructive
comments.  The document is much better because of their review.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
NREAAA==

-->

</rfc>
