<?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.6.11 (Ruby 3.1.2) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-ietf-privacypass-auth-scheme-07" category="std" consensus="true" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.12.10 -->
  <front>
    <title abbrev="Privacy Pass Authentication">The Privacy Pass HTTP Authentication Scheme</title>
    <seriesInfo name="Internet-Draft" value="draft-ietf-privacypass-auth-scheme-07"/>
    <author initials="T." surname="Pauly" fullname="Tommy Pauly">
      <organization>Apple Inc.</organization>
      <address>
        <postal>
          <street>One Apple Park Way</street>
          <city>Cupertino, California 95014</city>
          <country>United States of America</country>
        </postal>
        <email>tpauly@apple.com</email>
      </address>
    </author>
    <author initials="S." surname="Valdez" fullname="Steven Valdez">
      <organization>Google LLC</organization>
      <address>
        <email>svaldez@chromium.org</email>
      </address>
    </author>
    <author initials="C. A." surname="Wood" fullname="Christopher A. Wood">
      <organization>Cloudflare</organization>
      <address>
        <email>caw@heapingbits.net</email>
      </address>
    </author>
    <date year="2022" month="December" day="08"/>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <t>This document defines an HTTP authentication scheme that can be used by clients
to redeem Privacy Pass tokens with an origin. It can also be used by origins to
challenge clients to present an acceptable Privacy Pass token.</t>
    </abstract>
  </front>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>Privacy Pass tokens are unlinkable authenticators that can be used to
anonymously authorize a client (see <xref target="ARCHITECTURE"/>).
Tokens are generated by token issuers, on the basis of authentication,
attestation, or some previous action such as solving a CAPTCHA. A client
possessing such a token is able to prove that it was able to get a token
issued, without allowing the relying party redeeming the client's token
(the origin) to link it with the issuance flow.</t>
      <t>Different types of authenticators, using different token issuance protocols, can
be used as Privacy Pass tokens.</t>
      <t>This document defines a common HTTP authentication scheme (<xref section="11" sectionFormat="comma" target="RFC9110"/>),
PrivateToken, that allows clients to redeem various kinds of Privacy Pass
tokens.</t>
      <t>Clients and relying parties (origins) interact using this scheme to perform the
token challenge and token redemption flow. In particular, origins challenge clients
for a token with an HTTP Authentication challenge (using the WWW-Authenticate response
header field). Clients then respond to that challenge with an HTTP authentiation response
(using the Authorization request header field). Clients produce an authentication response
based on the origin's token challenge by running the token issuance protocol <xref target="ISSUANCE"/>.
The act of presenting a token in an Authorization request header is referred to as token
redemption. This interaction between client and origin is shown below.</t>
      <figure anchor="fig-overview">
        <name>Token Architectural Components</name>
        <artwork><![CDATA[
 Client                             Relying Party (Origin)

    <---------------------- WWW-Authenticate  \  Challenge
                            (TokenChallenge)  |
+----------------------------------\          |
|                                  |          |
|  Issuance Protocol               |          |
|                                  |          |
+----------------------------------/          |
                                              |
  Authorization --------------------------->  /  Response (redemption)
     (Token)
]]></artwork>
      </figure>
      <t>In addition to working with different token issuance protocols, this scheme
optionally supports use of tokens that are associated with origin-chosen contexts
and specific origin names. Relying parties that request and redeem tokens can choose
a specific kind of token, as appropriate for its use case. These options allow
for different deployment models to prevent double-spending, and allow for both
interactive (online challenges) and non-interactive (pre-fetched) tokens.</t>
      <section anchor="terminology">
        <name>Terminology</name>
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED",
"MAY", and "OPTIONAL" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
        <t>Unless otherwise specified, this document encodes protocol messages in TLS
notation from <xref target="TLS13"/>, Section 3.</t>
        <t>This document uses the terms "Client", "Origin", "Issuer", "Issuance Protocol",
and "Token" as defined in <xref target="ARCHITECTURE"/>. It additionally
uses the following terms in more specific ways:</t>
        <ul spacing="normal">
          <li>Issuer key: Keying material that can be used with an issuance protocol
to create a signed token.</li>
          <li>Token challenge: A requirement for tokens sent from an origin to a client, using
the "WWW-Authenticate" HTTP header field. This challenge is bound to a specific token
issuer and issuance protocol, and may be additionally bound to a specific context or origin name.</li>
          <li>Token redemption: An action by which a client presents a token to an origin in an HTTP request,
using the "Authorization" HTTP header field.</li>
        </ul>
      </section>
    </section>
    <section anchor="challenge-redemption">
      <name>HTTP Authentication Scheme</name>
      <t>Token redemption is performed using HTTP Authentication (<xref section="11" sectionFormat="comma" target="RFC9110"/>), with
the scheme "PrivateToken". Origins challenge clients to present a token
from a specific issuer (<xref target="challenge"/>). Once a client has received a token
from that issuer, or already has a valid token available, it presents the
token to the origin (<xref target="redemption"/>).</t>
      <t>Unlike many authentication schemes in which a client will present the same credentials
across multiple requests, tokens used with the "PrivateToken" scheme are
single-use credentials, and are not reused. Spending the same token value more than once allows the origin to link multiple transactions to the same client. In deployment scenarios
where origins send token challenges to request tokens, origins ought to expect at most one
request containing a token from the client in reaction to a particular challenge.</t>
      <section anchor="challenge">
        <name>Token Challenge</name>
        <t>Origins send a token challenge to clients in an "WWW-Authenticate" header field with
the "PrivateToken" scheme. This challenge includes a TokenChallenge message,
along with information about what keys to use when requesting a token from
the issuer.</t>
        <t>Origins that support this authentication scheme need to handle the following
tasks:</t>
        <ol spacing="normal" type="1"><li>Select which issuer to use, and configure the issuer name and token-key to
include in WWW-Authenticate challenges.</li>
          <li>Determine a redemption context construction to include in the TokenChallenge, as
discussed in <xref target="context-construction"/>.</li>
          <li>Select the origin information to include in the TokenChallenge. This can
be empty to allow fully cross-origin tokens, a single origin name that
matches the origin itself, or a list of origin names containing the origin itself.</li>
        </ol>
        <t>The TokenChallenge message has the following structure:</t>
        <artwork><![CDATA[
struct {
    uint16_t token_type;
    opaque issuer_name<1..2^16-1>;
    opaque redemption_context<0..32>;
    opaque origin_info<0..2^16-1>;
} TokenChallenge;
]]></artwork>
        <t>The structure fields are defined as follows:</t>
        <ul spacing="normal">
          <li>"token_type" is a 2-octet integer, in network byte order. This type indicates
the issuance protocol used to generate the token. Values are registered
in an IANA registry, <xref target="token-types"/>. Challenges with unsupported token_type
values MUST be ignored.</li>
          <li>"issuer_name" is a string containing the name of the issuer. This is a
hostname that is used to identify the issuer that is allowed to issue
tokens that can be redeemed by this origin. The string is prefixed with a
2-octet integer indicating the length, in network byte order.</li>
          <li>"redemption_context" is an optional field. If present, it allows the origin
