<?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.18 (Ruby 2.6.10) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-housley-lamps-private-key-attest-attr-00" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.25.0 -->
  <front>
    <title abbrev="Attestation to Private Key Possession">An Attribute for Attestation to the Possession of a Private Key</title>
    <seriesInfo name="Internet-Draft" value="draft-housley-lamps-private-key-attest-attr-00"/>
    <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>
    <date year="2025" month="January" day="02"/>
    <area>Security</area>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 59?>

<t>This document specifies an attribute for attestation to the possession of a
private key.  As part of X.509 certificate enrollment, a Certification Authority
(CA) typically demands proof that the subject has possession of the private key
that corresponds to the to-be-certified public key.  In some cases, CAs might
accept an attestation from the subject.  For example, when a subject needs separate
certificates for a signature and key establishment, an attestation that can be
validated with the previously issued signature certificate might be adequate for
subsequent issuance of the key establishment certificate.</t>
    </abstract>
  </front>
  <middle>
    <?line 70?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document specifies an attribute for attestation to the possession of a
private key.  As part of X.509 certificate <xref target="RFC5280"/> enrollment, a Certification
Authority (CA) typically demands proof that the subject has possession of the
private key that corresponds to the to-be-certified public key.  In some cases, a CA
might accept an attestation from the subject instead of proof of possession.
<xref target="RFC6955"/> offers some algorithms to provide proof of possession for Diffie-Hellman
private keys.  However, these algorithms are not suitable for use with
PKCS#10 <xref target="RFC2986"/>.  On the other hand, the attestation attribute specified in this
document is suitable for use with PKCS#10.</t>
      <t>More and more, a subject needs two certificates, one for digiatal signatures, and
a separate one for key establishment.  For example, a subject may need a signature
certificate that contains a ML-DSA public key and a key establishment certificate
that contains a ML-KEM public key.  For another example, a subject may need a signature
certificate that contains a ECDSA public key and a key establishment certificate
that contains a ECDH public key.</t>
      <t>In this situation, a CA might accept an attestation that can be validated with the
previously issued signature certificate might be adequate for subsequent issuance of
the key establishment certificate.</t>
      <t>When using the attribute for attestation to the possession of the key establishment
private key, the process for a subject to obtain two certificates is:</t>
      <ol spacing="normal" type="1"><li>
          <t>The subject generates the signature key pair.</t>
        </li>
        <li>
          <t>The subject composes a PKCS#10 Certificate Signing Request (CSR) in the usual
manner.  It includes a signature that is produced with the private key from
step 1.</t>
        </li>
        <li>
          <t>The subject sends the CSR to the CA, and it gets back a signature certificate.</t>
        </li>
        <li>
          <t>The subject generates the key establishment key pair.</t>
        </li>
        <li>
          <t>The subject composes a PKCS#10 CSR containing the key establishment public
key.  The CSR attributes include the attestation attribute that is specified in
<xref target="attr"/> of this document.  The subject name matches the one from step 2, and it
includes a signature that is produced with the private key from step 1.</t>
        </li>
        <li>
          <t>The subject sends the CSR to the CA, and it gets back a key establishment
certificate.</t>
        </li>
      </ol>
      <section anchor="asn1">
        <name>ASN.1</name>
        <t>The attestation attribute is generated using ASN.1 <xref target="X680"/>, using the
Distinguished Encoding Rules (DER) <xref target="X690"/>.</t>
      </section>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

</section>
    </section>
    <section anchor="attr">
      <name>Attribute for Attestation to the Possession of a Private Key</name>
      <t>The attribute for attestation to the possession of a private key
is included in a certificate request to attest that the subject of
the signature certificate that is used to validate the signature on
the certificate request also has possession of the private key that
corresponds to the public key in the restificate request.</t>
      <t>The subject in the signature certificate <bcp14>MUST</bcp14> be the same as the subject name
in the certificate request.  If they are different, the CA <bcp14>MUST</bcp14> reject
the certificate request.</t>
      <t>If subject alternative names are present in the certificate request, they
<bcp14>MUST</bcp14> match subject alternative names in the signature certificate.  If the
certificate request contains subject alternative names that are not present in
the signature certificate, the CA <bcp14>MUST</bcp14> reject the certificate request.</t>
      <t>The attribute for attestation to the possession of a private key has
