<?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-ietf-lamps-private-key-stmt-attr-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.28.0 -->
  <front>
    <title abbrev="Statement of Private Key Possession">An Attribute for Statement of Possession of a Private Key</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-lamps-private-key-stmt-attr-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>
    <date year="2025" month="March" day="21"/>
    <area>Security</area>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 60?>

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

<section anchor="introduction">
      <name>Introduction</name>
      <t>This document specifies an attribute for a statement of possession of a private key
by a certificate subject.  As part of X.509 certificate <xref target="RFC5280"/> enrollment, a
Certification Authority (CA) typically demands proof that the subject possesses the
private key that corresponds to the to-be-certified public key.  In some cases, a CA
might accept a signed statement from the certificate subject.  For example, when a
certificate subject needs separate certificates for signature and key establishment,
a signed statement that can be validated with the previously issued signature
certificate for the same subject might be adequate for subsequent issuance of the
key establishment certificate.  Note that <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 the attribute specified in this document is suitable for use with PKCS#10
and the Certificate Request Message Format (CRMF) <xref target="RFC4211"/>.</t>
      <t>In many situations 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 a signed statement that can be validated with the
previously issued signature certificate as adequate for subsequent issuance of
the key establishment certificate.</t>
      <t>This document defines an attribute for a statement of possession.  When the
certificate policy <xref target="RFC3647"/> allows, a CA may accept this statement in lieu of
proof that the subject has possession of the private key.</t>
      <t>When using the attribute defined in this document make a statement about 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.
The signature certificate includes a key usage of digitalSignature, 
nonRepudiation, or both <xref section="4.2.1.3" sectionFormat="of" target="RFC5280"/>.</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 attribute specified in <xref target="attr"/> of this
document.  The subject name matches the one from step 3.  The CSR 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.  The key establishment certificate includes a key usage of
keyEncipherment or keyAgreement <xref section="4.2.1.3" sectionFormat="of" target="RFC5280"/>.</t>
        </li>
      </ol>
      <section anchor="asn1">
        <name>ASN.1</name>
        <t>The attribute defined in this document 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 Statement of Possession of a Private Key</name>
      <t>The attribute for statement of possession of a private key is included in a
certificate request to make the following statement:</t>
      <ul empty="true">
        <li>
          <t>"The subject of the signature certificate that is used to
validate the signature on this certificate request states,
without providing proof, that it has possession of the
private key that corresponds to the public key in the
certificate request."</t>
        </li>
      </ul>
      <t>The CA <bcp14>MUST</bcp14> perform certification path validation for the signature
certificate as specified in <xref section="6" sectionFormat="of" target="RFC5280"/>.  If the certification
path is not valid, then the CA <bcp14>MUST</bcp14> reject the certificate request.</t>
      <t>The CA <bcp14>MUST</bcp14> validate the signature on the certificate request using the
public key from the signature certificate.  If the signature is not valid,
then the CA <bcp14>MUST</bcp14> reject the certificate request.</t>
      <t>The subject in the signature certificate <bcp14>SHOULD</bcp14> be the same as the subject name
in the certificate request.  If they are different, the certificate policy <bcp14>MUST</bcp14>
describe how the CA can determine that the two subject names identify the same
entity.  If the CA is unable to determine that the two subject names identify
the same entity, then the CA <bcp14>MUST</bcp14> reject the certificate request.</t>
      <t>If subject alternative names are present in the certificate request, they
<bcp14>SHOULD</bcp14> match subject alternative names in the signature certificate.  If the CA
is unable to determine that each of subject alternative names identifies
the same entity as is named in the signature certificate, then the CA <bcp14>MUST</bcp14>
reject the certificate request.</t>
      <t>The attribute for statement of possession of a private key has the following
structure:</t>
      <sourcecode type="asn.1"><![CDATA[
   id-at-statementOfPossession OBJECT IDENTIFIER ::= 
     { 1 3 6 1 4 1 22112 2 1 }

   privateKeyPossessionStatement ATTRIBUTE ::= {
     TYPE PrivateKeyPossessionStatement
     IDENTIFIED BY id-at-statementOfPossession }

   PrivateKeyPossessionStatement ::= SEQUENCE {
     signer  IssuerAndSerialNumber,
     cert    Certificate OPTIONAL }

]]></sourcecode>
      <t>The components of the PrivateKeyStatement SEQUENCE have the following semantics:</t>
      <ul empty="true">
        <li>
          <dl>
            <dt>signer:</dt>
            <dd>
              <t>the issuer name and certificate serial number of the signature certificate.</t>
            </dd>
          </dl>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <dl>
            <dt>cert:</dt>
            <dd>
              <t>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 <bcp14>MAY</bcp14> be omitted.  When the signature certificate is omitted, the
