<?xml version="1.0" encoding="utf-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.3.15 -->

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY RFC2119 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC4108 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.4108.xml">
<!ENTITY RFC5280 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.5280.xml">
<!ENTITY RFC8152 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8152.xml">
<!ENTITY RFC8174 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
<!ENTITY RFC8610 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8610.xml">
<!ENTITY RFC8742 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8742.xml">
<!ENTITY RFC8949 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8949.xml">
<!ENTITY I-D.ietf-cose-x509 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-cose-x509.xml">
<!ENTITY I-D.ietf-cbor-tags-oid SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-cbor-tags-oid.xml">
<!ENTITY RFC7228 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.7228.xml">
<!ENTITY RFC7925 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.7925.xml">
<!ENTITY RFC7932 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.7932.xml">
<!ENTITY RFC8446 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8446.xml">
<!ENTITY RFC8603 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8603.xml">
<!ENTITY RFC8879 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8879.xml">
<!ENTITY I-D.ietf-lake-edhoc SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-lake-edhoc.xml">
<!ENTITY I-D.ietf-tls-dtls13 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-tls-dtls13.xml">
<!ENTITY I-D.ietf-uta-tls13-iot-profile SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-uta-tls13-iot-profile.xml">
<!ENTITY I-D.ietf-tls-ctls SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-tls-ctls.xml">
<!ENTITY I-D.ietf-emu-eap-tls13 SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-emu-eap-tls13.xml">
<!ENTITY I-D.ietf-emu-eaptlscert SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-emu-eaptlscert.xml">
<!ENTITY I-D.ietf-quic-transport SYSTEM "https://xml2rfc.tools.ietf.org/public/rfc/bibxml3/reference.I-D.ietf-quic-transport.xml">
]>

<?rfc toc="yes"?>
<?rfc sortrefs="yes"?>
<?rfc symrefs="yes"?>
<?rfc tocdepth="2"?>

<rfc ipr="trust200902" docName="draft-mattsson-cose-cbor-cert-compress-06" category="std">

  <front>
    <title>CBOR Encoding of X.509 Certificates (CBOR Certificates)</title>

    <author initials="S." surname="Raza" fullname="Shahid Raza">
      <organization>RISE AB</organization>
      <address>
        <email>shahid.raza@ri.se</email>
      </address>
    </author>
    <author initials="J." surname="Höglund" fullname="Joel Höglund">
      <organization>RISE AB</organization>
      <address>
        <email>joel.hoglund@ri.se</email>
      </address>
    </author>
    <author initials="G." surname="Selander" fullname="Göran Selander">
      <organization>Ericsson AB</organization>
      <address>
        <email>goran.selander@ericsson.com</email>
      </address>
    </author>
    <author initials="J." surname="Mattsson" fullname="John Preuß Mattsson">
      <organization>Ericsson AB</organization>
      <address>
        <email>john.mattsson@ericsson.com</email>
      </address>
    </author>
    <author initials="M." surname="Furuhed" fullname="Martin Furuhed">
      <organization>Nexus Group</organization>
      <address>
        <email>martin.furuhed@nexusgroup.com</email>
      </address>
    </author>

    <date year="2021" month="January" day="19"/>

    
    
    

    <abstract>


<t>This document specifies a CBOR encoding of X.509 certificates. The resulting certificates are called CBOR Certificates. The CBOR encoding supports a large subset of RFC 5280 and significantly reduces the size of certificates compatible with e.g. RFC 7925, IEEE 802.1AR (DevID), CNSA, and CA/Browser Forum Baseline Requirements. When used to re-encode DER encoded X.509 certificates, the CBOR encoding can in many cases reduce the size of RFC 7925 profiled certificates with over 50%.  The CBOR encoding can also be used to encode “natively signed” CBOR certificates, which does not require re-encoding for the signature to be verified. The document also specifies COSE headers as well as a TLS certificate type for CBOR certificates.</t>



    </abstract>


  </front>

  <middle>


<section anchor="intro" title="Introduction">

<t>One of the challenges with deploying a Public Key Infrastructure (PKI) for the Internet of Things (IoT) is the size and parsing of X.509 public key certificates <xref target="RFC5280"/>, since those are not optimized for constrained environments <xref target="RFC7228"/>. Large certificate chains are also problematic in non-constrained protocols such as EAP-TLS <xref target="I-D.ietf-emu-eap-tls13"/> <xref target="I-D.ietf-emu-eaptlscert"/> where authenticators typically drop an EAP session after only 40 - 50 round-trips and QUIC <xref target="I-D.ietf-quic-transport"/> where the latency increases significantly unless the server only send less than three times as many bytes as received prior to validating the client address. More compact certificate representations are therefore desirable in many use cases. Due to the current PKI usage of DER encoded X.509 certificates, keeping compatibility with DER encoded X.509 is necessary at least for a transition period. However, the use of a more compact encoding with the Concise Binary Object Representation (CBOR) <xref target="RFC8949"/> reduces the certificate size significantly which has known performance benefits in terms of decreased communication overhead, power consumption, latency, storage, etc.</t>

<t>CBOR is a data format designed for small code size and small message size. CBOR builds on the JSON data model but extends it by e.g. encoding binary data directly without base64 conversion. In addition to the binary CBOR encoding, CBOR also has a diagnostic notation that is readable and editable by humans. The Concise Data Definition Language (CDDL) <xref target="RFC8610"/> provides a way to express structures for protocol messages and APIs that use CBOR. <xref target="RFC8610"/> also extends the diagnostic notation.</t>

<t>CBOR data items are encoded to or decoded from byte strings using a type-length-value encoding scheme, where the three highest order bits of the initial byte contain information about the major type. CBOR supports several different types of data items, in addition to integers (int, uint), simple values (e.g. null), byte strings (bstr), and text strings (tstr), CBOR also supports arrays [] of data items, maps {} of pairs of data items, and sequences of data items. For a complete specification and examples, see <xref target="RFC8949"/>, <xref target="RFC8610"/>, and <xref target="RFC8742"/>.</t>

<t>CAB Baseline Requirements <xref target="CAB-Baseline"/>, RFC 7925 <xref target="RFC7925"/>, IEEE 802.1AR <xref target="IEEE-802.1AR"/>, and CNSA <xref target="RFC8603"/> specify certificate profiles which can be applied to certificate based authentication with, e.g., TLS <xref target="RFC8446"/>, QUIC <xref target="I-D.ietf-quic-transport"/>, DTLS <xref target="I-D.ietf-tls-dtls13"/>, COSE <xref target="RFC8152"/>, EDHOC <xref target="I-D.ietf-lake-edhoc"/>, or Compact TLS 1.3 <xref target="I-D.ietf-tls-ctls"/>. RFC 7925 <xref target="RFC7925"/>, RFC7925bis <xref target="I-D.ietf-uta-tls13-iot-profile"/>, and IEEE 802.1AR <xref target="IEEE-802.1AR"/> specifically target Internet of Things deployments. This document specifies a CBOR encoding based on <xref target="X.509-IoT"/>, which can support large parts of <xref target="RFC5280"/>. The encoding support all <xref target="RFC7925"/> and IEEE 802.1AR <xref target="IEEE-802.1AR"/> and CAB Baseline <xref target="CAB-Baseline"/> profiled X.509 certificates. Two variants are defined using the same CBOR encoding and differing only in what is being signed:</t>

<t><list style="symbols">
  <t>An invertible CBOR re-encoding of DER encoded X.509 certificates <xref target="RFC5280"/>, which can be reversed to obtain the original DER encoded X.509 certificate.</t>
  <t>Natively signed CBOR certificates, which further optimizes the performance in constrained environments but is not backwards compatible with <xref target="RFC5280"/>, see <xref target="native-CBOR"/>.</t>
</list></t>

<t>This document specifies COSE headers for use of the CBOR certificates with COSE, see <xref target="cose"/>. The document also specifies a TLS certificate type for use of the CBOR certificates with TLS and QUIC (with or without additional TLS certificate compression), see <xref target="tls"/>.</t>

</section>
<section anchor="notational-conventions" title="Notational Conventions">

<t>The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “NOT RECOMMENDED”, “MAY”, and “OPTIONAL” 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>

<t>This specification makes use of the terminology in <xref target="RFC5280"/>, <xref target="RFC7228"/>, <xref target="RFC8610"/>, and <xref target="RFC8949"/>.</t>

</section>
<section anchor="encoding" title="CBOR Encoding">

<t>This section specifies the content and encoding for CBOR certificates, with the overall objective to produce a very compact representation supporting large parts of <xref target="RFC5280"/>, and everything in <xref target="RFC7925"/>, <xref target="IEEE-802.1AR"/>, and CAB Baseline <xref target="CAB-Baseline"/>. In the CBOR encoding, static fields are elided, elliptic curve points and time values are compressed, OID are replaced with short integers, and redundant encoding is removed. Combining these different components reduces the certificate size significantly, which is not possible with general purpose compressions algorithms, see <xref target="fig-table"/>.</t>

<t>The CBOR certificate can be either a CBOR re-encoding of a DER encoded X.509 certificate, in which case the signature is calculated on the DER encoded ASN.1 data in the X.509 certificate, or a natively signed CBOR certificate, in which case the signature is calculated directly on the CBOR encoded data (see <xref target="native-CBOR"/>). In both cases the certificate content is adhering to the restrictions given by <xref target="RFC5280"/>. The re-encoding is known to work with DER encoded certificates but might work with other canonical encodings. The re-encoding does not work for BER encoded certificates.</t>

<t>In the encoding described below, the order of elements in arrays are always encoded in the same order as the elements or the corresponding SEQUENCE or SET in the DER encoding.</t>

<section anchor="message-fields" title="Message Fields">

<t>The X.509 fields and their CBOR encodings are listed below, and used in the definition of CBOR Certificates, see <xref target="fig-CBORCertCDDL"/>.</t>

<t>CBOR certificates are defined in terms of DER encoded <xref target="RFC5280"/> X.509 certificates:</t>