the following structure:</t>
      <sourcecode type="asn.1"><![CDATA[
   id-at-privateKeyAttest OBJECT IDENTIFIER ::= 
     { 1 3 6 1 4 1 22112 2 1 }

   privateKeyAttest ATTRIBUTE ::= {
     TYPE PrivateKeyAttest
     IDENTIFIED BY id-at-privateKeyAttest }

   PrivateKeyAttest ::= SEQUENCE {
     serialNumber  CertificateSerialNumber,
     issuer        [0] Name OPTIONAL,
     keyIdentifier [1] KeyIdentifier OPTIONAL }

]]></sourcecode>
      <t>The components of the PrivateKeyAttest SEQUENCE have the following semantics:</t>
      <ul empty="true">
        <li>
          <dl>
            <dt>serialNumber:</dt>
            <dd>
              <t>the serial number of the signature certificate.</t>
            </dd>
          </dl>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <dl>
            <dt>issuer:</dt>
            <dd>
              <t>the issuer name of the signature certificate.  If the issuer of the
key establishment certificate will be the same as the issuer of the
signature certificate, then this component is omitted.</t>
            </dd>
          </dl>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <dl>
            <dt>keyIdentifier:</dt>
            <dd>
              <t>the key identifier for the public key in the signature certificate.  If
the issuer of the key establishment certificate will be the same as the
issuer of the signature certificate, then this component is omitted.</t>
            </dd>
          </dl>
        </li>
      </ul>
    </section>
    <section anchor="conventions-for-pkcs10">
      <name>Conventions for PKCS#10</name>
      <t>This section specifies the conventions for using the attribute for attestation
to the possession of a private key with PKCS#10 <xref target="RFC2986"/> when requesting a
key establisment certificate.</t>
      <t>The PKCS#10 CertificationRequest always has three components, as follows:</t>
      <ul empty="true">
        <li>
          <dl>
            <dt>certificationRequestInfo:</dt>
            <dd>
              <t>the subject name <bcp14>MUST</bcp14> be the same as the subject name in the signature certificate,
the subjectPKInfo <bcp14>MUST</bcp14> contain the public key for the key establishment algorithm,
and the attributes <bcp14>MUST</bcp14> include privateKeyAttest attribute as specified
in <xref target="attr"/> of this document.</t>
            </dd>
          </dl>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <dl>
            <dt>signatureAlgorithm:</dt>
            <dd>
              <t>the signature algorithm <bcp14>MUST</bcp14> be one that can be validated with the public key
in the signature certificate.</t>
            </dd>
          </dl>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <dl>
            <dt>signature:</dt>
            <dd>
              <t>the signature over certificationRequestInfo <bcp14>MUST</bcp14> validate with the public key
in the signature certificate.</t>
            </dd>
          </dl>
        </li>
      </ul>
    </section>
    <section anchor="conventions-for-crmf">
      <name>Conventions for CRMF</name>
      <t>This section specifies the conventions for using the attribute for attestation
to the possession of a private key with the Certificate Request Message
Format (CRMF) <xref target="RFC4211"/> when requesting a key establisment certificate.</t>
      <t>The following ASN.1 types are defined for use with CRMF.  They have exactly
the same semantics and syntax as the attribute discussed above, but they
offer a similar naming convention to the Registration Controls in <xref target="RFC4211"/>.</t>
      <sourcecode type="asn.1"><![CDATA[
  regCtrl-privateKeyAttest ATTRIBUTE ::= privateKeyAttest

  id-regCtrl-privateKeyAttest OBJECT IDENTIFIER ::=
    id-at-privateKeyAttest
 
]]></sourcecode>
      <t>The CRMF CertificationRequest always has three components, as follows:</t>
      <ul empty="true">
        <li>
          <dl>
            <dt>certReq:</dt>
            <dd>
              <t>the certTemplate <bcp14>MUST</bcp14> include the subject and the publicKey components. The
same subject name <bcp14>MUST</bcp14> match the subject name in the signature certificate, and
the publicKey <bcp14>MUST</bcp14> contain the public key for the key establishment algorithm.</t>
            </dd>
          </dl>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <dl>
            <dt>popo:</dt>
            <dd>
              <t>the ProofOfPossession <bcp14>MUST</bcp14> use the signature CHOICE,