signer is assuming that the CA has a mechanism to obtain all valid
certificates that it issued.</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 statement
of possession of a private key with PKCS#10 <xref target="RFC2986"/> when requesting a
key establishment 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>SHOULD</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 privateKeyPossessionStatement 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, and certification path validation for the signature
certificate <bcp14>MUST</bcp14> be successful as specified in <xref section="6" sectionFormat="of" target="RFC5280"/>.</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 statement
of possession of a private key with the 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-privateKeyPossessionStatement ATTRIBUTE ::= 
    privateKeyPossessionStatement

  id-regCtrl-statementOfPossession OBJECT IDENTIFIER ::=
    id-at-statementOfPossession
 
]]></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>SHOULD</bcp14> match the subject name in the signature certificate, and
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>SHOULD</bcp14> be 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,
signature over the poposkInput <bcp14>MUST</bcp14> validate with the public key in the signature
certificate, and certification path validation for the signature certificate
<bcp14>MUST</bcp14> be successful as specified in <xref section="6" sectionFormat="of" target="RFC5280"/>.</t>
            </dd>
          </dl>
        </li>
      </ul>
      <ul empty="true">
        <li>
          <dl>
            <dt>regInfo:</dt>
            <dd>
              <t>the attributes <bcp14>MUST</bcp14> include privateKeyPossessionStatement 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 privateKeyPossessionStatement attribute <bcp14>MUST NOT</bcp14> be used to obtain a
signature certificate.  Performing proof of possession of the the signature
private key is easily accomplished by signing the certificate request.</t>
      <t>The subject is signing privateKeyPossessionStatement attribute to tell the CA that it has
possession of the key establishment private key.  This is being done instead of
providing technical proof of possession.  If the subject has lost control
of the signature private key, then the signed privateKeyPossessionStatement attribute
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>If the CA revokes a compromised signature certificate, then the CA <bcp14>SHOULD</bcp14>
also revoke all key establishment certificates that were obtained with
privateKeyPossessionStatement attributes signed by that compromised signature
certificate.</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 statement
is not the weakest part of the certificate enrollment, the signature key pair <bcp14>SHOULD</bcp14>
be at least as strong as the key establishment key pair.</t>
      <t>If a CA allows subject in the key establishment certificate to be different than
the subject name in the signature certificate, then certificate policy <bcp14>MUST</bcp14>
describe how to determine that the two subject names identify the same entity.
Likewise, if a CA allows subject alternative names in the key establishment
certificate that are not present in the signature certificate, then certificate
policy <bcp14>MUST</bcp14> describe how to determine that the subject alternative names identify
the same entity as is named in the signature certificate.</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 "d-mod-private-key-possession-stmt-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>
  </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" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5280.xml">
          <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" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.5912.xml">
          <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">
          <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="RFC3647">
          <front>
            <title>Internet X.509 Public Key Infrastructure Certificate Policy and Certification Practices Framework</title>
            <author fullname="S. Chokhani" initials="S." surname="Chokhani"/>
            <author fullname="W. Ford" initials="W." surname="Ford"/>
            <author fullname="R. Sabett" initials="R." surname="Sabett"/>
            <author fullname="C. Merrill" initials="C." surname="Merrill"/>
            <author fullname="S. Wu" initials="S." surname="Wu"/>
            <date month="November" year="2003"/>
            <abstract>
              <t>This document presents a framework to assist the writers of certificate policies or certification practice statements for participants within public key infrastructures, such as certification authorities, policy authorities, and communities of interest that wish to rely on certificates. In particular, the framework provides a comprehensive list of topics that potentially (at the writer's discretion) need to be covered in a certificate policy or a certification practice statement. This document supersedes RFC 2527.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3647"/>
          <seriesInfo name="DOI" value="10.17487/RFC3647"/>
        </reference>
        <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 330?>

<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>

PrivateKeyPossessionStatement-2025
  { iso(1) identified-organization(3) dod(6) internet(1)
    security(5) mechanisms(5) pkix(7) id-mod(0)
    id-mod-private-key-possession-stmt-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) }

  Certificate
  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) }

  IssuerAndSerialNumber
  FROM CryptographicMessageSyntax-2010 -- [RFC6268]
    { iso(1) member-body(2) us(840) rsadsi(113549)
       pkcs(1) pkcs-9(9) smime(16) modules(0)
       id-mod-cms-2009(58) } ;

