<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.29 (Ruby 3.4.4) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-cose-tsa-tst-header-parameter-07" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.30.0 -->
  <front>
    <title abbrev="TST Header">COSE Header parameter for RFC 3161 Time-Stamp Tokens</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-cose-tsa-tst-header-parameter-07"/>
    <author initials="H." surname="Birkholz" fullname="Henk Birkholz">
      <organization abbrev="Fraunhofer SIT">Fraunhofer SIT</organization>
      <address>
        <postal>
          <street>Rheinstrasse 75</street>
          <city>Darmstadt</city>
          <code>64295</code>
          <country>Germany</country>
        </postal>
        <email>henk.birkholz@sit.fraunhofer.de</email>
      </address>
    </author>
    <author initials="T." surname="Fossati" fullname="Thomas Fossati">
      <organization>Linaro</organization>
      <address>
        <email>thomas.fossati@linaro.org</email>
      </address>
    </author>
    <author initials="M." surname="Riechert" fullname="Maik Riechert">
      <organization>Microsoft</organization>
      <address>
        <postal>
          <country>UK</country>
        </postal>
        <email>Maik.Riechert@microsoft.com</email>
      </address>
    </author>
    <date year="2025" month="August" day="12"/>
    <area>Security</area>
    <workgroup>COSE</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 54?>

<t>This document defines two CBOR Signing And Encrypted (COSE) header parameters for incorporating RFC 3161-based timestamping into COSE message structures (<tt>COSE_Sign</tt> and <tt>COSE_Sign1</tt>).
This enables the use of established RFC 3161 timestamping infrastructure in COSE-based protocols.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-ietf-cose-tsa-tst-header-parameter/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/ietf-scitt/draft-birkholz-cose-tsa-tst-header-parameter"/>.</t>
    </note>
  </front>
  <middle>
    <?line 59?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>RFC 3161 <xref target="RFC3161"/> provides a method to timestamp a message digest to prove that it was created before a given time.</t>
      <t>This document defines two new CBOR Object Signing and Encryption (COSE) <xref target="STD96"/> header parameters that carry the TimestampToken (TST) output of RFC 3161, thus allowing existing and widely deployed trust infrastructure to be used with COSE structures used for signing (<tt>COSE_Sign</tt> and <tt>COSE_Sign1</tt>).</t>
      <section anchor="use-cases">
        <name>Use Cases</name>
        <t>This section discusses two use cases, each representing one of the two modes of use defined in <xref target="modes"/>.
As the security characteristics of the two cases differ, care must be taken when choosing the appropriate mode for a given application.
See <xref target="sec-sema-confusion-avoidance"/> for a discussion on the security of the implementations.</t>
        <t>The primary use case is that of "long-term signatures", i.e., signatures that can still be verified even after the signing certificate has expired.
This can address situations where it is important to prevent subsequent denial by the signer or to verify signatures made using (very) short-term certificates.
To achieve this, the document signer acquires a fresh TST for the document's signature from a trusted TSA and concatenates it with the document.
Later, when a relying party verifies the signed document and its associated TST, they can be certain that the document was signed <em>at least</em> at the time specified by the TSA, and that the signing certificate was valid at the time the signature was made.</t>
        <t>This primary usage scenario motivates the "COSE then Timestamp" mode described in <xref target="sec-cose-then-timestamp"/>.</t>
        <t>The second use case is new.
It is the notarization of a signed document by registering it with a transparency service.
This is common practice for ensuring the accountability and auditability of issued documents, which are typically referred to as "statements" in this context.
It is also common practice to only register the signed parts of a statement (the "signed statement" portion) with a transparency service, in order to reduce the complexity of consistency checks at a later stage, as well as avoiding the need to retrieve or reconstruct unsigned parts.
Once the signed parts of a document have been registered in the append-only log at a transparency service, the log entry cannot be changed.
In order to avoid losing the TST during the registration process, the TST must be included in the signed statement.
To achieve this, the issuer acquires a TST from a TSA, includes it in the to-be-signed part of the statement so that the resulting signed statement includes the TST, and then registers the signed parts (rendering it a "transparent statement").
Later on, a relying party consuming the transparent statement including the TST can be certain that the statement was signed by the issuer <em>at least</em> at the time specified by the TSA.
If the issuer's signing key has expired (or been compromised), the authenticity of the statement can be ascertained by ensuring that no revocation information was made public before the time asserted by the issuer and registered at the transparency service.</t>
        <t>This new usage scenario motivates the "Timestamp then COSE" mode defined in <xref target="sec-timestamp-then-cose"/>.</t>
      </section>
      <section anchor="requirements-notation">
        <name>Requirements Notation</name>
        <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <?line -18?>

</section>
    </section>
    <section anchor="modes">
      <name>Modes of Use</name>
      <t>There are two different modes of composing COSE protection and timestamping, motivated by the usage scenarios discussed above.</t>
      <t>The diagrams in this section illustrate the processing flow of the specified modes.
For simplicity, only the <tt>COSE_Sign1</tt> processing is shown.
Similar diagrams for <tt>COSE_Sign</tt> can be derived by allowing multiple <tt>private-key</tt> parallelogram boxes and replacing the label <tt>[signature]</tt> with <tt>[signatures]</tt>.</t>
      <section anchor="sec-cose-then-timestamp">
        <name>COSE then Timestamp (CTT)</name>
        <t><xref target="fig-cose-then-timestamp"/> shows the case where the signature(s) field of the signed COSE object is digested and submitted to a TSA to be timestamped.
The obtained timestamp token is then added back as an unprotected header into the same COSE object.</t>
        <t>This mode is utilized when a record of the timing of the signature operation is desired.</t>
        <figure anchor="fig-cose-then-timestamp">
          <name>COSE, then Timestamp (CTT)</name>
          <artset>
            <artwork type="svg" align="center"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="448" width="616" viewBox="0 0 616 448" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,32 L 8,288" fill="none" stroke="black"/>
                <path d="M 48,224 L 48,336" fill="none" stroke="black"/>
                <path d="M 48,368 L 48,400" fill="none" stroke="black"/>
                <path d="M 72,112 L 72,184" fill="none" stroke="black"/>
                <path d="M 80,32 L 80,64" fill="none" stroke="black"/>
                <path d="M 96,400 L 96,432" fill="none" stroke="black"/>
                <path d="M 160,320 L 160,336" fill="none" stroke="black"/>
                <path d="M 160,368 L 160,392" fill="none" stroke="black"/>
                <path d="M 168,80 L 168,112" fill="none" stroke="black"/>
                <path d="M 200,112 L 200,144" fill="none" stroke="black"/>
                <path d="M 224,176 L 224,224" fill="none" stroke="black"/>
                <path d="M 232,240 L 232,272" fill="none" stroke="black"/>
                <path d="M 264,80 L 264,112" fill="none" stroke="black"/>
                <path d="M 264,368 L 264,392" fill="none" stroke="black"/>
                <path d="M 280,80 L 280,112" fill="none" stroke="black"/>
                <path d="M 296,240 L 296,272" fill="none" stroke="black"/>
                <path d="M 304,176 L 304,224" fill="none" stroke="black"/>
                <path d="M 312,112 L 312,128" fill="none" stroke="black"/>
                <path d="M 312,400 L 312,432" fill="none" stroke="black"/>
                <path d="M 320,304 L 320,384" fill="none" stroke="black"/>
                <path d="M 344,80 L 344,112" fill="none" stroke="black"/>
                <path d="M 352,336 L 352,368" fill="none" stroke="black"/>
                <path d="M 360,64 L 360,200" fill="none" stroke="black"/>
                <path d="M 360,216 L 360,248" fill="none" stroke="black"/>
                <path d="M 360,264 L 360,288" fill="none" stroke="black"/>
                <path d="M 376,384 L 376,400" fill="none" stroke="black"/>
                <path d="M 384,32 L 384,288" fill="none" stroke="black"/>
                <path d="M 400,336 L 400,368" fill="none" stroke="black"/>
                <path d="M 432,32 L 432,64" fill="none" stroke="black"/>
                <path d="M 432,304 L 432,344" fill="none" stroke="black"/>
                <path d="M 432,360 L 432,384" fill="none" stroke="black"/>
                <path d="M 456,112 L 456,160" fill="none" stroke="black"/>
                <path d="M 456,192 L 456,232" fill="none" stroke="black"/>
                <path d="M 464,288 L 464,336" fill="none" stroke="black"/>
                <path d="M 544,64 L 544,288" fill="none" stroke="black"/>
                <path d="M 8,32 L 80,32" fill="none" stroke="black"/>
                <path d="M 384,32 L 432,32" fill="none" stroke="black"/>
                <path d="M 8,64 L 360,64" fill="none" stroke="black"/>
                <path d="M 384,64 L 544,64" fill="none" stroke="black"/>
                <path d="M 40,80 L 152,80" fill="none" stroke="black"/>
                <path d="M 168,80 L 264,80" fill="none" stroke="black"/>
                <path d="M 280,80 L 344,80" fill="none" stroke="black"/>
                <path d="M 416,80 L 528,80" fill="none" stroke="black"/>
                <path d="M 24,112 L 136,112" fill="none" stroke="black"/>
                <path d="M 168,112 L 264,112" fill="none" stroke="black"/>
                <path d="M 280,112 L 344,112" fill="none" stroke="black"/>
                <path d="M 400,112 L 512,112" fill="none" stroke="black"/>
                <path d="M 72,144 L 296,144" fill="none" stroke="black"/>
                <path d="M 224,176 L 304,176" fill="none" stroke="black"/>
                <path d="M 40,192 L 104,192" fill="none" stroke="black"/>
                <path d="M 160,192 L 184,192" fill="none" stroke="black"/>
                <path d="M 120,208 L 136,208" fill="none" stroke="black"/>
                <path d="M 200,208 L 216,208" fill="none" stroke="black"/>
                <path d="M 304,208 L 376,208" fill="none" stroke="black"/>
                <path d="M 40,224 L 104,224" fill="none" stroke="black"/>
                <path d="M 160,224 L 184,224" fill="none" stroke="black"/>
                <path d="M 224,224 L 304,224" fill="none" stroke="black"/>
                <path d="M 232,240 L 296,240" fill="none" stroke="black"/>
                <path d="M 432,240 L 496,240" fill="none" stroke="black"/>
                <path d="M 296,256 L 376,256" fill="none" stroke="black"/>
                <path d="M 232,272 L 296,272" fill="none" stroke="black"/>
                <path d="M 432,272 L 496,272" fill="none" stroke="black"/>
                <path d="M 8,288 L 40,288" fill="none" stroke="black"/>
                <path d="M 56,288 L 360,288" fill="none" stroke="black"/>
                <path d="M 384,288 L 544,288" fill="none" stroke="black"/>
                <path d="M 320,304 L 432,304" fill="none" stroke="black"/>
                <path d="M 48,320 L 248,320" fill="none" stroke="black"/>
                <path d="M 352,336 L 400,336" fill="none" stroke="black"/>
                <path d="M 408,352 L 448,352" fill="none" stroke="black"/>
                <path d="M 352,368 L 400,368" fill="none" stroke="black"/>
                <path d="M 320,384 L 432,384" fill="none" stroke="black"/>
                <path d="M 96,400 L 312,400" fill="none" stroke="black"/>
                <path d="M 64,416 L 88,416" fill="none" stroke="black"/>
                <path d="M 320,416 L 360,416" fill="none" stroke="black"/>
                <path d="M 96,432 L 312,432" fill="none" stroke="black"/>
                <path d="M 24,112 L 40,80" fill="none" stroke="black"/>
                <path d="M 136,112 L 152,80" fill="none" stroke="black"/>
                <path d="M 400,112 L 416,80" fill="none" stroke="black"/>
                <path d="M 512,112 L 528,80" fill="none" stroke="black"/>
                <path d="M 296,144 C 304.83064,144 312,136.83064 312,128" fill="none" stroke="black"/>
                <path d="M 456,160 C 447.16936,160 440,167.16936 440,176" fill="none" stroke="black"/>
                <path d="M 456,160 C 464.83064,160 472,167.16936 472,176" fill="none" stroke="black"/>
                <path d="M 40,192 C 31.16936,192 24,199.16936 24,208" fill="none" stroke="black"/>
                <path d="M 104,192 C 112.83064,192 120,199.16936 120,208" fill="none" stroke="black"/>
                <path d="M 160,192 C 151.16936,192 144,199.16936 144,208" fill="none" stroke="black"/>
                <path d="M 184,192 C 192.83064,192 200,199.16936 200,208" fill="none" stroke="black"/>
                <path d="M 456,192 C 447.16936,192 440,184.83064 440,176" fill="none" stroke="black"/>
                <path d="M 456,192 C 464.83064,192 472,184.83064 472,176" fill="none" stroke="black"/>
                <path d="M 40,224 C 31.16936,224 24,216.83064 24,208" fill="none" stroke="black"/>
                <path d="M 104,224 C 112.83064,224 120,216.83064 120,208" fill="none" stroke="black"/>
                <path d="M 160,224 C 151.16936,224 144,216.83064 144,208" fill="none" stroke="black"/>
                <path d="M 184,224 C 192.83064,224 200,216.83064 200,208" fill="none" stroke="black"/>
                <path d="M 432,240 C 423.16936,240 416,247.16936 416,256" fill="none" stroke="black"/>
                <path d="M 496,240 C 504.83064,240 512,247.16936 512,256" fill="none" stroke="black"/>
                <path d="M 432,272 C 423.16936,272 416,264.83064 416,256" fill="none" stroke="black"/>
                <path d="M 496,272 C 504.83064,272 512,264.83064 512,256" fill="none" stroke="black"/>
                <path d="M 248,320 C 256.83064,320 264,327.16936 264,336" fill="none" stroke="black"/>
                <path d="M 448,352 C 456.83064,352 464,344.83064 464,336" fill="none" stroke="black"/>
                <path d="M 64,416 C 55.16936,416 48,408.83064 48,400" fill="none" stroke="black"/>
                <path d="M 360,416 C 368.83064,416 376,408.83064 376,400" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="464,232 452,226.4 452,237.6" fill="black" transform="rotate(90,456,232)"/>
                <polygon class="arrowhead" points="416,352 404,346.4 404,357.6" fill="black" transform="rotate(180,408,352)"/>
                <polygon class="arrowhead" points="384,256 372,250.4 372,261.6" fill="black" transform="rotate(0,376,256)"/>
                <polygon class="arrowhead" points="384,208 372,202.4 372,213.6" fill="black" transform="rotate(0,376,208)"/>
                <polygon class="arrowhead" points="328,416 316,410.4 316,421.6" fill="black" transform="rotate(180,320,416)"/>
                <polygon class="arrowhead" points="272,392 260,386.4 260,397.6" fill="black" transform="rotate(90,264,392)"/>
                <polygon class="arrowhead" points="224,208 212,202.4 212,213.6" fill="black" transform="rotate(0,216,208)"/>
                <polygon class="arrowhead" points="168,392 156,386.4 156,397.6" fill="black" transform="rotate(90,160,392)"/>
                <polygon class="arrowhead" points="144,208 132,202.4 132,213.6" fill="black" transform="rotate(0,136,208)"/>
                <polygon class="arrowhead" points="96,416 84,410.4 84,421.6" fill="black" transform="rotate(0,88,416)"/>
                <polygon class="arrowhead" points="80,184 68,178.4 68,189.6" fill="black" transform="rotate(90,72,184)"/>
                <g class="text">
                  <text x="44" y="52">Signer</text>
                  <text x="408" y="52">TSA</text>
                  <text x="88" y="100">private-key</text>
                  <text x="216" y="100">protected</text>
                  <text x="312" y="100">datum</text>
                  <text x="464" y="100">private-key</text>
                  <text x="456" y="180">L</text>
                  <text x="504" y="180">Clock</text>
                  <text x="264" y="196">Message</text>
                  <text x="72" y="212">Sign1</text>
                  <text x="172" y="212">hash</text>
                  <text x="264" y="212">Imprint</text>
                  <text x="264" y="260">nonce</text>
                  <text x="464" y="260">timestamp</text>
                  <text x="376" y="324">unprotected</text>
                  <text x="48" y="356">[protected]</text>
                  <text x="160" y="356">[payload]</text>
                  <text x="264" y="356">[signature]</text>
                  <text x="376" y="356">TST</text>
                  <text x="184" y="420">rfc3161-ctt</text>
                  <text x="252" y="420">COSE</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art" align="center"><![CDATA[
