<?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.26 (Ruby 3.3.6) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-cose-tsa-tst-header-parameter-05" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.28.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-05"/>
    <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="March" day="25"/>
    <area>Security</area>
    <workgroup>COSE</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <?line 52?>

<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 to prove the creation time of a message.</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 57?>

<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"/>.</t>
        <t>A first use case is a digital document signed alongside a trustworthy timestamp.
This is a common case in legal contracts.
In such scenario, the document signer wants to reinforce the claim that the document existed on a specific date.
To achieve this, the document signer acquires a fresh TST for the document from a TSA, combines it with the document, and then signs the bundle.
Later on, a relying party consuming the signed bundle can be certain that the document existed <em>at least</em> at the time specified by the TSA.
The relying party does not have to trust the signer's clock, which may have been maliciously altered or simply inaccurate.</t>
        <t>This usage scenario motivates the "Timestamp then COSE" mode defined in <xref target="sec-timestamp-then-cose"/>.</t>
        <t>A second use case is the notarization of a signed document by registering it at a Transparency Service.
This is common for accountability and auditability of issued documents.
Once a document is registered at a Transparency Service's append-only log, its log entry cannot be changed.
In certain cases, such as when a short-lived certificate is used for the signature, the registration policy of a Transparency Service may add a trustworthy timestamp to the signed document.
This is done to lock the signature to a specific point in time.
To achieve this, the Transparency Service acquires a TST from a TSA, bundles it alongside the signed document, and then registers it.
A relying party that wants to ascertain the authenticity of the document after the signing key has expired (or has been compromised), can do so by making sure that no revocation information has been made public before the time asserted in the TST.</t>
        <t>This usage scenario motivates the "COSE then Timestamp" mode described in <xref target="sec-cose-then-timestamp"/>.</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> boxes and replacing the label <tt>[signature]</tt> with <tt>[signatures]</tt>.</t>
      <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 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>
    <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-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.</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 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>Using as an example 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>then 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>Using as an example 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>then 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>
    <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, especially the need for implementations to protect private key material.</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>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>
    </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 385?>

<section anchor="examples">
      <name>Examples</name>
      <section anchor="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[
=============== NOTE: '\' line wrapping per RFC 8792 ================

18(
  [
    / protected h'a10126' / << {
        / alg / 1:-7 / ECDSA 256 /
      } >>,
    / unprotected / {
      / kid / 4:'11'
    },
    / payload / 'This is the content.',
    / signature / h'\
8eb33e4ca31d1c465ab05aac34cc6b23d58fef5c083106c4d25a91aef0b0117e2af9\
        a291aa32e14ab834dc56ed2a223444547e01f11d3b0916e5a4c345cacb36'
  ]
)
]]></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
Carl Wallace,
Carsten Bormann,
Francesca Palombini,
Leonard Rosenthol,
Linda Dunbar,
Michael B. Jones,
Michael Prorock,
Orie Steele,
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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
2SQy5HD0fwEkOHtm664AAA==

-->

</rfc>