--
-- Private Key Possession Statement Attribute
--

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

privateKeyPossessionStatement ATTRIBUTE ::= {
  TYPE PrivateKeyPossessionStatement
  IDENTIFIED BY id-at-statementOfPossession }

PrivateKeyPossessionStatement ::= SEQUENCE {
  signer  IssuerAndSerialNumber,
  cert    Certificate OPTIONAL }

--
-- Registration Control Support
--

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

regCtrl-privateKeyPossessionStatement ATTRIBUTE ::=
  privateKeyPossessionStatement

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

<CODE ENDS>
]]></sourcecode>
    </section>
    <section anchor="example-use-of-the-privatekeypossessionstatement-attribute">
      <name>Example use of the privateKeyPossessionStatement Attribute</name>
      <t>In this example, the self-signed certificate for the CA is:</t>
      <artwork><![CDATA[
-----BEGIN CERTIFICATE-----
MIIB7DCCAXKgAwIBAgIUL149AUxHunELBZMELEQm+isgKCQwCgYIKoZIzj0EAwMw
NzELMAkGA1UEBhMCVVMxEzARBgNVBAoTCkV4YW1wbGUgQ0ExEzARBgNVBAMTCmNh
LmV4YW1wbGUwHhcNMjUwMTAzMjAyNzA5WhcNMzUwMTAzMjAyNzA5WjA3MQswCQYD
VQQGEwJVUzETMBEGA1UEChMKRXhhbXBsZSBDQTETMBEGA1UEAxMKY2EuZXhhbXBs
ZTB2MBAGByqGSM49AgEGBSuBBAAiA2IABDxZdB/Glcxdk1p6Jf1j5en6QfliY9OS
fjZbtje/w6M58PN8Sb3VFln1rPdvD17UXeazSG9Hr/Dq3enbsHHO0pPntcFOgb8n
r8R8LUGhxRzjlxkaEJN+pa6Nf7qk49JDeaM/MD0wDwYDVR0TAQH/BAUwAwEB/zAL
BgNVHQ8EBAMCAgQwHQYDVR0OBBYEFD6YvLLv3DQbvnGS0qP6bbzyZkCqMAoGCCqG
SM49BAMDA2gAMGUCMGfb61IigoJ3QDnlsRdoktREHe0Dpm6DKw3qOyLL6A0cFK9Z
g8m11xIwvptlran52gIxAK1VrOjzRsFiHRptO+gFXstTXnQkKBb2/3WQz2SqcIS/
BWEp+siJ19OXOlz6APDB7w==
-----END CERTIFICATE-----
]]></artwork>
      <t>Alice generates her ECDSA signature key pair.  Then, Alice composes