the poposkInput <bcp14>MUST</bcp14> be present, POPOSigningKeyInput.authInfo <bcp14>MUST</bcp14> use
the sender CHOICE, the sender <bcp14>MUST</bcp14> set to the subject name that appears in
the signature certificate, the publicKey <bcp14>MUST</bcp14> contain a copy of the public
key from the certTemplate, the algorithmIdentifier <bcp14>MUST</bcp14> identify a signture
algorithm that can be validated with the public key in the signature certificate,
and signature over the poposkInput <bcp14>MUST</bcp14> validate with the public key
in the signature certificate.</t>
            </dd>
          </dl>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <dl>
            <dt>regInfo:</dt>
            <dd>
              <t>the attributes <bcp14>MUST</bcp14> include privateKeyAttest attribute as specified
in <xref target="attr"/> of this document.</t>
            </dd>
          </dl>
        </li>
      </ul>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The subject is signing an attestation that is has possession of the key
establishment private key instead of providing some other form of proof.  If
the subject has lost control of the signature private key, then the attestation
could be generated by some other party.  Timely revocation of the compromised
signature certificate is the only protection against such loss of control.</t>
      <t>The signature key pair and the key establishment key pair are expected to have
roughly the same security strength.  To ensure that the signature on the attestation
is not the weak part of the certificate enrollment, the signature key pair <bcp14>SHOULD</bcp14> be
at least as strong as the key establishment key pair.</t>
    </section>
    <section anchor="iana">
      <name>IANA Considerations</name>
      <t>For the ASN.1 Module in the <xref target="appendix-asn1"/> of this document, IANA
is requested to assign an object identifier (OID) for the module
identifier (TBD0) with a Description of "id-mod-private-key-attest-2025".  The
OID for the module should be allocated in the "SMI Security for PKIX Module Identifier"
registry (1.3.6.1.5.5.7.0).</t>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>Thanks to
Sean Turner and
Joe Mandel
for their constructive comments.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2986">
          <front>
            <title>PKCS #10: Certification Request Syntax Specification Version 1.7</title>
            <author fullname="M. Nystrom" initials="M." surname="Nystrom"/>
            <author fullname="B. Kaliski" initials="B." surname="Kaliski"/>
            <date month="November" year="2000"/>
            <abstract>
              <t>This memo represents a republication of PKCS #10 v1.7 from RSA Laboratories' Public-Key Cryptography Standards (PKCS) series, and change control is retained within the PKCS process. The body of this document, except for the security considerations section, is taken directly from the PKCS #9 v2.0 or the PKCS #10 v1.7 document. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2986"/>
          <seriesInfo name="DOI" value="10.17487/RFC2986"/>
        </reference>
        <reference anchor="RFC4211">
          <front>
            <title>Internet X.509 Public Key Infrastructure Certificate Request Message Format (CRMF)</title>
            <author fullname="J. Schaad" initials="J." surname="Schaad"/>
            <date month="September" year="2005"/>
            <abstract>
              <t>This document describes the Certificate Request Message Format (CRMF) syntax and semantics. This syntax is used to convey a request for a certificate to a Certification Authority (CA), possibly via a Registration Authority (RA), for the purposes of X.509 certificate production. The request will typically include a public key and the associated registration information. This document does not define a certificate request protocol. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4211"/>
          <seriesInfo name="DOI" value="10.17487/RFC4211"/>
        </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="RFC5912">
          <front>
            <title>New ASN.1 Modules for the Public Key Infrastructure Using X.509 (PKIX)</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <author fullname="J. Schaad" initials="J." surname="Schaad"/>
            <date month="June" year="2010"/>
            <abstract>
              <t>The Public Key Infrastructure using X.509 (PKIX) certificate format, and many associated formats, are expressed using ASN.1. The current ASN.1 modules conform to the 1988 version of ASN.1. This document updates those ASN.1 modules to conform to the 2002 version of ASN.1. There are no bits-on-the-wire changes to any of the formats; this is simply a change to the syntax. This document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5912"/>
          <seriesInfo name="DOI" value="10.17487/RFC5912"/>
        </reference>
        <reference anchor="X680" target="https://www.itu.int/rec/T-REC-X.680">
          <front>
            <title>Information technology -- Abstract Syntax Notation One (ASN.1): Specification of basic notation</title>
            <author>
              <organization>ITU-T</organization>
            </author>
            <date year="2021" month="February"/>
          </front>
          <seriesInfo name="ITU-T Recommendation" value="X.680"/>
          <seriesInfo name="ISO/IEC" value="8824-1:2021"/>
        </reference>
        <reference anchor="X690" target="https://www.itu.int/rec/T-REC-X.690">
          <front>
            <title>Information technology -- ASN.1 encoding rules: Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules (DER)</title>
            <author>
              <organization>ITU-T</organization>
            </author>
            <date year="2021" month="February"/>
          </front>
          <seriesInfo name="ITU-T Recommendation" value="X.690"/>
          <seriesInfo name="ISO/IEC" value="8825-1-2021"/>
        </reference>
        <reference anchor="RFC2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <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" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <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="RFC6955">
          <front>
            <title>Diffie-Hellman Proof-of-Possession Algorithms</title>
            <author fullname="J. Schaad" initials="J." surname="Schaad"/>
            <author fullname="H. Prafullchandra" initials="H." surname="Prafullchandra"/>
            <date month="May" year="2013"/>
            <abstract>
              <t>This document describes two methods for producing an integrity check value from a Diffie-Hellman key pair and one method for producing an integrity check value from an Elliptic Curve key pair. This behavior is needed for such operations as creating the signature of a Public-Key Cryptography Standards (PKCS) #10 Certification Request. These algorithms are designed to provide a Proof-of-Possession of the private key and not to be a general purpose signing algorithm.</t>
              <t>This document obsoletes RFC 2875.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6955"/>
          <seriesInfo name="DOI" value="10.17487/RFC6955"/>
        </reference>
      </references>
    </references>
    <?line 293?>