to require that clients fetch tokens bound to a specific context, as opposed
to reusing tokens that were fetched for other contexts. See <xref target="context-construction"/>
for example contexts that might be useful in practice. When present, this value
is a 32-byte context generated by the origin. Valid lengths for this field are
either 0 or 32 bytes. The field is prefixed with a single octet indicating the
length. Challenges with redemption_context values of invalid lengths MUST be
ignored.</li>
          <li>"origin_info" is an optional string containing one or more origin names, which
allows a token to be scoped to a specific set of origins. The string is prefixed
with a 2-octet integer indicating the length, in network byte order. If empty, any
non-origin-specific token can be redeemed. If the string contains multiple
origin names, they are delimited with commas "," without any whitespace. If this
field is not empty, the Origin MUST include its own name as one of the names in
the list.</li>
        </ul>
        <t>When used in an authentication challenge, the "PrivateToken" scheme uses the
following parameters:</t>
        <ul spacing="normal">
          <li>"challenge", which contains a base64url-encoded <xref target="RFC4648"/> TokenChallenge
 value. Since the length of the challenge is not fixed, the base64url value MUST
 include padding. As an Authentication Parameter (<tt>auth-param</tt> from <xref section="11.2" sectionFormat="comma" target="RFC9110"/>),
 the value can be either a token or a quoted-string, and might be required to be a
 quoted-string if the base64url string includes "=" characters. This challenge value
 MUST be unique for every 401 HTTP response to prevent replay attacks. This parameter
 is required for all challenges.</li>
          <li>"token-key", which contains a base64url encoding of the public key for
use with the issuance protocol indicated by the challenge. Since the length of
the key is not fixed, the base64url value MUST include padding. As an
Authentication Parameter (<tt>auth-param</tt> from <xref section="11.2" sectionFormat="comma" target="RFC9110"/>), the value can be
either a token or a quoted-string, and might be required to be a
quoted-string if the base64url string includes "=" characters. This parameter
MAY be omitted in deployments where clients are able to retrieve the issuer key
using an out-of-band mechanism.</li>
          <li>"max-age", an optional parameter that consists of the number of seconds for which
the challenge will be accepted by the origin.</li>
        </ul>
        <t>Clients can ignore the challenge if the token-key is invalid or otherwise untrusted.</t>
        <t>The header field MAY also include the standard "realm" parameter, if desired. Issuance
protocols MAY require other parameters. Clients SHOULD ignore unknown parameters
in challenges, except if otherwise specified by issuance protocols.</t>
        <t>As an example, the WWW-Authenticate header field could look like this:</t>
        <artwork><![CDATA[
WWW-Authenticate: PrivateToken challenge="abc...", token-key="123..."
]]></artwork>
        <t>Upon receipt of this challenge, a client uses the message and keys in the
issuance protocol indicated by the token_type. If the TokenChallenge has a
token_type the client does not recognize or support, it MUST NOT parse or
respond to the challenge. If the TokenChallenge contains a non-empty
origin_info field, the client MUST validate that the name of the origin
that issued the authentication challenge is included in the list of origin
names; if validation fails, the client MUST NOT process or respond to the
challenge. Clients MAY have further restrictions and requirements around
validating when a challenge is considered acceptable or valid. For example,
clients can choose to ignore challenges that list origin names for which
current connection is not authoritative (according to the TLS certificate).</t>
        <t>Caching and pre-fetching of tokens is discussed in <xref target="caching"/>.</t>
        <t>Note that it is possible for the WWW-Authenticate header field to include multiple
challenges. This allows the origin to indicate support for different token
types, issuers, or to include multiple redemption contexts. For example,
the WWW-Authenticate header field could look like this:</t>
        <artwork><![CDATA[
WWW-Authenticate: PrivateToken challenge="abc...", token-key="123...",
PrivateToken challenge="def...", token-key="234..."
]]></artwork>
        <t>Origins should only include challenges for different types of issuance protocols with
functionally equivalent properties. For instance, both issuance protocols in <xref target="ISSUANCE"/>
have the same functional properties, albeit with different mechanisms for verifying the
resulting tokens during redemption. Since clients are free to choose which challenge they want
to consume when presented with options, mixing multiple challenges with different functional
properties for one use case is nonsensical.</t>
        <section anchor="context-construction">
          <name>Redemption Context Construction</name>
          <t>The TokenChallenge redemption context allows the origin to determine the context
in which a given token can be redeemed. This value can be a unique per-request
nonce, constructed from 32 freshly generated random bytes. It can also represent
state or properties of the client session. Some example properties and methods
for constructing the corresponding context are below. This list is not exhaustive.</t>
          <ul spacing="normal">
            <li>Context bound to a given time window: Construct redemption context as
SHA256(current time window).</li>
            <li>Context bound to a client location: Construct redemption context as
SHA256(client IP address prefix).</li>
            <li>Context bound to a given time window and location: Construct redemption
context as SHA256(current time window, client IP address prefix).</li>
          </ul>
          <t>An empty redemption context is not bound to any property of the client session.
Preventing double spending on tokens requires the origin to keep state associated
with the redemption context. The size of this state varies based on the size of the
redemption context. For example, double spend state for unique, per-request redemption
contexts does only needs to exist within the scope of the request connection or session.
In contrast, double spend state for empty redemption contexts must be stored and shared
across all requests until token-key expiration or rotation.</t>
          <t>Origins that share redemption contexts, i.e., by using the same redemption context,
choosing the same issuer, and providing the same origin_info field in the TokenChallenge,
must necessarily share state required to enforce double spend prevention. Origins
should consider the operational complexity of this shared state before choosing
to share redemption contexts. Failure to successfully synchronize this state and use
it for double spend prevention can allow Clients to redeem tokens to one Origin that
were issued after an interaction with another Origin that shares the context.</t>
        </section>
        <section anchor="caching">
          <name>Token Caching</name>
          <t>Clients can generate multiple tokens from a single TokenChallenge, and cache
them for future use. This improves privacy by separating the time of token
issuance from the time of token redemption, and also allows clients to avoid
any overhead of receiving new tokens via the issuance protocol.</t>
          <t>Cached tokens can only be redeemed when they match all of the fields in the
TokenChallenge: token_type, issuer_name, redemption_context, and origin_info.
Clients ought to store cached tokens based on all of these fields, to
avoid trying to redeem a token that does not match. Note that each token
has a unique client nonce, which is sent in token redemption (<xref target="redemption"/>).</t>
          <t>If a client fetches a batch of multiple tokens for future use that are bound
to a specific redemption context (the redemption_context in the TokenChallenge
was not empty), clients SHOULD discard these tokens upon flushing state such as
HTTP cookies <xref target="COOKIES"/>, or changing networks.
Using these tokens in a context that otherwise would not be linkable to the
original context could allow the origin to recognize a client.</t>
        </section>
      </section>
      <section anchor="redemption">
        <name>Token Redemption</name>
        <t>The output of the issuance protocol is a token that corresponds to the origin's