<t><list style="symbols">
  <t>version. The ‘version’ field is encoded in the ‘cborCertificateType’ CBOR int. The field ‘cborCertificateType’ also indicates the type of the CBOR certificate. Currently, the type can be a natively signed CBOR certificate following X.509 v3 (cborCertificateType = 0) or a CBOR re-encoded X.509 v3 DER certificate (cborCertificateType = 1), see <xref target="type"/>.</t>
  <t>serialNumber. The ‘serialNumber’ INTEGER value field is encoded as the unwrapped CBOR unsigned bignum (~biguint) ‘certificateSerialNumber’. Any leading 0x00 byte (to indicate that the number is not negative) is therefore omitted.</t>
  <t>signature. The ‘signature’ field is always the same as the ‘signatureAlgorithm’ field and therefore omitted from the CBOR encoding.</t>
  <t>issuer. In the general case, the sequence of ‘RelativeDistinguishedName’ is encoded as a CBOR array of CBOR arrays of Attributes. Typically each RelativeDistinguishedName only contains a single attribute and the sequence is then ecoded as a CBOR array of Attributes. Each Attribute is encoded as a (CBOR int, CBOR text string) pair or as a (unwrapped CBOR OID, CBOR bytes) pair. The absolute value of the CBOR int (see <xref target="fig-attrtype"/>) encodes the attribute type and the sign is used to represent the character string type; positive for Utf8String, negative for PrintableString. In natively signed CBOR certificates all text strings are UTF-8 encoded and all attributes SHALL have a positive sign. Text strings SHALL still adhere to any X.509 restrictions, i.e. serialNumber SHALL only contain the 74 character subset of ASCII allowed by PrintableString and countryName SHALL have length 2. The string types teletexString, universalString, and bmpString are not supported. If Name contains a single Attribute containing an utf8String encoded ‘common name’ it is encoded as a CBOR text string. If the text string contains an EUI-64 of the form “HH-HH-HH-HH-HH-HH-HH-HH” where ‘H’ is one of the symbol ‘0’–’9’ or ‘A’–’F’ it is encoded as a CBOR byte string of length 8 instead. EUI-64 mapped from a 48-bit MAC address (i.e. of the form “HH-HH-HH-FF-FE-HH-HH-HH) is encoded as a CBOR byte string of length 6.</t>
  <t>validity. The ‘notBefore’ and ‘notAfter’ fields are encoded as unwrapped CBOR epoch-based date/time (~time) where the tag content is an unsigned integer. In POSIX time, leap seconds are ignored, with a leap second having the same POSIX time as the second before it. Compression of X.509 certificates with the time 23:59:60 UTC is therefore not supported. Note that RFC 5280 mandates encoding of dates through the year 2049 as UTCTime, and later dates as GeneralizedTime. The value “99991231235959Z” (no expiration date) is encoded as CBOR null.</t>
  <t>subject. The ‘subject’ is encoded exactly like issuer.</t>
  <t>subjectPublicKeyInfo.  The ‘AlgorithmIdentifier’ field including parameters is encoded as the CBOR int ‘subjectPublicKeyAlgorithm’ (see <xref target="pkalg"/>) or as an array with an unwrapped CBOR OID tag <xref target="I-D.ietf-cbor-tags-oid"/> optionally followed by the parameters encoded as a CBOR byte string. In general, the ‘subjectPublicKey’ BIT STRING value field is encoded as a CBOR byte string. This specification assumes the BIT STRING has zero unused bits and the unused bits byte is omitted. For rsaEncryption and id-ecPublicKey, the encoding of subjectPublicKey is further optimized as described in <xref target="alg-encoding"/>.</t>
  <t>issuerUniqueID. Not supported.</t>
  <t>subjectUniqueID. Not supported.</t>
  <t>extensions. The ‘extensions’ field is encoded as a CBOR array where each extension is encoded as either a CBOR int (see <xref target="extype"/>) followed by an optional CBOR item of any type or an unwrapped CBOR OID tag <xref target="I-D.ietf-cbor-tags-oid"/> followed by a CBOR bool encoding ‘critical’ and the DER encoded value of the ‘extnValue’ encoded as a CBOR byte string. If the array contains exactly two ints and the absolute value of the first int is 2, the array is omitted and the extensions is encoded as a single CBOR int with the absolute value of the second int and the sign of the first int. Extensions are encoded as specified in <xref target="ext-encoding"/>. The extensions mandated to be supported by <xref target="RFC7925"/> and <xref target="IEEE-802.1AR"/> are given special treatment. An omitted ‘extensions’ field is encoded as an empty CBOR array.</t>
  <t>signatureAlgorithm. The ‘signatureAlgorithm’ field including parameters is encoded as a CBOR int (see <xref target="sigalg"/>) or as an array with an unwrapped CBOR OID tag <xref target="I-D.ietf-cbor-tags-oid"/> optionally followed by the parameters encoded as a CBOR byte string.</t>
  <t>signatureValue. In general, the ‘signatureValue’ BIT STRING value field is encoded as the CBOR byte string issuerSignatureValue. This specification assumes the BIT STRING has zero unused bits and the unused bits byte is omitted. For natively signed CBOR certificates the signatureValue is calculated over the CBOR sequence TBSCertificate. For ECDSA, the encoding of issuerSignatureValue is further optimized as described in <xref target="alg-encoding"/></t>
</list></t>

<t>The following Concise Data Definition Language (CDDL) defines CBORCertificate and TBSCertificate, which are encoded as CBOR Sequences <xref target="RFC8742"/>. The member names therefore only have documentary value.</t>

<figure title="CDDL for CBORCertificate." anchor="fig-CBORCertCDDL"><artwork type="CDDL" align="center"><![CDATA[
; The elements of the following array are to be used in a CBOR Sequence:
CBORCertificate = [
   TBSCertificate,
   issuerSignatureValue : any,
]

TBSCertificate = (
   cborCertificateType: int,
   certificateSerialNumber: CertificateSerialNumber,
   issuer: Name,
   validityNotBefore: Time,
   validityNotAfter: Time,
   subject: Name,
   subjectPublicKeyAlgorithm: AlgorithmIdentifier,
   subjectPublicKey: any,
   extensions: Extensions,
   issuerSignatureAlgorithm: AlgorithmIdentifier,
)

CertificateSerialNumber = ~biguint

Name = [ * RelativeDistinguishedName ] / text / bytes

RelativeDistinguishedName = Attribute / [ 2* Attribute ]

Attribute = ( attributeType: int, attributeValue: text ) //
            ( attributeType: ~oid, attributeValue: bytes ) 

Time = ~time / null

AlgorithmIdentifier = int / [ algorithm: ~oid, ? parameters: bytes ]

Extensions = [ * Extension ] / int

Extension = ( extensionID: int, extensionValue: any ) //
            ( extensionID: ~oid, critical: bool, extensionValue: bytes )
)
]]></artwork></figure>

</section>
<section anchor="alg-encoding" title="Encoding of subjectPublicKey and issuerSingatureValue">

<section anchor="encoding-of-subjectpublickey" title="Encoding of subjectPublicKey">

<t>For RSA public keys (rsaEncryption), the SEQUENCE and INTEGER type and length fields are omitted and the two INTEGER value fields (modulus, exponent) are encoded as an array of two unwrapped CBOR unsigned bignum (~biguint), i.e. [ modulus : ~biguint, exponent : ~biguint ]. If the exponent is 65537, the array and the exponent is omitted and subjectPublicKey consist of only the modulus encoded as an unwrapped CBOR unsigned bignum (~biguint).</t>

<t>For elliptic curve public keys in Weirstraß form (id-ecPublicKey), uncompressed keys are point compressed as defined in Section 2.3.3 of <xref target="SECG"/>. If a DER encoded certificate with a point compressed public key of type id-ecPublicKey is CBOR encoded, the octets 0xfe and 0xfd are used instead of 0x02 and 0x03 in the CBOR encoding to represent even and odd y-coordinate, respectively.</t>

</section>
<section anchor="encoding-of-issuersingaturevalue" title="Encoding of issuerSingatureValue">

<t>For ECDSA signatures, the SEQUENCE and INTEGER type and length fields as well as the any leading 0x00 byte (to indicate that the number is not negative) are omitted. If the two INTEGER value fields have different lengths, the shortest INTEGER value field is padded with zeroes so that the two fields have the same length. The resulting byte string is encoded as a CBOR byte string.</t>

</section>
</section>
<section anchor="ext-encoding" title="Encoding of Extensions">

<t>This section details the encoding of the ‘extensions’ field. The ‘extensions’ field is encoded as a CBOR array where each extensionID is encoded as either a CBOR int or a CBOR OID tag. If ‘extensionID’ is encoded an int (see <xref target="extype"/>),the sign is used to encode if the extension is critical and the ‘critical’ field is omitted. Critical extensions are encoded with a positive sign and non-critical extensions are encoded with a negative sign.</t>

<t>The ‘extnValue’ OCTET STREAM value field is encoded as the CBOR byte string ‘extensionValue’ except for the extensions specified below. The ‘extensionValue’ for the extensions mandated to be supported by <xref target="RFC7925"/>, <xref target="IEEE-802.1AR"/>, and <xref target="CAB-Baseline"/> are encoded as follows:</t>

<t><list style="symbols">
  <t>keyUsage. The ‘KeyUsage’ BIT STRING is interpreted as an unsigned integer n in network byte order and encoded as a CBOR int.</t>
  <t>subjectAltName. extensionValue is encoded as an array of (int, any) pairs where each pair encodes a general name (see <xref target="GN"/>). If subjectAltName contains exactly one dNSName, the array and the int are omitted and extensionValue is the dNSName encoded as a CBOR text string. In addition to the general names defined in <xref target="RFC5280"/>, the hardwareModuleName type of otherName has been given its own int due to its mandatory use in IEEE 802.1AR. When ‘otherName + hardwareModuleName’ is used, then [ oid, bytes ] is used to identify the pair ( hwType, hwSerialEntries ) directly as specified in <xref target="RFC4108"/>.</t>
</list></t>

<figure><artwork><![CDATA[
   GeneralNames = [ + GeneralName ] / text
   GeneralName = ( GeneralNameType : int, GeneralNameValue : any )
]]></artwork></figure>

<t><list style="symbols">
  <t>basicConstraints. If ‘cA’ = false then extensionValue = -2, if ‘cA’ = true and ‘pathLenConstraint’ is not present then extensionValue = -1, and if ‘cA’ = true and ‘pathLenConstraint’ is present then extensionValue = pathLenConstraint.</t>
  <t>extKeyUsage. extensionValue is encoded as an array of CBOR ints (see <xref target="EKU"/>) or unwrapped CBOR OID tags <xref target="I-D.ietf-cbor-tags-oid"/> where each int or OID tag encodes a key usage purpose. If the array contains a single int, the array is omitted.</t>
</list></t>

<figure><artwork><![CDATA[
   ExtValueEKU = [ + int / ~oid ] / int
]]></artwork></figure>

<t><list style="symbols">
  <t>subjectKeyIdentifier. extensionValue is the value of the ‘keyIdentifier’ field encoded as a CBOR byte string.</t>
  <t>authorityKeyIdentifier. extensionValue is encoded as an array where the value of the ‘keyIdentifier’ is encoded as a CBOR byte string, ‘GeneralNames’ is encoded like in subjectAltName, and ‘AuthorityCertSerialNumber’ is encoded as ~biguint exactly like certificateSerialNumber. Omitted values are encoded as CBOR null.</t>
</list></t>

<figure><artwork><![CDATA[
   ExtValueAKI = [ keyIdentifier: bytes / null, certIssuer: GeneralNames / null, certSerialNumber: CertificateSerialNumber / null ] / bytes
]]></artwork></figure>

<t><list style="symbols">
  <t>cRLDistributionPoints. If the cRLDistributionPoints is a sequence of DistributionPointName, it is encoded like subjectAltName, with the difference that if cRLDistributionPoints contains exactly one uniformResourceIdentifier, the array and the int are omitted and extensionValue is the uniformResourceIdentifier encoded as a CBOR text string.</t>
  <t>authorityInfoAccess. If authorityInfoAccess consist of only uniformResourceIdentifiers it is encoded as an array of uris.</t>
</list></t>