<section anchor="appendix-asn1">
      <name>ASN.1 Module</name>
      <t>This ASN.1 Module builds upon the conventions established in <xref target="RFC5912"/>.</t>
      <sourcecode type="asn.1"><![CDATA[
<CODE STARTS>

 PrivateKeyAttest-2025
   { iso(1) identified-organization(3) dod(6) internet(1) security(5)
     mechanisms(5) pkix(7) id-mod(0) id-mod-private-key-attest-2025(TBD0) }
      
 DEFINITIONS IMPLICIT TAGS ::= BEGIN

 EXPORTS ALL;

 IMPORTS
   ATTRIBUTE
   FROM PKIX-CommonTypes-2009 -- in [RFC5912]
     { iso(1) identified-organization(3) dod(6) internet(1)
       security(5) mechanisms(5) pkix(7) id-mod(0)
       id-mod-pkixCommon-02(57) }

   CertificateSerialNumber, Name, id-pkix
   FROM PKIX1Explicit-2009  -- in [RFC5912]
     { iso(1) identified-organization(3) dod(6) internet(1)
       security(5) mechanisms(5) pkix(7) id-mod(0)
       id-mod-pkix1-explicit-02(51) }

   KeyIdentifier
   FROM PKIX1Implicit-2009 -- in [RFC5912]
     { iso(1) identified-organization(3) dod(6) internet(1)
       security(5) mechanisms(5) pkix(7) id-mod(0)
       id-mod-pkix1-implicit-02(59) } ;

 --
 -- Private Key Attestation Attribute
 --

 id-at-privateKeyAttest OBJECT IDENTIFIER ::=
   { 1 3 6 1 4 1 22112 2 1 }

 privateKeyAttest ATTRIBUTE ::= {
   TYPE PrivateKeyAttest
   IDENTIFIED BY id-at-privateKeyAttest }

 PrivateKeyAttest ::= SEQUENCE {
   serialNumber  CertificateSerialNumber,
   issuer        [0] Name OPTIONAL,
   keyIdentifier [1] KeyIdentifier OPTIONAL }

 --
 -- Registration Control Support
 --

 RegControlSet ATTRIBUTE ::= { regCtrl-privateKeyAttest, ... }

 regCtrl-privateKeyAttest ATTRIBUTE ::= privateKeyAttest

 id-regCtrl-privateKeyAttest OBJECT IDENTIFIER ::=
   id-at-privateKeyAttest
     
 END

<CODE ENDS>
]]></sourcecode>
    </section>
  </back>
  <!-- ##markdown-source:
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
AAA=

-->

</rfc>