challenge (see <xref target="challenge"/>). A token is a structure that begins with a two-octet
field that indicates a token type, which MUST match the token_type in the TokenChallenge
structure.</t>
        <artwork><![CDATA[
struct {
    uint16_t token_type;
    uint8_t nonce[32];
    uint8_t challenge_digest[32];
    uint8_t token_key_id[Nid];
    uint8_t authenticator[Nk];
} Token;
]]></artwork>
        <t>The structure fields are defined as follows:</t>
        <ul spacing="normal">
          <li>"token_type" is a 2-octet integer, in network byte order. This value must
match the value in the challenge (<xref target="challenge"/>).</li>
          <li>"nonce" is a 32-octet message containing a client-generated random
nonce.</li>
          <li>"challenge_digest" is a 32-octet message containing the hash of the
original TokenChallenge, SHA256(TokenChallenge).</li>
          <li>"token_key_id" is an Nid-octet identifier for the the token authentication
key. The value of this field is defined by the token_type and corresponding
issuance protocol.</li>
          <li>"authenticator" is a Nk-octet authenticator that covers the preceding fields in
the token. The value of this field is defined by the token_type and corresponding
issuance protocol.</li>
        </ul>
        <t>The authenticator value in the Token structure is computed over the token_type,
nonce, challenge_digest, and token_key_id fields.</t>
        <t>When used for client authorization, the "PrivateToken" authentication
scheme defines one parameter, "token", which contains the base64url-encoded
Token struct. Since the length of the Token struct is not fixed, the base64url
value MUST include padding. As an Authentication Parameter (<tt>auth-param</tt> from
<xref section="11.2" sectionFormat="comma" target="RFC9110"/>), the value can be either a token or a quoted-string, and might be
required to be a quoted-string if the base64url string includes "=" characters.
All unknown or unsupported parameters to "PrivateToken" authentication credentials
MUST be ignored.</t>
        <t>Clients present this Token structure to origins in a new HTTP request using
the Authorization header field as follows:</t>
        <artwork><![CDATA[
Authorization: PrivateToken token="abc..."
]]></artwork>
        <t>For token types that support public verifiability, origins verify the token
authenticator using the public key of the issuer, and validate that the signed
message matches the concatenation of the client nonce and the hash of a
valid TokenChallenge. For context-bound tokens, origins store or reconstruct the
contexts of previous TokenChallenge structures in order to validate the token.
A TokenChallenge MAY be bound to a specific TLS session with a client, but
origins can also accept tokens for valid challenges in new sessions.
Origins SHOULD implement some form of double-spend prevention that prevents
a token with the same nonce from being redeemed twice. This prevents clients
from "replaying" tokens for previous challenges. For context-bound tokens,
this double-spend prevention can require no state or minimal state, since
the context can be used to verify token uniqueness.</t>
        <t>If a client is unable to fetch a token, it MUST react to the challenge as
if it could not produce a valid Authorization response.</t>
      </section>
    </section>
    <section anchor="user-interaction">
      <name>User Interaction</name>
      <t>When used in contexts like websites, origins that challenge clients for
tokens need to consider how to optimize their interaction model to ensure a
good user experience.</t>
      <t>Tokens challenges can be performed without explicit user involvement, depending
on the issuance protocol. If tokens are scoped to a specific origin,
there is no need for per-challenge user interaction. Note that the issuance
protocol may separately involve user interaction if the client needs to be newly
validated.</t>
      <t>If a client cannot use cached tokens to respond to a challenge (either because
it has run out of cached tokens or the associated context is unique), the token
issuance process can add user-perceivable latency. Origins need not block useful
work on token authentication. Instead, token authentication can be used in similar
ways to CAPTCHA validation today, but without the need for user interaction. If issuance
is taking a long time, a website could show an indicator that it is waiting,
or fall back to another method of user validation.</t>
      <t>An origin MUST NOT use more than one redemption context value for a given token type
and issuer per client request. If an origin issues a large number of challenges with
unique contexts, such as more than once for each request, this can indicate that the
origin is either not functioning correctly or is trying to attack or overload the client
or issuance server. In such cases, a client MUST ignore redundant token challenges for
the same request and SHOULD alert the user if possible.</t>
      <t>Origins MAY include multiple challenges, where each challenge refers to a different issuer
or a different token type, to allow clients to choose a preferred issuer or type.</t>
      <t>An origin MUST NOT assume that token challenges will always yield a valid token.
Clients might experience issues running the issuance protocol, e.g., because the attester
or issuer is unavailable, or clients might simply not support the requested token type.
Origins SHOULD account for such operational or interoperability failures by offering
clients an alternative type of challenge such as CAPTCHA for accessing a resource.</t>
      <t>For example, consider a scenario in which the client is a web browser, and the origin
can accept either a token or a solution to a puzzle intended to determine if the client
is a real human user. The origin would send clients a 401 HTTP response that contains a
token challenge in a "WWW-Authenticate" header field along with content that contains
the puzzle to display to the user. Clients that are able to respond with a token will
be able to automatically return the token and not show the puzzle, while clients that
either do not support tokens or are unable to fetch tokens at a particular time can
present the user with the puzzle.</t>
      <t>To mitigate the risk of deployments becoming dependent on tokens, clients and servers SHOULD grease
their behavior unless explicitly configured not to. In particular, clients SHOULD
ignore token challenges with some non-zero probability. Likewise, origins SHOULD
randomly choose to not challenge clients for tokens with some non-zero probability.
Moreover, origins SHOULD include random token types, from the Reserved list of "greased"
types (defined in <xref target="token-types"/>), with some non-zero probability.</t>
    </section>
    <section anchor="sec-considerations">
      <name>Security Considerations</name>
      <t>The security properties of token challenges vary depending on whether the challenge
contains a redemption context or not, as well as whether the challenge is per-origin
or not. For example, cross-origin tokens with empty contexts can be replayed from one
party by another, as shown below.</t>
      <figure anchor="fig-replay">
        <name>Token Architectural Components</name>
        <artwork><![CDATA[
 Client          Attacker                  Origin

                       <----------- Challenge \
                                              |
   <--------- Challenge                       |
                                              |
   Redemption ---->                           |
                                              |
                       Redemption ----------> /
]]></artwork>
      </figure>
      <t>Token challenges that include non-empty origin_info bind tokens to one or more specific
origins. As described in <xref target="challenge"/>, clients only accept such challenges from
origin names listed in the origin_info string. Even if multiple origins are listed, a
token can only be redeemed for an origin if the challenge has an exact match for
the origin_info. For example, if "a.example.com" issues a challenge with an origin_info
string of "a.example.com,b.example.com", a client could redeem a token fetched for this
challenge if and only if "b.example.com" also included an origin_info string of
"a.example.com,b.example.com". On the other hand, if "b.example.com" had an origin_info
string of "b.example.com" or "b.example.com,a.example.com" or
"a.example.com,b.example.com,c.example.com", the string would not match and the client
would need to use a different token.</t>
      <t>Context-bound token challenges require clients to obtain matching tokens when challenged,