.--------.                                     .-----.
| Signer |                                     | TSA |                      
+--------+----------------------------------.  +-----+-------------.
|   .-------------. .-----------. .-------. |  |   .-------------. |
|  / private-key /  | protected | | datum | |  |  / private-key /  |
| '-----+-------'   '---+-------' '---+---' |  | '------+------'   |
|       |               |             |     |  |        |          |
|       +---------------+------------'      |  |        |          |
|       |                                   |  |       .+.         |
|       v                  .---------.      |  |      | L | Clock  |
|  .---------.    .----.   | Message |      |  |       '+'         |
| |   Sign1   +->+ hash +->+ Imprint +-------->|        |          |
|  '-+-------'    '----'   '---------'      |  |        v          |
|    |                      .-------.       |  |    .---------.    |
|    |                      | nonce +--------->|   | timestamp |   |
|    |                      '-------'       |  |    '---------'    |
'----|--------------------------------------'  '---------+---------'  
     |                                 .-------------.   |
     +-------------+-----------+       | unprotected |   |
     |             |            |      |   .-----.   |   |
[protected]    [payload]   [signature] |   | TST |<-----'
     |             |            |      |   '-----'   |
     |             v            v      '------+------'
     |     .-------+------------+-----.       |
      '--->+     rfc3161-ctt COSE     +<-----'
           '--------------------------'
]]></artwork>
          </artset>
        </figure>
        <t>In this context, timestamp tokens are similar to a countersignature made by the TSA.</t>
      </section>
      <section anchor="sec-timestamp-then-cose">
        <name>Timestamp then COSE (TTC)</name>
        <t><xref target="fig-timestamp-then-cose"/> shows the case where a datum is first digested and submitted to a TSA to be timestamped.</t>
        <t>This mode is used to wrap the signed document and its timestamp together in an immutable payload.</t>
        <t>A signed COSE message is then built as follows:</t>
        <ul spacing="normal">
          <li>
            <t>The obtained timestamp token is added to the protected headers,</t>
          </li>
          <li>
            <t>The original datum becomes the payload of the signed COSE message.</t>
          </li>
        </ul>
        <figure anchor="fig-timestamp-then-cose">
          <name>Timestamp, then COSE (TTC)</name>
          <artset>
            <artwork type="svg" align="center"><svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="464" width="616" viewBox="0 0 616 464" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,32 L 8,304" fill="none" stroke="black"/>
                <path d="M 40,112 L 40,232" fill="none" stroke="black"/>
                <path d="M 48,272 L 48,352" fill="none" stroke="black"/>
                <path d="M 48,384 L 48,416" fill="none" stroke="black"/>
                <path d="M 64,144 L 64,176" fill="none" stroke="black"/>
                <path d="M 80,32 L 80,64" fill="none" stroke="black"/>
                <path d="M 80,176 L 80,232" fill="none" stroke="black"/>
                <path d="M 96,416 L 96,448" fill="none" stroke="black"/>
                <path d="M 128,144 L 128,176" fill="none" stroke="black"/>
                <path d="M 160,336 L 160,352" fill="none" stroke="black"/>
                <path d="M 160,384 L 160,408" fill="none" stroke="black"/>
                <path d="M 208,208 L 208,288" fill="none" stroke="black"/>
                <path d="M 232,128 L 232,176" fill="none" stroke="black"/>
                <path d="M 240,80 L 240,112" fill="none" stroke="black"/>
                <path d="M 240,240 L 240,272" fill="none" stroke="black"/>
                <path d="M 264,384 L 264,408" fill="none" stroke="black"/>
                <path d="M 288,240 L 288,272" fill="none" stroke="black"/>
                <path d="M 304,80 L 304,112" fill="none" stroke="black"/>
                <path d="M 312,128 L 312,176" fill="none" stroke="black"/>
                <path d="M 312,416 L 312,448" fill="none" stroke="black"/>
                <path d="M 320,208 L 320,248" fill="none" stroke="black"/>
                <path d="M 320,264 L 320,288" fill="none" stroke="black"/>
                <path d="M 320,320 L 320,400" fill="none" stroke="black"/>
                <path d="M 352,352 L 352,384" fill="none" stroke="black"/>
                <path d="M 360,64 L 360,88" fill="none" stroke="black"/>
                <path d="M 360,104 L 360,152" fill="none" stroke="black"/>
                <path d="M 360,168 L 360,248" fill="none" stroke="black"/>
                <path d="M 360,264 L 360,304" fill="none" stroke="black"/>
                <path d="M 376,400 L 376,416" fill="none" stroke="black"/>
                <path d="M 384,32 L 384,304" fill="none" stroke="black"/>
                <path d="M 400,352 L 400,384" fill="none" stroke="black"/>
                <path d="M 432,32 L 432,64" fill="none" stroke="black"/>
                <path d="M 432,320 L 432,400" fill="none" stroke="black"/>
                <path d="M 456,112 L 456,160" fill="none" stroke="black"/>
                <path d="M 456,192 L 456,232" fill="none" stroke="black"/>
                <path d="M 544,64 L 544,304" fill="none" stroke="black"/>
                <path d="M 8,32 L 80,32" fill="none" stroke="black"/>
                <path d="M 384,32 L 432,32" fill="none" stroke="black"/>
                <path d="M 8,64 L 360,64" fill="none" stroke="black"/>
                <path d="M 384,64 L 544,64" fill="none" stroke="black"/>
                <path d="M 40,80 L 152,80" fill="none" stroke="black"/>
                <path d="M 240,80 L 304,80" fill="none" stroke="black"/>
                <path d="M 416,80 L 528,80" fill="none" stroke="black"/>
                <path d="M 304,96 L 376,96" fill="none" stroke="black"/>
                <path d="M 24,112 L 136,112" fill="none" stroke="black"/>
                <path d="M 240,112 L 304,112" fill="none" stroke="black"/>
                <path d="M 400,112 L 512,112" fill="none" stroke="black"/>
                <path d="M 232,128 L 312,128" fill="none" stroke="black"/>
                <path d="M 64,144 L 128,144" fill="none" stroke="black"/>
                <path d="M 168,144 L 192,144" fill="none" stroke="black"/>
                <path d="M 128,160 L 144,160" fill="none" stroke="black"/>
                <path d="M 208,160 L 224,160" fill="none" stroke="black"/>
                <path d="M 312,160 L 376,160" fill="none" stroke="black"/>
                <path d="M 64,176 L 128,176" fill="none" stroke="black"/>
                <path d="M 168,176 L 192,176" fill="none" stroke="black"/>
                <path d="M 232,176 L 312,176" fill="none" stroke="black"/>
                <path d="M 208,208 L 320,208" fill="none" stroke="black"/>
                <path d="M 40,240 L 88,240" fill="none" stroke="black"/>
                <path d="M 240,240 L 288,240" fill="none" stroke="black"/>
                <path d="M 432,240 L 496,240" fill="none" stroke="black"/>
                <path d="M 112,256 L 208,256" fill="none" stroke="black"/>
                <path d="M 296,256 L 384,256" fill="none" stroke="black"/>
                <path d="M 40,272 L 88,272" fill="none" stroke="black"/>
                <path d="M 240,272 L 288,272" fill="none" stroke="black"/>
                <path d="M 432,272 L 496,272" fill="none" stroke="black"/>
                <path d="M 208,288 L 320,288" fill="none" stroke="black"/>
                <path d="M 8,304 L 40,304" fill="none" stroke="black"/>
                <path d="M 56,304 L 360,304" fill="none" stroke="black"/>
                <path d="M 384,304 L 544,304" fill="none" stroke="black"/>
                <path d="M 320,320 L 432,320" fill="none" stroke="black"/>
                <path d="M 48,336 L 248,336" fill="none" stroke="black"/>
                <path d="M 352,352 L 400,352" fill="none" stroke="black"/>
                <path d="M 352,384 L 400,384" fill="none" stroke="black"/>
                <path d="M 320,400 L 432,400" fill="none" stroke="black"/>
                <path d="M 96,416 L 312,416" fill="none" stroke="black"/>
                <path d="M 64,432 L 88,432" fill="none" stroke="black"/>
                <path d="M 320,432 L 360,432" fill="none" stroke="black"/>
                <path d="M 96,448 L 312,448" fill="none" stroke="black"/>
                <path d="M 24,112 L 40,80" fill="none" stroke="black"/>
                <path d="M 136,112 L 152,80" fill="none" stroke="black"/>
                <path d="M 400,112 L 416,80" fill="none" stroke="black"/>
                <path d="M 512,112 L 528,80" fill="none" stroke="black"/>
                <path d="M 168,144 C 159.16936,144 152,151.16936 152,160" fill="none" stroke="black"/>
                <path d="M 192,144 C 200.83064,144 208,151.16936 208,160" fill="none" stroke="black"/>
                <path d="M 456,160 C 447.16936,160 440,167.16936 440,176" fill="none" stroke="black"/>
                <path d="M 456,160 C 464.83064,160 472,167.16936 472,176" fill="none" stroke="black"/>
                <path d="M 168,176 C 159.16936,176 152,168.83064 152,160" fill="none" stroke="black"/>
                <path d="M 192,176 C 200.83064,176 208,168.83064 208,160" fill="none" stroke="black"/>
                <path d="M 456,192 C 447.16936,192 440,184.83064 440,176" fill="none" stroke="black"/>
                <path d="M 456,192 C 464.83064,192 472,184.83064 472,176" fill="none" stroke="black"/>
                <path d="M 40,240 C 31.16936,240 24,247.16936 24,256" fill="none" stroke="black"/>
                <path d="M 88,240 C 96.83064,240 104,247.16936 104,256" fill="none" stroke="black"/>
                <path d="M 432,240 C 423.16936,240 416,247.16936 416,256" fill="none" stroke="black"/>
                <path d="M 496,240 C 504.83064,240 512,247.16936 512,256" fill="none" stroke="black"/>
                <path d="M 40,272 C 31.16936,272 24,264.83064 24,256" fill="none" stroke="black"/>
                <path d="M 88,272 C 96.83064,272 104,264.83064 104,256" fill="none" stroke="black"/>
                <path d="M 432,272 C 423.16936,272 416,264.83064 416,256" fill="none" stroke="black"/>
                <path d="M 496,272 C 504.83064,272 512,264.83064 512,256" fill="none" stroke="black"/>
                <path d="M 248,336 C 256.83064,336 264,343.16936 264,352" fill="none" stroke="black"/>
                <path d="M 64,432 C 55.16936,432 48,424.83064 48,416" fill="none" stroke="black"/>
                <path d="M 360,432 C 368.83064,432 376,424.83064 376,416" fill="none" stroke="black"/>
                <polygon class="arrowhead" points="464,232 452,226.4 452,237.6" fill="black" transform="rotate(90,456,232)"/>
                <polygon class="arrowhead" points="384,160 372,154.4 372,165.6" fill="black" transform="rotate(0,376,160)"/>
                <polygon class="arrowhead" points="384,96 372,90.4 372,101.6" fill="black" transform="rotate(0,376,96)"/>
                <polygon class="arrowhead" points="328,432 316,426.4 316,437.6" fill="black" transform="rotate(180,320,432)"/>
                <polygon class="arrowhead" points="304,256 292,250.4 292,261.6" fill="black" transform="rotate(180,296,256)"/>
                <polygon class="arrowhead" points="272,408 260,402.4 260,413.6" fill="black" transform="rotate(90,264,408)"/>
                <polygon class="arrowhead" points="232,160 220,154.4 220,165.6" fill="black" transform="rotate(0,224,160)"/>
                <polygon class="arrowhead" points="168,408 156,402.4 156,413.6" fill="black" transform="rotate(90,160,408)"/>
                <polygon class="arrowhead" points="152,160 140,154.4 140,165.6" fill="black" transform="rotate(0,144,160)"/>
                <polygon class="arrowhead" points="120,256 108,250.4 108,261.6" fill="black" transform="rotate(180,112,256)"/>
                <polygon class="arrowhead" points="96,432 84,426.4 84,437.6" fill="black" transform="rotate(0,88,432)"/>
                <polygon class="arrowhead" points="88,232 76,226.4 76,237.6" fill="black" transform="rotate(90,80,232)"/>
                <polygon class="arrowhead" points="48,232 36,226.4 36,237.6" fill="black" transform="rotate(90,40,232)"/>
                <g class="text">
                  <text x="44" y="52">Signer</text>
                  <text x="408" y="52">TSA</text>
                  <text x="88" y="100">private-key</text>
                  <text x="272" y="100">nonce</text>
                  <text x="464" y="100">private-key</text>
                  <text x="272" y="148">Message</text>
                  <text x="96" y="164">datum</text>
                  <text x="180" y="164">hash</text>
                  <text x="272" y="164">Imprint</text>
                  <text x="456" y="180">L</text>
                  <text x="504" y="180">Clock</text>
                  <text x="264" y="228">protected</text>
                  <text x="64" y="260">Sign1</text>
                  <text x="264" y="260">TST</text>
                  <text x="464" y="260">timestamp</text>
                  <text x="376" y="340">unprotected</text>
                  <text x="48" y="372">[protected]</text>
                  <text x="160" y="372">[payload]</text>
                  <text x="264" y="372">[signature]</text>
                  <text x="376" y="372">...</text>
                  <text x="184" y="436">rfc3161-ttc</text>
                  <text x="252" y="436">COSE</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art" align="center"><![CDATA[