a PKCS#10 Certificate Signing Request (CSR) in the usual manner as
specified in <xref target="RFC2986"/>.  The CSR includes a signature that is produced
with her ECDSA private key.  The CSR is:</t>
      <artwork><![CDATA[
-----BEGIN CERTIFICATE REQUEST-----
MIIBhTCCAQsCAQAwPDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlZBMRAwDgYDVQQH
EwdIZXJuZG9uMQ4wDAYDVQQDEwVBbGljZTB2MBAGByqGSM49AgEGBSuBBAAiA2IA
BIAc+6lXN1MIM/82QeWNb55H0zr+lVgWVeF0bf4jzxCb5MCjVaM0eFEvcjXMV5p4
kzqiJTHC0V2JAoqYMX/DMFIcwZ7xP9uQd9ep6KZ+RXut211L8+W1QI1QJSDNxANR
saBQME4GCSqGSIb3DQEJDjFBMD8wDAYDVR0TAQH/BAIwADALBgNVHQ8EBAMCB4Aw
IgYDVR0RBBswGYEXYWxpY2VAZW1haWwuZXhhbXBsZS5jb20wCgYIKoZIzj0EAwMD
aAAwZQIwPa2rOCe60edAF43C/t57IW8liyy+69FE04hMAFgw3Ga+nR+8zDuUsVLw
xXGAHtcDAjEA6LbvNkZjo6j2z5xRIjrHzEbGgiV4MF4xtnpfSSRI4dB0zT52bWkj
TZsuS1YWIkjt
-----END CERTIFICATE REQUEST-----
]]></artwork>
      <t>The CA issues a signature certificate to Alice:</t>
      <artwork><![CDATA[
-----BEGIN CERTIFICATE-----
MIICJzCCAa6gAwIBAgIUf3Sj/ANs4hR4XFlhTm+N8kxHqHkwCgYIKoZIzj0EAwMw
NzELMAkGA1UEBhMCVVMxEzARBgNVBAoTCkV4YW1wbGUgQ0ExEzARBgNVBAMTCmNh
LmV4YW1wbGUwHhcNMjUwMTA5MTcwMzQ4WhcNMjYwMTA5MTcwMzQ4WjA8MQswCQYD
VQQGEwJVUzELMAkGA1UECBMCVkExEDAOBgNVBAcTB0hlcm5kb24xDjAMBgNVBAMT
BUFsaWNlMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEgBz7qVc3Uwgz/zZB5Y1vnkfT
Ov6VWBZV4XRt/iPPEJvkwKNVozR4US9yNcxXmniTOqIlMcLRXYkCipgxf8MwUhzB
nvE/25B316nopn5Fe63bXUvz5bVAjVAlIM3EA1Gxo3YwdDAMBgNVHRMBAf8EAjAA
MAsGA1UdDwQEAwIHgDAdBgNVHQ4EFgQUIx0A0f7tCzkQEZgYzH3NcM2L05IwHwYD
VR0jBBgwFoAUPpi8su/cNBu+cZLSo/ptvPJmQKowFwYDVR0gBBAwDjAMBgpghkgB
ZQMCATAwMAoGCCqGSM49BAMDA2cAMGQCMGu/Uypd7BaVnUjB36UtX9m5ZmPi78y5
1RA8WhbOv0KQVrcYtj4qOdiMVKBcoVceyAIwRJ6U91048NAb3nicHcrGFf1UYrhb
DlytK4tCa5HBxD/qAgy4/eUzA5NZwVaLK78u
-----END CERTIFICATE-----
]]></artwork>
      <t>Alice generates her ECDH key establishment key pair.  Then, Alice