rather than presenting a token that was obtained from a different context in the past. This
can make it more likely that issuance and redemption events will occur at approximately the
same time. For example, if a client is challenged for a token with a unique context at
time T1 and then subsequently obtains a token at time T2, a colluding issuer and origin can
link this to the same client if T2 is unique to the client. This linkability is less
feasible as the number of issuance events at time T2 increases. Depending on the "max-age"
token challenge parameter, clients MAY try to augment the time between getting challenged
then redeeming a token so as to make this sort of linkability more difficult. For more
discussion on correlation risks between token issuance and redemption, see
<xref target="I-D.ietf-privacypass-architecture"/>.</t>
      <t>As discussed in <xref target="challenge"/>, clients SHOULD discard any context-bound tokens upon flushing
cookies or changing networks, to prevent an origin using the redemption context state as
a cookie to recognize clients.</t>
      <t>Applications SHOULD constrain tokens to a single origin unless the use case can
accommodate such replay attacks. Replays are also possible if the client redeems a
token sent as part of 0-RTT data. If successful token redemption produces side
effects, origins SHOULD implement an anti-replay mechanism to mitigate the harm of
such replays. See <xref section="8" sectionFormat="comma" target="RFC8446"/> and <xref section="9.2" sectionFormat="comma" target="RFC9001"/> for details
about anti-replay mechanisms, as well as <xref section="3" sectionFormat="comma" target="RFC8470"/> for discussion about
safety considerations for 0-RTT HTTP data.</t>
      <t>All random values in the challenge and token MUST be generated using a cryptographically
secure source of randomness.</t>
    </section>
    <section anchor="iana">
      <name>IANA Considerations</name>
      <section anchor="authentication-scheme">
        <name>Authentication Scheme</name>
        <t>This document registers the "PrivateToken" authentication scheme in the "Hypertext
Transfer Protocol (HTTP) Authentication Scheme Registry" defined in <xref section="16.4" sectionFormat="comma" target="RFC9110"/>.</t>
        <t>Authentication Scheme Name: PrivateToken</t>
        <t>Pointer to specification text: <xref target="challenge-redemption"/> of this document</t>
      </section>
      <section anchor="token-types">
        <name>Token Type Registry</name>
        <t>IANA is requested to create a new "Privacy Pass Token Type" registry in a new "Privacy Pass
Parameters" page to list identifiers for issuance protocols defined for use with the Privacy
Pass token authentication scheme. These identifiers are two-byte values, so the maximum
possible value is 0xFFFF = 65535.</t>
        <t>Template:</t>
        <ul spacing="normal">
          <li>Value: The two-byte identifier for the algorithm</li>
          <li>Name: Name of the issuance protocol</li>
          <li>Publicly Verifiable: A Y/N value indicating if the output tokens are publicly verifiable</li>
          <li>Public Metadata: A Y/N value indicating if the output tokens can contain public metadata.</li>
          <li>Private Metadata: A Y/N value indicating if the output tokens can contain private metadata.</li>
          <li>Nk: The length in bytes of an output authenticator</li>
          <li>Nid: The length of the token key identifier</li>
          <li>Reference: Where this algorithm is defined</li>
          <li>Notes: Any notes associated with the entry</li>
        </ul>
        <t>New entries in this registry are subject to the Specification Required registration policy
(<xref section="4.6" sectionFormat="comma" target="RFC8126"/>). Designated experts need to ensure that the token type
is sufficiently clearly defined to be used for both token issuance and redemption,
and meets the common security and privacy requirements for issuance protocols defined
in <xref section="3.2" sectionFormat="of" target="ARCHITECTURE"/>.</t>
        <t>This registry also will also allow provisional registrations to allow for experimentation
with protocols being developed. Designated experts review, approve, and revoke provisional
registrations.</t>
        <t>Values 0xFF00-0xFFFF are reserved for private use, to enable proprietary uses and
limited experimentation.</t>
        <t>This document defines several Reserved values, which can be used by clients and servers