.--------.                                     .-----.
| Signer |                                     | TSA |                      
+--------+----------------------------------.  +-----+-------------.
|   .-------------.          .-------.      |  |   .-------------. |
|  / private-key /           | nonce +-------->+  / private-key /  |
| '-+-----------'            '-------'      |  | '------+------'   |
|   |                       .---------.     |  |        |          |
|   |  .-------.   .----.   | Message |     |  |        |          |
|   |  + datum +->+ hash +->+ Imprint +------->+       .+.         |
|   |  '-+-----'   '----'   '---------'     |  |      | L | Clock  |
|   |    |                                  |  |       '+'         |
|   |    |               .-------------.    |  |        |          |
|   v    v               |  protected  |    |  |        v          |
|  .-------.             |   .-----.   |    |  |    .---------.    |
| |  Sign1  +<-----------+   | TST |<----------+   | timestamp |   |
|  '-+-----'             |   '-----'   |    |  |    '---------'    |
|    |                   '-------------'    |  |                   |
'----|--------------------------------------'  '-------------------'  
     |                                 .-------------.    
     +-------------+-----------+       | unprotected |    
     |             |            |      |   .-----.   |    
[protected]    [payload]   [signature] |   | ... |   |
     |             |            |      |   '-----'   |
     |             v            v      '------+------'
     |     .-------+------------+-----.       |
      '--->+     rfc3161-ttc COSE     +<-----'
           '--------------------------'
]]></artwork>
          </artset>
        </figure>
      </section>
    </section>
    <section anchor="sec-tst-hdr">
      <name>RFC 3161 Time-Stamp Tokens COSE Header Parameters</name>
      <t>The two modes described in <xref target="sec-timestamp-then-cose"/> and <xref target="sec-cose-then-timestamp"/> use different inputs into the timestamping machinery, and consequently create different kinds of binding between COSE and TST.
To clearly separate their semantics two different COSE header parameters are defined as described in the following subsections.</t>
      <section anchor="sec-tst-hdr-ctt">
        <name><tt>3161-ctt</tt></name>
        <t>The <tt>3161-ctt</tt> COSE <em>unprotected</em> header parameter <bcp14>MUST</bcp14> be used for the mode described in <xref target="sec-cose-then-timestamp"/>.</t>
        <t>The <tt>3161-ctt</tt> unprotected header parameter contains a DER-encoded RFC3161 <tt>TimeStampToken</tt> wrapped in a CBOR byte string (Major type 2).</t>
        <t>The <tt>MessageImprint</tt> sent in the request to the TSA <bcp14>MUST</bcp14> be:</t>
        <ul spacing="normal">
          <li>
            <t>the hash of the CBOR-encoded signature field of the <tt>COSE_Sign1</tt> message, or</t>
          </li>
          <li>
            <t>the hash of the CBOR-encoded signatures field of the <tt>COSE_Sign</tt> message.</t>
          </li>
        </ul>
        <t>In either case, to minimize dependencies, the hash algorithm <bcp14>SHOULD</bcp14> be the same as the algorithm used for signing the COSE message.
