<?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.8 (Ruby 3.2.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ounsworth-lamps-pq-external-pubkeys-03" category="std" consensus="true" submissionType="IETF" updates="{&quot;RFC5280&quot;=&gt;nil}" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.20.1 -->
  <front>
    <title abbrev="External X.509 Keys">External Keys For Use In Internet X.509 Certificates</title>
    <seriesInfo name="Internet-Draft" value="draft-ounsworth-lamps-pq-external-pubkeys-03"/>
    <author initials="M." surname="Ounsworth" fullname="Mike Ounsworth">
      <organization abbrev="Entrust">Entrust Limited</organization>
      <address>
        <postal>
          <street>1000 Innovation Drive</street>
          <city>Ottawa, Ontario</city>
          <code>K2K 1E3</code>
          <country>Canada</country>
        </postal>
        <email>mike.ounsworth@entrust.com</email>
      </address>
    </author>
    <author initials="M.-J. O." surname="Saarinen" fullname="Markku-Juhani O. Saarinen">
      <organization>PQShield</organization>
      <address>
        <email>mjos@pqshield.com</email>
      </address>
    </author>
    <author fullname="J. Gray">
      <organization>Entrust</organization>
      <address>
        <email>john.gray@entrust.com</email>
      </address>
    </author>
    <author fullname="D. Hook">
      <organization>KeyFactor</organization>
      <address>
        <email>david.hook@keyfactor.com</email>
      </address>
    </author>
    <date year="2024" month="April" day="03"/>
    <workgroup>LAMPS</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 70?>
<t>Many of the post quantum cryptographic algorithms have large public keys. In the interest of reducing bandwidth of transitting X.509 certificates, this document defines new public key and algorithms for referencing external public key data by hash, and location, for example URL. This mechanism is designed to mimic the behaviour of an Authority Information Access extension.</t>
      <!-- End of Abstract -->



    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://EntrustCorporation.github.io/draft-pq-external-pubkeys/draft-ounsworth-pq-external-pubkeys.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ounsworth-lamps-pq-external-pubkeys/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/EntrustCorporation/draft-pq-external-pubkeys"/>.</t>
    </note>
  </front>
  <middle>
    <?line 76?>

<section anchor="sec-intro">
      <name>Introduction</name>
    </section>
    <section anchor="sec-pub">
      <name>External Value</name>
      <t>The id-external-value algorithm identifier is used for identifying a public key or signature which is provided as a reference to external data.</t>
      <artwork><![CDATA[
id-external-value OBJECT IDENTIFIER  ::=  { iso(1)
            identified-organization(3) dod(6) internet(1)
            security(5) mechanisms(5) pkix(7) algorithms(6)
            TBDOID }
]]></artwork>
      <t>EDNOTE: for prototyping purposes, <tt>id-external-value ::= 1.3.6.1.4.1.22554.4.2</tt></t>
      <t>The corresponding subjectPublicKey is the DER encoding of the following structure:</t>
      <artwork><![CDATA[
ExternalValue ::= SEQUENCE {
  location     GeneralNames,
  hashAlg      AlgorithmIdentifier,
  hashVal      OCTET STRING
}
]]></artwork>
      <t>Upon retrieval of the referenced data, the hash of the OCTET STRING of the retrieved data (removing base64 encoding as per <xref target="RFC4648"/> if necessary) MUST be verified using hashAlg to match the <tt>ExternalPublicKey.hash</tt> value.</t>
      <t><tt>GeneralNames</tt> is defined in <xref target="RFC5280"/> as</t>
      <artwork><![CDATA[
GeneralNames ::= SEQUENCE SIZE (1..MAX) OF GeneralName
]]></artwork>
      <t>which we use instead of <tt>GeneralName</tt> so that certificate issuers can
specify multiple backup key servers for high availability or specify key
identifiers in multiple formats if the corresponding public keys will
be distributed in multiple keystore formats. When multiple key locations
are specified, they MUST represent alternative locations for retrieval of the
same key and MUST NOT be used as a mechanism to place multiple subject
keys into a single certificate. Thus, when multiple key locations
are specified, the client MAY try them in any order and stop when it
successfully retrieves a public key whose hash matches <tt>hashVal</tt>.</t>
      <section anchor="external-public-key">
        <name>External Public Key</name>
        <t>When used with a public key, algorithm parameters for id-external-value are absent.</t>
        <t>When ExternalValue is placed into a SubjectPublicKeyInfo.subjectPublicKey, the ExternalValue.location MUST refer to a DER-encoded SubjectPublicKeyInfo, which MAY be base64 encoded as per <xref target="RFC4648"/> for easier transport over text protocols.</t>
        <!-- End of Introduction section -->

</section>
    </section>
    <section anchor="sec-iana">
      <name>IANA Considerations</name>
      <t>##  Object Identifier Allocations</t>
      <section anchor="module-registration-smi-security-for-pkix-module-identifier">
        <name>Module Registration - SMI Security for PKIX Module Identifier</name>
        <ul spacing="normal">
          <li>
            <t>Decimal: IANA Assigned - <strong>Replace TBDMOD</strong></t>
          </li>
          <li>
            <t>Description: EXTERNAL-PUBKEY-2023 - id-mod-external-pubkey</t>
          </li>
          <li>
            <t>References: This Document</t>
          </li>
        </ul>
        <section anchor="object-identifier-registrations-smi-security-for-pkix-algorithms">
          <name>Object Identifier Registrations - SMI Security for PKIX Algorithms</name>
          <ul spacing="normal">
            <li>
              <t>Attest Statement
              </t>
              <ul spacing="normal">
                <li>
                  <t>Decimal: IANA Assigned - Replace <strong>TBDOID</strong></t>
                </li>
                <li>
                  <t>Description: id-external-value</t>
                </li>
                <li>
                  <t>References: This Document</t>
                </li>
              </ul>
            </li>
          </ul>
          <!-- End of IANA Considerations section -->

</section>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>There are no security implications to externalizing a public key from a certificate as described in this draft. It is of course possible for a malicious actor to replace or tamper with the public key data at the referenced location, but since the hash of the public key data is included in the signed certificate, any such tampering will be detected and the certificate verification will fail. For this reason, external public key data MAY be served over an insecure channel such as HTTP.</t>
      <section anchor="csrs-and-ct-logs">
        <name>CSRs and CT logs</name>
        <t>In practice, situations will arise where the ExternalPublicKey.location refers to a location which is not publicly available either because it is in a local keystore, on a private network, or no longer being hosted.</t>
        <t>Not having the public key in a certificate signing request (CSR) could make it substantially harder for CAs to perform vetting of the key, for example for cryptographic strength or checking for prior revocation due to key compromise. A certificate requester MUST make the full public key available to the CA at the time of certificate request either by ensuring that the link in the ExternalPublicKey.location is visible to the CA, or by supplying the full public key to the CA out of band.</t>
        <t>Not having the public key in Certificate Transparency (CT) logs could make it substantially harder for researchers to perform auditing tasks on CT logs. This may require additional CT mechanisms.</t>
        <!-- End of Security Considerations section -->

</section>
    </section>
    <section anchor="appendices">
      <name>Appendices</name>
      <section anchor="asn1-module">
        <name>ASN.1 Module</name>
        <artwork><![CDATA[
EXTERNAL-PUBKEY-2023
           {iso(1) identified-organization(3) dod(6) internet(1) security(5)
       mechanisms(5) pkix(7) id-mod(0) id-mod-external-pubkey(TBDMOD)}

DEFINITIONS IMPLICIT TAGS ::= BEGIN

EXPORTS ALL;

IMPORTS

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

  AlgorithmIdentifier{}
  FROM AlgorithmInformation-2009
      {iso(1) identified-organization(3) dod(6) internet(1) security(5)
      mechanisms(5) pkix(7) id-mod(0)
      id-mod-algorithmInformation-02(58)}

;

id-external-value OBJECT IDENTIFIER  ::=  { iso(1) 
            identified-organization(3) dod(6) internet(1) 
            security(5) mechanisms(5) pkix(7) algorithms(6)
            TBDOID }

ExternalValue ::= SEQUENCE {
  location     GeneralNames,
  hashAlg      AlgorithmIdentifier,
  hashVal      OCTET STRING
}

END
]]></artwork>
      </section>
      <section anchor="samples">
        <name>Samples</name>
        <t>Here is a sample of a Kyber1024 end entity certificate with an external public key. A trust anchor certificate using the algorithm ecdsaWithSHA256 is provided so that the Kyber1024 End Entity certificate can be verified.</t>
        <t>This is a modest example demonstrating a 550 byte Kyber1024 certificate and a 2.2 kb external Kyber1024 public key. This "compression" effect will be even more pronounced with algorithms such as Classic McEliece which have public keys in the hundreds of kilobytes; with the external public key mechanism, the size of the certificate remains constant regardless of how large the externalized subject public key is.</t>
        <t>End entity Kyber1024 Certificate with <tt>ExternalValue</tt> public key:</t>
        <artwork><![CDATA[
-----BEGIN CERTIFICATE-----
MIIBbDCCARGgAwIBAgIGAYro4QFGMAoGCCqGSM49BAMCMDoxDjAMBgNVBAMMBVFT
IENBMRswGQYDVQQKDBJRdWFudGl0eSBTdXJ2ZXlvcnMxCzAJBgNVBAYTAlhYMB4X
DTIzMTAwMTAxMzYxNFoXDTI0MDEwOTAxMzYxNFowHTEbMBkGA1UEAwwSRXRoZWwg
dGhlIEFhcmR2YXJrMGkwDAYKKwYBBAGBsBoEAgNZADBWMCWGI2ZpbGU6Ly9sb2Nh
bF9rZXlzZXJ2ZXIvc3VydmV5b3JzLmRiMAsGCWCGSAFlAwQCAQQg0K1P456WkMCO
RxsGOm271ynblXxFCgkTDI78by/RRJCjEDAOMAwGA1UdEwEB/wQCMAAwCgYIKoZI
zj0EAwIDSQAwRgIhANqC6ZVDVrgaFFPxJcnhJO6kRGU9dHv5vRDcf2paXxSfAiEA
2s/xoctsB1oCisbjK9HCUw/rzXoVKhkt1ZEXuapJYCk=
-----END CERTIFICATE-----
]]></artwork>
        <t>For illustrative purposes, the <tt>SubjectPublicKeyInfo</tt> within the end entity certificate decodes as:</t>
        <artwork><![CDATA[
subjectPublicKeyInfo SubjectPublicKeyInfo SEQUENCE (2 elem)
      algorithm AlgorithmIdentifier SEQUENCE (1 elem)
        algorithm OBJECT IDENTIFIER 1.3.6.1.4.1.22554.4.2 ExternalValue
      subjectPublicKey BIT STRING (704 bit)
        SEQUENCE (3 elem)
          SEQUENCE (1 elem)
            [6] (35 byte) file://local_keyserver/surveyors.db
          SEQUENCE (1 elem)
            OBJECT IDENTIFIER 2.16.840.1.101.3.4.2.1 sha-256
          OCTET STRING (32 byte) D0AD4FE39E9690C08E4...
]]></artwork>
        <t>The external public key object referenced by the end entity certificate is:</t>
        <artwork><![CDATA[
-----BEGIN PUBLIC KEY-----
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
JHIT3nFqKNQ=
-----END PUBLIC KEY-----
]]></artwork>
        <t>For illustrative purposes, the key data, which is itself a <tt>SubjectPublicKeyInfo</tt>, decodes as:</t>
        <artwork><![CDATA[
SEQUENCE (2 elem)
  SEQUENCE (1 elem)
    OBJECT IDENTIFIER 1.3.6.1.4.1.22554.5.6.3 Kyber1024
  BIT STRING (12544 bit) 001111000100000101000
]]></artwork>
        <t>The following trust anchor certificate can be used to validate the above end entity certificate.</t>
        <artwork><![CDATA[
-----BEGIN CERTIFICATE-----
MIIBfTCCASSgAwIBAgIGAYro4QBFMAoGCCqGSM49BAMCMDoxDjAMBgNVBAMMBVFT
IENBMRswGQYDVQQKDBJRdWFudGl0eSBTdXJ2ZXlvcnMxCzAJBgNVBAYTAlhYMB4X
DTIzMTAwMTAxMzYxNFoXDTI0MDEwOTAxMzYxNFowOjEOMAwGA1UEAwwFUVMgQ0Ex
GzAZBgNVBAoMElF1YW50aXR5IFN1cnZleW9yczELMAkGA1UEBhMCWFgwWTATBgcq
hkjOPQIBBggqhkjOPQMBBwNCAASZNnsQba2aDhAfhCTE670YBBvGfo7cU69VR2I+
NQt321Feh+Au0/S+RobWtyx6JnFnAb/Y00YhQdA1liz0i4lFoxYwFDASBgNVHRMB
Af8ECDAGAQH/AgEAMAoGCCqGSM49BAMCA0cAMEQCIHV0TdjJm9vCn3k93xhTXMQ0
D8tQuzXJtFXNGtKk8OQQAiBn8yKLzreor7QrdGUHCH7g0kaDcyI4xXn95aPjgi/V
NA==
-----END CERTIFICATE-----
]]></artwork>
      </section>
      <section anchor="intellectual-property-considerations">
        <name>Intellectual Property Considerations</name>
        <t>None.</t>
      </section>
    </section>
    <section anchor="contributors-and-acknowledgements">
      <name>Contributors and Acknowledgements</name>
      <t>This document incorporates contributions and comments from a large group of experts. The Editors would especially like to acknowledge the expertise and tireless dedication of the following people, who attended many long meetings and generated millions of bytes of electronic mail and VOIP traffic over the past year in pursuit of this document:</t>
      <t>Serge Mister (Entrust).</t>
      <t>We are grateful to all, including any contributors who may have
been inadvertently omitted from this list.</t>
      <t>This document borrows text from similar documents, including those referenced below. Thanks go to the authors of those
   documents.  "Copying always makes things easier and less error prone" - <xref target="RFC8411"/>.</t>
      <section anchor="making-contributions">
        <name>Making contributions</name>
        <t>Additional contributions to this draft are welcome. Please see the working copy of this draft at, as well as open issues at:</t>
        <t>https://github.com/EntrustCorporation/draft-ounsworth-pq-external-keys</t>
        <!-- End of Contributors section -->

</section>
    </section>
  </middle>
  <back>
    <references anchor="sec-normative-references">
      <name>Normative References</name>
      <reference anchor="RFC4648">
        <front>
          <title>The Base16, Base32, and Base64 Data Encodings</title>
          <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
          <date month="October" year="2006"/>
          <abstract>
            <t>This document describes the commonly used base 64, base 32, and base 16 encoding schemes. It also discusses the use of line-feeds in encoded data, use of padding in encoded data, use of non-alphabet characters in encoded data, use of different encoding alphabets, and canonical encodings. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="4648"/>
        <seriesInfo name="DOI" value="10.17487/RFC4648"/>
      </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="RFC8411">
        <front>
          <title>IANA Registration for the Cryptographic Algorithm Object Identifier Range</title>
          <author fullname="J. Schaad" initials="J." surname="Schaad"/>
          <author fullname="R. Andrews" initials="R." surname="Andrews"/>
          <date month="August" year="2018"/>
          <abstract>
            <t>When the Curdle Security Working Group was chartered, a range of object identifiers was donated by DigiCert, Inc. for the purpose of registering the Edwards Elliptic Curve key agreement and signature algorithms. This donated set of OIDs allowed for shorter values than would be possible using the existing S/MIME or PKIX arcs. This document describes the donated range and the identifiers that were assigned from that range, transfers control of that range to IANA, and establishes IANA allocation policies for any future assignments within that range.</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="8411"/>
        <seriesInfo name="DOI" value="10.17487/RFC8411"/>
      </reference>
    </references>
  </back>
  <!-- ##markdown-source:
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

-->

</rfc>