to send "greased" values in token challenges and responses to ensure that implementations
remain able to handle unknown token types gracefully (this technique is inspired by
<xref target="RFC8701"/>). Implemenations SHOULD select reserved values at random when including
them in greased messages. Servers can include these in TokenChallenge structures, either
as the only challenge when no real token type is desired, or as one challenge in a list
of challenges that include real values. Clients can include these in Token structures
when they are not able to present a real token response. The contents of the Token
structure SHOULD be filled with random bytes when using greased values.</t>
        <t>The initial contents for this registry are defined in the table below.</t>
        <table anchor="aeadid-values">
          <name>Token Types</name>
          <thead>
            <tr>
              <th align="left">Value</th>
              <th align="left">Name</th>
              <th align="left">Publicly Verifiable</th>
              <th align="left">Public Metadata</th>
              <th align="left">Private Metadata</th>
              <th align="left">Nk</th>
              <th align="left">Nid</th>
              <th align="left">Reference</th>
              <th align="left">Notes</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="left">0x0000</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0x02AA</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0x1132</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0x2E96</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0x3CD3</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0x4473</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0x5A63</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0x6D32</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0x7F3F</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0x8D07</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0x916B</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0xA6A4</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0xBEAB</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0xC3F3</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0xDA42</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0xE944</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0xF057</td>
              <td align="left">RESERVED</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
            <tr>
              <td align="left">0xFF00-0xFFFF</td>
              <td align="left">Private Use</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">N/A</td>
              <td align="left">This document</td>
              <td align="left">None</td>
            </tr>
          </tbody>
        </table>
      </section>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC9110">
          <front>
            <title>HTTP Semantics</title>
            <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding">
              <organization/>
            </author>
            <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham">
              <organization/>
            </author>
            <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke">
              <organization/>
            </author>
            <date month="June" year="2022"/>
            <abstract>
              <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes. </t>
              <t>This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="97"/>
          <seriesInfo name="RFC" value="9110"/>
          <seriesInfo name="DOI" value="10.17487/RFC9110"/>
        </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">
              <organization/>
            </author>
            <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">
              <organization/>
            </author>
            <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="TLS13">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla">
              <organization/>
            </author>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol.  TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961.  This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
        <reference anchor="RFC4648">
          <front>
            <title>The Base16, Base32, and Base64 Data Encodings</title>
            <author fullname="S. Josefsson" initials="S." surname="Josefsson">
              <organization/>
            </author>
            <date month="October" year="2006"/>
            <abstract>
              <t>This document describes the commonly used base 64, base 32, and base 16 encoding schemes.  It also discusses the use of line-feeds in encoded data, use of padding in encoded data, use of non-alphabet characters in encoded data, use of different encoding alphabets, and canonical encodings.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4648"/>
          <seriesInfo name="DOI" value="10.17487/RFC4648"/>
        </reference>
        <reference anchor="RFC8126">
          <front>
            <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
            <author fullname="M. Cotton" initials="M." surname="Cotton">
              <organization/>
            </author>
            <author fullname="B. Leiba" initials="B." surname="Leiba">
              <organization/>
            </author>
            <author fullname="T. Narten" initials="T." surname="Narten">
              <organization/>
            </author>
            <date month="June" year="2017"/>
            <abstract>
              <t>Many protocols make use of points of extensibility that use constants to identify various protocol parameters.  To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper.  For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
              <t>To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed.  This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
              <t>This is the third edition of this document; it obsoletes RFC 5226.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="26"/>
          <seriesInfo name="RFC" value="8126"/>
          <seriesInfo name="DOI" value="10.17487/RFC8126"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="ARCHITECTURE">
          <front>
            <title>The Privacy Pass Architecture</title>
            <author fullname="Alex Davidson" initials="A." surname="Davidson">
              <organization>LIP</organization>
            </author>
            <author fullname="Jana Iyengar" initials="J." surname="Iyengar">
              <organization>Fastly</organization>
            </author>
            <author fullname="Christopher A. Wood" initials="C. A." surname="Wood">
              <organization>Cloudflare</organization>
            </author>
            <date day="17" month="October" year="2022"/>
            <abstract>
              <t>   This document specifies the Privacy Pass architecture and
   requirements for its constituent protocols used for constructing
   anonymous-credential authentication mechanisms.  It provides
   recommendations on how the architecture should be deployed to ensure
   the privacy of clients and the security of all participating
   entities.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-privacypass-architecture-08"/>
        </reference>
        <reference anchor="ISSUANCE">
          <front>
            <title>Privacy Pass Issuance Protocol</title>
            <author fullname="Sofia Celi" initials="S." surname="Celi">
              <organization>Brave Software</organization>
            </author>
            <author fullname="Alex Davidson" initials="A." surname="Davidson">
              <organization>Brave Software</organization>
            </author>
            <author fullname="Armando Faz-Hernandez" initials="A." surname="Faz-Hernandez">
              <organization>Cloudflare</organization>
            </author>
            <author fullname="Steven Valdez" initials="S." surname="Valdez">
              <organization>Google LLC</organization>
            </author>
            <author fullname="Christopher A. Wood" initials="C. A." surname="Wood">
              <organization>Cloudflare</organization>
            </author>
            <date day="6" month="July" year="2022"/>
            <abstract>
              <t>   This document specifies two variants of the the two-message issuance
   protocol for Privacy Pass tokens: one that produces tokens that are
   privately verifiable, and another that produces tokens that are
   publicly verifiable.  The privately verifiable issuance protocol
   optionally supports public metadata during the issuance flow.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-privacypass-protocol-06"/>
        </reference>
        <reference anchor="COOKIES">
          <front>
            <title>Cookies: HTTP State Management Mechanism</title>
            <author fullname="Steven Bingler" initials="S." surname="Bingler">
              <organization>Google LLC</organization>
            </author>
            <author fullname="Mike West" initials="M." surname="West">
              <organization>Google LLC</organization>
            </author>
            <author fullname="John Wilander" initials="J." surname="Wilander">
              <organization>Apple, Inc</organization>
            </author>
            <date day="7" month="November" year="2022"/>
            <abstract>
              <t>   This document defines the HTTP Cookie and Set-Cookie header fields.
   These header fields can be used by HTTP servers to store state
   (called cookies) at HTTP user agents, letting the servers maintain a
   stateful session over the mostly stateless HTTP protocol.  Although
   cookies have many historical infelicities that degrade their security
   and privacy, the Cookie and Set-Cookie header fields are widely used
   on the Internet.  This document obsoletes RFC 6265.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-httpbis-rfc6265bis-11"/>
        </reference>
        <reference anchor="I-D.ietf-privacypass-architecture">
          <front>
            <title>The Privacy Pass Architecture</title>
            <author fullname="Alex Davidson" initials="A." surname="Davidson">
              <organization>LIP</organization>
            </author>
            <author fullname="Jana Iyengar" initials="J." surname="Iyengar">
              <organization>Fastly</organization>
            </author>
            <author fullname="Christopher A. Wood" initials="C. A." surname="Wood">
              <organization>Cloudflare</organization>
            </author>
            <date day="17" month="October" year="2022"/>
            <abstract>
              <t>   This document specifies the Privacy Pass architecture and
   requirements for its constituent protocols used for constructing
   anonymous-credential authentication mechanisms.  It provides
   recommendations on how the architecture should be deployed to ensure
   the privacy of clients and the security of all participating
   entities.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-privacypass-architecture-08"/>
        </reference>
        <reference anchor="RFC8446">
          <front>
            <title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla">
              <organization/>
            </author>
            <date month="August" year="2018"/>
            <abstract>
              <t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol.  TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t>
              <t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961.  This document also specifies new requirements for TLS 1.2 implementations.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8446"/>
          <seriesInfo name="DOI" value="10.17487/RFC8446"/>
        </reference>
        <reference anchor="RFC9001">
          <front>
            <title>Using TLS to Secure QUIC</title>
            <author fullname="M. Thomson" initials="M." role="editor" surname="Thomson">
              <organization/>
            </author>
            <author fullname="S. Turner" initials="S." role="editor" surname="Turner">
              <organization/>
            </author>
            <date month="May" year="2021"/>
            <abstract>
              <t>This document describes how Transport Layer Security (TLS) is used to secure QUIC.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9001"/>
          <seriesInfo name="DOI" value="10.17487/RFC9001"/>
        </reference>
        <reference anchor="RFC8470">
          <front>
            <title>Using Early Data in HTTP</title>
            <author fullname="M. Thomson" initials="M." surname="Thomson">
              <organization/>
            </author>
            <author fullname="M. Nottingham" initials="M." surname="Nottingham">
              <organization/>
            </author>
            <author fullname="W. Tarreau" initials="W." surname="Tarreau">
              <organization/>
            </author>
            <date month="September" year="2018"/>
            <abstract>
              <t>Using TLS early data creates an exposure to the possibility of a replay attack.  This document defines mechanisms that allow clients to communicate with servers about HTTP requests that are sent in early data.  Techniques are described that use these mechanisms to mitigate the risk of replay.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8470"/>
          <seriesInfo name="DOI" value="10.17487/RFC8470"/>
        </reference>
        <reference anchor="RFC8701">
          <front>
            <title>Applying Generate Random Extensions And Sustain Extensibility (GREASE) to TLS Extensibility</title>
            <author fullname="D. Benjamin" initials="D." surname="Benjamin">
              <organization/>
            </author>
            <date month="January" year="2020"/>
            <abstract>
              <t>This document describes GREASE (Generate Random Extensions And Sustain Extensibility), a mechanism to prevent extensibility failures in the TLS ecosystem. It reserves a set of TLS protocol values that may be advertised to ensure peers correctly handle unknown values.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8701"/>
          <seriesInfo name="DOI" value="10.17487/RFC8701"/>
        </reference>
      </references>
    </references>
    <section anchor="test-vectors">
      <name>Test Vectors</name>
      <t>This section includes test vectors for the challenge and redemption functionalities
described in <xref target="challenge"/> and <xref target="redemption"/>. Each test vector lists the following values:</t>
      <ul spacing="normal">
        <li>token_type: The type of token issuance protocol, a value from <xref target="token-types"/>. For these test vectors,