composes a PKCS#10 CSR.  The CSR attributes include the
privateKeyPossessionStatement attribute, which points to her ECDSA signature
certificate.  The CSR includes her ECDH public key and a signature that
is produced with her ECDSA private key.  The CSR is:</t>
      <artwork><![CDATA[
-----BEGIN CERTIFICATE REQUEST-----
MIIEMTCCA7gCAQAwPDELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlZBMRAwDgYDVQQH
EwdIZXJuZG9uMQ4wDAYDVQQDEwVBbGljZTB0MA4GBSuBBAEMBgUrgQQAIgNiAAQB
RyQTH+cq1s5F94uFqFe7l1LqGdEC8Tm+e5VYBCfKAC8MJySQMj1GixEEXL+1Wjtg
23XvnJouCDoxSpDCSMqf3kvp5+naM37uxa3ZYgD6DPY3me5EZvyZPvSRJTFl/Bag
ggL9MGcGCSqGSIb3DQEJDjFaMFgwDAYDVR0TAQH/BAIwADALBgNVHQ8EBAMCAwgw
IgYDVR0RBBswGYEXYWxpY2VAZW1haWwuZXhhbXBsZS5jb20wFwYDVR0gBBAwDjAM
BgpghkgBZQMCATAwMIICkAYKKwYBBAGBrGACATGCAoAwggJ8ME8wNzELMAkGA1UE
BhMCVVMxEzARBgNVBAoTCkV4YW1wbGUgQ0ExEzARBgNVBAMTCmNhLmV4YW1wbGUC
FH90o/wDbOIUeFxZYU5vjfJMR6h5MIICJzCCAa6gAwIBAgIUf3Sj/ANs4hR4XFlh
Tm+N8kxHqHkwCgYIKoZIzj0EAwMwNzELMAkGA1UEBhMCVVMxEzARBgNVBAoTCkV4
YW1wbGUgQ0ExEzARBgNVBAMTCmNhLmV4YW1wbGUwHhcNMjUwMTA5MTcwMzQ4WhcN
MjYwMTA5MTcwMzQ4WjA8MQswCQYDVQQGEwJVUzELMAkGA1UECBMCVkExEDAOBgNV
BAcTB0hlcm5kb24xDjAMBgNVBAMTBUFsaWNlMHYwEAYHKoZIzj0CAQYFK4EEACID
YgAEgBz7qVc3Uwgz/zZB5Y1vnkfTOv6VWBZV4XRt/iPPEJvkwKNVozR4US9yNcxX
mniTOqIlMcLRXYkCipgxf8MwUhzBnvE/25B316nopn5Fe63bXUvz5bVAjVAlIM3E
A1Gxo3YwdDAMBgNVHRMBAf8EAjAAMAsGA1UdDwQEAwIHgDAdBgNVHQ4EFgQUIx0A
0f7tCzkQEZgYzH3NcM2L05IwHwYDVR0jBBgwFoAUPpi8su/cNBu+cZLSo/ptvPJm
QKowFwYDVR0gBBAwDjAMBgpghkgBZQMCATAwMAoGCCqGSM49BAMDA2cAMGQCMGu/
Uypd7BaVnUjB36UtX9m5ZmPi78y51RA8WhbOv0KQVrcYtj4qOdiMVKBcoVceyAIw
RJ6U91048NAb3nicHcrGFf1UYrhbDlytK4tCa5HBxD/qAgy4/eUzA5NZwVaLK78u
MAoGCCqGSM49BAMDA2cAMGQCL2TNHPULWcCS2DqZCCiQeSwx2JPLMI14Vi977bzy
rImq5p0H3Bel6fAS8BnQ00WNAjEAhHDAlcbRuHhqdW6mOgDd5kWEGGqgixIuvEEc
fVbnNCEyEE4n0mQ99PHURnXoHwqF
-----END CERTIFICATE REQUEST-----
]]></artwork>
      <t>The CSR decodes to:</t>
      <artwork><![CDATA[
   0 1073: SEQUENCE {
   4  952:  SEQUENCE {
   8    1:   INTEGER 0
  11   60:   SEQUENCE {
  13   11:    SET {
  15    9:     SEQUENCE {
  17    3:      OBJECT IDENTIFIER countryName (2 5 4 6)
  22    2:      PrintableString 'US'
         :       }
         :      }
  26   11:    SET {
  28    9:     SEQUENCE {
  30    3:      OBJECT IDENTIFIER stateOrProvinceName (2 5 4 8)
  35    2:      PrintableString 'VA'
         :       }
         :      }
  39   16:    SET {
  41   14:     SEQUENCE {
  43    3:      OBJECT IDENTIFIER localityName (2 5 4 7)
  48    7:      PrintableString 'Herndon'
         :       }
         :      }
  57   14:    SET {
  59   12:     SEQUENCE {
  61    3:      OBJECT IDENTIFIER commonName (2 5 4 3)
  66    5:      PrintableString 'Alice'
         :       }
         :      }
         :     }
  73  116:   SEQUENCE {
  75   14:    SEQUENCE {
  77    5:     OBJECT IDENTIFIER ECDH (1 3 132 1 12)
  84    5:     OBJECT IDENTIFIER secp384r1 (1 3 132 0 34)
         :      }
  91   98:    BIT STRING
         :     04 01 47 24 13 1F E7 2A D6 CE 45 F7 8B 85 A8 57
         :     BB 97 52 EA 19 D1 02 F1 39 BE 7B 95 58 04 27 CA
         :     00 2F 0C 27 24 90 32 3D 46 8B 11 04 5C BF B5 5A
         :     3B 60 DB 75 EF 9C 9A 2E 08 3A 31 4A 90 C2 48 CA
         :     9F DE 4B E9 E7 E9 DA 33 7E EE C5 AD D9 62 00 FA
         :     0C F6 37 99 EE 44 66 FC 99 3E F4 91 25 31 65 FC
         :     16
         :     }
 191  765:   [0] {
 195  103:    SEQUENCE {
 197    9:     OBJECT IDENTIFIER
         :      extensionRequest (1 2 840 113549 1 9 14)
 208   90:     SET {
 210   88:      SEQUENCE {
 212   12:       SEQUENCE {
 214    3:        OBJECT IDENTIFIER
         :         basicConstraints (2 5 29 19)
 219    1:        BOOLEAN TRUE
 222    2:        OCTET STRING, encapsulates {
 224    0:         SEQUENCE {}
         :          }
         :         }
 226   11:       SEQUENCE {
 228    3:        OBJECT IDENTIFIER keyUsage (2 5 29 15)
 233    4:        OCTET STRING, encapsulates {
 235    2:         BIT STRING 3 unused bits
         :          '10000'B (bit 4)
         :          }
         :         }
 239   34:       SEQUENCE {
 241    3:        OBJECT IDENTIFIER subjectAltName (2 5 29 17)
 246   27:        OCTET STRING, encapsulates {
 248   25:         SEQUENCE {
 250   23:          [1] 'alice@email.example.com'
         :           }
         :          }
         :         }
 275   23:       SEQUENCE {
 277    3:        OBJECT IDENTIFIER
         :         certificatePolicies (2 5 29 32)
 282   16:        OCTET STRING, encapsulates {
 284   14:         SEQUENCE {
 286   12:          SEQUENCE {
 288   10:           OBJECT IDENTIFIER 
         :            testCertPolicy (2 16 840 1 101 3 2 1 48 48)
         :            }
         :           }
         :          }
         :         }
         :        }
         :       }
         :      }
 300  656:    SEQUENCE {
 304   10:     OBJECT IDENTIFIER
         :      statementOfPossession (1 3 6 1 4 1 22112 2 1)
 316  640:     SET {
 320  636:      SEQUENCE {
 324   79:       SEQUENCE {
 326   55:        SEQUENCE {
 328   11:         SET {
 330    9:          SEQUENCE {
 332    3:           OBJECT IDENTIFIER countryName (2 5 4 6)
 337    2:           PrintableString 'US'
         :            }
         :           }
 341   19:         SET {
 343   17:          SEQUENCE {
 345    3:           OBJECT IDENTIFIER
         :            organizationName (2 5 4 10)
 350   10:           PrintableString 'Example CA'
         :            }
         :           }
 362   19:         SET {
 364   17:          SEQUENCE {
 366    3:           OBJECT IDENTIFIER commonName (2 5 4 3)
 371   10:           PrintableString 'ca.example'
         :            }
         :           }
         :          }
 383   20:        INTEGER
         :      7F 74 A3 FC 03 6C E2 14 78 5C 59 61 4E 6F 8D F2
         :      4C 47 A8 79
         :         }
 405  551:       SEQUENCE {
 409  430:        SEQUENCE {
 413    3:         [0] {
 415    1:          INTEGER 2
         :           }
 418   20:         INTEGER
         :      7F 74 A3 FC 03 6C E2 14 78 5C 59 61 4E 6F 8D F2
         :      4C 47 A8 79
 440   10:         SEQUENCE {
 442    8:          OBJECT IDENTIFIER
         :           ecdsaWithSHA384 (1 2 840 10045 4 3 3)
         :           }
 452   55:         SEQUENCE {
 454   11:          SET {
 456    9:           SEQUENCE {
 458    3:            OBJECT IDENTIFIER
         :             countryName (2 5 4 6)
 463    2:            PrintableString 'US'
         :             }
         :            }
 467   19:          SET {
 469   17:           SEQUENCE {
 471    3:            OBJECT IDENTIFIER
         :             organizationName (2 5 4 10)
 476   10:            PrintableString 'Example CA'
         :             }
         :            }
 488   19:          SET {
 490   17:           SEQUENCE {
 492    3:            OBJECT IDENTIFIER
         :             commonName (2 5 4 3)
 497   10:            PrintableString 'ca.example'
         :             }
         :            }
         :           }
 509   30:         SEQUENCE {
 511   13:          UTCTime 09/01/2025 17:03:48 GMT
 526   13:          UTCTime 09/01/2026 17:03:48 GMT
         :           }
 541   60:         SEQUENCE {
 543   11:          SET {
 545    9:           SEQUENCE {
 547    3:            OBJECT IDENTIFIER
         :             countryName (2 5 4 6)
 552    2:            PrintableString 'US'
         :             }
         :            }
 556   11:          SET {
 558    9:           SEQUENCE {
 560    3:            OBJECT IDENTIFIER
         :             stateOrProvinceName (2 5 4 8)
 565    2:            PrintableString 'VA'
         :             }
         :            }
 569   16:          SET {
 571   14:           SEQUENCE {
 573    3:            OBJECT IDENTIFIER
         :             localityName (2 5 4 7)
 578    7:            PrintableString 'Herndon'
         :             }
         :            }
 587   14:          SET {
 589   12:           SEQUENCE {
 591    3:            OBJECT IDENTIFIER
         :             commonName (2 5 4 3)
 596    5:            PrintableString 'Alice'
         :             }
         :            }
         :           }
 603  118:         SEQUENCE {
 605   16:          SEQUENCE {
 607    7:           OBJECT IDENTIFIER
         :            ecPublicKey (1 2 840 10045 2 1)
 616    5:           OBJECT IDENTIFIER
         :            secp384r1 (1 3 132 0 34)
         :            }
 623   98:          BIT STRING
         :      04 80 1C FB A9 57 37 53 08 33 FF 36 41 E5 8D 6F
         :      9E 47 D3 3A FE 95 58 16 55 E1 74 6D FE 23 CF 10
         :      9B E4 C0 A3 55 A3 34 78 51 2F 72 35 CC 57 9A 78
         :      93 3A A2 25 31 C2 D1 5D 89 02 8A 98 31 7F C3 30
         :      52 1C C1 9E F1 3F DB 90 77 D7 A9 E8 A6 7E 45 7B
         :      AD DB 5D 4B F3 E5 B5 40 8D 50 25 20 CD C4 03 51
         :      B1
         :           }
 723  118:         [3] {
 725  116:          SEQUENCE {
 727   12:           SEQUENCE {
 729    3:            OBJECT IDENTIFIER
         :             basicConstraints (2 5 29 19)
 734    1:            BOOLEAN TRUE
 737    2:            OCTET STRING, encapsulates {
 739    0:             SEQUENCE {}
         :              }
         :             }
 741   11:           SEQUENCE {
 743    3:            OBJECT IDENTIFIER
         :             keyUsage (2 5 29 15)
 748    4:            OCTET STRING, encapsulates {
 750    2:             BIT STRING 7 unused bits
         :              '1'B (bit 0)
         :              }
         :             }
 754   29:           SEQUENCE {
 756    3:            OBJECT IDENTIFIER
         :             subjectKeyIdentifier (2 5 29 14)
 761   22:            OCTET STRING, encapsulates {
 763   20:             OCTET STRING
         :      23 1D 00 D1 FE ED 0B 39 10 11 98 18 CC 7D CD 70
         :      CD 8B D3 92
         :              }
         :             }
 785   31:           SEQUENCE {
 787    3:            OBJECT IDENTIFIER
         :             authorityKeyIdentifier (2 5 29 35)
 792   24:            OCTET STRING, encapsulates {
 794   22:             SEQUENCE {
 796   20:              [0]
         :      3E 98 BC B2 EF DC 34 1B BE 71 92 D2 A3 FA 6D BC
         :      F2 66 40 AA
         :               }
         :              }
         :             }
 818   23:           SEQUENCE {
 820    3:            OBJECT IDENTIFIER
         :             certificatePolicies (2 5 29 32)
 825   16:            OCTET STRING, encapsulates {
 827   14:             SEQUENCE {
 829   12:              SEQUENCE {
 831   10:               OBJECT IDENTIFIER
         :                testCertPolicy (2 16 840 1 101 3 2 1 48 48)
         :                }
         :               }
         :              }
         :             }
         :            }
         :           }
         :          }
 843   10:        SEQUENCE {
 845    8:         OBJECT IDENTIFIER
         :          ecdsaWithSHA384 (1 2 840 10045 4 3 3)
         :          }
 855  103:        BIT STRING, encapsulates {
 858  100:         SEQUENCE {
 860   48:          INTEGER
         :      6B BF 53 2A 5D EC 16 95 9D 48 C1 DF A5 2D 5F D9
         :      B9 66 63 E2 EF CC B9 D5 10 3C 5A 16 CE BF 42 90
         :      56 B7 18 B6 3E 2A 39 D8 8C 54 A0 5C A1 57 1E C8
 910   48:          INTEGER
         :      44 9E 94 F7 5D 38 F0 D0 1B DE 78 9C 1D CA C6 15
         :      FD 54 62 B8 5B 0E 5C AD 2B 8B 42 6B 91 C1 C4 3F
         :      EA 02 0C B8 FD E5 33 03 93 59 C1 56 8B 2B BF 2E
         :           }
         :          }
         :         }
         :        }
         :       }
         :      }
         :     }
         :    }
 960   10:  SEQUENCE {
 962    8:   OBJECT IDENTIFIER ecdsaWithSHA384 (1 2 840 10045 4 3 3)
         :    }
 972  103:  BIT STRING, encapsulates {
 975  100:   SEQUENCE {
 977   47:    INTEGER
         :     64 CD 1C F5 0B 59 C0 92 D8 3A 99 08 28 90 79 2C
         :     31 D8 93 CB 30 8D 78 56 2F 7B ED BC F2 AC 89 AA
         :     E6 9D 07 DC 17 A5 E9 F0 12 F0 19 D0 D3 45 8D
1026   49:    INTEGER
         :     00 84 70 C0 95 C6 D1 B8 78 6A 75 6E A6 3A 00 DD
         :     E6 45 84 18 6A A0 8B 12 2E BC 41 1C 7D 56 E7 34
         :     21 32 10 4E 27 D2 64 3D F4 F1 D4 46 75 E8 1F 0A
         :     85
         :     }
         :    }
         :   }
]]></artwork>
      <t>The CA issues a key establishment certificate to Alice:</t>
      <artwork><![CDATA[
-----BEGIN CERTIFICATE-----
MIICJTCCAaygAwIBAgIUf3Sj/ANs4hR4XFlhTm+N8kxHqHowCgYIKoZIzj0EAwMw
NzELMAkGA1UEBhMCVVMxEzARBgNVBAoTCkV4YW1wbGUgQ0ExEzARBgNVBAMTCmNh
LmV4YW1wbGUwHhcNMjUwMTA5MTcwNTAwWhcNMjYwMTA5MTcwNTAwWjA8MQswCQYD
VQQGEwJVUzELMAkGA1UECBMCVkExEDAOBgNVBAcTB0hlcm5kb24xDjAMBgNVBAMT
BUFsaWNlMHQwDgYFK4EEAQwGBSuBBAAiA2IABAFHJBMf5yrWzkX3i4WoV7uXUuoZ
0QLxOb57lVgEJ8oALwwnJJAyPUaLEQRcv7VaO2Dbde+cmi4IOjFKkMJIyp/eS+nn
6dozfu7FrdliAPoM9jeZ7kRm/Jk+9JElMWX8FqN2MHQwDAYDVR0TAQH/BAIwADAL
BgNVHQ8EBAMCAwgwHQYDVR0OBBYEFAnLfJvnEUcvLXaPUDZMZlQ/zZ3WMB8GA1Ud
IwQYMBaAFD6YvLLv3DQbvnGS0qP6bbzyZkCqMBcGA1UdIAQQMA4wDAYKYIZIAWUD
AgEwMDAKBggqhkjOPQQDAwNnADBkAjARQ5LuV6yz8A5DZCll1S/gfxZ+QSJl/pKc
cTL6Sdr1IS18U/zY8VUJeB2H0nBamLwCMBRQ6sEWpNoeeR8Bonpoot/zYD2luQ1V
2jevmYsnBihKF0debgfhGvh8WIgBR69DZg==
-----END CERTIFICATE-----
]]></artwork>
    </section>
    <section numbered="false" anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>Thanks to
Sean Turner,
Joe Mandel,
Mike StJohns,
Mike Ounsworth,
John Gray,
Carl Wallace,
Corey Bonnell, and
Hani Ezzadeen
for their constructive comments.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