This may not be possible if the timestamp token has been obtained outside the processing context in which the COSE object is assembled.</t>
        <t>Refer to <xref target="ctt-sign1"/> and <xref target="ctt-sign"/> for concrete examples of <tt>MessageImprint</tt> computation.</t>
        <section anchor="ctt-sign1">
          <name><tt>MessageImprint</tt> Computation for <tt>COSE_Sign1</tt></name>
          <t>The following illustrates how <tt>MessageImprint</tt> is computed using a sample <tt>COSE_Sign1</tt> message.</t>
          <t>Given the <tt>COSE_Sign1</tt> message</t>
          <sourcecode type="cbor-diag"><![CDATA[
18(
  [
    / protected h'a10126' / << {
        / alg / 1:-7 / ECDSA 256 /
      } >>,
    / unprotected / {
      / kid / 4:'11'
    },
    / payload / 'This is the content.',
    / signature / h'8eb33e4ca31d1c465ab05aac34cc6b23d58fef5c083106c4
d25a91aef0b0117e2af9a291aa32e14ab834dc56ed2a223444547e01f11d3b0916e5
a4c345cacb36'
  ]
)
]]></sourcecode>
          <t>the <tt>bstr</tt>-wrapped <tt>signature</tt></t>
          <sourcecode type="cbor-pretty"><![CDATA[
58 40                                     # bytes(64)
   8eb33e4ca31d1c465ab05aac34cc6b23
   d58fef5c083106c4d25a91aef0b0117e
   2af9a291aa32e14ab834dc56ed2a2234
   44547e01f11d3b0916e5a4c345cacb36
]]></sourcecode>
          <t>(including the heading bytes <tt>0x5840</tt>) is used as input for computing the <tt>MessageImprint</tt>.</t>
          <t>When using SHA-256, the resulting <tt>MessageImprint</tt> is</t>
          <sourcecode type="asn1"><![CDATA[
SEQUENCE {
  SEQUENCE {
    OBJECT IDENTIFIER sha-256 (2 16 840 1 101 3 4 2 1)
    NULL
    }
  OCTET STRING
    44 C2 41 9D 13 1D 53 D5 55 84 B5 DD 33 B7 88 C2
    4E 55 1C 6D 44 B1 AF C8 B2 B8 5E 69 54 76 3B 4E
  }
]]></sourcecode>
        </section>
        <section anchor="ctt-sign">
          <name><tt>MessageImprint</tt> Computation for <tt>COSE_Sign</tt></name>
          <t>The following illustrates how <tt>MessageImprint</tt> is computed using a sample <tt>COSE_Sign</tt> message.</t>
          <t>Given the <tt>COSE_Sign</tt> message</t>
          <sourcecode type="cbor-diag"><![CDATA[
98(
  [
    / protected / h'',
    / unprotected / {},
    / payload / 'This is the content.',
    / signatures / [
      [
        / protected h'a10126' / << {
            / alg / 1:-7 / ECDSA 256 /
          } >>,
        / unprotected / {
          / kid / 4:'11'
        },
        / signature / h'e2aeafd40d69d19dfe6e52077c5d7ff4e408282cbefb
5d06cbf414af2e19d982ac45ac98b8544c908b4507de1e90b717c3d34816fe926a2b
98f53afd2fa0f30a'
      ]
    ]
  ]
)
]]></sourcecode>
          <t>the <tt>signatures</tt> array</t>
          <sourcecode type="cbor-pretty"><![CDATA[
81                                        # array(1)
   83                                     # array(3)
      43                                  # bytes(3)
         a10126
      a1                                  # map(1)
         04                               # unsigned(4)
         42                               # bytes(2)
            3131                          # "11"
      58 40                               # bytes(64)
         e2aeafd40d69d19dfe6e52077c5d7ff4
         e408282cbefb5d06cbf414af2e19d982
         ac45ac98b8544c908b4507de1e90b717
         c3d34816fe926a2b98f53afd2fa0f30a
]]></sourcecode>
          <t>is used as input for computing the <tt>MessageImprint</tt>.</t>
          <t>When using SHA-256, the resulting <tt>MessageImprint</tt> is</t>
          <sourcecode type="asn1"><![CDATA[
SEQUENCE {
  SEQUENCE {
    OBJECT IDENTIFIER sha-256 (2 16 840 1 101 3 4 2 1)
    NULL
    }
  OCTET STRING
    80 3F AD A2 91 2D 6B 7A 83 3A 27 BD 96 1C C0 5B
    C1 CC 16 47 59 B1 C5 6F 7A A7 71 E4 E2 15 26 F7
  }
]]></sourcecode>
        </section>
      </section>
      <section anchor="sec-tst-hdr-ttc">
        <name><tt>3161-ttc</tt></name>
        <t>The <tt>3161-ttc</tt> COSE <em>protected</em> header parameter <bcp14>MUST</bcp14> be used for the mode described in <xref target="sec-timestamp-then-cose"/>.</t>
        <t>The <tt>3161-ttc</tt> protected header parameter contains a DER-encoded RFC3161 <tt>TimeStampToken</tt> wrapped in a CBOR byte string (Major type 2).</t>
        <t>The <tt>MessageImprint</tt> sent to the TSA (<xref section="2.4" sectionFormat="of" target="RFC3161"/>) <bcp14>MUST</bcp14> be the hash of the payload of the COSE signed object.
This does not include the <tt>bstr</tt>-wrapping, only the payload bytes.
(For an example, see <xref target="ex-ttc"/>.)</t>
        <t>To minimize dependencies, the hash algorithm used for signing the COSE message <bcp14>SHOULD</bcp14> be the same as the algorithm used in the RFC3161 MessageImprint.
However, this may not be possible if the timestamp requester and the COSE message signer are different entities.</t>
      </section>
    </section>
    <section anchor="timestamp-processing">
      <name>Timestamp Processing</name>
      <t>RFC 3161 timestamp tokens use CMS as signature envelope format.
<xref target="STD70"/> provides the details about signature verification, and <xref target="RFC3161"/> provides the details specific to timestamp token validation.
The payload of the signed timestamp token is the TSTInfo structure defined in <xref target="RFC3161"/>, which contains the MessageImprint that was sent to the TSA.
The hash algorithm is contained in the MessageImprint structure, together with the hash itself.</t>
      <t>As part of the signature verification, the receiver <bcp14>MUST</bcp14> make sure that the MessageImprint in the embedded timestamp token matches a hash of either the payload, signature, or signature fields, depending on the mode of use and type of COSE structure.</t>
      <t><xref section="B" sectionFormat="of" target="RFC3161"/> provides an example that illustrates how timestamp tokens can be used to verify signatures of a timestamped message when utilizing X.509 certificates.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Please review the Security Considerations section in <xref target="RFC3161"/>; these considerations apply to this document as well.</t>
      <t>Also review the Security Considerations section in <xref target="STD96"/>.
These considerations apply to this document as well, particularly with regard to the need for implementations to protect private key material.
Additionally, solutions based on the COSE header parameters defined in this document must be able to report compromised keys promptly.</t>
      <t>The following scenario assumes an attacker can manipulate the clocks on the COSE signer and its relying parties, but not the TSA.
It is also assumed that the TSA is a trusted third party, so the attacker cannot impersonate the TSA and create valid timestamp tokens.
In such a setting, any tampering with the COSE signer's clock does not have an impact because, once the timestamp is obtained from the TSA, it becomes the only reliable source of time.
However, in both CTT and TTC mode, a denial of service can occur if the attacker can adjust the relying party's clock so that the CMS validation fails.
This could disrupt the timestamp validation.</t>
      <t>In CTT mode, an attacker could manipulate the unprotected header by removing or replacing the timestamp.
To avoid that, the signed COSE object should be integrity protected during transit and at rest.</t>
      <t>In TTC mode, the TSA is given an opaque identifier (a cryptographic hash value) for the payload.
While this means that the content of the payload is not directly revealed, to prevent comparison with known payloads or disclosure of identical payloads being used over time, the payload would need to be armored, e.g., with a nonce that is shared with the recipient of the header parameter but not the TSA.
Such a mechanism can be employed inside the ones described in this specification, but is out of scope for this document.</t>
      <t>The resolution, accuracy, and precision of the TSA clock, as well as the expected latency introduced by round trips to and from the TSA must be taken into account when implementing solutions based on the COSE header parameters defined in this document.</t>
      <section anchor="sec-sema-confusion-avoidance">
        <name>Avoiding Semantic Confusion</name>
        <t>CTT and TTC modes have different semantic meanings.
An implementation must ensure that the contents of the CTT and TCC headers are interpreted according to their specific semantics.
In particular, symmetric to the signature and assembly mechanics, each mode has its own separate verification algorithm.</t>
        <t>Implementers <bcp14>MUST</bcp14> clearly differentiate between RFC 3161 TSA timestamps proving the existence of payload data at an earlier point in time (TTC) and timestamps explicitly providing evidence of the existence of the cryptographic signature (CTT).
Failure to clearly distinguish between these timestamp semantics can result in vulnerabilities, such as incorrectly accepting signatures created after key revocation based on older payload-only timestamps.
Validators must not interpret protected-header payload timestamps as proof of signature
creation time and should rely exclusively on RFC 3161 TSA timestamps explicitly covering signature data for determining signature validity timing.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>IANA is requested to add the COSE header parameters defined in <xref target="tbl-new-hdrs"/> to the "COSE Header Parameters" registry <xref target="IANA.cose_header-parameters"/>.</t>
      <table align="left" anchor="tbl-new-hdrs">
        <name>New COSE Header Parameters</name>
        <thead>
          <tr>
            <th align="left">Name</th>
            <th align="left">Label</th>
            <th align="left">Value Type</th>
            <th align="left">Value Registry</th>
            <th align="left">Description</th>
            <th align="left">Reference</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">
              <tt>3161-ttc</tt></td>
            <td align="left">TBD1</td>
            <td align="left">bstr</td>
            <td align="left">-</td>
            <td align="left">RFC 3161 timestamp token: Timestamp then COSE</td>
            <td align="left">RFCthis, <xref target="sec-tst-hdr-ttc"/></td>
          </tr>
          <tr>
            <td align="left">
              <tt>3161-ctt</tt></td>
            <td align="left">TBD2</td>
            <td align="left">bstr</td>
            <td align="left">-</td>
            <td align="left">RFC 3161 timestamp token: COSE then Timestamp</td>
            <td align="left">RFCthis, <xref target="sec-tst-hdr-ctt"/></td>
          </tr>
        </tbody>
      </table>
    </section>
  </middle>
  <back>
    <references anchor="sec-normative-references">
      <name>Normative References</name>
      <reference anchor="STD70">
        <front>
          <title>Cryptographic Message Syntax (CMS)</title>
          <author fullname="R. Housley" initials="R." surname="Housley"/>
          <date month="September" year="2009"/>
          <abstract>
            <t>This document describes the Cryptographic Message Syntax (CMS). This syntax is used to digitally sign, digest, authenticate, or encrypt arbitrary message content. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="70"/>
        <seriesInfo name="RFC" value="5652"/>
        <seriesInfo name="DOI" value="10.17487/RFC5652"/>
      </reference>
      <reference anchor="RFC3161">
        <front>
          <title>Internet X.509 Public Key Infrastructure Time-Stamp Protocol (TSP)</title>
          <author fullname="C. Adams" initials="C." surname="Adams"/>
          <author fullname="P. Cain" initials="P." surname="Cain"/>
          <author fullname="D. Pinkas" initials="D." surname="Pinkas"/>
          <author fullname="R. Zuccherato" initials="R." surname="Zuccherato"/>
          <date month="August" year="2001"/>
          <abstract>
            <t>This document describes the format of a request sent to a Time Stamping Authority (TSA) and of the response that is returned. It also establishes several security-relevant requirements for TSA operation, with regards to processing requests to generate responses. [STANDARDS-TRACK]</t>
          </abstract>
        </front>
        <seriesInfo name="RFC" value="3161"/>
        <seriesInfo name="DOI" value="10.17487/RFC3161"/>
      </reference>
      <reference anchor="STD96">
        <front>
          <title>CBOR Object Signing and Encryption (COSE): Structures and Process</title>
          <author fullname="J. Schaad" initials="J." surname="Schaad"/>
          <date month="August" year="2022"/>
          <abstract>
            <t>Concise Binary Object Representation (CBOR) is a data format designed for small code size and small message size. There is a need to be able to define basic security services for this data format. This document defines the CBOR Object Signing and Encryption (COSE) protocol. This specification describes how to create and process signatures, message authentication codes, and encryption using CBOR for serialization. This specification additionally describes how to represent cryptographic keys using CBOR.</t>
            <t>This document, along with RFC 9053, obsoletes RFC 8152.</t>
          </abstract>
        </front>
        <seriesInfo name="STD" value="96"/>
        <seriesInfo name="RFC" value="9052"/>
        <seriesInfo name="DOI" value="10.17487/RFC9052"/>
      </reference>
      <reference anchor="RFC2119">
        <front>
          <title>Key words for use in RFCs to Indicate Requirement Levels</title>
          <author fullname="S. Bradner" initials="S." surname="Bradner"/>
          <date month="March" year="1997"/>
          <abstract>
            <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="2119"/>
        <seriesInfo name="DOI" value="10.17487/RFC2119"/>
      </reference>
      <reference anchor="RFC8174">
        <front>
          <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
          <author fullname="B. Leiba" initials="B." surname="Leiba"/>
          <date month="May" year="2017"/>
          <abstract>
            <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
          </abstract>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="8174"/>
        <seriesInfo name="DOI" value="10.17487/RFC8174"/>
      </reference>
      <reference anchor="IANA.cose_header-parameters" target="https://www.iana.org/assignments/cose">
        <front>
          <title>COSE Header Parameters</title>
          <author>
            <organization>IANA</organization>
          </author>
        </front>
      </reference>
    </references>
    <?line 405?>