token_type is 0x0002, corresponding to the issuance protocol in <xref target="ISSUANCE"/>.</li>
        <li>issuer_name: The name of the issuer in the TokenChallenge structure, represented as a hexadecimal string.</li>
        <li>redemption_context: The redemption context in the TokenChallenge structure, represented as a hexadecimal string.</li>
        <li>origin_info: The origin info in the TokenChallenge structure, represented as a hexadecimal string.</li>
        <li>nonce: The nonce in the Token structure, represented as a hexadecimal string.</li>
        <li>token_key: The public token-key, encoded based on the corresponding token type, represented as a hexadecimal string.</li>
        <li>token_authenticator_input: The values in the Token structure used to compute the Token authenticator value, represented as a hexadecimal string.</li>
        <li>token_authenticator: The output Token authenticator which verifies under token_key, represented as a hexadecimal string.</li>
      </ul>
      <t>Test vectors are provided for each of the following TokenChallenge configurations:</t>
      <ul spacing="normal">
        <li>TokenChallenge with a single origin and non-empty redemption context</li>
        <li>TokenChallenge with a single origin and empty redemption context</li>
        <li>TokenChallenge with an empty origin and redemption context</li>
        <li>TokenChallenge with an empty origin and redemption context</li>
        <li>TokenChallenge with an empty origin and non-empty redemption context</li>
        <li>TokenChallenge with a multiple origins and non-empty redemption context</li>
      </ul>
      <t>These test vectors are below.</t>
      <artwork><![CDATA[
token_type: 2
issuer_name: 6973737565722e6578616d706c65
redemption_context:
40ff3cdc296a1e823f43b49355df1a2ee4c5f65e5d38ebb3e24ecf4d874997c6
origin_info: 6f726967696e2e6578616d706c65
nonce: 4437fb872eab95b5831a5d01005ee2995e417862ecfd2079ee4c246859a060ae
token_key: 30820252303d06092a864886f70d01010a3030a00d300b060960864801650
3040202a11a301806092a864886f70d010108300b0609608648016503040202a20302013
00382020f003082020a0282020100d730ce8b3ec7336b48a4f5897564d87c87627298f21
ba4bf34e7931142875c0e52c5aef3222d67e86124403e436d0136ebd806de37730427f81
4f7f0485eace93015471d14e56f3824e8bc5fbe44cf67e241c7642ac3a39452a283ff806
84ddbd66929a371d01e50feef1faee7f63f3ceb4b5ceacb939e06a558c2a6bccfd96fb74
16d3edce151bc7b0a6582f0ce99a7c0e7d5793b13d41292105e510e1aa00e082975a1386
6dfaf3a0a51c0dd1ecb64cc55cc607ca1813b5f91fd8e9cb9db18ffd81ac985a6cfdd5cc
2a0b8a5e4e9fa1ea5f149c1662155bb071c95218cae9ae4af613351baf470b1597bb984c
5ea8326f98aff64f72b60bcd035f6b970eb6edd2f9f2180d5aa8a17ed400056af3faa520
4b73c89b4eada6a057dd3dda9d8e18b3a6d2347c1027e2711f21eb7d96fef50cc3dacb2f
5ccc36e4c138ab75953974ade74982f85b91f419654d390378e2ea5aae33f1b4acf534d0
6de2f114acfdd88d6d708f4d2b646a8112b0fe181489916e2ba5c634cdf9b95762d1e120
169482dd27f959132705079fc4a00eee1f353a81c1e810ade20d070d839277169e09150c
08605afe7cea2aec41d2f85c2af7bef5d577343b4385e2c6c159926c1c8267d00433b88b
ad314a5ddcef58936126f1dd8da7b5728da192f54b304e60f4088e5b0620404f82a5939d
975e6714453a533c172c8a9b4b5da976ea60a5aa91fef0203010001
token_authenticator_input: 00024437fb872eab95b5831a5d01005ee2995e417862e
cfd2079ee4c246859a060ae055038620bd58190f057b86af2883352fd9ec612487979b00
74a489aece337e79f9293b4d62e4b4759af064df8fa5759c79ab51a00f692541b26d466d
ab48091
token_authenticator: 9c2fc25cb429a7cfe6e21193b6122ffe18c2c09c1df10dfea3d
155c297ce3f4132d273bf2ad490c41e592219bb253378c21215657905fe713aca31f6ab7
1206c1c872210c71d53a8d9b3ee635cf22c47d518454f9f5a898218ed7aae78414e9d85f
4a62244babdb63accc1257f1f1824493549465a3c63d69e9e307a328121402022a4f1aea
a7e6ff46edf4884b5ab47531b8c949a225a9f5a9c1b7608af0641c2070533402683e6f86
d547b6083d6cfa2a985f4673bf46ae09864d31613acd5a7d61dae7a29133e37093baabe1
20e59714d662162324406403c1fb44312b03c509202041a44dc351ea3659d446ea024e96
23b522171d9af0c8ac81f8a6a0018cb049bda21d12c9783ae6f7057144f8d26699d20f19
023269256ff607ca1ab37b0d95704aa0299e64b3b823c148ff8c46e835c7060dbb3c247e
6034892b3f6b7401fb67366e8afe8267182d6f36bf3618712371e6ae4654c0897f7475d3
9e9c186189162e29a9d8b3e37860457843a1c2fa3cacc133bdb8c7f77aae0ea3a5649300
35a7689f3a24ea726d4506d19f0b1aedb8739cb3fe7177cfaed08c8902162ed530ef19a0
266ca61a1a0b1bfc329fd2d1c1ad307a32f531f5be6faf75d96a49020acca8e37a4cb55f
f4072916711c397daf5bcbd229132b47d10b16f646d1d675cdf58c6f057333b1cbb94b2d
c44320cd2e9cba6f1c33a708ae1bb97f0739a

token_type: 2
issuer_name: 6973737565722e6578616d706c65
redemption_context:
origin_info: 6f726967696e2e6578616d706c65
nonce: 4437fb872eab95b5831a5d01005ee2995e417862ecfd2079ee4c246859a060ae
token_key: 30820252303d06092a864886f70d01010a3030a00d300b060960864801650
3040202a11a301806092a864886f70d010108300b0609608648016503040202a20302013
00382020f003082020a0282020100d730ce8b3ec7336b48a4f5897564d87c87627298f21
ba4bf34e7931142875c0e52c5aef3222d67e86124403e436d0136ebd806de37730427f81
4f7f0485eace93015471d14e56f3824e8bc5fbe44cf67e241c7642ac3a39452a283ff806
84ddbd66929a371d01e50feef1faee7f63f3ceb4b5ceacb939e06a558c2a6bccfd96fb74
16d3edce151bc7b0a6582f0ce99a7c0e7d5793b13d41292105e510e1aa00e082975a1386
6dfaf3a0a51c0dd1ecb64cc55cc607ca1813b5f91fd8e9cb9db18ffd81ac985a6cfdd5cc
2a0b8a5e4e9fa1ea5f149c1662155bb071c95218cae9ae4af613351baf470b1597bb984c
5ea8326f98aff64f72b60bcd035f6b970eb6edd2f9f2180d5aa8a17ed400056af3faa520
4b73c89b4eada6a057dd3dda9d8e18b3a6d2347c1027e2711f21eb7d96fef50cc3dacb2f
5ccc36e4c138ab75953974ade74982f85b91f419654d390378e2ea5aae33f1b4acf534d0
6de2f114acfdd88d6d708f4d2b646a8112b0fe181489916e2ba5c634cdf9b95762d1e120
169482dd27f959132705079fc4a00eee1f353a81c1e810ade20d070d839277169e09150c
08605afe7cea2aec41d2f85c2af7bef5d577343b4385e2c6c159926c1c8267d00433b88b
ad314a5ddcef58936126f1dd8da7b5728da192f54b304e60f4088e5b0620404f82a5939d
975e6714453a533c172c8a9b4b5da976ea60a5aa91fef0203010001
token_authenticator_input: 00024437fb872eab95b5831a5d01005ee2995e417862e
cfd2079ee4c246859a060ae11e15c91a7c2ad02abd66645802373db1d823bea80f08d452
541fb2b62b5898b9f9293b4d62e4b4759af064df8fa5759c79ab51a00f692541b26d466d
ab48091
token_authenticator: 4be4655a33566de7409e7cfdcdb764c251c04138602a046a7d7
1540aa9bcdb34e7df5dfabe17e16a3569f67c36460a79e9e7278b454c4f505580ae99750
b9308022b20aa8807ee054881126d9a4afd134331d0ebb3f9a4f2948731cd0ad2fe468b1
f8c6fcf2d5b9a2991a684b3fb0dec6a3e32fd3335e546f58c2217736683d378076355727
0493eb0f607c7936633a0532d1828dc860f0bf3954c82f0e1ab6089eae92d9d97e3237f2
58c5c82e711bef1682deb6edd19b24bb543f4418825e5d41e126de82f1a4b63321f07c12
3029a7499356fa8bdc11982451c69fa3d1940a4781b646c99e33e83b95810dc1e7a32a25
953ba0a0e37917c9f85bb4f0e7687c826e7138c9a2e71e87644b36c3891b4fec6af02519
aafaa36d559c71d090ea081ceed6cb738ffb730fa5dcbe889362591eb0a89f8ba4057f09
3ca35cc684f3b4cdc7c177f275a9d74a75e98eb395689842a5626d61af84072c9eb858ea
ed7e467b570c771e6530e02dda20b47f6860bb341ca4f849168dc7b6cb8c6743b8113c3e
f09ce9b9b2eaf172204cc26ea7c3de962cc1a851195cf143c9f27cb8f1df219df1209097
5ba657de1d021f2044829a689decf1072e5f79fbef0d3ae6085532f81b32b2a47968b073
2928193894dabb521c3f4c4a6858d43c8abd4695db4e49d3b5d46059032819d8485b0ccb
c3d24c5c72ac3e44d9ff94946cb8f8ca69fb1

token_type: 2
issuer_name: 6973737565722e6578616d706c65
redemption_context:
origin_info:
nonce: 4437fb872eab95b5831a5d01005ee2995e417862ecfd2079ee4c246859a060ae
token_key: 30820252303d06092a864886f70d01010a3030a00d300b060960864801650
3040202a11a301806092a864886f70d010108300b0609608648016503040202a20302013
00382020f003082020a0282020100d730ce8b3ec7336b48a4f5897564d87c87627298f21
ba4bf34e7931142875c0e52c5aef3222d67e86124403e436d0136ebd806de37730427f81
4f7f0485eace93015471d14e56f3824e8bc5fbe44cf67e241c7642ac3a39452a283ff806
84ddbd66929a371d01e50feef1faee7f63f3ceb4b5ceacb939e06a558c2a6bccfd96fb74
16d3edce151bc7b0a6582f0ce99a7c0e7d5793b13d41292105e510e1aa00e082975a1386
6dfaf3a0a51c0dd1ecb64cc55cc607ca1813b5f91fd8e9cb9db18ffd81ac985a6cfdd5cc
2a0b8a5e4e9fa1ea5f149c1662155bb071c95218cae9ae4af613351baf470b1597bb984c
5ea8326f98aff64f72b60bcd035f6b970eb6edd2f9f2180d5aa8a17ed400056af3faa520
4b73c89b4eada6a057dd3dda9d8e18b3a6d2347c1027e2711f21eb7d96fef50cc3dacb2f
5ccc36e4c138ab75953974ade74982f85b91f419654d390378e2ea5aae33f1b4acf534d0
6de2f114acfdd88d6d708f4d2b646a8112b0fe181489916e2ba5c634cdf9b95762d1e120
169482dd27f959132705079fc4a00eee1f353a81c1e810ade20d070d839277169e09150c
08605afe7cea2aec41d2f85c2af7bef5d577343b4385e2c6c159926c1c8267d00433b88b
ad314a5ddcef58936126f1dd8da7b5728da192f54b304e60f4088e5b0620404f82a5939d
975e6714453a533c172c8a9b4b5da976ea60a5aa91fef0203010001
token_authenticator_input: 00024437fb872eab95b5831a5d01005ee2995e417862e
cfd2079ee4c246859a060aeb741ec1b6fd05f1e95f8982906aec1612896d9ca97d53eef9
4ad3c9fe023f7a49f9293b4d62e4b4759af064df8fa5759c79ab51a00f692541b26d466d
ab48091
token_authenticator: 31c2ae70c45f171ed822a9397ba844d6ee20d09323491f4f9fb
3db54d7d3c7b403fd8ee1e2eedebd693d2493b3b1973142cd85f54257c009edda7cd5ad5
3cf8a07d8a3252c62da14d688d225727faa294b5ed57bd0913482c845b502fd967c27b92
d7c4ee7566894134fc71999e55073bf9d19f95b10f0d2044bef815dccfa7632903af7fd2
09af17c008c93fe76e6c4dffd90de933d711366ee72adc32d1289205a306de9b15bb6639
9b2e89c7cb129eadf062be9c4fd54b1ffea79840d0451544f30cc4eab6c36a06ad6dac87
741059803aa57006ce5aea4e71e053f4901f9901dd1f9fa489763f1c499fdf8ec1903a31
79259c79f7a496eefbe937f5b6d69f17f2b96b184cfab98dc0e46b2b0f5fb57764f894bf
2025d5f26505d70d3fa8766406d246bc037d588f035ea7230969323cb237da949a87db95
854f09ba24363a608d0a56427fac57907204aa8c57dc29633a36a83cff385f1eefcfffc9
730eda756d80109a20394c21b40ddc3e0121bd08e4a1eae48daa3a3c7a78f682ee208a78
686960c270e0ffd0042f38e9f786276ef01f7bda5ee323692c8de4f590014c4f4ea1f583
bf3db5cee7ba39d612c73535ef488c796ea33d2f9049a3b34cbc7db3d58208a11ceaf1b0
ab7853b817f53a3ff470bd3e353ca9d4365de09b6a70d94ee4e9118a0901013026360e99
64b2d6c51d47d4307328cedff3561d65a5583

token_type: 2
issuer_name: 6973737565722e6578616d706c65
redemption_context:
40ff3cdc296a1e823f43b49355df1a2ee4c5f65e5d38ebb3e24ecf4d874997c6
origin_info:
6f726967696e2e6578616d706c652c6f726967696e322e6578616d706c65
nonce: 4437fb872eab95b5831a5d01005ee2995e417862ecfd2079ee4c246859a060ae
token_key: 30820252303d06092a864886f70d01010a3030a00d300b060960864801650
3040202a11a301806092a864886f70d010108300b0609608648016503040202a20302013
00382020f003082020a0282020100d730ce8b3ec7336b48a4f5897564d87c87627298f21
ba4bf34e7931142875c0e52c5aef3222d67e86124403e436d0136ebd806de37730427f81
4f7f0485eace93015471d14e56f3824e8bc5fbe44cf67e241c7642ac3a39452a283ff806
84ddbd66929a371d01e50feef1faee7f63f3ceb4b5ceacb939e06a558c2a6bccfd96fb74
16d3edce151bc7b0a6582f0ce99a7c0e7d5793b13d41292105e510e1aa00e082975a1386
6dfaf3a0a51c0dd1ecb64cc55cc607ca1813b5f91fd8e9cb9db18ffd81ac985a6cfdd5cc
2a0b8a5e4e9fa1ea5f149c1662155bb071c95218cae9ae4af613351baf470b1597bb984c
5ea8326f98aff64f72b60bcd035f6b970eb6edd2f9f2180d5aa8a17ed400056af3faa520
4b73c89b4eada6a057dd3dda9d8e18b3a6d2347c1027e2711f21eb7d96fef50cc3dacb2f
5ccc36e4c138ab75953974ade74982f85b91f419654d390378e2ea5aae33f1b4acf534d0
6de2f114acfdd88d6d708f4d2b646a8112b0fe181489916e2ba5c634cdf9b95762d1e120
169482dd27f959132705079fc4a00eee1f353a81c1e810ade20d070d839277169e09150c
08605afe7cea2aec41d2f85c2af7bef5d577343b4385e2c6c159926c1c8267d00433b88b
ad314a5ddcef58936126f1dd8da7b5728da192f54b304e60f4088e5b0620404f82a5939d
975e6714453a533c172c8a9b4b5da976ea60a5aa91fef0203010001
token_authenticator_input: 00024437fb872eab95b5831a5d01005ee2995e417862e
cfd2079ee4c246859a060ae175a86e01410befaee0307ec86990b8a6e1b8192dfca7f0a9
692e06813ec9d199f9293b4d62e4b4759af064df8fa5759c79ab51a00f692541b26d466d
ab48091
token_authenticator: 6b25498e0c809b8c83ec22f6d46a98cd866354ad56b7aa78ef3
fc237ebe9b7fc5ea3346257ddf085166931653d94016e37896df38a767c438d4b2ca440c
47ae62f5e9074f9a72b06bdf103b4f205b20075d07465750a06e463106bb1ff0f9393f00
1ac5377b9ba7edc28b88aeab4e0d4ca9bd101af13967a4d681be02f8f3308224c0115ef8
7ed890e04441486db438538a3a8a82050377d5882001689216c82bb74513ecab47eebaa4
17f030ee887a83f0cc805becc5dd417a3c1c79f828d28068872b0102e8b2fd21743d4aea
4d4bbe8193b496d4167c312c1bea39c5c337701b33f07706daf2e07d8e0ad178878604b3
adcd766ea93e70a70a0b7d1447d20a6af222d8a785db417f462639e89aa57fd664c1c93d
b0b75dc2189345ab83aa823a7b1eb7c3f965fca97780e46d019044dc9583fc3a4e13705c
7c97594c4e983c975f2ac6e5a3a3fe46bc811e9bb46e8f1d2997152d19eff15e2e238f7b
541413f05141d31154e4a59c4b552192ef1d39b0399c5a9b935d4133f4d4e2b3737e7f45
8f92a90719cf5620b05884a74a16db6dbc48b7e819543290cef76d0e761dff156a6800a7
4430a79cba2cc46178ab72b169222fb082f9e05874ccaf0734e2b24315fb2c429c0b1b42
dc6513d76b891b7ce1c9c819303a050c9251aaa8ea2bb61a3bbbfc770ccad6a53dfd29d9
a65f81e91de499d752b29a43294f0cdaf361a
]]></artwork>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+1923Ycx5Xle3xFDvQwVE8BzvuFttoNg9SIqyWSQ0LW8rI9
6sjISCCbVZXoyiqAME1/y3zLfNnscyIiM7KqQIltuTkPZK+WgarMuJzrPpcI
nJ6eim23XerHweW1Dl5uulup7oOXchiCby4vXwbnu+21Xm87Jbddvw5eq2u9
0kLW9UbfPp4/P39UNL1ayxUGbjay3Z52etue3pjnb/D4qcTjpwOPdxoWAm/p
q35z/zgYto0Q3c3mcbDd7IZtHIZVGIs3+v6u3zSPg2frrd6s9fb0CY0rxLCV
6+ZHuezXmOteD+Kmexz8cdurRTD0m+1GtwN+ul/RD38WgqbtN49FcCoC/OvW
A7Z+hh3slvf8iVn0Zb9a3Xuf9purx8H5zc1SYwHqjD8bMLjePg5erLX96qXc
vAl+kOYV1W2xm4vdjd5su3W/CC7ksmv7zbqTQZWFUWqe6nfrLW37+3W31U3w
egtCDEHfBucrvQEx+Sm9kt0SBLmhBf2LpMnOVL+a7eL1WfB7uWz0X7xtvN7q
W732P+eN/M++v8Jyv/32wh99uOXH/kVdb/pVt1ud4dnZDBdnwflZ8EPfN94U
F9ebbtj2N9d6M/uWJ7pY9rumXcqN9idS8u5frrW86dZXdbcdzsBNIU5PTwNZ
g6ZS4bfL624IIEK7FUQqaHTbrUEVuTZSKedSaaQo2F7LLcZeB7UOdgNoWd8H
atnhwUFs+2CjG61Xc5nd9m/0egjuuu01Dd5vuqtufRY8M+PI5dD7g5mv6S2h
ruVyqddX2s2AD4ObjR5oufSqUvpmK+ulPjLhmdntqmuapRbiC5LpTd/sFO/m
3Red9+t7IY6tGBQNdutlt37Dc3gE6TfDISWwYrnu1/erfjcs7wOjBN1f8KJd
f/Bo0Dp49+63568uvnl2+fTi8vtXT796dvrk7FBxN+oaoqq2u41+//7LM3E5
LelKr/VGbg25eKlBNww7vYEOYmtYZFDLoWP5njNxIeQWgr81v4DU0F7wFCS9
7bBoENSweqfAqQFfLm8hPlj/xfnLy4tvIHnndiviph8GPQz0tXl8XEnAxGJO
9bdWYLptcCenb6701r0geOnNgsWj3+Hz5bK/o2FpHxu9vKefb+Rme2+Fy31n
FvLfLbfEI/rMCM+XNAexjeclsaPvaCK5VjpoMQGk40nXtnpDbNne3+h9avVE
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
V1VTZJivkrQLxBwKUgObK7l/9f8B8Aafad+nAAA=

-->

</rfc>