<figure><artwork><![CDATA[
   ExtValueAIA = [ + ( ocsp : 1 // caIssuers : 2 , uri : text ) ]
]]></artwork></figure>

<section anchor="example-encoding-of-extensions" title="Example Encoding of Extensions">

<t>The examples below use values from <xref target="extype"/>, <xref target="EKU"/>, and <xref target="GN"/>:</t>

<t><list style="symbols">
  <t>A critical basicConstraints (‘cA’ = true) without pathLenConstraint is encoded as the two CBOR ints -1, -1.</t>
  <t>A non-critical keyUsage with digitalSignature and keyAgreement asserted is encoded as the two CBOR ints 2, 17 (2^0 + 2^4 = 17).</t>
  <t>A non-critical extKeyUsage containing id-kp-codeSigning and id-kp-OCSPSigning is encoded as the CBOR int 3 followed by the CBOR array [ 3, 6 ].</t>
  <t>A non-critical subjectAltName containing only the dNSName example.com is encoded as the CBOR int 4 followed by the CBOR text string “example.com”.</t>
</list></t>

<t>Thus, the extension field of a certificate containing all of the above extensions in the given order would be encoded as the CBOR array [ -1, -1, 2, 17, 3, [ 3, 6 ], 4, “example.com” ].</t>

</section>
</section>
</section>
<section anchor="compliance-requirements-for-constrained-iot" title="Compliance Requirements for Constrained IoT">

<t>For general purpose applications, the normative requirements of <xref target="RFC5280"/> applies. This section describes the mandatory to implement algorithms and OIDs for constrained IoT application; the values of the OIDs including certificate fields and extensions, time format, attributes in distinguished names, etc.</t>

<t>TODO: Write this section</t>

</section>
<section anchor="dep-set" title="Legacy Considerations">

<t>CBOR certificates can be deployed with legacy X.509 certificates and CA infrastructure. In order to verify the signature, the CBOR certificate is used to recreate the original X.509 data structure to be able to verify the signature.</t>

<t>For protocols like TLS/DTLS 1.2, where the handshake is sent unencrypted, the actual encoding and compression can be done at different locations depending on the deployment setting. For example, the mapping between CBOR certificate and standard X.509 certificate can take place in a 6LoWPAN border gateway which allows the server side to stay unmodified. This case gives the advantage of the low overhead of a CBOR certificate over a constrained wireless links. The conversion to X.509 within an IoT device will incur a computational overhead, however, measured in energy this is likely to be negligible compared to the reduced communication overhead.</t>

<t>For the setting with constrained server and server-only authentication, the server only needs to be provisioned with the CBOR certificate and does not perform the conversion to X.509. This option is viable when client authentication can be asserted by other means.</t>

<t>For protocols like IKEv2, TLS/DTLS 1.3, and EDHOC, where certificates are encrypted, the proposed encoding needs to be done fully end-to-end, through adding the encoding/decoding functionality to the server.</t>

</section>
<section anchor="expected-certificate-sizes" title="Expected Certificate Sizes">

<t>The CBOR encoding of the sample certificate given in <xref target="appA"/> results in the numbers shown in <xref target="fig-table"/>. After <xref target="RFC7925"/> profiling, most duplicated information has been removed, and the remaining text strings are minimal in size. Therefore, the further size reduction reached with general compression mechanisms will be small, mainly corresponding to making the ASN.1 encoding more compact. For Brtoli <xref target="RFC7932"/>, the brotli command line tool 1.09 was used with the default best compression level.</t>

<figure title="Comparing Sizes of Certificates (bytes)" anchor="fig-table"><artwork align="center"><![CDATA[
+------------------+--------------+------------+--------------------+
|                  |   RFC 7925   |   Brotli   |  CBOR Certificate  |
+------------------+---------------------------+--------------------+
| Certificate Size |     314      |     303    |         138        |
+------------------+--------------+------------+--------------------+
]]></artwork></figure>

</section>
<section anchor="native-CBOR" title="Natively Signed CBOR Certificates">

<t>The difference between CBOR encoded X.509 certificate and natively signed CBOR certificate is that the signature is calculated over the CBOR encoding of the CBOR sequence TBSCertficate rather than the DER encoded ASN.1 data. This removes entirely the need for ASN.1 DER and base64 encodings which reduces the processing in the authenticating devices, and avoids known complexities and security issues with these encodings.</t>

<t>Natively signed CBOR certificates can be applied in devices that are only required to authenticate to natively signed CBOR certificate compatible servers. This is not a major restriction for many IoT deployments, where the parties issuing and verifying certificates can be a restricted ecosystem which not necessarily involves public CAs.</t>

<t>CBOR encoded X.509 certificates provides an intermediate step between <xref target="RFC7925"/> or <xref target="IEEE-802.1AR"/> profiled X.509 certificates and natively signed CBOR certificates: An implementation of CBOR encoded X.509 certificates contains both the CBOR encoding of the X.509 certificate and the signature operations sufficient for natively signed CBOR certificates.</t>

<t>The natively signed approach based on DER encoded X.509 certificates described in this document has also other benefits. For example, a CA can use existing ASN.1 machinery to create a DER encoded certificate, the DER encoded certificate can then be transformed to CBOR before signing.</t>

</section>
<section anchor="sec-cons" title="Security Considerations">

<t>The CBOR profiling of X.509 certificates does not change the security assumptions needed when deploying standard X.509 certificates but decreases the number of fields transmitted, which reduces the risk for implementation errors.</t>

<t>The use of natively signed CBOR certificates removes the need for ASN.1 encoding, which is a rich source of security vulnerabilities.</t>

<t>Conversion between the certificate formats can be made in constant time to reduce risk of information leakage through side channels.</t>

<t>The mechanism in this draft does not reveal any additional information compared to X.509. Because of difference in size, it will be possible to detect that this profile is used. The gateway solution described in <xref target="dep-set"/> requires unencrypted certificates and is not recommended.</t>

</section>
<section anchor="iana" title="IANA Considerations">

<t>This document creates several new registries under the new heading “CBOR Certificate”. For all items, the ‘Reference’ field points to this document.</t>

<t>The expert reviewers for the registries defined in this document are expected to ensure that the usage solves a valid use case that could not be solved better in a different way, that it is not going to duplicate one that is already registered, and that the registered point is likely to be used in deployments. They are furthermore expected to check the clarity of purpose and use of the requested code points. Experts should take into account the expected usage of entries when approving point assignment, and the length of the encoded value should be weighed against the number of code points left that encode to that size and how constrained the systems it will be used on are. Values in the interval [-24, 23] have a 1 byte encodings, other values in the interval [-256, 255] have a 2 byte encodings, and the remaning values in the interval [-65536, 65535] have 3 byte encodings.</t>

<section anchor="type" title="CBOR Certificate Types Registry">

<t>IANA has created a new registry titled “CBOR Certificate Types” under the new heading “CBOR Certificate”. The columns of the registry are Value, Description, and Reference, where Value is an integer, and the other columns are text strings. For values in the interval [-24, 23] the registration procedure is “IETF Review” and “Expert Review”. For all other values the registration procedure is “Expert Review”.  The initial contents of the registry are:</t>

<figure title="CBOR Certificate Types" anchor="fig-types"><artwork align="center"><![CDATA[
+-------+-----------------------------------------------------------+
| Value | Description                                               |
+=======+===========================================================+
|     0 | Natively Signed CBOR Certificate following X.509 v3       |
+-------+-----------------------------------------------------------+
|     1 | CBOR re-encoding of X.509 v3 Certificate                  |
+-------+-----------------------------------------------------------+
]]></artwork></figure>

</section>
<section anchor="atttype" title="CBOR Certificate Attributes Registry">

<t>IANA has created a new registry titled “CBOR Certificate Attributes” under the new heading “CBOR Certificate”. The columns of the registry are Value, Name, OID, DER, Comments, and Reference, where Value is an integer, and the other columns are text strings. Only non-negative values can be registered. For values in the interval [0, 23] the registration procedure is “IETF Review” and “Expert Review”. For all other values the registration procedure is “Expert Review”. The initial contents of the registry are:</t>

<figure title="CBOR Certificate Attributes" anchor="fig-attrtype"><artwork align="center"><![CDATA[
+-------+-----------------------------------------------------------+
| Value | Attribute                                                 |
+=======+===========================================================+
|     1 | Name:            Common Name                              |
|       | OID:             2.5.4.3                                  |
|       | DER:             06 03 55 04 03                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|     2 | Name:            Surname                                  |
|       | OID:             2.5.4.4                                  |
|       | DER:             06 03 55 04 04                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|     3 | Name:            Serial Number                            |
|       | OID:             2.5.4.5                                  |
|       | DER:             06 03 55 04 05                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|     4 | Name:            Country                                  |
|       | OID:             2.5.4.6                                  |
|       | DER:             06 03 55 04 06                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|     5 | Name:            Locality                                 |
|       | OID:             2.5.4.7                                  |
|       | DER:             06 03 55 04 07                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|     6 | Name:            State or Province                        |
|       | OID:             2.5.4.8                                  |
|       | DER:             06 03 55 04 08                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|     7 | Name:            Street Address                           |
|       | OID:             2.5.4.9                                  |
|       | DER:             06 03 55 04 09                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|     8 | Name:            Organization                             |
|       | OID:             2.5.4.10                                 |
|       | DER:             06 03 55 04 0A                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|     9 | Name:            Organizational Unit                      |
|       | OID:             2.5.4.11                                 |
|       | DER:             06 03 55 04 0B                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    10 | Name:            Title                                    |
|       | OID:             2.5.4.12                                 |
|       | DER:             06 03 55 04 0C                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    11 | Name:            Postal Code                              |
|       | OID:             2.5.4.17                                 |
|       | DER:             06 03 55 04 11                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    12 | Name:            Given Name                               |
|       | OID:             2.5.4.42                                 |
|       | DER:             06 03 55 04 2A                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    13 | Name:            Initials                                 |
|       | OID:             2.5.4.43                                 |
|       | DER:             06 03 55 04 2B                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    14 | Name:            Generation Qualifier                     |
|       | OID:             2.5.4.44                                 |
|       | DER:             06 03 55 04 2C                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    15 | Name:            DN Qualifier                             |
|       | OID:             2.5.4.46                                 |
|       | DER:             06 03 55 04 2E                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    16 | Name:            Pseudonym                                |
|       | OID:             2.5.4.65                                 |
|       | DER:             06 03 55 04 41                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    17 | Name:            Organization Identifier                  |
|       | OID:             2.5.4.97                                 |
|       | DER:             06 03 55 04 61                           |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
]]></artwork></figure>

</section>
<section anchor="extype" title="CBOR Certificate Extensions Registry">

<t>IANA has created a new registry titled “CBOR Certificate Extensions” under the new heading “CBOR Certificate”. The columns of the registry are Value, Name, OID, DER, Comments, extensionValue, and Reference, where Value is an integer, and the other columns are text strings. Only non-negative values can be registered. For values in the interval [0, 23] the registration procedure is “IETF Review” and “Expert Review”. For all other values the registration procedure is “Expert Review”. The initial contents of the registry are:</t>

<figure title="CBOR Certificate Extensions" anchor="fig-extype"><artwork align="center"><![CDATA[
+-------+-----------------------------------------------------------+
| Value | Extension                                                |
+=======+===========================================================+
|     0 | Name:            Subject Key Identifier                   |
|       | OID:             2.5.29.14                                |
|       | DER:             06 03 55 1D 0E                           |
|       | Comments:                                                 |
|       | extensionValue:  bytes                                    |
+-------+-----------------------------------------------------------+
|     1 | Name:            Key Usage                                |
|       | OID:             2.5.29.15                                |
|       | DER:             06 03 55 1D 0F                           |
|       | Comments:                                                 |
|       | AttributeValue:  int                                      |
+-------+-----------------------------------------------------------+
|     2 | Name:            Subject Alternative Name                 |
|       | OID:             2.5.29.17                                |
|       | DER:             06 03 55 1D 11                           |
|       | Comments:                                                 |
|       | extensionValue:  [ + ( int, any ) ] / text                |
+-------+-----------------------------------------------------------+
|     3 | Name:            Basic Constraints                        |
|       | OID:             2.5.29.19                                |
|       | DER:             06 03 55 1D 13                           |
|       | Comments:                                                 |
|       | extensionValue:  int                                      |
+-------+-----------------------------------------------------------+
|     4 | Name:            CRL Distribution Points                  |
|       | OID:             2.5.29.31                                |
|       | DER:             06 03 55 1D 1F                           |
|       | Comments:                                                 |
|       | extensionValue:  [ + ( int, any ) ] / text                |
+-------+-----------------------------------------------------------+
|     5 | Name:            Certificate Policies                     |
|       | OID:             2.5.29.32                                |
|       | DER:             06 03 55 1D 20                           |
|       | Comments:                                                 |
|       | extensionValue:  [ + ( oid, ? text ) ]                    |
+-------+-----------------------------------------------------------+
|     6 | Name:            Authority Key Identifier                 |
|       | OID:             2.5.29.35                                |
|       | DER:             06 03 55 1D 23                           |
|       | Comments:                                                 |
|       | extensionValue:  bytes                                    |
+-------+-----------------------------------------------------------+
|     7 | Name:            Extended Key Usage                       |
|       | OID:             2.5.29.37                                |
|       | DER:             06 03 55 1D 25                           |
|       | Comments:                                                 |
|       | extensionValue:  int                                      |
+-------+-----------------------------------------------------------+
|     8 | Name:            Authority Information Access             |
|       | OID:             1.3.6.1.5.5.7.1.1                        |
|       | DER:             06 08 2B 06 01 05 05 07 01 01            |
|       | Comments:                                                 |
|       | extensionValue:  [ + ( 1 / 2 , text ) ]                   |
+-------+-----------------------------------------------------------+
|     9 | Name:            Signed Certificate Timestamp List        |
|       | OID:             1.3.6.1.4.1.11129.2.4.2                  |
|       | DER:             06 0A 2B 06 01 04 01 D6 79 02 04 02      |
|       | Comments:                                                 |
|       | extensionValue:  [ bytes, ~biguint,                       |
|       |                    AlgorithmIdentifier, bytes]            |
+-------+-----------------------------------------------------------+
|    24 | Name:            Subject Directory Attributes             |
|       | OID:             2.5.29.9                                 |
|       | DER:             06 03 55 1D 09                           |
|       | Comments:                                                 |
|       | extensionValue:  bytes                                    |
+-------+-----------------------------------------------------------+
|    25 | Name:            Issuer Alternative Name                  |
|       | OID:             2.5.29.18                                |
|       | DER:             06 03 55 1D 12                           |
|       | Comments:                                                 |
|       | extensionValue:  bytes                                    |
+-------+-----------------------------------------------------------+
|    26 | Name:            Name Constraints                         |
|       | OID:             2.5.29.30                                |
|       | DER:             06 03 55 1D 1E                           |
|       | Comments:                                                 |
|       | extensionValue:  bytes                                    |
+-------+-----------------------------------------------------------+
|    27 | Name:            Policy Mappings                          |
|       | OID:             2.5.29.33                                |
|       | DER:             06 03 55 1D 21                           |
|       | Comments:                                                 |
|       | extensionValue:  bytes                                    |
+-------+-----------------------------------------------------------+
|    28 | Name:            Policy Constraints                       |
|       | OID:             2.5.29.36                                |
|       | DER:             06 03 55 1D 24                           |
|       | Comments:                                                 |
|       | extensionValue:  bytes                                    |
+-------+-----------------------------------------------------------+
|    29 | Name:            Freshest CRL                             |
|       | OID:             2.5.29.46                                |
|       | DER:             06 03 55 1D 2E                           |
|       | Comments:                                                 |
|       | extensionValue:  bytes                                    |
+-------+-----------------------------------------------------------+
|    30 | Name:            Inhibit anyPolicy                        |
|       | OID:             2.5.29.54                                |
|       | DER:             06 03 55 1D 36                           |
|       | Comments:                                                 |
|       | extensionValue:  bytes                                    |
+-------+-----------------------------------------------------------+
|    31 | Name:            Subject Information Access               |
|       | OID:             1.3.6.1.5.5.7.1.11                       |
|       | DER:             06 08 2B 06 01 05 05 07 01 0B            |
|       | Comments:                                                 |
|       | extensionValue:  bytes                                    |
+-------+-----------------------------------------------------------+
]]></artwork></figure>

</section>
<section anchor="EKU" title="CBOR Extended Key Usages Registry">

<t>IANA has created a new registry titled “CBOR Certificate Extended Key Usages” under the new heading “CBOR Certificate”. The columns of the registry are Value, Name, OID, DER, Comments, and Reference, where Value is an integer, and the other columns are text strings. For values in the interval [-24, 23] the registration procedure is “IETF Review” and “Expert Review”. For all other values the registration procedure is “Expert Review”. The initial contents of the registry are:</t>

<figure title="CBOR Certificate Extended Key Usages" anchor="fig-ekutype"><artwork align="center"><![CDATA[
+-------+-----------------------------------------------------------+
| Value | Extended Key Usage                                        |
+=======+===========================================================+
|     1 | Name:            TLS Server authentication                |
|       | OID:             1.3.6.1.5.5.7.3.1                        |
|       | DER:             06 08 2B 06 01 05 05 07 03 01            |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|     2 | Name:            TLS Client Authentication                |
|       | OID:             1.3.6.1.5.5.7.3.2                        |
|       | DER:             06 08 2B 06 01 05 05 07 03 02            |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|     3 | Name:            Code Signing                             |
|       | OID:             1.3.6.1.5.5.7.3.3                        |
|       | DER:             06 08 2B 06 01 05 05 07 03 03            |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|     4 | Name:            Email protection (S/MIME)                |
|       | OID:             1.3.6.1.5.5.7.3.4                        |
|       | DER:             06 08 2B 06 01 05 05 07 03 04            |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|     8 | Name:            Time Stamping                            |
|       | OID:             1.3.6.1.5.5.7.3.8                        |
|       | DER:             06 08 2B 06 01 05 05 07 03 08            |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|     9 | Name:            OCSP Signing                             |
|       | OID:             1.3.6.1.5.5.7.3.9                        |
|       | DER:             06 08 2B 06 01 05 05 07 03 09            |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
]]></artwork></figure>

</section>
<section anchor="GN" title="CBOR Certificate General Names Registry">

<t>IANA has created a new registry titled “CBOR Certificate General Names” under the new heading “CBOR Certificate”. The columns of the registry are Value, General Name, and Reference, where Value is an integer, and the other columns are text strings. For values in the interval [-24, 23] the registration procedure is “IETF Review” and “Expert Review”. For all other values the registration procedure is “Expert Review”. The initial contents of the registry are:</t>

<figure title="CBOR Certificate General Names" anchor="fig-gn"><artwork align="center"><![CDATA[
+-------+-----------------------------------------------------------+
| Value | General Names                                             |
+=======+===========================================================+
|    -1 | Name:            otherName with hardwareModuleName        |
|       | Comments:                                                 |
|       | Value:           [ ~oid, bytes ]                          |
+-------+-----------------------------------------------------------+
|     0 | Name:            otherName                                |
|       | Comments:                                                 |
|       | Value:           [ ~oid, bytes ]                          |
+-------+-----------------------------------------------------------+
|     1 | Name:            rfc822Name                               |
|       | Comments:                                                 |
|       | Value:           text                                     |
+-------+-----------------------------------------------------------+
|     2 | Name:            dNSName                                  |
|       | Comments:                                                 |
|       | Value:           text                                     |
+-------+-----------------------------------------------------------+
|     4 | Name:            directoryName                            |
|       | Comments:                                                 |
|       | Value:           Name                                     |
+-------+-----------------------------------------------------------+
|     6 | Name:            uniformResourceIdentifier                |
|       | Comments:                                                 |
|       | Value:           text                                     |
+-------+-----------------------------------------------------------+
|     7 | Name:            iPAddress                                |
|       | Comments:                                                 |
|       | Value:           bytes                                    |
+-------+-----------------------------------------------------------+
|     8 | Name:            registeredID                             |
|       | Comments:                                                 |
|       | Value:           ~oid                                     |
+-------+-----------------------------------------------------------+
]]></artwork></figure>

</section>
<section anchor="sigalg" title="CBOR Certificate Signature Algorithms Registry">

<t>IANA has created a new registry titled “CBOR Certificate Signature Algorithms” under the new heading “CBOR Certificate”. The columns of the registry are Value, Name, OID, Parameters, DER, Comments, and Reference, where Value is an integer, and the other columns are text strings. For values in the interval [-24, 23] the registration procedure is “IETF Review” and “Expert Review”. For all other values the registration procedure is “Expert Review”. The initial contents of the registry are:</t>

<figure title="CBOR Certificate Signature Algorithms" anchor="fig-sigalgs"><artwork align="center"><![CDATA[
+-------+-----------------------------------------------------------+
| Value | X.509 Signature Algorithms                                |
+=======+===========================================================+
|  -256 | Name:        RSASSA-PKCS1-v1_5 with SHA-1                 |
|       | OID:         1.2.840.113549.1.1.5                         |
|       | Parameters:  NULL                                         |
|       | DER:         30 0D 06 09 2A 86 48 86 F7 0D 01 01 05 05 00 |
|       | Comments:    Don't use                                    |
+-------+-----------------------------------------------------------+
|  -255 | Name:        ECDSA with SHA-1                             |
|       | OID:         1.2.840.10045.4.1                            |
|       | Parameters:  Absent                                       |
|       | DER:         30 09 06 07 2A 86 48 CE 3D 04 01             |
|       | Comments:    Don't use. Compressed signature value        |
+-------+-----------------------------------------------------------+
|     0 | Name:        ECDSA with SHA-256                           |
|       | OID:         1.2.840.10045.4.3.2                          |
|       | Parameters:  Absent                                       |
|       | DER:         30 0A 06 08 2A 86 48 CE 3D 04 03 02          | 
|       | Comments:    Compressed signature value                   |
+-------+-----------------------------------------------------------+
|     1 | Name:        ECDSA with SHA-384                           |
|       | OID:         1.2.840.10045.4.3.3                          |
|       | Parameters:  Absent                                       |
|       | DER:         30 0A 06 08 2A 86 48 CE 3D 04 03 03          | 
|       | Comments:    Compressed signature value                   |
+-------+-----------------------------------------------------------+
|     2 | Name:        ECDSA with SHA-512                           |
|       | OID:         1.2.840.10045.4.3.4                          |
|       | Parameters:  Absent                                       |
|       | DER:         30 0A 06 08 2A 86 48 CE 3D 04 03 04          | 
|       | Comments:    Compressed signature value                   |
+-------+-----------------------------------------------------------+
|     3 | Name:        ECDSA with SHAKE128                          |
|       | OID:         1.3.6.1.5.5.7.6.32                           |
|       | Parameters:  Absent                                       |
|       | DER:         30 0A 06 08 2B 06 01 05 05 07 06 20          | 
|       | Comments:    Compressed signature value                   |
+-------+-----------------------------------------------------------+
|     4 | Name:        ECDSA with SHAKE256                          |
|       | OID:         1.3.6.1.5.5.7.6.33                           |
|       | Parameters:  Absent                                       |
|       | DER:         30 0A 06 08 2B 06 01 05 05 07 06 21          | 
|       | Comments:    Compressed signature value                   |
+-------+-----------------------------------------------------------+
|    12 | Name:        Ed25519                                      |
|       | OID:         1.3.101.112                                  |
|       | Parameters:  Absent                                       |
|       | DER:         30 05 06 03 2B 65 70                         |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    13 | Name:        Ed448                                        |
|       | OID:         1.3.101.113                                  |
|       | Parameters:  Absent                                       |
|       | DER:         30 05 06 03 2B 65 71                         |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    23 | Name:        RSASSA-PKCS1-v1_5 with SHA-256               |
|       | OID:         1.2.840.113549.1.1.11                        |
|       | Parameters:  NULL                                         |
|       | DER:         30 0B 06 09 2A 86 48 86 F7 0D 01 01 0B 05 00 | 
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    24 | Name:        RSASSA-PKCS1-v1_5 with SHA-384               |
|       | OID:         1.2.840.113549.1.1.12                        |
|       | Parameters:  NULL                                         |
|       | DER:         30 0B 06 09 2A 86 48 86 F7 0D 01 01 0C 05 00 | 
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    25 | Name:        RSASSA-PKCS1-v1_5 with SHA-512               |
|       | OID:         1.2.840.113549.1.1.13                        |
|       | Parameters:  NULL                                         |
|       | DER:         30 0B 06 09 2A 86 48 86 F7 0D 01 01 0D 05 00 | 
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    26 | Name:        RSASSA-PSS with SHA-256                      |
|       | OID:         1.2.840.113549.1.1.10                        |
|       | Parameters:  SHA-256, MGF-1 with SHA-256, saltLength = 32 |
|       | DER:         30 41 06 09 2A 86 48 86 F7 0D 01 01 0A 30 34 |
|       |              A0 0F 30 0D 06 09 60 86 48 01 65 03 04 02 01 |
|       |              05 00 A1 1C 30 1A 06 09 2A 86 48 86 F7 0D 01 |
|       |              01 08 30 0D 06 09 60 86 48 01 65 03 04 02 01 |
|       |              05 00 a2 03 02 01 20                         |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    27 | Name:        RSASSA-PSS with SHA-384                      |
|       | OID:         1.2.840.113549.1.1.10                        |
|       | Parameters:  SHA-384, MGF-1 with SHA-384, saltLength = 48 |
|       | DER:         30 41 06 09 2A 86 48 86 F7 0D 01 01 0A 30 34 |
|       |              A0 0F 30 0D 06 09 60 86 48 01 65 03 04 02 02 |
|       |              05 00 A1 1C 30 1A 06 09 2A 86 48 86 F7 0D 01 |
|       |              01 08 30 0D 06 09 60 86 48 01 65 03 04 02 02 |
|       |              05 00 A2 03 02 01 30                         |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    28 | Name:        RSASSA-PSS with SHA-512                      |
|       | OID:         1.2.840.113549.1.1.10                        |
|       | Parameters:  SHA-512, MGF-1 with SHA-512, saltLength = 64 |
|       | DER:         30 41 06 09 2A 86 48 86 F7 0D 01 01 0A 30 34 |
|       |              A0 0F 30 0D 06 09 60 86 48 01 65 03 04 02 03 |
|       |              05 00 A1 1C 30 1A 06 09 2A 86 48 86 F7 0D 01 |
|       |              01 08 30 0D 06 09 60 86 48 01 65 03 04 02 03 |
|       |              05 00 A2 03 02 01 40                         |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    29 | Name:        RSASSA-PSS with SHAKE128                     |
|       | OID:         1.3.6.1.5.5.7.6.30                           |
|       | Parameters:  Absent                                       |
|       | DER:         30 0A 06 08 2B 06 01 05 05 07 06 1E          |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    30 | Name:        RSASSA-PSS with SHAKE256                     |
|       | OID:         1.3.6.1.5.5.7.6.31                           |
|       | Parameters:  Absent                                       |
|       | DER:         30 0A 06 08 2B 06 01 05 05 07 06 1F          | 
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    42 | Name:        HSS / LMS                                    |
|       | OID:         1.2.840.113549.1.9.16.3.17                   |
|       | Parameters:  Absent                                       |
|       | DER:         30 0D 06 0B 2A 86 48 86 F7 0D 01 09 10 03 11 |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    43 | Name:        XMSS                                         |
|       | OID:         0.4.0.127.0.15.1.1.13.0                      |
|       | Parameters:  Absent                                       |
|       | DER:         30 0B 06 09 04 00 7F 00 0F 01 01 0D 00       |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    44 | Name:        XMSS^MT                                      |
|       | OID:         0.4.0.127.0.15.1.1.14.0                      |
|       | Parameters:  Absent                                       |
|       | DER:         30 0B 06 09 04 00 7F 00 0F 01 01 0E 00       |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
]]></artwork></figure>

</section>
<section anchor="pkalg" title="CBOR Certificate Public Key Algorithms Registry">

<t>IANA has created a new registry titled “CBOR Certificate Public Key Algorithms” under the new heading “CBOR Certificate”. The columns of the registry are Value, Name, OID, Parameters, DER, Comments, and Reference, where Value is an integer, and the other columns are text strings. For values in the interval [-24, 23] the registration procedure is “IETF Review” and “Expert Review”. For all other values the registration procedure is “Expert Review”. T The initial contents of the registry are:</t>

<figure title="CBOR Certificate Public Key Algorithms" anchor="fig-pkalgs"><artwork align="center"><![CDATA[
+-------+-----------------------------------------------------------+
| Value | X.509 Public Key Algorithms                               |
+=======+===========================================================+
|     0 | Name:        RSA                                          |
|       | OID:         1.2.840.113549.1.1.1                         |
|       | Parameters:  NULL                                         |
|       | DER:         30 0d 06 09 2a 86 48 86 f7 0d 01 01 01 05 00 |
|       | Comments:    Compressed subjectPublicKey                  |
+-------+-----------------------------------------------------------+
|     1 | Name:        EC Public Key (Weierstraß) with secp256r1    |
|       | OID:         1.2.840.10045.2.1                            |
|       | Parameters:  namedCurve = secp256r1 (1.2.840.10045.3.1.7) |
|       | DER:         30 13 06 07 2A 86 48 CE 3D 02 01 06 08 2A 86 |
|       |              48 CE 3D 03 01 07                            |
|       | Comments:    Point compressed subjectPublicKey            |
+-------+-----------------------------------------------------------+
|     2 | Name:        EC Public Key (Weierstraß) with secp384r1    |
|       | OID:         1.2.840.10045.2.1                            |
|       | Parameters:  namedCurve = secp384r1 (1.3.132.0.34)        |
|       | DER:         30 10 06 07 2A 86 48 CE 3D 02 01 06 05 2B 81 |
|       |              04 00 22                                     |
|       | Comments:    Point compressed subjectPublicKey            |
+-------+-----------------------------------------------------------+
|     3 | Name:        EC Public Key (Weierstraß) with secp521r1    |
|       | OID:         1.2.840.10045.2.1                            |
|       | Parameters:  namedCurve = secp521r1 (1.3.132.0.35)        |
|       | DER:         30 10 06 07 2A 86 48 CE 3D 02 01 06 05 2B 81 |
|       |              04 00 23                                     |
|       | Comments:    Point compressed subjectPublicKey            |
+-------+-----------------------------------------------------------+
|     8 | Name:        X25519 (Montgomery)                          |
|       | OID:         1.3.101.110                                  |
|       | Parameters:  Absent                                       |
|       | DER:         30 05 06 03 2B 65 6E                         |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|     9 | Name:        X448 (Montgomery)                            |
|       | OID:         1.3.101.111                                  |
|       | Parameters:  Absent                                       |
|       | DER:         30 05 06 03 2B 65 6F                         |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    10 | Name:        Ed25519 (Twisted Edwards)                    |
|       | OID:         1.3.101.112                                  |
|       | Parameters:  Absent                                       |
|       | DER:         30 05 06 03 2B 65 70                         |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    11 | Name:        Ed448 (Edwards)                              |
|       | OID:         1.3.101.113                                  |
|       | Parameters:  Absent                                       |
|       | DER:         30 05 06 03 2B 65 71                         |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    16 | Name:        HSS / LMS                                    |
|       | OID:         1.2.840.113549.1.9.16.3.17                   |
|       | Parameters:  Absent                                       |
|       | DER:         30 0D 06 0B 2A 86 48 86 F7 0D 01 09 10 03 11 |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    17 | Name:        XMSS                                         |
|       | OID:         0.4.0.127.0.15.1.1.13.0                      |
|       | Parameters:  Absent                                       |
|       | DER:         30 0B 06 09 04 00 7F 00 0F 01 01 0D 00       |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
|    18 | Name:        XMSS^MT                                      |
|       | OID:         0.4.0.127.0.15.1.1.14.0                      |
|       | Parameters:  Absent                                       |
|       | DER:         30 0B 06 09 04 00 7F 00 0F 01 01 0E 00       |
|       | Comments:                                                 |
+-------+-----------------------------------------------------------+
]]></artwork></figure>

</section>
<section anchor="cose" title="COSE Header Parameters Registry">

<t>This document registers the following entries in the “COSE Header Parameters” registry under the “CBOR Object Signing and Encryption (COSE)” heading. The formatting and processing are the same as the corresponding x5bag, x5chain, x5t, and x5u defined in <xref target="I-D.ietf-cose-x509"/> except that the certificates are CBOR encoded instead of DER encoded. Note that certificates can also be identified with a ‘kid’ header parameter by storing ‘kid’ and the associated bag or chain in a dictionary.</t>

<figure><artwork><![CDATA[
+-----------+-------+----------------+------------------------------+
| Name      | Label | Value Type     | Description                  |
+===========+=======+================+==============================+
| c5bag     |  TBD1 | COSE_X509      | An unordered bag of CBOR     |
|           |       |                | certificates                 |
+-----------+-------+----------------+------------------------------+
| c5chain   |  TBD2 | COSE_X509      | An ordered chain of CBOR     |
|           |       |                | certificates                 |
+-----------+-------+----------------+------------------------------+
| c5t       |  TBD3 | COSE_CertHash  | Hash of a CBOR certificate   |
+-----------+-------+----------------+------------------------------+
| c5u       |  TBD4 | uri            | URI pointing to a CBOR       |
|           |       |                | certificate                  |
+-----------+-------+----------------+------------------------------+
]]></artwork></figure>

</section>
<section anchor="tls" title="TLS Certificate Types Registry">

<t>This document registers the following entry in the “TLS Certificate Types” registry under the “Transport Layer Security (TLS) Extensions” heading. The new certificate type can be used with addtional TLS certificate compression <xref target="RFC8879"/>.</t>

<t>EDITOR’S NOTE: The TLS registrations should be discussed and approved by the TLS WG at a later stage. When COSE WG has adopted work on CBOR certificates, it could perhaps be presented in the TLS WG. The TLS WG might e.g. want a separate draft in the TLS WG.</t>

<figure><artwork><![CDATA[
+-------+------------------+-------------+--------------------------+
| Value | Name             | Recommended | Comment                  |
+=======+==================+=============+==========================+
|  TBD5 | CBOR Certificate |           Y |                          |         
+-------+------------------+-------------+--------------------------+
]]></artwork></figure>

</section>
</section>


  </middle>

  <back>

    <references title='Normative References'>

&RFC2119;
&RFC4108;
&RFC5280;
&RFC8152;
&RFC8174;
&RFC8610;
&RFC8742;
&RFC8949;
&I-D.ietf-cose-x509;
&I-D.ietf-cbor-tags-oid;
<reference anchor="SECG" target="https://secg.org/sec1-v2.pdf">
  <front>
    <title>Elliptic Curve Cryptography, Standards for Efficient Cryptography Group, ver. 2</title>
    <author >
      <organization></organization>
    </author>
    <date year="2009"/>
  </front>
</reference>


    </references>

    <references title='Informative References'>

&RFC7228;
&RFC7925;
&RFC7932;
&RFC8446;
&RFC8603;
&RFC8879;
&I-D.ietf-lake-edhoc;
&I-D.ietf-tls-dtls13;
&I-D.ietf-uta-tls13-iot-profile;
&I-D.ietf-tls-ctls;
&I-D.ietf-emu-eap-tls13;
&I-D.ietf-emu-eaptlscert;
&I-D.ietf-quic-transport;
<reference anchor="CAB-Baseline" target="https://cabforum.org/baseline-requirements-documents/">
  <front>
    <title>CA/Browser Forum, "Baseline Requirements for the Issuance and Management of Publicly-Trusted Certificates Version 1.7.3</title>
    <author initials="." surname="CA/Browser Forum">
      <organization></organization>
    </author>
    <date year="2020" month="October"/>
  </front>
</reference>
<reference anchor="IEEE-802.1AR" target="https://standards.ieee.org/standard/802_1AR-2018.html">
  <front>
    <title>IEEE Standard for Local and metropolitan area networks–Secure Device Identity</title>
    <author initials="." surname="Institute of Electrical and Electronics Engineers">
      <organization></organization>
    </author>
    <date year="2018" month="August"/>
  </front>
  <seriesInfo name="IEEE Standard 802.1AR-2018" value=""/>
</reference>
<reference anchor="X.509-IoT" target="https://doi.org/10.1007/978-3-319-93797-7_14">
  <front>
    <title>Lightweight X.509 Digital Certificates for the Internet of Things.</title>
    <author initials="F." surname="Forsby">
      <organization></organization>
    </author>
    <author initials="M." surname="Furuhed">
      <organization></organization>
    </author>
    <author initials="P." surname="Papadimitratos">
      <organization></organization>
    </author>
    <author initials="S." surname="Raza">
      <organization></organization>
    </author>
    <date year="2018" month="July"/>
  </front>
  <seriesInfo name="Springer, Cham." value="Lecture Notes of the Institute for Computer Sciences, Social Informatics and Telecommunications Engineering, vol 242."/>
</reference>


    </references>


<section anchor="appA" title="Example CBOR Certificates">

<section anchor="example-rfc-7925-profiled-x509-certificate" title="Example RFC 7925 profiled X.509 Certificate">

<t>Example of <xref target="RFC7925"/> profiled X.509 certificate parsed with OpenSSL.</t>

<figure><artwork><![CDATA[
Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number: 128269 (0x1f50d)
        Signature Algorithm: ecdsa-with-SHA256
        Issuer: CN=RFC test CA
        Validity
            Not Before: Jan  1 00:00:00 2020 GMT
            Not After : Feb  2 00:00:00 2021 GMT
        Subject: CN=01-23-45-FF-FE-67-89-AB
        Subject Public Key Info:
            Public Key Algorithm: id-ecPublicKey
                Public-Key: (256 bit)
                pub:
                    04:b1:21:6a:b9:6e:5b:3b:33:40:f5:bd:f0:2e:69:
                    3f:16:21:3a:04:52:5e:d4:44:50:b1:01:9c:2d:fd:
                    38:38:ab:ac:4e:14:d8:6c:09:83:ed:5e:9e:ef:24:
                    48:c6:86:1c:c4:06:54:71:77:e6:02:60:30:d0:51:
                    f7:79:2a:c2:06
                ASN1 OID: prime256v1
                NIST CURVE: P-256
        X509v3 extensions:
            X509v3 Key Usage: 
                Digital Signature
    Signature Algorithm: ecdsa-with-SHA256
         30:44:02:20:44:5d:79:8c:90:e7:f5:00:dc:74:7a:65:4c:ec:
         6c:fa:6f:03:72:76:e1:4e:52:ed:07:fc:16:29:4c:84:66:0d:
         02:20:5a:33:98:5d:fb:d4:bf:dd:6d:4a:cf:38:04:c3:d4:6e:
         bf:3b:7f:a6:26:40:67:4f:c0:35:4f:a0:56:db:ae:a6
         
]]></artwork></figure>

<t>The DER encoding of the above certificate is 314 bytes.</t>

<figure><artwork><![CDATA[
30 82 01 36 30 81 DE A0 03 02 01 02 02 03 01 F5 0D 30 0A 06 08 2A 86
48 CE 3D 04 03 02 30 16 31 14 30 12 06 03 55 04 03 0C 0B 52 46 43 20
74 65 73 74 20 43 41 30 1E 17 0D 32 30 30 31 30 31 30 30 30 30 30 30
5A 17 0D 32 31 30 32 30 32 30 30 30 30 30 30 5A 30 22 31 20 30 1E 06
03 55 04 03 0C 17 30 31 2D 32 33 2D 34 35 2D 46 46 2D 46 45 2D 36 37
2D 38 39 2D 41 42 30 59 30 13 06 07 2A 86 48 CE 3D 02 01 06 08 2A 86
48 CE 3D 03 01 07 03 42 00 04 B1 21 6A B9 6E 5B 3B 33 40 F5 BD F0 2E
69 3F 16 21 3A 04 52 5E D4 44 50 B1 01 9C 2D FD 38 38 AB AC 4E 14 D8
6C 09 83 ED 5E 9E EF 24 48 C6 86 1C C4 06 54 71 77 E6 02 60 30 D0 51
F7 79 2A C2 06 A3 0F 30 0D 30 0B 06 03 55 1D 0F 04 04 03 02 07 80 30
0A 06 08 2A 86 48 CE 3D 04 03 02 03 47 00 30 44 02 20 44 5D 79 8C 90
E7 F5 00 DC 74 7A 65 4C EC 6C FA 6F 03 72 76 E1 4E 52 ED 07 FC 16 29
4C 84 66 0D 02 20 5A 33 98 5D FB D4 BF DD 6D 4A CF 38 04 C3 D4 6E BF
3B 7F A6 26 40 67 4F C0 35 4F A0 56 DB AE A6
]]></artwork></figure>

<section anchor="example-cbor-certificate-encoding" title="Example CBOR Certificate Encoding">

<t>The CBOR encoding of the same X.509 certificate is shown below in CBOR diagnostic format.</t>

<figure><artwork><![CDATA[
/This defines a CBOR Sequence (RFC 8742):/

  1,
  h'01f50d',
  "RFC test CA",
  1577836800,
  1612224000,
  h'0123456789AB',
  1,
  h'02B1216AB96E5B3B3340F5BDF02E693F16213A04525ED44450
    B1019C2DFD3838AB',
  1,
  0,
  h'445D798C90E7F500DC747A654CEC6CFA6F037276E14E52ED07
    FC16294C84660D5A33985DFBD4BFDD6D4ACF3804C3D46EBF3B
    7FA62640674FC0354FA056DBAEA6

]]></artwork></figure>

<t>The size of the CBOR encoding (CBOR sequence) is 138 bytes.</t>

<figure><artwork><![CDATA[
01
43 01 F5 0D
6B 52 46 43 20 74 65 73 74 20 43 41
1A 5E 0B E1 00
1A 60 18 96 00
46 01 23 45 67 89 AB
01
58 21 02 B1 21 6A B9 6E 5B 3B 33 40 F5 BD F0 2E 69 3F 16 21 3A 04 52
5E D4 44 50 B1 01 9C 2D FD 38 38 AB
01
00
58 40 44 5D 79 8C 90 E7 F5 00 DC 74 7A 65 4C EC 6C FA 6F 03 72 76 E1
4E 52 ED 07 FC 16 29 4C 84 66 0D 5A 33 98 5D FB D4 BF DD 6D 4A CF 38
04 C3 D4 6E BF 3B 7F A6 26 40 67 4F C0 35 4F A0 56 DB AE A6
]]></artwork></figure>

</section>
<section anchor="example-natively-signed-cbor-certificate" title="Example: Natively Signed CBOR Certificate">

<t>The corresponding natively signed CBOR certificate in CBOR diagnostic format is identical, except for cborCertificateType and signatureValue.</t>

<figure><artwork><![CDATA[
/This defines a CBOR Sequence (RFC 8742):/

  0,
  h'01f50d',
  "RFC test CA",
  1577836800,
  1612224000,
  h'0123456789AB',
  1,
  h'02B1216AB96E5B3B3340F5BDF02E693F16213A04525ED44450
    B1019C2DFD3838AB',
  1,
  6,
  h'B27A0B781455F71B68290F6C2EC9A897F18FDE9B6C59575953
    BC67268AB0E4DDE99D273E04E4715383AB2257C6AAA35284E5
    ED18BDB91247E9F2C433136480B9'

]]></artwork></figure>

<t>The size of the CBOR encoding (CBOR sequence) is 138 bytes.</t>

<figure><artwork><![CDATA[
00
43 01 F5 0D
6B 52 46 43 20 74 65 73 74 20 43 41
1A 5E 0B E1 00
1A 60 18 96 00
46 01 23 45 67 89 AB
01
58 21 02 B1 21 6A B9 6E 5B 3B 33 40 F5 BD F0 2E 69 3F 16 21 3A 04 52
5E D4 44 50 B1 01 9C 2D FD 38 38 AB
01
00
58 40 B2 7A 0B 78 14 55 F7 1B 68 29 0F 6C 2E C9 A8 97 F1 8F DE 9B 6C
59 57 59 53 BC 67 26 8A B0 E4 DD E9 9D 27 3E 04 E4 71 53 83 AB 22 57
C6 AA A3 52 84 E5 ED 18 BD B9 12 47 E9 F2 C4 33 13 64 80 B9 
]]></artwork></figure>

</section>
<section anchor="example-additonal-keys-for-the-example-certificates" title="Example: Additonal Keys for the Example Certificates">

<t>Below are the issuer key pair and the subject private key belonging to the above example certificates. The private keys are encoded as in COSE <xref target="RFC8152"/>. These issuer key pair can be used to sign or verify the example certificates and the subject private key allows the example certificates to be used in test vectors for other protocols like EDHOC.</t>

<figure><artwork><![CDATA[
issuerPublicKeyAlgorithm :
1 (EC Public Key (Weierstraß) with secp256r1)

issuerPublicKey :
h'02AE4CDB01F614DEFC7121285FDC7F5C6D1D42C95647F061BA0080DF678867845E'

issuerPrivateKey :
h'DC66B3415456D649429B53223DF7532B942D6B0E0842C30BCA4C0ACF91547BB2'
]]></artwork></figure>

<figure><artwork><![CDATA[
subjectPrivateKey :
h'D718111F3F9BD91B92FF6877F386BDBFCEA7154268FD7F2FB56EE17D99EA16D4'
]]></artwork></figure>

</section>
</section>
<section anchor="example-ieee-8021ar-profiled-x509-certificate" title="Example IEEE 802.1AR profiled X.509 Certificate">

<t>EDITOR’S NOTE: To do</t>

</section>
<section anchor="example-cab-baseline-ecdsa-https-x509-certificate" title="Example CAB Baseline ECDSA HTTPS X.509 Certificate">

<t>The www.ietf.org HTTPS server replies with a certificate message with 2 certificates. The DER encoding of the first certificate is 1209 bytes.</t>

<figure><artwork><![CDATA[
30 82 04 b5 30 82 04 5a a0 03 02 01 02 02 10 04 7f a1 e3 19 28 ee 40
3b a0 b8 3a 39 56 73 fc 30 0a 06 08 2a 86 48 ce 3d 04 03 02 30 4a 31
0b 30 09 06 03 55 04 06 13 02 55 53 31 19 30 17 06 03 55 04 0a 13 10
43 6c 6f 75 64 66 6c 61 72 65 2c 20 49 6e 63 2e 31 20 30 1e 06 03 55
04 03 13 17 43 6c 6f 75 64 66 6c 61 72 65 20 49 6e 63 20 45 43 43 20
43 41 2d 33 30 1e 17 0d 32 30 30 37 32 39 30 30 30 30 30 30 5a 17 0d
32 31 30 37 32 39 31 32 30 30 30 30 5a 30 6d 31 0b 30 09 06 03 55 04
06 13 02 55 53 31 0b 30 09 06 03 55 04 08 13 02 43 41 31 16 30 14 06
03 55 04 07 13 0d 53 61 6e 20 46 72 61 6e 63 69 73 63 6f 31 19 30 17
06 03 55 04 0a 13 10 43 6c 6f 75 64 66 6c 61 72 65 2c 20 49 6e 63 2e
31 1e 30 1c 06 03 55 04 03 13 15 73 6e 69 2e 63 6c 6f 75 64 66 6c 61
72 65 73 73 6c 2e 63 6f 6d 30 59 30 13 06 07 2a 86 48 ce 3d 02 01 06
08 2a 86 48 ce 3d 03 01 07 03 42 00 04 96 3e cd d8 4d cd 1b 93 a1 cf
43 2d 1a 72 17 d6 c6 3b de 33 55 a0 2f 8c fb 5a d8 99 4c d4 4e 20 5f
15 f6 e3 d2 3b 38 2b a6 49 9b b1 7f 34 1f a5 92 fa 21 86 1f 16 d3 12
06 63 24 05 fd 70 42 bd a3 82 02 fd 30 82 02 f9 30 1f 06 03 55 1d 23
04 18 30 16 80 14 a5 ce 37 ea eb b0 75 0e 94 67 88 b4 45 fa d9 24 10
87 96 1f 30 1d 06 03 55 1d 0e 04 16 04 14 cc 0b 50 e7 d8 37 db f2 43
f3 85 3d 48 60 f5 3b 39 be 9b 2a 30 2e 06 03 55 1d 11 04 27 30 25 82
15 73 6e 69 2e 63 6c 6f 75 64 66 6c 61 72 65 73 73 6c 2e 63 6f 6d 82
0c 77 77 77 2e 69 65 74 66 2e 6f 72 67 30 0e 06 03 55 1d 0f 01 01 ff
04 04 03 02 07 80 30 1d 06 03 55 1d 25 04 16 30 14 06 08 2b 06 01 05
05 07 03 01 06 08 2b 06 01 05 05 07 03 02 30 7b 06 03 55 1d 1f 04 74
30 72 30 37 a0 35 a0 33 86 31 68 74 74 70 3a 2f 2f 63 72 6c 33 2e 64
69 67 69 63 65 72 74 2e 63 6f 6d 2f 43 6c 6f 75 64 66 6c 61 72 65 49
6e 63 45 43 43 43 41 2d 33 2e 63 72 6c 30 37 a0 35 a0 33 86 31 68 74
74 70 3a 2f 2f 63 72 6c 34 2e 64 69 67 69 63 65 72 74 2e 63 6f 6d 2f
43 6c 6f 75 64 66 6c 61 72 65 49 6e 63 45 43 43 43 41 2d 33 2e 63 72
6c 30 4c 06 03 55 1d 20 04 45 30 43 30 37 06 09 60 86 48 01 86 fd 6c
01 01 30 2a 30 28 06 08 2b 06 01 05 05 07 02 01 16 1c 68 74 74 70 73
3a 2f 2f 77 77 77 2e 64 69 67 69 63 65 72 74 2e 63 6f 6d 2f 43 50 53
30 08 06 06 67 81 0c 01 02 02 30 76 06 08 2b 06 01 05 05 07 01 01 04
6a 30 68 30 24 06 08 2b 06 01 05 05 07 30 01 86 18 68 74 74 70 3a 2f
2f 6f 63 73 70 2e 64 69 67 69 63 65 72 74 2e 63 6f 6d 30 40 06 08 2b
06 01 05 05 07 30 02 86 34 68 74 74 70 3a 2f 2f 63 61 63 65 72 74 73
2e 64 69 67 69 63 65 72 74 2e 63 6f 6d 2f 43 6c 6f 75 64 66 6c 61 72
65 49 6e 63 45 43 43 43 41 2d 33 2e 63 72 74 30 0c 06 03 55 1d 13 01
01 ff 04 02 30 00 30 82 01 05 06 0a 2b 06 01 04 01 d6 79 02 04 02 04
81 f6 04 81 f3 00 f1 00 76 00 f6 5c 94 2f d1 77 30 22 14 54 18 08 30
94 56 8e e3 4d 13 19 33 bf df 0c 2f 20 0b cc 4e f1 64 e3 00 00 01 73
9c 83 5f 8e 00 00 04 03 00 47 30 45 02 21 00 f8 d1 b4 a9 3d 2f 0d 4c
41 76 df b4 88 bc c7 3b 86 44 3d 7d e0 0e 6a c8 17 4d 89 48 a8 84 36
68 02 20 29 ff 5a 34 06 8a 24 0c 69 50 27 88 e8 ee 25 ab 7e d2 cb cf
68 6e ce 7b 5f 96 b4 31 a9 07 02 fa 00 77 00 5c dc 43 92 fe e6 ab 45
44 b1 5e 9a d4 56 e6 10 37 fb d5 fa 47 dc a1 73 94 b2 5e e6 f6 c7 0e
ca 00 00 01 73 9c 83 5f be 00 00 04 03 00 48 30 46 02 21 00 e8 91 c1
97 bf b0 e3 d3 0c b6 ce e6 0d 94 c3 c7 5f d1 17 53 36 93 11 08 d8 98
12 d4 d2 9d 81 d0 02 21 00 a1 59 d1 6c 46 47 d1 48 37 57 fc d6 ce 4e
75 ec 7b 5e f6 57 ef e0 28 f8 e5 cc 47 92 68 2d ac 43 30 0a 06 08 2a
86 48 ce 3d 04 03 02 03 49 00 30 46 02 21 00 bd 63 cf 4f 7e 5c fe 6c
29 38 5e a7 1c fb fc 1e 3f 7b 1c d0 72 51 a2 21 f7 77 69 c0 f4 71 df
ea 02 21 00 b5 c0 6c c4 58 54 fa 30 b2 82 88 b1 d3 bb 9a 66 61 ed 50
31 72 5b 1a 82 02 e0 da 5b 59 f9 54 02
]]></artwork></figure>

<section anchor="example-cbor-certificate-encoding-1" title="Example CBOR Certificate Encoding">

<t>The CBOR encoding of the first X.509 certificate is shown below in CBOR diagnostic format.</t>

<figure><artwork><![CDATA[
/This defines a CBOR Sequence (RFC 8742):/

1,
h'047FA1E31928EE403BA0B83A395673FC',
[
 -4, "IE",
 -8, "Baltimore",
 -9, "CyberTrust",
 -1, "Baltimore CyberTrust Root"
],
1595980800,
1627560000,
[
 -4, "US",
 -6, "CA",
 -5, "San Francisco",
 -8, "Cloudflare, Inc.",
 -1, "sni.cloudflaressl.com"
],
1,
h'03963ECDD84DCD1B93A1CF432D1A7217D6C63BDE3355A02F8CFB5AD8994CD44E20',
[
  6, h'A5CE37EAEBB0750E946788B445FAD9241087961F',
  0, h'CC0B50E7D837DBF243F3853D4860F53B39BE9B2A',
  2, [2, "sni.cloudflaressl.com", 2, "www.ietf.org"],
 -1, 1,
  7, [1, 2],
  4, ["http://crl3.digicert.com/CloudflareIncECCCA-3.crl", "http://crl4.digicert.com/CloudflareIncECCCA-3.crl"],
  5, [h'6086480186FD6C0101', "https://www.digicert.com/CPS", 2],
  8, [1, "http://ocsp.digicert.com", 2, "http://cacerts.digicert.com/CloudflareIncECCCA-3.crt"],
 -3, -2,
  9, ...
],
0,
h'BD63CF4F7E5CFE6C29385EA71CFBFC1E3F7B1CD07251A221F77769C0F471DFEAB5C06CC45854FA30B28288B1D3BB9A6661ED5031725B1A8202E0DA5B59F95402'
]]></artwork></figure>

</section>
</section>
<section anchor="example-cab-baseline-rsa-https-x509-certificate" title="Example CAB Baseline RSA HTTPS X.509 Certificate">

<t>The tools.ietf.org HTTPS server replies with a certificate message with 4 certificates. The DER encoding of the first certificate is 1647 bytes.</t>

<figure><artwork><![CDATA[
30 82 06 6b 30 82 05 53 a0 03 02 01 02 02 09 00 a6 a5 5c 87 0e 39 b4
0e 30 0d 06 09 2a 86 48 86 f7 0d 01 01 0b 05 00 30 81 c6 31 0b 30 09
06 03 55 04 06 13 02 55 53 31 10 30 0e 06 03 55 04 08 13 07 41 72 69
7a 6f 6e 61 31 13 30 11 06 03 55 04 07 13 0a 53 63 6f 74 74 73 64 61
6c 65 31 25 30 23 06 03 55 04 0a 13 1c 53 74 61 72 66 69 65 6c 64 20
54 65 63 68 6e 6f 6c 6f 67 69 65 73 2c 20 49 6e 63 2e 31 33 30 31 06
03 55 04 0b 13 2a 68 74 74 70 3a 2f 2f 63 65 72 74 73 2e 73 74 61 72
66 69 65 6c 64 74 65 63 68 2e 63 6f 6d 2f 72 65 70 6f 73 69 74 6f 72
79 2f 31 34 30 32 06 03 55 04 03 13 2b 53 74 61 72 66 69 65 6c 64 20
53 65 63 75 72 65 20 43 65 72 74 69 66 69 63 61 74 65 20 41 75 74 68
6f 72 69 74 79 20 2d 20 47 32 30 1e 17 0d 32 30 31 30 30 31 31 39 33
38 33 36 5a 17 0d 32 31 31 31 30 32 31 39 33 38 33 36 5a 30 3e 31 21
30 1f 06 03 55 04 0b 13 18 44 6f 6d 61 69 6e 20 43 6f 6e 74 72 6f 6c
20 56 61 6c 69 64 61 74 65 64 31 19 30 17 06 03 55 04 03 0c 10 2a 2e
74 6f 6f 6c 73 2e 69 65 74 66 2e 6f 72 67 30 82 01 22 30 0d 06 09 2a
86 48 86 f7 0d 01 01 01 05 00 03 82 01 0f 00 30 82 01 0a 02 82 01 01
00 b1 e1 37 e8 eb 82 d6 89 fa db f5 c2 4b 77 f0 2c 4a de 72 6e 3e 13
60 d1 a8 66 1e c4 ad 3d 32 60 e5 f0 99 b5 f4 7a 7a 48 55 21 ee 0e 39
12 f9 ce 0d ca f5 69 61 c7 04 ed 6e 0f 1d 3b 1e 50 88 79 3a 0e 31 41
16 f1 b1 02 64 68 a5 cd f5 4a 0a ca 99 96 35 08 c3 7e 27 5d d0 a9 cf
f3 e7 28 af 37 d8 b6 7b dd f3 7e ae 6e 97 7f f7 ca 69 4e cc d0 06 df
5d 27 9b 3b 12 e7 e6 fe 08 6b 52 7b 82 11 7c 72 b3 46 eb c1 e8 78 b8
0f cb e1 eb bd 06 44 58 dc 83 50 b2 a0 62 5b dc 81 b8 36 e3 9e 7c 79
b2 a9 53 8a e0 0b c9 4a 2a 13 39 31 13 bd 2c cf a8 70 cf 8c 8d 3d 01
a3 88 ae 12 00 36 1d 1e 24 2b dd 79 d8 53 01 26 ed 28 4f c9 86 94 83
4e c8 e1 14 2e 85 b3 af d4 6e dd 69 46 af 41 25 0e 7a ad 8b f2 92 ca
79 d9 7b 32 4f f7 77 e8 f9 b4 4f 23 5c d4 5c 03 ae d8 ab 3a ca 13 5f
5d 5d 5d a1 02 03 01 00 01 a3 82 02 e1 30 82 02 dd 30 0c 06 03 55 1d
13 01 01 ff 04 02 30 00 30 1d 06 03 55 1d 25 04 16 30 14 06 08 2b 06
01 05 05 07 03 01 06 08 2b 06 01 05 05 07 03 02 30 0e 06 03 55 1d 0f
01 01 ff 04 04 03 02 05 a0 30 3d 06 03 55 1d 1f 04 36 30 34 30 32 a0
30 a0 2e 86 2c 68 74 74 70 3a 2f 2f 63 72 6c 2e 73 74 61 72 66 69 65
6c 64 74 65 63 68 2e 63 6f 6d 2f 73 66 69 67 32 73 31 2d 32 34 32 2e
63 72 6c 30 63 06 03 55 1d 20 04 5c 30 5a 30 4e 06 0b 60 86 48 01 86
fd 6e 01 07 17 01 30 3f 30 3d 06 08 2b 06 01 05 05 07 02 01 16 31 68
74 74 70 3a 2f 2f 63 65 72 74 69 66 69 63 61 74 65 73 2e 73 74 61 72
66 69 65 6c 64 74 65 63 68 2e 63 6f 6d 2f 72 65 70 6f 73 69 74 6f 72
79 2f 30 08 06 06 67 81 0c 01 02 01 30 81 82 06 08 2b 06 01 05 05 07
01 01 04 76 30 74 30 2a 06 08 2b 06 01 05 05 07 30 01 86 1e 68 74 74
70 3a 2f 2f 6f 63 73 70 2e 73 74 61 72 66 69 65 6c 64 74 65 63 68 2e
63 6f 6d 2f 30 46 06 08 2b 06 01 05 05 07 30 02 86 3a 68 74 74 70 3a
2f 2f 63 65 72 74 69 66 69 63 61 74 65 73 2e 73 74 61 72 66 69 65 6c
64 74 65 63 68 2e 63 6f 6d 2f 72 65 70 6f 73 69 74 6f 72 79 2f 73 66
69 67 32 2e 63 72 74 30 1f 06 03 55 1d 23 04 18 30 16 80 14 25 45 81
68 50 26 38 3d 3b 2d 2c be cd 6a d9 b6 3d b3 66 63 30 2b 06 03 55 1d
11 04 24 30 22 82 10 2a 2e 74 6f 6f 6c 73 2e 69 65 74 66 2e 6f 72 67
82 0e 74 6f 6f 6c 73 2e 69 65 74 66 2e 6f 72 67 30 1d 06 03 55 1d 0e
04 16 04 14 ad 8a b4 1c 07 51 d7 92 89 07 b0 b7 84 62 2f 36 55 7a 5f
4d 30 82 01 06 06 0a 2b 06 01 04 01 d6 79 02 04 02 04 81 f7 04 81 f4
00 f2 00 77 00 f6 5c 94 2f d1 77 30 22 14 54 18 08 30 94 56 8e e3 4d
13 19 33 bf df 0c 2f 20 0b cc 4e f1 64 e3 00 00 01 74 e5 ac 71 13 00
00 04 03 00 48 30 46 02 21 00 8c f5 48 52 ce 56 35 43 39 11 cf 10 cd
b9 1f 52 b3 36 39 22 3a d1 38 a4 1d ec a6 fe de 1f e9 0f 02 21 00 bc
a2 25 43 66 c1 9a 26 91 c4 7a 00 b5 b6 53 ab bd 44 c2 f8 ba ae f4 d2
da f2 52 7c e6 45 49 95 00 77 00 5c dc 43 92 fe e6 ab 45 44 b1 5e 9a
d4 56 e6 10 37 fb d5 fa 47 dc a1 73 94 b2 5e e6 f6 c7 0e ca 00 00 01
74 e5 ac 72 3c 00 00 04 03 00 48 30 46 02 21 00 a5 e0 90 6e 63 e9 1d
4f dd ef ff 03 52 b9 1e 50 89 60 07 56 4b 44 8a 38 28 f5 96 dc 6b 28
72 6d 02 21 00 fc 91 ea ed 02 16 88 66 05 4e e1 8a 2e 53 46 c4 cc 51
fe b3 fa 10 a9 1d 2e db f9 91 25 f8 6c e6 30 0d 06 09 2a 86 48 86 f7
0d 01 01 0b 05 00 03 82 01 01 00 14 04 3f a0 be d2 ee 3f a8 6e 3a 1f
78 8e a0 4c 35 53 0f 11 06 1f ff 60 a1 6d 0b 83 e9 d9 2a db b3 3f 9d
b3 d7 e0 59 4c 19 a8 e4 19 a5 0c a7 70 72 77 63 d5 fe 64 51 0a d2 7a
d6 50 a5 8a 92 38 ec cb 2f 0f 5a c0 64 58 4d 5c 06 b9 73 63 68 27 8b
89 34 dc 79 c7 1d 3a fd 34 5f 83 14 41 58 49 80 68 29 80 39 8a 86 72
69 cc 79 37 ce e3 97 f7 dc f3 95 88 ed 81 03 29 00 d2 a2 c7 ba ab d6
3a 8e ca 09 0b d9 fb 39 26 4b ff 03 d8 8e 2d 3f 6b 21 ca 8a 7d d8 5f
fb 94 ba 83 de 9c fc 15 8d 61 fa 67 2d b0 c7 db 3d 25 0a 41 4a 85 d3
7f 49 46 37 3c f4 b1 75 d0 52 f3 dd c7 66 f1 4b fd aa 00 ed bf e4 7e
ed 01 ec 7b e4 f6 46 fc 31 fd 72 fe 03 d2 f2 65 af 4d 7e e2 81 9b 7a
fd 30 3c f5 52 f4 05 34 a0 8a 3e 19 41 58 c8 a8 e0 51 71 84 09 15 ae
ec a5 77 75 fa 18 f7 d5 77 d5 31 cc c7 2d
]]></artwork></figure>

<section anchor="example-cbor-certificate-encoding-2" title="Example CBOR Certificate Encoding">

<t>The CBOR encoding of the first X.509 certificate is shown below in CBOR diagnostic format.</t>

<figure><artwork><![CDATA[
/This defines a CBOR Sequence (RFC 8742):/

1,
h'A6A55C870E39B40E',
[
 -4, "US",
 -6, "Arizona",
 -5, "Scottsdale",
 -8, "Starfield Technologies, Inc.",
 -9, "http://certs.starfieldtech.com/repository/",
 -1, "Starfield Secure Certificate Authority - G2"
],
1601581116,
1635881916,
[
  -9, "Domain Control Validated",
   1, "*.tools.ietf.org"
],
0,
h'B1E137E8EB82D689FADBF5C24B77F02C4ADE726E3E1360D1A8661EC4AD3D3260E5F099B5F47A7A485521EE0E3912F9CE0DCAF56961C704ED6E0F1D3B1E5088793A0E314116F1B1026468A5CDF54A0ACA99963508C37E275DD0A9CFF3E728AF37D8B67BDDF37EAE6E977FF7CA694ECCD006DF5D279B3B12E7E6FE086B527B82117C72B346EBC1E878B80FCBE1EBBD064458DC8350B2A0625BDC81B836E39E7C79B2A9538AE00BC94A2A13393113BD2CCFA870CF8C8D3D01A388AE1200361D1E242BDD79D8530126ED284FC98694834EC8E1142E85B3AFD46EDD6946AF41250E7AAD8BF292CA79D97B324FF777E8F9B44F235CD45C03AED8AB3ACA135F5D5D5DA1',
[
 -3, -2,
  7, [ 1, 2 ],
 -1, 5,
  4, "http://crl.starfieldtech.com/sfig2s1-242.crl",
  5, [ h'6086480186fd6e01071701', "http://certificates.starfieldtech.com/repository/", 1 ],
  8, [ 1, "http://ocsp.starfieldtech.com/", 2, "http://certificates.starfieldtech.com/repository/sfig2.crt" ],
  6, h'254581685026383D3B2D2CBECD6AD9B63DB36663',
  2, [ 2, "*.tools.ietf.org", 2, "tools.ietf.org" ],
  0, h'AD8AB41C0751D7928907B0B784622F36557A5F4D',
  9, [
       h'F65C942FD1773022145418083094568EE34D131933BFDF0C2F200BCC4EF164E3',
       1715,
       1,
       h'8CF54852CE5635433911CF10CDB91F52B33639223AD138A41DECA6FEDE1FE90FBCA2254366C19A2691C47A00B5B653ABBD44C2F8BAAEF4D2DAF2527CE6454995',
       h'5CDC4392FEE6AB4544B15E9AD456E61037FBD5FA47DCA17394B25EE6F6C70ECA',
       2012,
       1,
       h'A5E0906E63E91D4FDDEFFF0352B91E50896007564B448A3828F596DC6B28726DFC91EAED02168866054EE18A2E5346C4CC51FEB3FA10A91D2EDBF99125F86CE6'
     ] 
],  
23,
h'14043FA0BED2EE3FA86E3A1F788EA04C35530F11061FFF60A16D0B83E9D92ADBB33F9DB3D7E0594C19A8E419A50CA770727763D5FE64510AD27AD650A58A9238ECCB2F0F5AC064584D5C06B9736368278B8934DC79C71D3AFD345F831441584980682980398A867269CC7937CEE397F7DCF39588ED81032900D2A2C7BAABD63A8ECA090BD9FB39264BFF03D88E2D3F6B21CA8A7DD85FFB94BA83DE9CFC158D61FA672DB0C7DB3D250A414A85D37F4946373CF4B175D052F3DDC766F14BFDAA00EDBFE47EED01EC7BE4F646FC31FD72FE03D2F265AF4D7EE2819B7AFD303CF552F40534A08A3E194158C8A8E05171840915AEECA57775FA18F7D577D531CCC72D'
]]></artwork></figure>

<t>The size of the CBOR encoding (CBOR sequence) is 1242 bytes.</t>

</section>
</section>
</section>
<section numbered="no" anchor="acknowledgments" title="Acknowledgments">

<t>The authors want to thank Henk Birkholz, Carsten Bormann, Russ Housley, Olle Johansson, Benjamin Kaduk, Ilari Liusvaara, Laurence Lundblade, Thomas Peterson, Michael Richardson, Stefan Santesson, Jim Schaad, Fraser Tweedale, and Rene Struik for reviewing and commenting on intermediate versions of the draft.</t>

</section>


  </back>

<!-- ##markdown-source:
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
lvPHnTzyicQywpIgzcWQ7GYaoNuHfPUffzKrQ9/+xrwVsGaxSfFsCY6wOSdm
W1mIXlp/pRsteh5WFr8Wuwln33pG2oEZVfPhrR/3jLb1kDgjvZoRqrxv4/IO
b9BfmEXM5yGB9pFh2bVgwXrsbpO38fL9myu2xjQNSt62qGCq8PLh2O0g96PN
SJZvNAF0EK782iqQyJYF2C7KDzIAD7X67+26X/vfbOIVqOXNFvTDA1y8zpId
vfLsCXTytPXS85b2xwqkjDY6BFG8MHxX1voyTUnBLWi2cvsqq4ZK5/37N5Hv
ODaodtCDYXB18+rN5TV7+eomnNBg+LBcsitZeVfsFikOluZlsqPsHKrceA12
6B3qjgeaHz75x28Y6PiYLWLU1OU2vs3G7I932YpbYbiNNdo4LdaopdFkMwBq
n7fLIcsxGYjDrrPNXbwucXicBBr2tEI+H3Fcww3dL/Pbuy3LxoC6+3iFoJQZ
mg5AQ7qJ59u9R88uI/7+yLeOOFVlxM65U38DnkvI9UJjWbthvYJwWNv//si3
bhkRxBk3cnS8KVk2/3tXUrvCzNhHQlBLOuEKGJ/kLcgpSEC8XC+yDqwlSChw
m8f9uaoVMDKzXc1Ed2ieY3Wfl22lB4HDRWPQocT6+AB4NXuPyNIC3FLL1Kt1
trq+fr7HJtIAkwHiJYi3Mf+EP/8GKgMEZ8J09kT5SXta37jONljXfrlbzrLN
hKmao1kutlHnppJK7bprJyYsS9IyHiFUo+tvPc206ub8RWAT5r/8GlGypXew
eA044BOnoGXqC/gD/hibZuBWQnT0B9AkDEIFZUL/mKZoCvvmxU3nAW+OQj1h
UTbDWpj8gNp6QLzCgkBS1JGmjwxzFEWjKBxZ9shxR950v63s3OObLyat0fs8
/wl4jKMsqQsErQeah0Zwa8Ke4ELJWb592mm13s0mnYv4oxiTmTrR1IkVT2bu
xMom5myiwz99YiiTuTmZpZO5MtGyieX296DPJ6qFPejxBHoztYmZTVJjYsBn
BTtX1ImbTDToJz3QgzOBf/FsEicTI5uoxiR1JlYyUdyJo0+yFDt0s0k2n2hG
fw+GM0msiWNN1GSSGBPFmpjGxFYntj3JrImiTSxloiuTVJmYan8Pc3tiuxMt
niQaPN5p4l2/VHmAvN7kywzw/E7tNHp5dX3D/O/f/BsYmdcjmXnRfXunN2/7
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

-->

</rfc>