<section anchor="examples">
      <name>Examples</name>
      <t><cref anchor="rfced">RFC Editor, please note that the following examples use fictitious numbers for TBD1 and TBD2. Once the assignments have been made by the IANA, they will need to be recomputed.</cref></t>
      <section anchor="ex-ttc">
        <name>TTC</name>
        <t>The payload</t>
        <artwork><![CDATA[
This is the content.
]]></artwork>
        <t>is hashed using SHA-256 to create the <tt>TimeStampReq</tt> object</t>
        <sourcecode type="asn1"><![CDATA[
SEQUENCE {
  INTEGER 1
  SEQUENCE {
    SEQUENCE {
      OBJECT IDENTIFIER sha-256 (2 16 840 1 101 3 4 2 1)
      NULL
      }
    OCTET STRING
      09 E6 38 D4 AA 95 FD 72 71 86 62 03 59 53 03 BC
      E2 32 F4 62 A9 4D 38 E3 93 77 3C D3 AA E3 F6 B0
    }
  BOOLEAN TRUE
  }
]]></sourcecode>
        <t>which is sent to the Time Stamping Authority.</t>
        <t>A <tt>TimeStampResp</tt> is returned which contains the <tt>TimeStampToken</tt></t>
        <sourcecode type="asn1"><![CDATA[
SEQUENCE {
  OBJECT IDENTIFIER signedData (1 2 840 113549 1 7 2)
  [0] {
    SEQUENCE {
      INTEGER 3
      SET {
        SEQUENCE {
          OBJECT IDENTIFIER sha-512 (2 16 840 1 101 3 4 2 3)
          NULL
          }
        }
      SEQUENCE {
        OBJECT IDENTIFIER tSTInfo (1 2 840 113549 1 9 16 1 4)
        [0] {
          OCTET STRING, encapsulates {
            SEQUENCE {
              INTEGER 1
              OBJECT IDENTIFIER '1 2 3 4 1'
              SEQUENCE {
                SEQUENCE {
                  OBJECT IDENTIFIER sha-256 (2 16 840 1 101 3 4 2 1)
                  NULL
                  }
                OCTET STRING
                  09 E6 38 D4 AA 95 FD 72 71 86 62 03 59 53 03 BC
                  E2 32 F4 62 A9 4D 38 E3 93 77 3C D3 AA E3 F6 B0
                }
              INTEGER 85048992
              GeneralizedTime 18/01/2025 11:20:06 GMT
              BOOLEAN TRUE
[...]
]]></sourcecode>
        <t>The contents of the <tt>TimeStampToken</tt> are <tt>bstr</tt>-wrapped and added to the protected headers bucket which is then signed alongside the original payload to obtain the <tt>COSE_Sign1</tt> object</t>
        <sourcecode type="cbor-diag"><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

18([
        <<{1: -7, 258: h'\
3082154906092a864886f70d010702a082153a30821536020103310f300d06096086\
48016503040203050030820184060b2a864886f70d0109100104a08201730482016f\
3082016b02010106042a0304013031300d06096086480165030402010500042009e6\
38d4aa95fd7271866203595303bce232f462a94d38e393773cd3aae3f6b002040511\
bea0180f32303235303131383131323030365a0101ffa0820111a482010d30820109\
3111300f060355040a13084672656520545341310c300a060355040b130354534131\
763074060355040d136d54686973206365727469666963617465206469676974616c\
6c79207369676e7320646f63756d656e747320616e642074696d65207374616d7020\
7265717565737473206d616465207573696e672074686520667265657473612e6f72\
67206f6e6c696e65207365727669636573311830160603550403130f7777772e6672\
65657473612e6f72673122302006092a864886f70d0109011613627573696c657a61\
7340676d61696c2e636f6d3112301006035504071309577565727a62757267310b30\
09060355040613024445310f300d0603550408130642617965726ea0821008308208\
01308205e9a003020102020900c1e986160da8e982300d06092a864886f70d01010d\
05003081953111300f060355040a130846726565205453413110300e060355040b13\
07526f6f74204341311830160603550403130f7777772e667265657473612e6f7267\
3122302006092a864886f70d0109011613627573696c657a617340676d61696c2e63\
6f6d3112301006035504071309577565727a62757267310f300d0603550408130642\
617965726e310b3009060355040613024445301e170d313630333133303135373339\
5a170d3236303331313031353733395a308201093111300f060355040a1308467265\
6520545341310c300a060355040b130354534131763074060355040d136d54686973\
206365727469666963617465206469676974616c6c79207369676e7320646f63756d\
656e747320616e642074696d65207374616d70207265717565737473206d61646520\
7573696e672074686520667265657473612e6f7267206f6e6c696e65207365727669\
636573311830160603550403130f7777772e667265657473612e6f72673122302006\
092a864886f70d0109011613627573696c657a617340676d61696c2e636f6d311230\
1006035504071309577565727a62757267310b3009060355040613024445310f300d\
0603550408130642617965726e30820222300d06092a864886f70d01010105000382\
020f003082020a0282020100b591048c4e486f34e9dc08627fc2375162236984b82c\
b130beff517cfc38f84bce5c65a874dab2621ae0bce7e33563e0ede934fd5f882315\
9f07848808227460c1ed88261706f4281334359dfbb81bd1353fc179610af1a8c8c8\
65dc00ea23b3a89be6bd03ba85a9ec827d60565905e22d6a584ed1380ae150280cee\
397e98a012f380464007862443bc077cb95f421af31712d9683cdb6dffbaf3c8ba5b\
a566ae523d459d6177346d4d840e27886b7c01c5b890d78a2e27bba8dd2f9a2812e1\
57d62f921c65962548069dcdb7d06de181de0e9570d66f87220ce28b628ab55906f3\
ee0c210f7051e8f4858af8b9a92d09e46af2d9cba5bfcfad168cdf604491a4b06603\
b114caf7031f065e7eeefa53c575f3490c059d2e32ddc76ac4d4c4c710683b97fd1b\
e591bc61055186d88f9a0391b307b6f91ed954daa36f9acd6a1e14aa2e4adf17464b\
54db18dbb6ffe30080246547370436ce4e77bae5de6fe0f3f9d6e7ffbeb461e794e9\
2fb0951f8aae61a412cce9b21074635c8be327ae1a0f6b4a646eb0f8463bc63bf845\
530435d19e802511ec9f66c3496952d8becb69b0aa4d4c41f60515fe7dcbb89319cd\
da59ba6aea4be3ceae718e6fcb6ccd7db9fc50bb15b12f3665b0aa307289c2e6dd4b\
111ce48ba2d9efdb5a6b9a506069334fb34f6fc7ae330f0b34208aac80df3266fdd9\
0465876ba2cb898d9505315b6e7b0203010001a38201db308201d730090603551d13\
04023000301d0603551d0e041604146e760b7b4e4f9ce160ca6d2ce927a2a294b377\
37301f0603551d23041830168014fa550d8c346651434cf7e7b3a76c95af7ae6a497\
300b0603551d0f0404030206c030160603551d250101ff040c300a06082b06010505\
070308306306082b0601050507010104573055302a06082b06010505073002861e68\
7474703a2f2f7777772e667265657473612e6f72672f7473612e637274302706082b\
06010505073001861b687474703a2f2f7777772e667265657473612e6f72673a3235\
363030370603551d1f0430302e302ca02aa0288626687474703a2f2f7777772e6672\
65657473612e6f72672f63726c2f726f6f745f63612e63726c3081c60603551d2004\
81be3081bb3081b80601003081b2303306082b060105050702011627687474703a2f\
2f7777772e667265657473612e6f72672f667265657473615f6370732e68746d6c30\
3206082b060105050702011626687474703a2f2f7777772e667265657473612e6f72\
672f667265657473615f6370732e706466304706082b06010505070202303b1a3946\
72656554534120747275737465642074696d657374616d70696e6720536f66747761\
72652061732061205365727669636520285361615329300d06092a864886f70d0101\
0d05000382020100a5c944e2c6fac0a14d930a7fd0a0b172b41fc1483c3e957c68a2\
bcd9b9764f1a950161fd72472d41a5eed277786203b5422240fb3a26cde176087b6f\
b1011df4cc19e2571aa4a051109665e94c46f50bd2adee6ac4137e251b25a39dabda\
451515d8ff9e07209e8ec20b7874f7e1a0ede7c00937fe84a334f8b3265ced2d8ed9\
df61396583677feb382c1ee3b23e6ea5f05df30de7b9f89005d25266f612f39c8b4f\
6daba6d7bfbac19632b90637329f52a6f066a10e43eaa81f849a6c5fe3fe8b5ea232\
75f687f2052e502ea6c30762a668cce07871dd8e97e315bba929e25589977a0a312c\
e96c5106b1437c779f2b361b182888f3ee8a234374fa063e956192627f7c43107396\
5d1260928eba009e803429ae324cf96f042354f37bca5afddc79f79346ab388bfc79\
f01dc9861254ea6cc129941076b83d20556f3be51326837f2876f7833b370e7c3d41\
0523827d4f53400c72218d75229ff10c6f8893a9a3a1c0c42bb4c898c13df41c7f65\
73b4fc56515971a610a7b0d2857c8225a9fb204eaceca2e8971aa1af87886a2ae3c7\
2fe0a0aae842980a77bef16b92115458090d982b5946603764e75a0ad3d11454b998\
6f678b9ab6afe8497033ae3abfd4eb43b7bc9dee68815949e6481582a82e785277f2\
282107efe390200e0508acb8ea82ea2505276f3c9da2a3d3b4ad38bbf8842bda36fc\
2448291f558dc02dd1e0308207ff308205e7a003020102020900c1e986160da8e980\
300d06092a864886f70d01010d05003081953111300f060355040a13084672656520\
5453413110300e060355040b1307526f6f74204341311830160603550403130f7777\
772e667265657473612e6f72673122302006092a864886f70d010901161362757369\
6c657a617340676d61696c2e636f6d3112301006035504071309577565727a627572\
67310f300d0603550408130642617965726e310b3009060355040613024445301e17\
0d3136303331333031353231335a170d3431303330373031353231335a3081953111\
300f060355040a130846726565205453413110300e060355040b1307526f6f742043\
41311830160603550403130f7777772e667265657473612e6f72673122302006092a\
864886f70d0109011613627573696c657a617340676d61696c2e636f6d3112301006\
035504071309577565727a62757267310f300d0603550408130642617965726e310b\
300906035504061302444530820222300d06092a864886f70d01010105000382020f\
003082020a0282020100b6028e0e3032f11110d964cda94b9d0278e1942ae913aaa5\
9907cda69793995bd9ac7e33bad9fe3704da1c01a98d21afe3f591a59d7067705167\
998f5016722e0ab462b21f439171d2cfcc4593f3735af794a5ab311f6c010c7898de\
33d75c4510ee76f4bd1d1498cf17d303f06a5dd9f796cc6ca9b657a56fe3ea4fefbe\
7ce6b6a18d3e35a30cee5ff170d1cf39a333d3fda8964d22db685b29e561be890f0a\
a845873b2e84ab26ab839ffe8fade9d23bb31e61d273cc9b880649185fabecfa0534\
600aba901b614e2e854582dea2226fc19cd7df52bed50d8777cd9988c053a3fc7dc3\
287a068a4ff12b713cd9803666e955385456ff38f80298cf6b93856e9224774a66cf\
1cdd11c2f8efd85203d7458b25664b13ed639cded4ff8113d6cc5353d2729473c3c3\
07157c722aa5b5dd0bfb2d6c38b1b93749c881ec60026d08951b3824bd71bacbce47\
3aebd636f0b918b4a2c8ff4694f07457af2d6f1cf82554d1770fd79ff5d314dcd104\
cddcabc94138056dfcf017e7eb8572fd52f70144f188da05f5823f58dd06297e7387\
bed2d772c13da8266601045fe412dd70986c0c987ba7344b9037387516d258e7885b\
51f8968b7f2601213bc4cb4c85f8ff0b84af6a988337cdfb81868f7ecf31dca6716d\
7ec2dd802c1672629e5c0052cb357dd29aafc43f615b3b1ff9d4e1ce08c71c73e1fe\
bb7dc56a33621329e9ed6c230203010001a382024e3082024a300c0603551d130405\
30030101ff300e0603551d0f0101ff0404030201c6301d0603551d0e04160414fa55\
0d8c346651434cf7e7b3a76c95af7ae6a4973081ca0603551d230481c23081bf8014\
fa550d8c346651434cf7e7b3a76c95af7ae6a497a1819ba481983081953111300f06\
0355040a130846726565205453413110300e060355040b1307526f6f742043413118\
30160603550403130f7777772e667265657473612e6f72673122302006092a864886\
f70d0109011613627573696c657a617340676d61696c2e636f6d3112301006035504\
071309577565727a62757267310f300d0603550408130642617965726e310b300906\
0355040613024445820900c1e986160da8e98030330603551d1f042c302a3028a026\
a0248622687474703a2f2f7777772e667265657473612e6f72672f726f6f745f6361\
2e63726c3081cf0603551d200481c73081c43081c1060a2b0601040181f224010130\
81b2303306082b060105050702011627687474703a2f2f7777772e66726565747361\
2e6f72672f667265657473615f6370732e68746d6c303206082b0601050507020116\
26687474703a2f2f7777772e667265657473612e6f72672f667265657473615f6370\
732e706466304706082b06010505070202303b1a3946726565545341207472757374\
65642074696d657374616d70696e6720536f66747761726520617320612053657276\
69636520285361615329303706082b06010505070101042b3029302706082b060105\
05073001861b687474703a2f2f7777772e667265657473612e6f72673a3235363030\
0d06092a864886f70d01010d0500038202010068af7ebf938562ef4ceb3b580be2fa\
f6cc35a26772962f3d95901fa5630c87d09198984ce8a06a33f8a9c282ed9f1cb11a\
c6c23e17108ee4efce6fb294de95c133262255725522ca61971d4a3b7f78250dfb8d\
4aeec0fb1959b164100520b9c10e64c62662e4ad4d0abae2298fc948fc4e99e8d9e6\
b8fdbe4404121ec7c1422eacb2c9d7328e07396e60b4f3bb803ad4a555c80fefb53f\
85e7764a0a9fb4afc399f4cd2f5fbf587105c6081cf3d05337b6bb7d1b010b749f48\
88c912f3696ba1b6902d77b7dfc046c04a0cc1ec4f8d185e2da55dfb7bc2a2036c62\
19246a4f99ddbb6f1f829398f3b803dc0ad90dcb59bef4c27c77404b99043b782718\
67991152c399f12cbfc4c625adc096355ae44e342100ec517a502e2f06f940b8d435\
99bbc1154f8ae761a0b0d555fb4a1391d4f3420af8dbf12f2d7ddb9d77dce1537804\
074af175e4f2d6d55b34b5d6f7dcbdd31730af56480d4c0cff143f9e83bc151866d0\
ba0f0bbdc47fe27864176bbd6c1ab85df325edf777889bc4471bf3fa73e56cc591e8\
b160cda7b0786a1ec04ac3b24fa2e28d5d19e5e48004d5e166a83c82ec6fd54fb385\
ebaf7133a85b52de46db5244e1c34ae8d36e712f9fce0d493d7d3edd586c6198e3ec\
3e6e96346f417ac9f221e0aff33a8f6a0b1ef4c023630b76adaa8d91433825ecc41c\
49a5b98b181c7da30e997ab954c73c2cd805afda993182038a308203860201013081\
a33081953111300f060355040a130846726565205453413110300e060355040b1307\
526f6f74204341311830160603550403130f7777772e667265657473612e6f726731\
22302006092a864886f70d0109011613627573696c657a617340676d61696c2e636f\
6d3112301006035504071309577565727a62757267310f300d060355040813064261\
7965726e310b3009060355040613024445020900c1e986160da8e982300d06096086\
480165030402030500a081b8301a06092a864886f70d010903310d060b2a864886f7\
0d0109100104301c06092a864886f70d010905310f170d3235303131383131323030\
365a302b060b2a864886f70d010910020c311c301a301830160414916da3d860ecca\
82e34bc59d1793e7e968875f14304f06092a864886f70d01090431420440d26c8a6d\
b748885b0cd9c4ff636cb5d3c7f81308ea3c0bd8f76ab2112b21c1ec762c8f0318ca\
477472ab2bfde5c9d25129a2b144734b1766c094d66d3aa24d19300d06092a864886\
f70d0101010500048202009808366698a20227b3a03017317dbcd3813c7ec8f29693\
9ef20082bcdb95e8ed0495f299c2c6484b2246ab81092c73d039b0e33647a9241df1\
35fd44b9860c26cc784463d292e79ce39d04c0cffb0f2fb7cc9220ca3cbe43b088e4\
355dd7fc38a22ef9ad80629b15cd82e861b57df8797a3968f760b0175151aa3dd2c3\
7aaf8361571441295157c063af57ee66031870d80f30696da7b130a0d07e8753d517\
3e773713e28eec29b6999e17e65de2b20a0d2a4c33bf0734d7463da3c67da1c76353\
028761f0f2eaab1525bc489525d6ed34b34ae00a7ce34ceefaa6df08026047e470e3\
09d0507832b65dad717287dcef8c250d7d7ddf677dd3a6c267c2d29c86e04653ce84\
f7376c2434e2e85ec0eeaf2031a5f8cb4025f13b67c3ed4062af46000dbb1e3b5699\
d14cb309c8cdabb736651b76957cb4392f9e2452a88233936e39bd23dae37eeee3de\
4733a1ce2545324deb8a2203eed8264e3d657e60479cc08fa93916c266dcd1027daa\
1afd091bde8bea923d92b6e17615eb9f83210c4f2b6fcecb918cfa638a75679aa3df\
b5f959edc50923ff70c0d45a647a714f01ea48d803f68bb5081c97a57dcbd00c15d9\
44ba3a89e126bec18b9f49c0225cab0c9e9a9b24de43e5e767b7512a525d909a52e5\
cb2d79f5221d4f056e60dafb1dcc6e46f6dd1bb553d8caa37ee6add7c1dc70796766\
                                      d126e88b37d69fec915aa3dd65'}>>,
        {4: '11'},
        'This is the content.',
        h'\
1b512caa05005b7a2329c1b92cc5447de3a387acc2537ec579d26d38c5be8740ed85\
        b8d3888630cc080b5eaaad12c029cde6117599565e63ca8485e927958682'
    ])
]]></sourcecode>
      </section>
      <section anchor="ctt">
        <name>CTT</name>
        <t>Starting with the following <tt>COSE_Sign1</tt> object</t>
        <sourcecode type="cbor-diag"><![CDATA[
18(
  [
    / protected h'a10126' / << {
        / alg / 1:-7 / ECDSA 256 /
      } >>,
    / unprotected / {
      / kid / 4:'11'
    },
    / payload / 'This is the content.',
    / signature / h'8eb33e4ca31d1c465ab05aac34cc6b23d58fef5c083106c4d
25a91aef0b0117e2af9a291aa32e14ab834dc56ed2a223444547e01f11d3b0916e5a4
c345cacb36'
  ]
)
]]></sourcecode>
        <t>The CBOR-encoded signature field is hashed using SHA-256 to create the following <tt>TimeStampReq</tt> object</t>
        <sourcecode type="asn1"><![CDATA[
SEQUENCE {
  INTEGER 1
  SEQUENCE {
    SEQUENCE {
      OBJECT IDENTIFIER sha-256 (2 16 840 1 101 3 4 2 1)
      NULL
      }
    OCTET STRING
      44 C2 41 9D 13 1D 53 D5 55 84 B5 DD 33 B7 88 C2
      4E 55 1C 6D 44 B1 AF C8 B2 B8 5E 69 54 76 3B 4E
    }
  BOOLEAN TRUE
  }
]]></sourcecode>
        <t>which is sent to the Time Stamping Authority.</t>
        <t>A <tt>TimeStampResp</tt> is returned which contains the following <tt>TimeStampToken</tt></t>
        <sourcecode type="asn1"><![CDATA[
SEQUENCE {
  OBJECT IDENTIFIER signedData (1 2 840 113549 1 7 2)
  [0] {
    SEQUENCE {
      INTEGER 3
      SET {
        SEQUENCE {
          OBJECT IDENTIFIER sha-512 (2 16 840 1 101 3 4 2 3)
          NULL
          }
        }
      SEQUENCE {
        OBJECT IDENTIFIER tSTInfo (1 2 840 113549 1 9 16 1 4)
        [0] {
          OCTET STRING, encapsulates {
            SEQUENCE {
              INTEGER 1
              OBJECT IDENTIFIER '1 2 3 4 1'
              SEQUENCE {
                SEQUENCE {
                  OBJECT IDENTIFIER sha-256 (2 16 840 1 101 3 4 2 1)
                  NULL
                  }
                OCTET STRING
                  44 C2 41 9D 13 1D 53 D5 55 84 B5 DD 33 B7 88 C2
                  4E 55 1C 6D 44 B1 AF C8 B2 B8 5E 69 54 76 3B 4E
                }
              INTEGER 84895155
              GeneralizedTime 17/01/2025 18:29:13 GMT
              BOOLEAN TRUE
[...]
]]></sourcecode>
        <t>The contents of the <tt>TimeStampToken</tt> are <tt>bstr</tt>-wrapped and added to the unprotected headers bucket in the original <tt>COSE_Sign1</tt> object to obtain the following</t>
        <sourcecode type="cbor-diag"><![CDATA[
=============== NOTE: '\' line wrapping per RFC 8792 ================

18(
  [
    / protected h'a10126' / << {
        / alg / 1:-7 / ECDSA 256 /
      } >>,
    / unprotected / {
      / 3161-ctt / 259 : h'\
3082154906092a864886f70d010702a082153a30821536020103310f300d06096086\
48016503040203050030820184060b2a864886f70d0109100104a08201730482016f\
3082016b02010106042a0304013031300d06096086480165030402010500042044c2\
419d131d53d55584b5dd33b788c24e551c6d44b1afc8b2b85e6954763b4e0204050f\
65b3180f32303235303131373138323931335a0101ffa0820111a482010d30820109\
3111300f060355040a13084672656520545341310c300a060355040b130354534131\
763074060355040d136d54686973206365727469666963617465206469676974616c\
6c79207369676e7320646f63756d656e747320616e642074696d65207374616d7020\
7265717565737473206d616465207573696e672074686520667265657473612e6f72\
67206f6e6c696e65207365727669636573311830160603550403130f7777772e6672\
65657473612e6f72673122302006092a864886f70d0109011613627573696c657a61\
7340676d61696c2e636f6d3112301006035504071309577565727a62757267310b30\
09060355040613024445310f300d0603550408130642617965726ea0821008308208\
01308205e9a003020102020900c1e986160da8e982300d06092a864886f70d01010d\
05003081953111300f060355040a130846726565205453413110300e060355040b13\
07526f6f74204341311830160603550403130f7777772e667265657473612e6f7267\
3122302006092a864886f70d0109011613627573696c657a617340676d61696c2e63\
6f6d3112301006035504071309577565727a62757267310f300d0603550408130642\
617965726e310b3009060355040613024445301e170d313630333133303135373339\
5a170d3236303331313031353733395a308201093111300f060355040a1308467265\
6520545341310c300a060355040b130354534131763074060355040d136d54686973\
206365727469666963617465206469676974616c6c79207369676e7320646f63756d\
656e747320616e642074696d65207374616d70207265717565737473206d61646520\
7573696e672074686520667265657473612e6f7267206f6e6c696e65207365727669\
636573311830160603550403130f7777772e667265657473612e6f72673122302006\
092a864886f70d0109011613627573696c657a617340676d61696c2e636f6d311230\
1006035504071309577565727a62757267310b3009060355040613024445310f300d\
0603550408130642617965726e30820222300d06092a864886f70d01010105000382\
020f003082020a0282020100b591048c4e486f34e9dc08627fc2375162236984b82c\
b130beff517cfc38f84bce5c65a874dab2621ae0bce7e33563e0ede934fd5f882315\
9f07848808227460c1ed88261706f4281334359dfbb81bd1353fc179610af1a8c8c8\
65dc00ea23b3a89be6bd03ba85a9ec827d60565905e22d6a584ed1380ae150280cee\
397e98a012f380464007862443bc077cb95f421af31712d9683cdb6dffbaf3c8ba5b\
a566ae523d459d6177346d4d840e27886b7c01c5b890d78a2e27bba8dd2f9a2812e1\
57d62f921c65962548069dcdb7d06de181de0e9570d66f87220ce28b628ab55906f3\
ee0c210f7051e8f4858af8b9a92d09e46af2d9cba5bfcfad168cdf604491a4b06603\
b114caf7031f065e7eeefa53c575f3490c059d2e32ddc76ac4d4c4c710683b97fd1b\
e591bc61055186d88f9a0391b307b6f91ed954daa36f9acd6a1e14aa2e4adf17464b\
54db18dbb6ffe30080246547370436ce4e77bae5de6fe0f3f9d6e7ffbeb461e794e9\
2fb0951f8aae61a412cce9b21074635c8be327ae1a0f6b4a646eb0f8463bc63bf845\
530435d19e802511ec9f66c3496952d8becb69b0aa4d4c41f60515fe7dcbb89319cd\
da59ba6aea4be3ceae718e6fcb6ccd7db9fc50bb15b12f3665b0aa307289c2e6dd4b\
111ce48ba2d9efdb5a6b9a506069334fb34f6fc7ae330f0b34208aac80df3266fdd9\
0465876ba2cb898d9505315b6e7b0203010001a38201db308201d730090603551d13\
04023000301d0603551d0e041604146e760b7b4e4f9ce160ca6d2ce927a2a294b377\
37301f0603551d23041830168014fa550d8c346651434cf7e7b3a76c95af7ae6a497\
300b0603551d0f0404030206c030160603551d250101ff040c300a06082b06010505\
070308306306082b0601050507010104573055302a06082b06010505073002861e68\
7474703a2f2f7777772e667265657473612e6f72672f7473612e637274302706082b\
06010505073001861b687474703a2f2f7777772e667265657473612e6f72673a3235\
363030370603551d1f0430302e302ca02aa0288626687474703a2f2f7777772e6672\
65657473612e6f72672f63726c2f726f6f745f63612e63726c3081c60603551d2004\
81be3081bb3081b80601003081b2303306082b060105050702011627687474703a2f\
2f7777772e667265657473612e6f72672f667265657473615f6370732e68746d6c30\
3206082b060105050702011626687474703a2f2f7777772e667265657473612e6f72\
672f667265657473615f6370732e706466304706082b06010505070202303b1a3946\
72656554534120747275737465642074696d657374616d70696e6720536f66747761\
72652061732061205365727669636520285361615329300d06092a864886f70d0101\
0d05000382020100a5c944e2c6fac0a14d930a7fd0a0b172b41fc1483c3e957c68a2\
bcd9b9764f1a950161fd72472d41a5eed277786203b5422240fb3a26cde176087b6f\
b1011df4cc19e2571aa4a051109665e94c46f50bd2adee6ac4137e251b25a39dabda\
451515d8ff9e07209e8ec20b7874f7e1a0ede7c00937fe84a334f8b3265ced2d8ed9\
df61396583677feb382c1ee3b23e6ea5f05df30de7b9f89005d25266f612f39c8b4f\
6daba6d7bfbac19632b90637329f52a6f066a10e43eaa81f849a6c5fe3fe8b5ea232\
75f687f2052e502ea6c30762a668cce07871dd8e97e315bba929e25589977a0a312c\
e96c5106b1437c779f2b361b182888f3ee8a234374fa063e956192627f7c43107396\
5d1260928eba009e803429ae324cf96f042354f37bca5afddc79f79346ab388bfc79\
f01dc9861254ea6cc129941076b83d20556f3be51326837f2876f7833b370e7c3d41\
0523827d4f53400c72218d75229ff10c6f8893a9a3a1c0c42bb4c898c13df41c7f65\
73b4fc56515971a610a7b0d2857c8225a9fb204eaceca2e8971aa1af87886a2ae3c7\
2fe0a0aae842980a77bef16b92115458090d982b5946603764e75a0ad3d11454b998\
6f678b9ab6afe8497033ae3abfd4eb43b7bc9dee68815949e6481582a82e785277f2\
282107efe390200e0508acb8ea82ea2505276f3c9da2a3d3b4ad38bbf8842bda36fc\
2448291f558dc02dd1e0308207ff308205e7a003020102020900c1e986160da8e980\
300d06092a864886f70d01010d05003081953111300f060355040a13084672656520\
5453413110300e060355040b1307526f6f74204341311830160603550403130f7777\
772e667265657473612e6f72673122302006092a864886f70d010901161362757369\
6c657a617340676d61696c2e636f6d3112301006035504071309577565727a627572\
67310f300d0603550408130642617965726e310b3009060355040613024445301e17\
0d3136303331333031353231335a170d3431303330373031353231335a3081953111\
300f060355040a130846726565205453413110300e060355040b1307526f6f742043\
41311830160603550403130f7777772e667265657473612e6f72673122302006092a\
864886f70d0109011613627573696c657a617340676d61696c2e636f6d3112301006\
035504071309577565727a62757267310f300d0603550408130642617965726e310b\
300906035504061302444530820222300d06092a864886f70d01010105000382020f\
003082020a0282020100b6028e0e3032f11110d964cda94b9d0278e1942ae913aaa5\
9907cda69793995bd9ac7e33bad9fe3704da1c01a98d21afe3f591a59d7067705167\
998f5016722e0ab462b21f439171d2cfcc4593f3735af794a5ab311f6c010c7898de\
33d75c4510ee76f4bd1d1498cf17d303f06a5dd9f796cc6ca9b657a56fe3ea4fefbe\
7ce6b6a18d3e35a30cee5ff170d1cf39a333d3fda8964d22db685b29e561be890f0a\
a845873b2e84ab26ab839ffe8fade9d23bb31e61d273cc9b880649185fabecfa0534\
600aba901b614e2e854582dea2226fc19cd7df52bed50d8777cd9988c053a3fc7dc3\
287a068a4ff12b713cd9803666e955385456ff38f80298cf6b93856e9224774a66cf\
1cdd11c2f8efd85203d7458b25664b13ed639cded4ff8113d6cc5353d2729473c3c3\
07157c722aa5b5dd0bfb2d6c38b1b93749c881ec60026d08951b3824bd71bacbce47\
3aebd636f0b918b4a2c8ff4694f07457af2d6f1cf82554d1770fd79ff5d314dcd104\
cddcabc94138056dfcf017e7eb8572fd52f70144f188da05f5823f58dd06297e7387\
bed2d772c13da8266601045fe412dd70986c0c987ba7344b9037387516d258e7885b\
51f8968b7f2601213bc4cb4c85f8ff0b84af6a988337cdfb81868f7ecf31dca6716d\
7ec2dd802c1672629e5c0052cb357dd29aafc43f615b3b1ff9d4e1ce08c71c73e1fe\
bb7dc56a33621329e9ed6c230203010001a382024e3082024a300c0603551d130405\
30030101ff300e0603551d0f0101ff0404030201c6301d0603551d0e04160414fa55\
0d8c346651434cf7e7b3a76c95af7ae6a4973081ca0603551d230481c23081bf8014\
fa550d8c346651434cf7e7b3a76c95af7ae6a497a1819ba481983081953111300f06\
0355040a130846726565205453413110300e060355040b1307526f6f742043413118\
30160603550403130f7777772e667265657473612e6f72673122302006092a864886\
f70d0109011613627573696c657a617340676d61696c2e636f6d3112301006035504\
071309577565727a62757267310f300d0603550408130642617965726e310b300906\
0355040613024445820900c1e986160da8e98030330603551d1f042c302a3028a026\
a0248622687474703a2f2f7777772e667265657473612e6f72672f726f6f745f6361\
2e63726c3081cf0603551d200481c73081c43081c1060a2b0601040181f224010130\
81b2303306082b060105050702011627687474703a2f2f7777772e66726565747361\
2e6f72672f667265657473615f6370732e68746d6c303206082b0601050507020116\
26687474703a2f2f7777772e667265657473612e6f72672f667265657473615f6370\
732e706466304706082b06010505070202303b1a3946726565545341207472757374\
65642074696d657374616d70696e6720536f66747761726520617320612053657276\
69636520285361615329303706082b06010505070101042b3029302706082b060105\
05073001861b687474703a2f2f7777772e667265657473612e6f72673a3235363030\
0d06092a864886f70d01010d0500038202010068af7ebf938562ef4ceb3b580be2fa\
f6cc35a26772962f3d95901fa5630c87d09198984ce8a06a33f8a9c282ed9f1cb11a\
c6c23e17108ee4efce6fb294de95c133262255725522ca61971d4a3b7f78250dfb8d\
4aeec0fb1959b164100520b9c10e64c62662e4ad4d0abae2298fc948fc4e99e8d9e6\
b8fdbe4404121ec7c1422eacb2c9d7328e07396e60b4f3bb803ad4a555c80fefb53f\
85e7764a0a9fb4afc399f4cd2f5fbf587105c6081cf3d05337b6bb7d1b010b749f48\
88c912f3696ba1b6902d77b7dfc046c04a0cc1ec4f8d185e2da55dfb7bc2a2036c62\
19246a4f99ddbb6f1f829398f3b803dc0ad90dcb59bef4c27c77404b99043b782718\
67991152c399f12cbfc4c625adc096355ae44e342100ec517a502e2f06f940b8d435\
99bbc1154f8ae761a0b0d555fb4a1391d4f3420af8dbf12f2d7ddb9d77dce1537804\
074af175e4f2d6d55b34b5d6f7dcbdd31730af56480d4c0cff143f9e83bc151866d0\
ba0f0bbdc47fe27864176bbd6c1ab85df325edf777889bc4471bf3fa73e56cc591e8\
b160cda7b0786a1ec04ac3b24fa2e28d5d19e5e48004d5e166a83c82ec6fd54fb385\
ebaf7133a85b52de46db5244e1c34ae8d36e712f9fce0d493d7d3edd586c6198e3ec\
3e6e96346f417ac9f221e0aff33a8f6a0b1ef4c023630b76adaa8d91433825ecc41c\
49a5b98b181c7da30e997ab954c73c2cd805afda993182038a308203860201013081\
a33081953111300f060355040a130846726565205453413110300e060355040b1307\
526f6f74204341311830160603550403130f7777772e667265657473612e6f726731\
22302006092a864886f70d0109011613627573696c657a617340676d61696c2e636f\
6d3112301006035504071309577565727a62757267310f300d060355040813064261\
7965726e310b3009060355040613024445020900c1e986160da8e982300d06096086\
480165030402030500a081b8301a06092a864886f70d010903310d060b2a864886f7\
0d0109100104301c06092a864886f70d010905310f170d3235303131373138323931\
335a302b060b2a864886f70d010910020c311c301a301830160414916da3d860ecca\
82e34bc59d1793e7e968875f14304f06092a864886f70d010904314204405f98e6ad\
02a79c3209de2048fbf258d852df9f13c9ebef826154ef27fe4325a96d868c99e083\
8791ac37faf028647f94abab446f3a93a9a0f51431a6e3d36c34300d06092a864886\
f70d010101050004820200243d5af44af116c62c6053076eb6283a2b73beafa5411e\
aee73dcc273e1b6327ab917c75bdec1305d2680e899a160e2b42a05f330bdf44c54f\
1796ba538a3abfdab04cef3bba22ea4767bd30925c42c0ab91b5929b7a9aa99f3876\
f5c8b1da1a98c7cb1f959394f9d707fa7ec04fb6943059cc98d04653b6f8e967a1eb\
29269caca57c9fdd5294b54d595b58541a9ec14b5a0e9484573c5568b4943a7df4ff\
c101cd807d66f3a869b363fdd87be9854a8260c0877acccf3b42618b8948191ff36e\
999842c2569c44f189d8ab9f587bb54222be7d20926b3312882352efe5d50f46647a\
149b4e0c59cbaaddd5ba0ce22715e4ee09c82bee3a83dc86d85192912ecfb005ce0e\
b28a6549f92aa8ae9beb63eb8fadabe7eca3be5ccc6b2cb4e55d803fc76682bf82b1\
de06e97ed9a272ded198f0370cea6f59d2c1927f2c0667308fedf41ac565d3333dec\
5065daddd2c89d75261f52bfad5f87b48140f39ff12ef0c4d571085f72d94eb0a9d8\
d65bf5ece1cad4e65452d8abe083f60ff977f247df79c263bbd32bdc7c5aae9da84d\
a7d1a93b4193bd1f287a0a32c06c015d66cdf36b29d2b289c1484e720982190eef9c\
2cc58c4fac9bd99089d1ad6960c5d06c992c4936e5b22495743dfbd1fda6ed2475b3\
d445fd8dde40bb09e624c77d5d97faf1a88b44dda8ce7735f2482f822acf68027e6b\
                                         ca81532e740cb0824ca501504b',
      / kid / 4:'11'
    },
    / payload / 'This is the content.',
    / signature / h'8eb33e4ca31d1c465ab05aac34cc6b23d58fef5c083106c4
d25a91aef0b0117e2af9a291aa32e14ab834dc56ed2a223444547e01f11d3b0916e5
a4c345cacb36'
  ]
)
]]></sourcecode>
      </section>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The editors would like to thank
Alexey Melnikov,
Carl Wallace,
Carsten Bormann,
Deb Cooley,
Éric Vyncke,
Francesca Palombini,
Leonard Rosenthol,
Linda Dunbar,
Michael B. Jones,
Michael Prorock,
Mike Bishop,
Mohamed Boucadair,
Orie Steele,
Roman Danyliw,
Shuping Peng,
Stefan Santesson,
Steve Lasker,
and
Yingzhen Qu
for their reviews and comments.</t>
    </section>
    <section anchor="contributors" numbered="false" toc="include" removeInRFC="false">
      <name>Contributors</name>
      <contact initials="C." surname="Bormann" fullname="Carsten Bormann">
        <organization/>
        <address>
          <email>cabo@tzi.org</email>
        </address>
      </contact>
      <t>Carsten contributed part of the security considerations.</t>
      <contact initials="O." surname="Steele" fullname="Orie Steele">
        <organization/>
        <address>
          <email>orie@transmute.industries</email>
        </address>
      </contact>
      <t>Orie contributed an improved version of the diagrams.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
irjcrmqE9aUgmga8DwTrgDogLv5dIvGs/0wrD10eZIGdfaJeh4g7GGbMI2ZX
7epiGKdvYgo6+td//VemdfP+7Wh80P6M2V1+4u3j0aewegP5P93psU9Bjzvu
HX3dydC/2P0DMb/eci9J1Em3unW89d2YBNl2+ydq5Bs28AS8w52rSfuE/xw0
exlesa23o5G9NQn30NXe2vvu3V5sZG9t9HR7kKTV3KYmb777NLg8+HzVyKZe
197vsbs1cpeZHjQy/nplUatG3t98ZjUL481GPrFn+P94MoMHxUY2bh53rz6x
5+3K5afNRtje13trktD1gKdBM999TbzvIr56Cq4Hj1wp7LudOtlbm984h91M
71Ts+41Gdmp1PBzloJGN8d/eyCcQTUrNVtMdhvNpAFifPtvI3vpoekk2xvlp
FC58OrjTz97w+a+Hl0ebyt7xs+m7JEH4YN3Wh+++7kcwxOFPq0e3+db6mxVq
jNt3n0Y/9m39RLf8eKWvJzMd3gwiY7w5pDqfvo2D/TWd7vWa3irr+y1vNlBl
+Nh4i3baN73BjVatfBc1N69s2CWxi0UMVEHda4NZ63nrxFPoGX08ZF/tiOug
dSB183cHegLd/e4BaBio9wNqPmwX/y4scu1vZRIPQBieri/c7G8G5ybwxqal
TCHEh+Uk2hXrgmZIwIZJI/GXLekQe3h+ftzxl205UMdftuZH2/mLbuMLhlDV
82bxJeRkgzg08fYPc3116zLpUFNvPe6MiQntHV4uacMKbDbaNro4WuNS3bZR
x3zMsp4siPRUM2KazSFSGPY5zhTpUkuHNolSs9+1MK/f1lM9afVkQIMu25S1
lW4b2WsF/NuhPhtibwbXu1GfwSA2IglBwg7qM5Rub9DGZiS5lfrs0u0mWbiV
tXxaH/1OsvC5Rr5ube0zZOG7LsDcpD4DvtBzhG1k4Tbqw26L0sOfW6jPjka2
GM+tOgkRZpPK4YOV0/b97KQ+mwxn1dV6gL2N+nzqiVwbhlprYhuhdnB1C/UZ
zsy6JIOoO5TkBvXZOTPrkXBvUyfD7r6cP61d/nL+xL6cP23t9W78if06/jQe
j389Y/v3RJ4WC/sXIk9bSMXnyVPPYvY3aQyRp69uOXDHhqf0vl+dxWjZD51m
c/O4ODc4hLBl33E7GSIScsu+ZDzK0K/01dOr5aJZLZ6snZ25pM0YBOjr/W6H
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
T7t6nJ76zdplpJsH1IaAvzoJ8rv1H/q2gdNDtvd6j4WvA+i2sNiVj18Iqooy
ZRsP/W5Ex9xWJzu+/fYjP2QHxT5LpTpkF3uvR1miUg4nTfKkTLXKhVJ5VSQu
4UmRpDp8mul4V5YnKa5nGae9ZdyDZ/JE5a9HQiU8l0mWCNyRJTJJ6ImEw+7z
xGy0W/IEv4UOdxR4hv7NqygLXpnQC8eTAgJQmzxLMj7sca0/Tv3h3iQpPWTJ
lBNal7JyRVpwleeQSJYSTRjr0yytRJ7qUrhM+azMiiKzLtPaZxU6RmsikZy/
HhmvIT7GmeLBNJNBAp6p8JuuJVkuNclZVXEknOswksTFcSQlZMFVyF1B7kzC
+BONt0rkRZrTN0cmUshMoMXE4i7d32VowN1nr0dFniWF6D91PMudFLnKyyJL
kxyCYKQiL/Mc/2c5x2u0ndOVAveInOf29Si3sJCkyMJVH54UeZVnhcwdpPGF
CNd47nPoMrTnqJ0iCy04mEMCWSB5wfGMpOvhCYdPQ4+FDK17DI+eV0GKdqx0
b85TDyNIIQvuQN8+t+H+0EsYRRwB2oHmVIZJ7kdNBlAV4Qet5KGVjXbzIuMp
5gaWcNOaS8xQDs2lrZQWz+qctJtBtUUYBa6ipQySOfSPlnjS91+g/1IWYeQp
nqR2Qo+JyaCXpOzvRC9JSgcnB34SP1H4BMrFDJXUSu6DfyWJChaj0AoPr6Qv
NbkQWRFgEG0nlvtSQcTEaYVXaecNG6OE9aGV6H8cRn9H+4NTJ4kf2h9aKWQK
TVQFrEHEuz4zIzfngzzg187IzfnATP+6GdmqdbTS6z3O2tY5S7jnkA+Dg9dl
sEP8T0OVGYwyg09LHT5P+8/58HOpO++/Tfdku3fz/tt8//Xort5/m+8HP7qT
99/m+/CjO3r/bb4PWe7o/bf5Pnnjl9raytJej+7q/bf5PmTZ6f3BUtJ0ty/H
yJYp2C4GVrVRNYWtpOFfCGgkwqlQVniBBzPhS2cRINOisimml+doPi+VMCpF
DCDTMr6qJC9sZTNV4QPrJbShVSGcNmmecu0TXCx8lsk884l3vsxE5WSlADsc
tltWSaEgKIQhyyNscvgMA8PEihTjzARCrquMUdw48o3K0qh5oiuulcV/ZHWQ
NPE6zUymVWl8bhxitFZSl96qtHB5AnWXQMM0dbmWSni0pRLtuYQCEus98KUs
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
AAA=

-->

</rfc>
