<?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.27 (Ruby 3.0.0) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-hardman-verifiable-voice-protocol-00" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.28.0 -->
  <front>
    <title abbrev="VVP">Verifiable Voice Protocol</title>
    <seriesInfo name="Internet-Draft" value="draft-hardman-verifiable-voice-protocol-00"/>
    <author fullname="Daniel Hardman">
      <organization>Provenant, Inc</organization>
      <address>
        <email>daniel.hardman@gmail.com</email>
      </address>
    </author>
    <date year="2025" month="March" day="27"/>
    <keyword>voip</keyword>
    <keyword>telecom</keyword>
    <keyword>telco</keyword>
    <keyword>telephone number</keyword>
    <keyword>vetting</keyword>
    <keyword>KYC</keyword>
    <abstract>
      <?line 169?>

<t>Verifiable Voice Protocol (VVP) authenticates and authorizes organizations and individuals making telephone calls. This eliminates trust gaps that scammers exploit. Like related technolgies such as SHAKEN, RCD, and BCID, VVP binds cryptographic evidence to a SIP INVITE, and verifies this evidence downstream. However, VVP builds from different technical and governance assumptions, and uses stronger, richer evidence. This allows VVP to cross jurisdictional boundaries easily and robustly. It also makes VVP simpler, more decentralized, cheaper to deploy and maintain, more private, more scalable, and higher assurance than alternatives. Because it is easier to adopt, VVP can plug gaps or build bridges between other approaches, functioning as glue in hybrid ecosystems. For example, it may justify an A attestation in SHAKEN, or an RCD passport for branded calling, when a call originates outside SHAKEN or RCD ecosystems. VVP also works well as a standalone mechanism, independent of other solutions. An extra benefit is that VVP enables two-way evidence sharing with verifiable text and chat (e.g., RCS and vCon), as well as with other industry verticals that need verifiability in non-telco contexts.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://dhh1128.github.io/vvp/draft-hardman-verifiable-voice-protocol.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-hardman-verifiable-voice-protocol/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/dhh1128/vvp"/>.</t>
    </note>
  </front>
  <middle>
    <?line 173?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>When we get phone calls, we want to know who's calling, and why. Annoying or malicious strangers abuse expectations far too often.</t>
      <t>Regulators have mandated protections, and industry has responded. However, existing solutions have several drawbacks:</t>
      <ul spacing="normal">
        <li>
          <t>Assurance derives only from the signatures of originating service providers, with no independently verifiable proof of what they assert.</t>
        </li>
        <li>
          <t>Each jurisdiction has its own governance and its own set of signers. Sharing information across boundaries is fraught with logistical and regulatory problems.</t>
        </li>
        <li>
          <t>Deployment and maintenance costs are high.</t>
        </li>
        <li>
          <t>Market complexities such as the presence of aggregators, wholesalers, and call centers that proxy a brand are difficult to model safely.</t>
        </li>
        <li>
          <t>What might work for enterprises offers few benefits and many drawbacks for individual callers.</t>
        </li>
      </ul>
      <t>VVP solves these problems by applying three crucial innovations.</t>
      <section anchor="evidence-scope">
        <name>Evidence scope</name>
        <t>Existing solutions aim to assert variable levels of confidence about a caller's identity, plus possibly some brand attributes. These assertions rest entirely on a service provider's judgment and are testable only in the moment a call is initiated; later, they become repudiable.</t>
        <t>VVP proves more. It always proves the caller's legal identity, plus any authority that the caller has delegated to staff and service providers. It typically also proves brand attributes and right to use a phone number. If a call center is involved, it proves the constraints under which the call center operates as a representative. All VVP proof is traceable back to justifying evidence and can be evaluated in the present or the past. This guarantees accountability for all parties with a permanent, non-repudiable audit trail.</t>
      </section>
      <section anchor="evidence-format">
        <name>Evidence format</name>
        <t>VVP is rooted in an evidence format called <em>authentic chained data container</em>s (<em>ACDC</em>s) -- <xref target="TOIP-ACDC"/>. Other forms of evidence (e.g., JWTs/STIR PASSporTs, digital signatures, and optional interoperable inputs from W3C verifiable credentials <xref target="W3C-VC"/> and SD-JWTs <xref target="SD-JWT-DRAFT"/>) also contribute. However, the foundation that VVP places beneath them is unique. For a discussion of the theory behind VVP evidence, see <xref format="counter" target="appendix-a"/>. For more about additional evidence types, see <xref format="counter" target="building-blocks"/> and <xref format="counter" target="interoperability"/>.</t>
        <t>Because of innovations in format, VVP evidence is easier to create and maintain, safer, and more flexible than alternative approaches. It also lasts much longer. This drastically lowers the friction to adoption.</t>
      </section>
      <section anchor="vetting-refinements">
        <name>Vetting refinements</name>
        <t>Although VVP interoperates with governance frameworks such as SHAKEN <xref target="ATIS-1000074"/>, it allows for a dramatic upgrade of at least one core component: the foundational vetting mechanism. The evidence format used by VVP is also the format used by the Verifiable Legal Entity Identifier (vLEI) standardized in <xref target="ISO-17442-3"/>. vLEIs implement a KYC approach advocated by the G20's Financial Stability Board, and overseen by the G20's Regulatory Oversight Committee. This approach follows LEI rules for KYC (<xref target="ISO-17442-1"/>), and today it's globally required in high-security, high-regulation, cross-border banking.</t>
        <t>Millions of institutions have already undergone LEI vetting, and they already use the resulting evidence of their organizational identity in day-to-day behaviors all over the world. By adopting tooling that's compatible with the vLEI ecosystem, VVP gives adopters an intriguing option: <em>just skip the task of inventing a whole new vetting regime unique to telco, with its corresponding learning curve, costs, and legal and business adoption challenges.</em></t>
        <t>To be clear, VVP does not <em>require</em> that vLEIs be used for vetting. However, by choosing an evidence format that is high-precision and lossless enough to accommodate vLEIs, VVP lets telco ecosystems opt in, either wholly or partially (see <xref format="counter" target="interoperability"/>), to trust bases that are already adopted, and that are not limited to any particular jurisdiction or to the telco industry. It thus offers two-way, easy bridges between identity in phone calls and identity in financial, legal, technical, logistic, regulatory, web, email, and social media contexts.</t>
      </section>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</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 anchor="overview">
      <name>Overview</name>
      <t>Fundamentally, VVP requires a caller to curate (<xref format="counter" target="curating"/>) a dossier (<xref format="counter" target="dossier"/>) of stable evidence that proves identity and authorization. This is done once or occasionally, in advance, as a configuration precondition. Then, for each call, an ephemeral STIR-compatible VVP PASSporT (<xref format="counter" target="passport"/>) is generated that cites (<xref format="counter" target="citing"/>) the preconfigured dossier. Verifiers check the passport and its corresponding dossier, including realtime revocation status, to make decisions (<xref format="counter" target="verifying"/>).</t>
      <section anchor="roles">
        <name>Roles</name>
        <t>Understanding the workflow in VVP requires a careful definition of roles related to the protocol. The terms that follow have deep implications for the mental model, and their meaning in VVP may not match casual usage.</t>
        <section anchor="allocation-holder">
          <name>Allocation Holder</name>
          <t>An <em>allocation holder</em> controls how a phone number is used, in the eyes of a regulator. Enterprises and consumers that make calls with phone numbers they legitimately control are the most obvious category of allocation holders, and are called direct <em>telephone number users</em> (<em>TNUs</em>). Range holders hold allocations for numbers that have not yet been assigned; they don't make calls with these numbers, and are therefore not TNUs, but they are still allocation holders.</t>
          <t>It is possible for an ecosystem to include other parties as allocation holders (e.g., wholesalers, aggregators). However, many regulators dislike this outcome, and prefer that such parties broker allocations without actually holding the allocations as intermediaries.</t>
        </section>
        <section anchor="TP">
          <name>Terminating Party</name>
          <t>For a given phone call, the <em>terminating party</em> (<em>TP</em>) receives the call. A TP can be an individual consumer or an organization. The direct service provider of the TP is the <em>terminating service provider</em> (<em>TSP</em>).</t>
        </section>
        <section anchor="OP">
          <name>Originating Party</name>
          <t>An <em>originating party</em> (<em>OP</em>) controls the first <em>session border controller</em> (<em>SBC</em>) that processes a call, and therefore builds the VVP passport (<xref format="counter" target="passport"/>) that cites the evidence that authenticates and authorizes the call.</t>
          <t>It may be tempting to equate the OP with "the caller", and in some ways this perspective might reflect truth. However, this simple equivalence lacks nuance and doesn't always hold. In a VVP context, it is more accurate to say that the OP creates a SIP INVITE <xref target="RFC3261"/> with explicit, provable authorization from the party accountable for calls on the originating phone number.</t>
          <t>It may also be tempting to associate the OP with an organizational identity like "Company X". While this is not wrong, and is in fact used in high-level descriptions in this specification, in its most careful definition, the cryptographic identity of an OP is more narrow. It typically corresponds to a single service operated by an IT department within (or outsourced but operating at the behest of) Company X, rather than to Company X generically. This narrowness limits cybersecurity risk, because a single service operated by Company X needs far fewer privileges than the company as a whole. Failing to narrow identity appropriately creates vulnerabilities in some alternative approaches. The evidence securing VVP <bcp14>MUST</bcp14> therefore prove a valid relationship between the OP's narrow identity and the broader legal entities that stakeholders more naturally assume and understand (see <xref format="counter" target="DE"/>).</t>
          <t>The direct service provider of an OP is its <em>originating service provider</em> (<em>OSP</em>). For a given phone call, there may be complexity between the hardware that begins a call and the SBC of the OP -- and there may also be many layers, boundaries, and transitions between OSP and TSP.</t>
        </section>
        <section anchor="AP">
          <name>Accountable Party</name>
          <t>For a given call, the <em>accountable party</em> (<em>AP</em>) is the organization or individual (the TNU) that has the right to use the originating phone number, according to the regulator of that number. When a TP asks, "Who's calling?", they have little interest in the technicalities of the OP, and it is almost always the AP that they want to identify. The AP is accountable for the call, and thus "the caller", as far as the regulator and the TP are concerned.</t>
          <t>APs can operate their own SBCs and therefore be their own OPs. However, APs can also use a UCaaS provider that makes the AP-OP relationship indirect. Going further, a business can hire a call center, and delegate to the call center the right to use its phone number. In such a case, the business is the AP, but the call center is the OP that makes calls on its behalf. None of these complexities alter the fact that, from the TP's perspective, the AP is "the caller". The TP chooses to answer or not, based on their desire to interact with the AP. If the TP's trust is abused, the regulator and the TP both want to hold the AP accountable.</t>
          <t>VVP requires an AP to prepare a dossier (<xref format="counter" target="dossier"/>) of evidence that documents a basis for imposing this accountability on them. Only the owner of a given dossier can prove they intend to initiate a VVP call that cites their dossier (see <xref format="counter" target="delegating-signing-authority"/>). Therefore, if a verifier confirms that a particular call properly matches its dossier, the verifier is justified in considering the owner of that dossier the AP for the call. Otherwise, someone is committing fraud. Accountability, and the basis for it, are both unambiguous.</t>
        </section>
        <section anchor="verifier">
          <name>Verifier</name>
          <t>A <em>verifier</em> is a party that wants to know who's calling, and why, and that evaluates the answers to these questions by examining formal evidence. TPs, TSPs, OSPs, government regulators, law enforcement doing lawful intercept, auditors, and even APs or OPs can be verifiers. Each may need to see different views of the evidence about a particular phone call, and it may be impossible to comply with various regulations unless these views are kept distinct -- yet each wants similar and compatible assurance.</t>
          <t>In addition to checking the validity of cryptographic evidence, the verifier role in VVP <bcp14>MAY</bcp14> also consider how that evidence matches business rules and external conditions. For example, a verifier can begin its analysis by deciding whether Call Center Y has the right, in the abstract, to make calls on behalf of Organization X using a given phone number. However, VVP evidence allows a verifier to go further: it can also consider whether Y is allowed to exercise this right at the particular time of day when a call occurs, or in the jurisdiction of a particular TP, given the business purpose asserted in a particular call.</t>
        </section>
      </section>
      <section anchor="lifecycle">
        <name>Lifecycle</name>
        <t>VVP depends on three interrelated activities with evidence:</t>
        <ul spacing="normal">
          <li>
            <t>Curating</t>
          </li>
          <li>
            <t>Citing</t>
          </li>
          <li>
            <t>Verifying</t>
          </li>
        </ul>
        <t>Chronologically, evidence must be curated before it can be cited or verified. In addition, some vulnerabilities in existing approaches occur because evidence requirements are too loose. Therefore, understanding the nature of backing evidence, and how that evidence is created and maintained, is a crucial consideration for VVP. This specification includes normative statements about evidence.</t>
        <t>However, curating does not occur in realtime during phone calls. Citing and verifying are the heart of VVP, and implementers will probably approach VVP from the standpoint of SIP flows <xref target="RFC3261"/>, <xref target="RFC5626"/>. Therefore, we defer the question of curation to <xref format="counter" target="curating"/>. Where not-yet-explained evidence concepts are used, inline references allow easy cross-reference to formal definitions that come later.</t>
      </section>
    </section>
    <section anchor="citing">
      <name>Citing</name>
      <t>A call secured by VVP begins when the OP (<xref format="counter" target="OP"/>) generates a new VVP passport (<xref format="counter" target="passport"/>) that complies with STIR <xref target="RFC8224"/> requirements. In its compact-serialized JWT <xref target="RFC7519"/> form, this passport is then passed as an <tt>Identity</tt> header in a SIP INVITE <xref target="RFC3261"/>. The passport <em>constitutes</em> lightweight, direct, and ephemeral evidence; it <em>cites</em> and therefore depends upon comprehensive, indirect, and long-lived evidence (the dossier; see <xref format="counter" target="dossier"/>). Safely and efficiently citing stronger evidence is one way that VVP differs from alternatives.</t>
      <section anchor="questions-answered-by-a-passport">
        <name>Questions answered by a passport</name>
        <t>The passport directly answers the following questions:</t>
        <ul spacing="normal">
          <li>
            <t>What is the cryptographic identity of the OP?</t>
          </li>
          <li>
            <t>How can a verifier determine the OP's key state at the time the passport was created?</t>
          </li>
          <li>
            <t>How can a verifier identify and fetch more evidence that connects the OP to the asserted AP?</t>
          </li>
          <li>
            <t>What brand attributes are asserted to accompany the call?</t>
          </li>
        </ul>
        <t>The first two answers come from the <tt>kid</tt> header. The third answer is communicated in the required <tt>evd</tt> claim. The fourth answer is communicated in the optional <tt>card</tt> and <tt>goal</tt> claims.</t>
        <t>More evidence can then be fetched to indirectly answer the following additional questions:</t>
        <ul spacing="normal">
          <li>
            <t>What is the legal identity of the AP?</t>
          </li>
          <li>
            <t>Does the AP have the right to use the originating phone number?</t>
          </li>
          <li>
            <t>Does the AP intend the OP to sign passports on its behalf?</t>
          </li>
          <li>
            <t>Does the AP have the right to use the brand attributes asserted for the call?</t>
          </li>
        </ul>
      </section>
      <section anchor="sample-passport">
        <name>Sample passport</name>
        <t>An example will help. In its JSON-serialized form, a typical VVP passport (with some long CESR-encoded hashes shortened by ellipsis for readability) might look like this:</t>
        <sourcecode type="json"><![CDATA[
{
  "header": {
    "alg": "EdDSA",
    "typ": "JWT",
    "ppt": "vvp",
    "kid": "https://agentsrus.net/oobi/EMC.../agent/EAx..."
  },
  "payload": {
    "orig": {"tn": ["+33612345678"]},
    "dest": {"tn": ["+33765432109"]},
    "card": ["NICKNAME:Monde d'Exemples",
      "CHATBOT:https://example.com/chatwithus",
      "LOGO;HASH=EK2...;VALUE=URI:https://example.com/ico64x48.png"],
    "goal": "negotiate.schedule",
    "call-reason": "planifier le prochain rendez-vous",
    "evd": "https://fr.example.com/dossiers/E0F....cesr",
    "origId": "e0ac7b44-1fc3-4794-8edd-34b83c018fe9",
    "iat": 1699840000,
    "exp": 1699840030,
    "jti": "70664125-c88d-49d6-b66f-0510c20fc3a6"
  }
}
]]></sourcecode>
        <t>The semantics of the fields are:</t>
        <ul spacing="normal">
          <li>
            <t><tt>alg</tt> <em>(required)</em> <bcp14>MUST</bcp14> be "EdDSA". Standardizing on one scheme prevents jurisdictions with incompatible or weaker cryptography. The RSA, HMAC, and ES256 algorithms <bcp14>MUST NOT</bcp14> be used. (This choice is motivated by compatibility with the vLEI and its associated ACDC ecosystem, which depends on the Montgomery-to-Edwards transformation.)</t>
          </li>
          <li>
            <t><tt>typ</tt> <em>(required)</em> Per <xref target="RFC8225"/>, <bcp14>MUST</bcp14> be "passport".</t>
          </li>
          <li>
            <t><tt>ppt</tt> <em>(required)</em> Per <xref target="RFC8225"/>, <bcp14>MUST</bcp14> identify the specific PASSporT type -- in this case, "vvp".</t>
          </li>
          <li>
            <t><tt>kid</tt> <em>(required)</em> <bcp14>MUST</bcp14> be the OOBI of an AID (<xref format="counter" target="aid"/>) controlled by the OP (<xref format="counter" target="OP"/>). An OOBI is a special URL that facilitates ACDC's viral discoverability goals. It returns IANA content-type <tt>application/json+cesr</tt>, which provides some important security guarantees. The content for this particular OOBI <bcp14>MUST</bcp14> be a KEL (<xref format="counter" target="KEL"/>). Typically the AID in question does not identify the OP as a legal entity, but rather software running on or invoked by the SBC operated by the OP. (The AID that identifies the OP as a legal entity may be controlled by a multisig scheme and thus require multiple humans to create a signature. The AID for <tt>kid</tt> <bcp14>MUST</bcp14> be singlesig and, in the common case where it is not the legal entity AID, <bcp14>MUST</bcp14> have a delegate relationship with the legal entity AID, proved through Delegate Evidence <xref format="counter" target="DE"/>.)</t>
          </li>
          <li>
            <t><tt>orig</tt> <em>(required)</em> Although VVP does not depend on SHAKEN, the format of this field <bcp14>MUST</bcp14> conform to SHAKEN requirements (<xref target="ATIS-1000074"/>), for interoperability reasons (see <xref format="counter" target="interoperability"/>). It <bcp14>MUST</bcp14> also satisfy one additional constraint, which is that only one phone number is allowed. Depite the fact that a containing SIP INVITE may allow multiple originating phone numbers, only one can be tied to evidence evaluated by verifiers.</t>
          </li>
          <li>
            <t><tt>dest</tt> <em>(required)</em> For interoperability reasons, <bcp14>MUST</bcp14> conform to SHAKEN requirements.</t>
          </li>
          <li>
            <t><tt>card</tt> <em>(optional)</em> Contains one or more brand attributes. These are analogous to <xref target="RCD-DRAFT"/> or <xref target="CTIA-BCID"/> data, but differ in that they <bcp14>MUST</bcp14> be justified by evidence in the dossier. Because of this strong foundation that interconnects with formal legal identity, they can be used to derive other brand evidence (e.g., an RCD passport) as needed. Individual attributes <bcp14>MUST</bcp14> conform to the VCard standard <xref target="RFC6350"/>.</t>
          </li>
          <li>
            <t><tt>goal</tt> <em>(optional)</em> A machine-readable, localizable goal code, as described informally by <xref target="ARIES-RFC-0519"/>. If present, the dossier <bcp14>MUST</bcp14> prove that the OP is authorized by the AP to initiate calls with this particular goal.</t>
          </li>
          <li>
            <t><tt>call-reason</tt> <em>(optional)</em> A human-readable, arbitrary phrase that describes the self-asserted intent of the caller. This claim is largely redundant with <tt>goal</tt>; most calls will either omit both, or choose one or the other. Since <tt>call-reason</tt> cannot be analyzed or verified in any way, it is discouraged. However it is not formally deprecated. It is included in VVP to facilitate the construction of derivative RCD passports which have the property (see <xref format="counter" target="interoperability"/>).</t>
          </li>
          <li>
            <t><tt>evd</tt> <em>(required)</em> <bcp14>MUST</bcp14> be the OOBI of a bespoke ACDC (the dossier, <xref format="counter" target="dossier"/>) that constitutes a verifiable data graph of all evidence justifying belief in the identity and authorization of the AP, the OP, and any relevant delegations. This URL can be hosted on any convenient web server, and is somewhat analogous to the <tt>x5u</tt> header in X509 contexts. See below for details.</t>
          </li>
          <li>
            <t><tt>origId</tt> <em>(optional)</em> Follows SHAKEN semantics.</t>
          </li>
          <li>
            <t><tt>iat</tt> <em>(required)</em> Follows standard JWT semantics (see <xref target="RFC7519"/>).</t>
          </li>
          <li>
            <t><tt>exp</tt> <em>(required)</em> Follows standard JWT semantics. As this sets a window for potential replay attacks between the same two phone numbers, a recommended expiration should be 30 seconds, with a minimum of 10 seconds and a maximum of 300 seconds.</t>
          </li>
          <li>
            <t><tt>jti</tt> <em>(optional)</em> Follows standard JWT semantics.</t>
          </li>
        </ul>
        <t>For information about the signature over a passport, see <xref format="counter" target="pss"/>.</t>
      </section>
    </section>
    <section anchor="verifying">
      <name>Verifying</name>
      <section anchor="algorithm">
        <name>Algorithm</name>
        <t>When a verifier encounters a VVP passport, they <bcp14>SHOULD</bcp14> verify by using an algorithm similar to the following. (Optimizations may combine or reorder operations, but <bcp14>MUST</bcp14> achieve all of the same guarantees, in order to be compliant implementations.)</t>
        <ol spacing="normal" type="1"><li>
            <t>Confirm that the <tt>orig</tt> and <tt>dest</tt> fields match contextual observations and other SIP metadata. That is, the passport appears aligned with what is known about the call from external sources. This is not a cryptographic analysis.</t>
          </li>
          <li>
            <t>Extract the <tt>kid</tt> field.</t>
          </li>
          <li>
            <t>Fetch the key state for the OP from the OOBI in <tt>kid</tt>. Caches may be used to optimize this, as long as they meet the freshness standards of the verifier. Normally, the current key state is checked, but the OOBI returns a data stream that also allows historical analysis.</t>
          </li>
          <li>
            <t>Use the public key of the OP to verify that the signature on the passport is valid for that key state. On success, the verifier knows that the OP is at least making an assertion about the identity and authorizations of the AP. (This is approximately the level of assurance provided by existing alternatives to VVP.)</t>
          </li>
          <li>
            <t>Extract the <tt>evd</tt> field, which references the dossier (<xref format="counter" target="dossier"/>) that constitutes backing evidence.</t>
          </li>
          <li>
            <t>Use the SAID (<xref format="counter" target="said"/>) of the dossier as a lookup key to see whether the dossier has already been fully validated. Since dossiers are highly stable, caching dossier validations is recommended.</t>
          </li>
          <li>
            <t>If the dossier requires full validation, perform it. Validation includes checking the signature on each ACDC in the dossier's data graph against the key state of its respective issuer at the time the issuance occurred. Key state is proved by the KEL (<xref format="counter" target="KEL"/>), and checked against independent witnesses.  </t>
            <t>
Issuance is recorded explicitly in the KEL's overall event sequence, so this check does not require guesses about how to map issuance timestamps to key state events. Subsequent key rotations do not invalidate this analysis.  </t>
            <t>
Validation also includes comparing data structure and values against the declared schema, plus a full traversal of all chained CVD (<xref format="counter" target="cvd"/>), back to the root of trust for each artifact. The verifier <bcp14>MUST</bcp14> accept the root of trust as a valid authority on the vital question answered by each credential that depends upon it. The correct relationships among evidence artifacts <bcp14>MUST</bcp14> also be checked (e.g., proving that the issuer of one piece is the issuee of another piece).</t>
          </li>
          <li>
            <t>Check to see whether the revocation status of the dossier and each item it depends on has been tested recently enough to satisfy the verifier's freshness standards. If no, check for revocations anywhere in the data graph of the dossier. Revocations are not the same as key rotations. They can be checked much more quickly than doing a full validation. Revocation checks can also be cached, possibly with a different freshness threshold than the main evidence.</t>
          </li>
          <li>
            <t>Assuming that the dossier is valid and has no breakages due to revocation, confirm that the OP is authorized to sign the passport. If there is no delegation evidence (<xref format="counter" target="DE"/>), the AP and the OP <bcp14>MUST</bcp14> be identical, and the OP <bcp14>MUST</bcp14> be the issuee of the vetting credential; otherwise, the OP <bcp14>MUST</bcp14> be the issuee of a delegated signing credential for which the issuer is the AP.</t>
          </li>
          <li>
            <t>Extract the <tt>orig</tt> field and compare it to the TNAlloc credential (<xref format="counter" target="tnalloc-credential"/>) cited in the dossier (<xref format="counter" target="dossier"/>) to confirm that the AP (<xref format="counter" target="AP"/>) -- or, if OP is not equal to AP and OP is using their own number, the OP (<xref format="counter" target="OP"/>) -- has the right to originate calls with this number.</t>
          </li>
          <li>
            <t>If the passport includes non-null values for the optional <tt>card</tt> or <tt>goal</tt> fields, extract that information and check that the brand attributes claimed for the call are justified by a brand credential (<xref format="counter" target="brand-credential"/>) in the dossier.</t>
          </li>
          <li>
            <t>Check any business logic. For example, if the delegated signer credential says that the OP can only call on behalf of the AP during certain hours, or in certain geos, check those attributes of the call.</t>
          </li>
        </ol>
      </section>
      <section anchor="planning-for-efficiency">
        <name>Planning for efficiency</name>
        <t>The complete algorithm listed above is quite rigorous. With no caches, it may take several seconds, much like a thorough validation of a certificate chain. However, much VVP evidence is stable for long periods of time and lends itself to caching, subject to the proviso that revocation freshness must be managed wisely. Since the same dossier is used to justify many outbound calls -- perhaps thousands or millions of calls, for busy call centers -- and many dossiers will reference the same issuers and issuees and their associated key states and KELs (<xref format="counter" target="KEL"/>), caching will produce huge benefits.</t>
        <t>Furthermore, because SAIDs and their associated data (including links to other nodes in a data graph) have a tamper-evident relationship, any party can perform validation and compile their results, then share the data with verifiers that want to do less work. Validators like this are not oracles, because consumers of such data need not trust shared results blindly. They can always directly recompute some or all of it from a passport, to catch deception. However, they can do this lazily or occasionally, per their preferred balance of risk/effort.</t>
        <t><em>In toto</em>, these characteristics mean that no centralized registry is required in any given ecosystem. Data can be fetched directly from its source, across jurisdictional boundaries. Because it is fetched from its source, it comes with consent. Privacy can be tuned (see <xref format="counter" target="privacy"/>). Simple opportunistic, uncoordinated reuse (e.g., in or across the datacenters of TSPs) will arise spontaneously and will dramatically improve the scale and efficiency of the system.</t>
      </section>
    </section>
    <section anchor="curating">
      <name>Curating</name>
      <t>The evidence that's available in today's telco ecosystems resembles some of the evidence described here, in concept. However, existing evidence has gaps, and its format is fragile. It requires direct trust in the proximate issuer, and it is typically organized for discovery; both characteristics lead to large, centralized registries at a regional or national level. These registries become a trusted third party, which defeats some of the purpose of creating decentralized and independently verifiable evidence in the first place. Sharing such evidence across jurisdiction boundaries requires regulatory compatibility and bilateral agreements. Sharing at scale is impractical at best, if not illegal.</t>
      <t>How evidence is issued, propagated, quality-controlled, and referenced is therefore an important concern for this specification.</t>
      <section anchor="activities">
        <name>Activities</name>
        <t>The following curation activities guarantee the evidence upon which a VVP ecosystem depends.</t>
        <section anchor="witnessing-and-watching">
          <name>Witnessing and watching</name>
          <t>In an ACDC-based ecosystem, issuers issue and revoke their own evidence without any calls to a centralized registry or authority. However, KERI's decentralized witness feature <bcp14>MUST</bcp14> be active. This provides an official, uniform, and high-security methodology for curating the relationship between keys and identifiers, and between identifiers and non-repudiable actions like issuing and revoking credentials. In addition, watchers <bcp14>MAY</bcp14> be used by given verifiers, to provide efficient caching, pub-sub notifications of state changes, and duplicity detection. For more about these topics, see <xref format="counter" target="appendix-b"/>.</t>
        </section>
        <section anchor="vetting-identity">
          <name>Vetting identity</name>
          <t>The job of vetting legal entities (which includes APs <xref format="counter" target="AP"/>, but also OPs <xref format="counter" target="OP"/>) and issuing vetting credentials (<xref format="counter" target="vetting-credential"/>) is performed by a <em>legal entity vetter</em>. VVP <bcp14>MUST</bcp14> have evidence of vetted identity. It places few requirements on such vetters, other than the ones already listed for vetting credentials themselves. Vetting credentials <bcp14>MAY</bcp14> expire, but this is not particularly desirable and might actually be an antipattern. ACDCs and AIDs facilitate much longer lifecycles than certificates; proactive key rotation is recommended but creates no reason to rotate evidence. However, a legal entity vetter <bcp14>MUST</bcp14> agree to revoke vetting credentials in a timely manner if the legal status of an entity changes, or if data in a vetting credential becomes invalid.</t>
        </section>
        <section anchor="vetting-brand">
          <name>Vetting brand</name>
          <t>At the option of the AP and OP, VVP <bcp14>MAY</bcp14> prove brand attributes. When this feature is active, the job of analyzing the brand assets of a legal entity and issuing brand credentials (<xref format="counter" target="brand-credential"/>) is performed by a <em>brand vetter</em>. A brand vetter <bcp14>MAY</bcp14> be a legal entity vetter, and <bcp14>MAY</bcp14> issue both types of credentials after a composite analysis. However, the credentials themselves <bcp14>MUST NOT</bcp14> use a combined schema, the credentials <bcp14>MUST</bcp14> have independent lifecycles, and the assurances associated with each credential type <bcp14>MUST</bcp14> remain independent.</t>
          <t>A brand vetter <bcp14>MUST</bcp14> verify the canonical properties of a brand, but it <bcp14>MUST</bcp14> do more than this: it <bcp14>MUST</bcp14> issue the brand credential to the AID <xref format="counter" target="aid"/> of an issuee that is also the issuee of a vetting credential that already exists, and it <bcp14>MUST</bcp14> verify that the legal entity in the vetting credential has a right to use the brand in question. This link <bcp14>MUST NOT</bcp14> be based on mere weak evidence such as an observation that the legal entity's name and the brand name have some or all words in common, or the fact that a single person requested both credentials. Further, the brand vetter <bcp14>MUST</bcp14> agree to revoke brand credentials in a timely manner if the associated vetting credential is revoked, if the legal entity's right to use the brand changes, or if characteristics of the brand evolve.</t>
        </section>
        <section anchor="allocating-tns">
          <name>Allocating TNs</name>
          <t>At the option of the AP and OP, VVP <bcp14>SHOULD</bcp14> prove the right to use the originating phone number. When this feature is active, regulators <bcp14>MUST</bcp14> issue TNAlloc credentials (<xref format="counter" target="tnalloc-credential"/>) to range holders, and range holders <bcp14>MUST</bcp14> issue them to downstream AHs in an unbroken chain that reaches telephone number users (TNUs; see <xref format="counter" target="allocation-holder"/>). TNUs <bcp14>MAY</bcp14> in turn issue them to a delegate such as a call center. If aggregators or other intemediaries hold an RTU in the eyes of a regulator, then intermediate TNAlloc credentials <bcp14>MUST</bcp14> be created to track that RTU as part of the chain. On the other hand, if TNUs acquire phone numbers through aggregators, but regulators do not consider aggregators to hold allocations, then aggregators <bcp14>MUST</bcp14> work with range holders to assure that the appropriate TNAlloc credentials are issued to the TNUs.</t>
        </section>
        <section anchor="authorizing-brand-proxy">
          <name>Authorizing brand proxy</name>
          <t>When VVP is used to prove brand, APs (<xref format="counter" target="AP"/>) <bcp14>MAY</bcp14> issue brand proxy credentials (<xref format="counter" target="brand-proxy-credential"/>) to OPs (<xref format="counter" target="OP"/>), giving them the right to use the AP's brand. Without this credential, the OP only has the right to use the AP's phone number.</t>
          <t>Decisions about whether to issue vetting and brand credentials might be driven by large databases of metadata about organizations and brands, but how such systems work is out of scope. The credentials themselves contain all necessary information, and once credentials are issued, they constitute an independent source of truth as far as VVP is concerned. No party has to return to the operators of such databases to validate anything.</t>
        </section>
        <section anchor="delegating-signing-authority">
          <name>Delegating signing authority</name>
          <t>An AP <bcp14>MUST</bcp14> prove, by issuing a delegated signer credential (<xref format="counter" target="delegated-signer-credential"/>), that the signer of its VVP passports does so with its explicit authorization. Normally the signer is automation under the control of the OP, but the issuee of the credential <bcp14>MAY</bcp14> vary at the AP's discretion.</t>
          <t>Since this credential merely documents the AP's intent to be accountable for the actions of the signer, the AP <bcp14>MAY</bcp14> choose whatever process it likes to issue it.</t>
        </section>
        <section anchor="revoking">
          <name>Revoking</name>
          <t>Revoking an ACDC is as simple as the issuer signing a revocation event and distributing it to witnesses (see <xref format="counter" target="appendix-b"/>). Parties that perform a full validation of a given ACDC (see <xref format="counter" target="verifying"/>) will automatically detect the revocation event in realtime, because they will contact one or more of these witnesses. Parties that are caching their validations <bcp14>MAY</bcp14> poll witnesses very efficiently to discover revocation events. Some witnesses may choose to offer the option of registering a callback, allowing interested parties to learn about revocations even more efficiently.</t>
        </section>
      </section>
      <section anchor="building-blocks">
        <name>Building blocks</name>
        <t>The term "credential" has a fuzzy meaning in casual conversation. However, understanding how evidence is built from credentials in VVP requires considerably more precision. We will start from lower-level concepts.</t>
        <section anchor="said">
          <name>SAID</name>
          <t>A <em>self-addressing identifier</em> (<em>SAID</em>) is the hash of a canonicalized JSON object, encoded in self-describing CESR format <xref target="TOIP-CESR"/>. The raw bytes from the digest function are left-padded to the nearest 24-bit boundary and transformed to base64url <xref target="RFC4648"/>. The left-pad char from the converted left-pad byte is replaced with a code char that tells which digest function was used.</t>
          <t>An example of a SAID is <tt>E81Wmjyz5nXMCYrQqWyRLAYeKNQvYLYqMLYv_qm-qP7a</tt>, and a regex that matches all valid SAIDs is: <tt>[EFGHI][-_\w]{43}|0[DEFG][-_\w]{86}</tt>. The <tt>E</tt> prefix in the example indicates that it is a Blake3-256 hash.</t>
          <t>SAIDs are evidence that hashed data has not changed. They can also function like a reference, hyperlink, or placeholder for the data that was hashed to produce them (though they are more similar to URNs than to URLs <xref target="RFC3986"/>, since they contain no location information).</t>
        </section>
        <section anchor="signature">
          <name>Signature</name>
          <t>A digital signature over arbitrary data D constitutes evidence that the signer processed D with a signing function that took D and the signer's private key as inputs: <tt>signature = sign(D, privkey)</tt>. The evidence can be verified by checking that the signature is bound to D and the public key of the signer: <tt>valid = verify(signature, D, pubkey)</tt>. Assuming that the signer has not lost unique control of the private key, and that cryptography is appropriately strong, we are justified in the belief that the signer must have taken deliberate action that required seeing an unmodified D in its entirety.</t>
          <t>The assumption that a signer has control over their private keys may often be true (or at least believed, by the signer) at the time a signature is created. However, after key compromise, an attacker can create and sign evidence that purports to come from the current or an earlier time period, unless signatures are anchored to a data source that detects anachronisms. Lack of attention to this detail undermines the security of many credential schemes, including in telco. VVP explicitly addresses this concern by anchoring signatures on non-ephemeral evidence to KELs (<xref format="counter" target="KEL"/>).</t>
        </section>
        <section anchor="aid">
          <name>AID</name>
          <t>An <em>autonomic identifier</em> (<em>AID</em>) is a short string that can be resolved to one or more cryptographic keys at a specific version of the identifier's key state. Using cryptographic keys, a party can prove it is the controller of an AID by creating digital signatures. AIDs are like W3C DIDs <xref target="W3C-DID"/>, and can be transformed into DIDs. The information required to resolve an AID to its cryptographic keys is communicated through a special form of URI called an <em>out-of-band invitation</em> (<em>OOBI</em>). An OOBI points to an HTTP resource that returns IANA content-type <tt>application/json+cesr</tt>; it is somewhat analogous to a combination of the <tt>kid</tt> and <tt>x5u</tt> constructs in many JWTs. AIDs and OOBIs are defined in the KERI spec <xref target="TOIP-KERI"/>.</t>
          <t>An example of an AID is <tt>EMCYrQqWyRLAYqMLYv_qm-qP7eKN81Wmjyz5nXQvYLYa</tt>. AIDs are created by calculating the hash of the identifier's initial state; since this state is typically a canonicalized JSON object, AIDs usually match the same regex as SAIDs (which are hashes of JSON). A noteworthy exception is that non-transferrable AIDs begin with <tt>B</tt> instead of <tt>E</tt> or another letter. Such AIDs hash only their public key, not a document. They are analogous to did:key values, and play a limited role in VVP. They are incapable of rotating keys or anchoring events to a KEL. They therefore lack OOBIs and can receive but not issue ACDCs. However, their virtue is that they can be created and used without a sophisticated wallet. This may make them a convenient way to identify the automation that signs passports and receives a delegated signer credential (see <xref format="counter" target="delegating-signing-authority"/>).</t>
          <t>An example of an OOBI for an AID is <tt>https://agentsrus.net/oobi/EMCYrQqWyRLAYqMLYv_qm-qP7eKN81Wmjyz5nXQvYLYa/agent/EAxBDJkpA0rEjUG8vJrMdZKw8YL63r_7zYUMDrZMf1Wx</tt>. Note the same <tt>EMCY...</tt> in the AID and its OOBI. Many constructs in KERI may have OOBIs, but when OOBIs are associated with AIDs, such OOBIs always contain their associated AID as the first URL segment that matches the AID regex. They point either to an agent or a witness that provides verifiable state information for the AID.</t>
          <t>AIDs possess several security properties (e.g., self-certification, support for prerotation and multisig, support for witnesses, and cooperative delegation) that are not guaranteed by DIDs in general. Such properties are vital to some of VVP's goals for high assurance.</t>
        </section>
        <section anchor="signatures-over-saids">
          <name>Signatures over SAIDs</name>
          <t>Since neither a SAID value nor the data it hashes can be changed without breaking the correspondence between them, and since the cryptographic hash function used ensures strong collision resistance, signing over a SAID is equivalent, in how it commits the signer to content and provides tamper evidence, to signing over the data that the SAID hashes. Since SAIDs can function as placeholders for JSON objects, a SAID can represent such an object in a larger data structure. And since SAIDs can function as a reference without making a claim about location, it is possible to combine these properties to achieve some indirections in evidence that are crucial in privacy and regulatory compliance.</t>
          <t>VVP uses SAIDs and digital signatures as primitive forms of evidence.</t>
        </section>
        <section anchor="x509-certificates">
          <name>X509 certificates</name>
          <t>VVP does not depend on X509 certificates <xref target="RFC5280"/> for any of its evidence. However, if deployed in a hybrid mode, it <bcp14>MAY</bcp14> be used beside alternative mechanisms that are certificate-based. In such cases, self-signed certificates that never expire might suffice to tick certificate boxes, while drastically simplifying the burden of maintaining accurate, unexpired, unrevoked views of authorizations and reflecting that knowledge in certificates. This is because deep authorization analysis flows through VVP's more rich and flexible evidence chain. See <xref format="counter" target="interoperability"/>.</t>
        </section>
        <section anchor="passport">
          <name>Passport</name>
          <t>VVP emits and verifies a STIR PASSporT <xref target="RFC8225"/> that is fully compliant in all respects, except that it <bcp14>MAY</bcp14> omit the <tt>x5u</tt> header that links it to an X509 certificate (see <xref format="counter" target="interop-certs"/>).</t>
          <t>The passport is a form of evidence suitable for evaluation during the brief interval when a call is being initiated, and it is carefully backed by evidence with a longer lifespan (<xref format="counter" target="dossier"/>). Conceptually, VVP's version is similar to a SHAKEN passport <xref target="RFC8588"/>. It <bcp14>MAY</bcp14> also reference brand-related evidence, allowing it to play an additional role similar to the RCD passport <xref target="RCD-PASSPORT"/>.</t>
          <t>Neither VVP's backing evidence nor its passport depends on a certificate authority ecosystem. The passport <bcp14>MUST</bcp14> be secured by an EdDSA digital signature <xref target="RFC8032"/>, <xref target="FIPS186-4"/>, rather than the signature variants preferred by the other passport types. Instead of including granular fields in the claims of its JWT, the VVP passport cites a rich data graph of evidence by referencing the SAID of that data graph. This indirection and its implications are discussed below.</t>
          <figure>
            <name>SHAKEN Passport compared to VVP Passport</name>
            <artset>
              <artwork type="svg" name="fig1.svg">
          <svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="240" width="528" viewBox="0 0 528 240" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <path d="M 8,32 L 8,192" fill="none" stroke="black"/>
                  <path d="M 200,32 L 200,192" fill="none" stroke="black"/>
                  <path d="M 232,64 L 232,224" fill="none" stroke="black"/>
                  <path d="M 296,32 L 296,176" fill="none" stroke="black"/>
                  <path d="M 488,32 L 488,176" fill="none" stroke="black"/>
                  <path d="M 520,144 L 520,224" fill="none" stroke="black"/>
                  <path d="M 8,32 L 200,32" fill="none" stroke="black"/>
                  <path d="M 296,32 L 488,32" fill="none" stroke="black"/>
                  <path d="M 192,64 L 232,64" fill="none" stroke="black"/>
                  <path d="M 472,144 L 520,144" fill="none" stroke="black"/>
                  <path d="M 296,176 L 488,176" fill="none" stroke="black"/>
                  <path d="M 8,192 L 200,192" fill="none" stroke="black"/>
                  <path d="M 160,224 L 232,224" fill="none" stroke="black"/>
                  <path d="M 488,224 L 520,224" fill="none" stroke="black"/>
                  <polygon class="arrowhead" points="496,224 484,218.4 484,229.6" fill="black" transform="rotate(180,488,224)"/>
                  <polygon class="arrowhead" points="168,224 156,218.4 156,229.6" fill="black" transform="rotate(180,160,224)"/>
                  <circle cx="464" cy="144" r="6" class="opendot" fill="white" stroke="black"/>
                  <g class="text">
                    <text x="104" y="20">SHAKEN Passport</text>
                    <text x="396" y="20">VVP Passport</text>
                    <text x="56" y="52">protected</text>
                    <text x="344" y="52">protected</text>
                    <text x="108" y="68">kid: pubkey of OSP</text>
                    <text x="380" y="68">kid: AID of OP</text>
                    <text x="48" y="84">payload</text>
                    <text x="336" y="84">payload</text>
                    <text x="48" y="100">iat</text>
                    <text x="336" y="100">iat</text>
                    <text x="52" y="116">orig</text>
                    <text x="340" y="116">orig</text>
                    <text x="52" y="132">dest</text>
                    <text x="340" y="132">dest</text>
                    <text x="60" y="148">attest</text>
                    <text x="392" y="148">evd (JL to dossier)</text>
                    <text x="92" y="164">...more claims</text>
                    <text x="368" y="164">signature of OP</text>
                    <text x="84" y="180">signature of OSP</text>
                    <text x="92" y="228">pubkey in cert</text>
                    <text x="388" y="228">data graph of evidence</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art" name="fig1.txt">
&lt;![CDATA[
     SHAKEN Passport                       VVP Passport
+-----------------------+           +-----------------------+
| protected             |           | protected             |
|   kid: pubkey of OSP -+---+       |   kid: AID of OP      |
| payload               |   |       | payload               |
|   iat                 |   |       |   iat                 |
|   orig                |   |       |   orig                |
|   dest                |   |       |   dest                |
|   attest              |   |       |   card                |
|   ...more claims      |   |       |   evd (JL to dossier)-+---+
| signature of OSP      |   |       | signature of OP       |   |
+-----------------------+   |       +-----------------------+   |
                            |                                   |
                            |                                   |
    pubkey in cert &lt;--------+        data graph of evidence &lt;---+
]]&gt;
    </artwork>
            </artset>
          </figure>
        </section>
        <section anchor="acdcs">
          <name>ACDCs</name>
          <t>Besides digital signatures and SAIDs, and the ephemeral passport, VVP uses long-lasting evidence in the ACDC format <xref target="TOIP-ACDC"/>. This is normalized, serialized data with an associated digital signature. Unlike X509 certificates, ACDCs are bound directly to the AIDs of their issuers and issuees, not to public keys of these parties. This has a radical effect on the lifecycle of evidence, because keys can be rotated without invalidating ACDCs (see <xref format="counter" target="appendix-a"/>).</t>
        </section>
        <section anchor="KEL">
          <name>KELs</name>
          <t>Unlike X509 certificates, JWTs <xref target="RFC7519"/>, and W3C Verifiable Credentials <xref target="W3C-VC"/>, signatures over ACDC data are not <em>contained inside</em> the ACDC; rather, they are <em>referenced by</em> the ACDC and <em>anchored in</em> a verifiable data structure called a <em>key event log</em> or <em>KEL</em> <xref target="TOIP-KERI"/>.</t>
          <figure>
            <name>X509 compared to ACDC</name>
            <artset>
              <artwork type="svg" name="fig2.svg">
          <svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="304" width="456" viewBox="0 0 456 304" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <path d="M 8,32 L 8,192" fill="none" stroke="black"/>
                  <path d="M 200,32 L 200,192" fill="none" stroke="black"/>
                  <path d="M 248,32 L 248,192" fill="none" stroke="black"/>
                  <path d="M 248,240 L 248,288" fill="none" stroke="black"/>
                  <path d="M 376,240 L 376,288" fill="none" stroke="black"/>
                  <path d="M 432,64 L 432,272" fill="none" stroke="black"/>
                  <path d="M 448,32 L 448,192" fill="none" stroke="black"/>
                  <path d="M 8,32 L 200,32" fill="none" stroke="black"/>
                  <path d="M 248,32 L 448,32" fill="none" stroke="black"/>
                  <path d="M 400,64 L 432,64" fill="none" stroke="black"/>
                  <path d="M 8,192 L 200,192" fill="none" stroke="black"/>
                  <path d="M 248,192 L 448,192" fill="none" stroke="black"/>
                  <path d="M 248,240 L 376,240" fill="none" stroke="black"/>
                  <path d="M 376,272 L 432,272" fill="none" stroke="black"/>
                  <path d="M 248,288 L 376,288" fill="none" stroke="black"/>
                  <polygon class="arrowhead" points="408,64 396,58.4 396,69.6" fill="black" transform="rotate(180,400,64)"/>
                  <g class="text">
                    <text x="28" y="20">X509</text>
                    <text x="268" y="20">ACDC</text>
                    <text x="36" y="52">Data</text>
                    <text x="304" y="52">v (version)</text>
                    <text x="64" y="68">Version</text>
                    <text x="324" y="68">d (SAID of item)</text>
                    <text x="88" y="84">Serial Number</text>
                    <text x="328" y="84">i (AID of issuer)</text>
                    <text x="100" y="100">Issuer: DN of issuer</text>
                    <text x="340" y="100">ri (status registry)</text>
                    <text x="52" y="116">Validity</text>
                    <text x="300" y="116">s (schema)</text>
                    <text x="104" y="132">Subject: DN of issuee</text>
                    <text x="316" y="132">a (attributes)</text>
                    <text x="104" y="148">Sub PubKey Info: KeyX</text>
                    <text x="336" y="148">i (AID of issuee)</text>
                    <text x="60" y="164">Extensions</text>
                    <text x="340" y="164">dt (issuance date)</text>
                    <text x="56" y="180">Signature</text>
                    <text x="292" y="180">...etc</text>
                    <text x="256" y="228">KEL</text>
                    <text x="312" y="260">signed anchor</text>
                    <text x="292" y="276">for SAID</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art" name="fig2.txt">
&lt;![CDATA[
 X509                          ACDC
+-----------------------+     +------------------------+
| Data                  |     | v (version)            |
|   Version             |     | d (SAID of item) &lt;---+ |
|   Serial Number       |     | i (AID of issuer)    | |
| Issuer: DN of issuer  |     | ri (status registry) | |
| Validity              |     | s (schema)           | |
| Subject: DN of issuee |     | a (attributes)       | |
| Sub PubKey Info: KeyX |     |  i (AID of issuee)   | |
| Extensions            |     |  dt (issuance date)  | |
| Signature             |     |  ...etc              | |
+-----------------------+     +----------------------+-+
                                                     |
                              KEL                    |
                              +---------------+      |
                              | signed anchor |      |
                              | for SAID      +------+
                              +---------------+
]]&gt;
    </artwork>
            </artset>
          </figure>
          <t>A KEL has some trust characteristics that resemble a blockchain. However, it is specific to one AID only (the AID of the issuer of the ACDC) and thus is not centralized. The KELs for two different AIDs need not (and typically do not) share any common storage or governance, and do not require coordination or administration. KELs thus suffer none of the performance and governance problems of blockchains, and incur none of blockchain's difficulties with regulatory requirements like data locality or right to be forgotten.</t>
          <t>ACDCs can be freely converted between text and binary representations, and either type of representation can also be compacted or expanded to support nuanced disclosure goals (see <xref format="counter" target="graduated-disclosure"/>). An ACDC is also uniquely identified by its SAID, which means that a SAID can take the place of a full ACDC in certain data structures and processes. None of these transformations invalidate the associated digital signatures, which means that any variant of a given ACDC is equivalently verifiable.</t>
          <t>The revocation of a given ACDC can be detected via the witnesses declared in its issuer's KEL. Discovering, detecting, and reacting to such events can be very efficient. Any number of aggregated views can be built on demand, for any subset of an ecosystem's evidence, by any party. This requires no special authority or access, and does not create a central registry as a source of truth, since such views are tamper-evident and therefore can be served by untrusted parties. Further, different views of the evidence can contain or elide different fields of the evidence data, to address privacy, regulatory, and legal requirements.</t>
        </section>
        <section anchor="cvd">
          <name>CVD</name>
          <t><em>Cryptographically verifiable data</em> (<em>CVD</em>) is data that's associated with a digital signature and a claim about who signed it. When CVD is an assertion, we make the additional assumption that the signer intends whatever the data asserts, since they took an affirmative action to create non-repudiable evidence that they processed it. CVD can be embodied in many formats, but in the context of VVP, all instances of CVD are ACDCs. When CVD references other CVD, the computer science term for the resulting data structure is a <em>data graph</em>.</t>
        </section>
        <section anchor="credential">
          <name>Credential</name>
          <t>A <em>credential</em> is a special kind of CVD that asserts entitlements for its legitimate bearer -- <em>and only its bearer</em>. CVD that says Organization X exists with a particular ID number in government registers, and with a particular legal name, is not necessarily a credential. In order to be a credential, it would have to be associated with an assertion that its legitimate bearer -- <em>and only its bearer</em> -- is entitled to use the identity of Organization X. If signed data merely enumerates properties without conferring privileges on a specific party, it is just CVD. Many security gaps in existing solutions arise from conflating CVD and credentials.</t>
          <t>ACDCs can embody any kind of CVD, not just credentials.</t>
        </section>
        <section anchor="bearer-token">
          <name>Bearer token</name>
          <t>VVP never uses bearer tokens, but we define them here to provide a contrast. A <em>bearer token</em> is a credential that satisfies binding requirements by a trivial test of possession -- like a movie ticket, the first party that presents the artifact to a verifier gets the privilege. Since Bearer Credentials can be stolen or copied, this is risky. JWTs, session cookies, and other artifacts in familiar identity technologies are often bearer tokens, even if they carry digital signatures. Although they can be protected to some degree by expiration dates and secure channels, these protections are imperfect. For example, TLS channels can be terminated and recreated at multiple places between call origination and delivery.</t>
        </section>
        <section anchor="targeted-credential">
          <name>Targeted credential</name>
          <t>A <em>targeted credential</em> is a CVD that identifies an issuee as the bearer, and that requires the issuee to prove their identity cryptographically (e.g., to produce a proper digital signature) in order to claim the associated privilege. All credentials in VVP are targeted credentials.</t>
        </section>
        <section anchor="jl">
          <name>JL</name>
          <t>A <em>justifying link</em> (<em>JL</em>) is a reference, inside of one CVD, to another CVD that justifies what the first CVD is asserting. JLs can be SAIDs that identify other ACDCs. JLs are edges in an ACDC data graph.</t>
        </section>
      </section>
      <section anchor="specific-artifacts">
        <name>Specific artifacts</name>
        <section anchor="pss">
          <name>PSS</name>
          <t>Each voice call begins with a SIP INVITE, and in VVP, each SIP INVITE contains an <tt>Identity</tt> header that <bcp14>MUST</bcp14> contain a signature from the call's OP (<xref format="counter" target="OP"/>). This <em>passpport-specific signature</em> (<em>PSS</em>) <bcp14>MUST</bcp14> be an Ed25519 signature serialized as CESR; it is NOT a JWS. The 64 raw bytes of the signature are left-padded to 66 bytes, then base64url-encoded. The <tt>AA</tt> at the front of the result is cut and replaced with <tt>0B</tt>, giving an 88-character string. A regex that matches the result is: <tt>0B[-_\w]{86}</tt>, and a sample value (with the middle elided) is: <tt>0BNzaC1lZD...yRLAYeKNQvYx</tt>.</t>
          <t>The signature <bcp14>MUST</bcp14> be the result of running the EdDSA algorithm over input data in the manner required by <xref target="RFC7519"/>: <tt>signature = sign(base64url(header) + "." + base64url(payload)</tt>. Also per the JWT spec, when the signature is added to the compact form of the JWT, it <bcp14>MUST</bcp14> be appended to the other two portions of the JWT, with a <tt>.</tt> delimiter preceding it. Per STIR conventions, it <bcp14>MUST</bcp14> then be followed by ";ppt=vvp" so tools that scan the <tt>Identity</tt> header of the passport can decide how to process the passport without doing a full parse of the JWT.</t>
          <t>The headers <bcp14>MUST</bcp14> include <tt>alg</tt>, <tt>typ</tt>, <tt>ppt</tt>, and <tt>kid</tt>, as described in <xref format="counter" target="sample-passport"/>. They <bcp14>MAY</bcp14> include other values, notably <tt>x5u</tt> (see <xref format="counter" target="interop-certs"/>). The claims <bcp14>MUST</bcp14> include <tt>orig</tt>, <tt>dest</tt>, <tt>iat</tt>, <tt>exp</tt>, and <tt>evd</tt>, and <bcp14>MAY</bcp14> include <tt>card</tt>, <tt>goal</tt>, <tt>call_reason</tt>, <tt>jti</tt>, <tt>origId</tt>, and other values (also described in <xref format="counter" target="sample-passport"/>). The signature <bcp14>MUST</bcp14> use all headers and all claims as input to the data stream that will be signed.</t>
        </section>
        <section anchor="dossier">
          <name>Dossier</name>
          <t>The <tt>evd</tt> field in the passport contains the OOBI (<xref format="counter" target="aid"/>) of an ACDC data graph called the <em>dossier</em>. The dossier is a compilation of all the permanent, backing evidence that justifies trust in the identity and authorization of the AP and OP. It is created and must be signed by the AP. It is CVD (<xref format="counter" target="cvd"/>) asserted to the world, not a credential (<xref format="counter" target="credential"/>) issued to a specific party.</t>
        </section>
        <section anchor="APE">
          <name>Accountable Party Evidence</name>
          <t>The dossier <bcp14>MUST</bcp14> include at least what is called <em>accountable party evidence</em> (<em>APE</em>).</t>
          <t>APE consists of several credentials, explored in detail below. It <bcp14>MUST</bcp14> include a vetting credential for the AP. It <bcp14>SHOULD</bcp14> include a TNAlloc credential that proves RTU. Normally the RTU <bcp14>MUST</bcp14> be assigned to the AP; however, if a proxy is the OP and uses their own phone number, the RTU <bcp14>MUST</bcp14> be assigned to the OP instead. If the AP intends to contextualize the call with a brand, it <bcp14>MUST</bcp14> include a brand credential for the AP. (In cases where callers are private individuals, "brand" maps to descriptive information about the individual, as imagined in mechanisms like VCard <xref target="RFC6350"/> or JCard <xref target="RFC7095"/>.) If no brand credential is present, verifiers <bcp14>MUST NOT</bcp14> impute a brand to the call on the basis of any VVP guarantees.</t>
        </section>
        <section anchor="DE">
          <name>Delegation Evidence</name>
          <t>When a private individual makes a call with VVP, they might be both the AP and the OP. In such cases, we expect their AID to be the recipient or issuee of all the APE, and no backing evidence beyond the APE may be necessary. However, in business contexts, it will almost always be true that the OP role is played by a delegate. In such conditions, evidence must also include proof that this indirection is valid. We call this <em>delegation evidence</em> (<em>DE</em>).</t>
          <t>DE is nearly always required when the AP is an organization, because the cryptographic identifier for the organization as a legal entity is typically not the same as the cryptographic identifier for the organization's automated software that prepares SIP INVITEs. DE can thus distinguish between Acme Corporation in general, and software operated by Acme's IT department for the express purpose of signing voice traffic. The former has a vetting credential and legal accountability, and can act as the company to publish press releases, prepare invoices, spend money, and make attestations to regulators; the latter should only be able to sign outbound voice calls on Acme's behalf. Failing to make this distinction creates serious cybersecurity risks.</t>
          <figure>
            <name>Sample evidence graph; OP kid could bind to APE or DE</name>
            <artset>
              <artwork type="svg" name="fig3.svg">
          <svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="528" width="512" viewBox="0 0 512 528" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                  <path d="M 24,32 L 24,128" fill="none" stroke="black"/>
                  <path d="M 24,240 L 24,272" fill="none" stroke="black"/>
                  <path d="M 24,304 L 24,352" fill="none" stroke="black"/>
                  <path d="M 24,400 L 24,432" fill="none" stroke="black"/>
                  <path d="M 24,464 L 24,512" fill="none" stroke="black"/>
                  <path d="M 128,192 L 128,208" fill="none" stroke="black"/>
                  <path d="M 216,32 L 216,88" fill="none" stroke="black"/>
                  <path d="M 216,104 L 216,128" fill="none" stroke="black"/>
                  <path d="M 224,240 L 224,272" fill="none" stroke="black"/>
                  <path d="M 224,304 L 224,352" fill="none" stroke="black"/>
                  <path d="M 224,400 L 224,512" fill="none" stroke="black"/>
                  <path d="M 248,192 L 248,416" fill="none" stroke="black"/>
                  <path d="M 272,240 L 272,272" fill="none" stroke="black"/>
                  <path d="M 272,304 L 272,336" fill="none" stroke="black"/>
                  <path d="M 272,400 L 272,496" fill="none" stroke="black"/>
                  <path d="M 288,496 L 288,512" fill="none" stroke="black"/>
                  <path d="M 296,80 L 296,128" fill="none" stroke="black"/>
                  <path d="M 320,128 L 320,144" fill="none" stroke="black"/>
                  <path d="M 360,192 L 360,208" fill="none" stroke="black"/>
                  <path d="M 400,80 L 400,128" fill="none" stroke="black"/>
                  <path d="M 448,400 L 448,496" fill="none" stroke="black"/>
                  <path d="M 464,240 L 464,336" fill="none" stroke="black"/>
                  <path d="M 464,440 L 464,512" fill="none" stroke="black"/>
                  <path d="M 488,112 L 488,144" fill="none" stroke="black"/>
                  <path d="M 488,192 L 488,464" fill="none" stroke="black"/>
                  <path d="M 24,32 L 216,32" fill="none" stroke="black"/>
                  <path d="M 296,80 L 312,80" fill="none" stroke="black"/>
                  <path d="M 360,80 L 400,80" fill="none" stroke="black"/>
                  <path d="M 88,96 L 296,96" fill="none" stroke="black"/>
                  <path d="M 400,112 L 488,112" fill="none" stroke="black"/>
                  <path d="M 24,128 L 216,128" fill="none" stroke="black"/>
                  <path d="M 296,128 L 400,128" fill="none" stroke="black"/>
                  <path d="M 128,192 L 360,192" fill="none" stroke="black"/>
                  <path d="M 24,240 L 224,240" fill="none" stroke="black"/>
                  <path d="M 272,240 L 464,240" fill="none" stroke="black"/>
                  <path d="M 272,336 L 464,336" fill="none" stroke="black"/>
                  <path d="M 24,352 L 224,352" fill="none" stroke="black"/>
                  <path d="M 24,400 L 224,400" fill="none" stroke="black"/>
                  <path d="M 272,400 L 448,400" fill="none" stroke="black"/>
                  <path d="M 224,416 L 248,416" fill="none" stroke="black"/>
                  <path d="M 448,416 L 464,416" fill="none" stroke="black"/>
                  <path d="M 448,432 L 488,432" fill="none" stroke="black"/>
                  <path d="M 464,464 L 488,464" fill="none" stroke="black"/>
                  <path d="M 272,496 L 448,496" fill="none" stroke="black"/>
                  <path d="M 24,512 L 224,512" fill="none" stroke="black"/>
                  <path d="M 288,512 L 464,512" fill="none" stroke="black"/>
                  <circle cx="320" cy="80" r="6" class="opendot" fill="white" stroke="black"/>
                  <g class="text">
                    <text x="124" y="20">VVP Passport</text>
                    <text x="72" y="52">protected</text>
                    <text x="12" y="68">..</text>
                    <text x="96" y="68">...kid: AID of OP</text>
                    <text x="8" y="84">:</text>
                    <text x="64" y="84">payload</text>
                    <text x="340" y="84">f-OP</text>
                    <text x="8" y="100">:</text>
                    <text x="64" y="100">evd</text>
                    <text x="336" y="100">SAID of</text>
                    <text x="8" y="116">:</text>
                    <text x="96" y="116">signature of OP</text>
                    <text x="348" y="116">data graph</text>
                    <text x="8" y="132">:</text>
                    <text x="8" y="148">:</text>
                    <text x="8" y="164">:</text>
                    <text x="228" y="164">Accountable Party Evidence</text>
                    <text x="424" y="164">Delegation Evidence</text>
                    <text x="12" y="180">v?</text>
                    <text x="312" y="180">(APE)</text>
                    <text x="484" y="180">(DE)</text>
                    <text x="100" y="228">vetting credential</text>
                    <text x="348" y="228">TNAlloc credential</text>
                    <text x="52" y="260">SAID</text>
                    <text x="300" y="260">SAID</text>
                    <text x="104" y="276">AID of issuer</text>
                    <text x="352" y="276">AID of issuer</text>
                    <text x="124" y="292">..:...AID of AP............:..</text>
                    <text x="312" y="292">..:...AID of AP</text>
                    <text x="8" y="308">:</text>
                    <text x="92" y="308">legal name</text>
                    <text x="344" y="308">TNAllocList</text>
                    <text x="8" y="324">:</text>
                    <text x="116" y="324">legal identifier</text>
                    <text x="372" y="324">...more attributes</text>
                    <text x="8" y="340">:</text>
                    <text x="124" y="340">...more attributes</text>
                    <text x="8" y="356">:</text>
                    <text x="8" y="372">:</text>
                    <text x="8" y="388">:</text>
                    <text x="92" y="388">brand credential</text>
                    <text x="340" y="388">more credentials</text>
                    <text x="8" y="404">:</text>
                    <text x="8" y="420">:</text>
                    <text x="52" y="420">SAID</text>
                    <text x="8" y="436">:</text>
                    <text x="104" y="436">AID of issuer</text>
                    <text x="360" y="436">e.g., delegate RTU,</text>
                    <text x="64" y="452">:.:...AID of AP</text>
                    <text x="352" y="452">vet for call ctr,</text>
                    <text x="92" y="468">brand name</text>
                    <text x="364" y="468">proxy right to brand</text>
                    <text x="68" y="484">logo</text>
                    <text x="124" y="500">...more attributes</text>
                  </g>
                </svg>
              </artwork>
              <artwork type="ascii-art" name="fig3.txt">
&lt;![CDATA[
         VVP Passport
  +-----------------------+
  | protected             |
......kid: AID of OP      |
: | payload               |         +--of-OP-----+
: |   evd --------------------------+ SAID of    |
: | signature of OP       |         | data graph +----------+
: +-----------------------+         +--+---------+          |
:                                      |                    |
:              Accountable Party Evidence  Delegation Evidence
v?                                  (APE)                 (DE)
               +--------------+--------+----+               |
               |              |             |               |
   vetting credential         |   TNAlloc credential        |
  +------------------------+  |  +-----------------------+  |
  | SAID                   |  |  | SAID                  |  |
  |   AID of issuer        |  |  |   AID of issuer       |  |
..:...AID of AP............:..|..:...AID of AP           |  |
: |   legal name           |  |  |   TNAllocList         |  |
: |   legal identifier     |  |  |   ...more attributes  |  |
: |   ...more attributes   |  |  +-----------------------+  |
: +------------------------+  |                             |
:                             |                             |
:  brand credential           |   more credentials          |
: +------------------------+  |  +---------------------+    |
: | SAID                   +--+  |                     +-+  |
: |   AID of issuer        |     | e.g., delegate RTU, +----+
:.:...AID of AP            |     | vet for call ctr,   | |  |
  |   brand name           |     | proxy right to brand| +--+
  |   logo                 |     |                     | |
  |   ...more attributes   |     +-+-------------------+ |
  +------------------------+       +---------------------+
]]&gt;
    </artwork>
            </artset>
          </figure>
          <t>Where DE exists, the APE will identify and authorize the AP, but the OOBI in the <tt>kid</tt> claim of the passport will identify the OP, and these two parties will be different. Therefore, the DE in the dossier <bcp14>MUST</bcp14> include a delegated signer credential that authorizes the OP to act on the AP's behalf and that stipulates the constraints that govern this delegation. In addition to the vetting credential for the AP, which is required, it <bcp14>SHOULD</bcp14> also include a vetting credential for the OP, that proves the OP's identity. If the APE includes a brand credential, then the DE <bcp14>MUST</bcp14> also include a brand proxy credential, proving that the OP not only can use the AP's allocated phone number, but has AP's permission to project the AP's brand while doing so.</t>
          <t>The passport-specific signature <bcp14>MUST</bcp14> come from the OP, not the OSP or any other party. The OP can generate this signature in its on-prem or cloud PBX, using keys that it controls. It is crucial that the distinction between OP and AP be transparent, with the relationship proved by strong evidence that the AP can create or revoke easily, in a self-service manner.</t>
        </section>
        <section anchor="vetting-credential">
          <name>Vetting credential</name>
          <t>A vetting credential is a targeted credential that enumerates the formal and legal attributes of a unique legal entity. It <bcp14>MUST</bcp14> include a legal identifier that makes the entity unique in its home jurisdiction (e.g., an LEI), and it <bcp14>MUST</bcp14> include an AID for the legal entity as an AP. This AID is globally unique.</t>
          <t>The vetting credential is so called because it <bcp14>MUST</bcp14> be issued according to a documented vetting process that offers formal assurance that it is only issued with accurate information, and only to the entity it describes. A vetting credential confers the privilege of acting with the associated legal identity if and only if the bearer can prove their identity as issuee via a digital signature from the issuee's AID.</t>
          <t>A vetting credential <bcp14>MUST</bcp14> include a JL to a credential that qualifies the issuer as a party trusted to do vetting. This linked credential that qualifies the issuer of the vetting credential <bcp14>MAY</bcp14> contain a JL that qualifies its own issuer, and such JLs <bcp14>MAY</bcp14> be repeated through as many layers as desired. In VVP, the reference type of a vetting credential is an LE vLEI; see <xref target="ISO-17442-3"/> and <xref format="counter" target="vet-cred-sample"/>. This implies both a schema and a governance framework. Other vetting credential types are possible, but they <bcp14>MUST</bcp14> be true credentials that meet the normative requirements here. They <bcp14>MUST NOT</bcp14> be bearer tokens.</t>
          <t>To achieve various design goals, a vetting credential <bcp14>MUST</bcp14> be an ACDC, but this ACDC <bcp14>MAY</bcp14> be a transformation of a credential in another format (e.g., W3C VC, SD-JWT, X509 certificate). See <xref format="counter" target="interoperability"/>.</t>
        </section>
        <section anchor="tnalloc-credential">
          <name>TNAlloc credential</name>
          <t>A TNAlloc credential is a targeted credential that confers on its issuee the right to control how one or more phone numbers are used. Regulators issue TNAlloc credentials to range holders, who in turn issue them to TNUs. TNUs often play the AP role in VVP. If an AP delegates RTU to a proxy (e.g., an employee or call center), the AP <bcp14>MUST</bcp14> also issue a TNAlloc credential to the proxy, to confer the RTU. With each successive reallocation, the set of numbers in the new TNAlloc credential may get smaller.</t>
          <t>Except for TNAlloc credentials issued by regulators, all TNAlloc credentials <bcp14>MUST</bcp14> contain a JL to a parent TNAlloc credential, having an equal or bigger set of numbers that includes those in the current credential. This JL in a child credential documents the fact that the child's issuer possessed an equal or broader RTU, from which the subset RTU in child credential derives.</t>
          <t>To achieve various design goals, a TNAlloc credential <bcp14>MUST</bcp14> be an ACDC, but this ACDC <bcp14>MAY</bcp14> be a transformation of a credential in another format (e.g., a TNAuthList from <xref target="RFC8226"/>). See <xref format="counter" target="interop-creds"/>.</t>
          <t>An example TNAlloc credential and its schema are described in <xref format="counter" target="tn-cred-sample"/>.</t>
        </section>
        <section anchor="brand-credential">
          <name>Brand credential</name>
          <t>A brand credential is a targeted credential that enumerates brand properties such as a brand name, logo, chatbot URL, social media handle, and domain name. It <bcp14>MUST</bcp14> be issued to an AP as a legal entity, but it does not enumerate the formal and legal attributes of the AP; rather, it enumerates properties that would be meaningful to a TP who's deciding whether to take a phone call. It confers on its issuee the right to use the described brand by virtue of research conducted by the issuer (e.g., a trademark search).</t>
          <t>This credential <bcp14>MUST</bcp14> be issued according to a documented process that offers formal assurance that it is only issued with accurate information, and only to a legal entity that has the right to use the described brand. A single AP <bcp14>MAY</bcp14> have multiple brand credentials (e.g., a fictional corporation, <tt>Amce Space Travel Deutschland, GmbH</tt>, might hold brand credentials for both <tt>Sky Ride</tt> and for <tt>Orbítame Latinoamérica</tt>). Rights to use the same brand <bcp14>MAY</bcp14> be conferred on multiple APs (<tt>Acme Space Travel Deutschland, Gmbh</tt> and <tt>Acme Holdings Canada, Ltd</tt> may both possess brand credentials for <tt>Sky Ride</tt>). A brand credential <bcp14>MUST</bcp14> contain a JL to a vetting credential, that shows that the right to use the brand was evaluated only after using a vetting credential to prove the identity of the issuee.</t>
          <t>An example brand credential and its schema are described in <xref format="counter" target="bcred-sample"/>.</t>
        </section>
        <section anchor="brand-proxy-credential">
          <name>Brand proxy credential</name>
          <t>A brand proxy credential confers on an OP the right to project the brand of an AP when making phone calls, subject to a carefully selected set of constraints. This is different from the simple RTU conferred by TNAlloc. Without a brand proxy credential, a call center could make calls on behalf of an AP, using the AP's allocated phone number, but would be forced to do so under its own name or brand, because it lacks evidence that the AP intended anything different. If an AP intends for phone calls to be made by a proxy, and wants the proxy to project the AP's brand, the AP <bcp14>MUST</bcp14> issue this credential.</t>
          <t>An example brand proxy credential and its schema are shown in <xref format="counter" target="bprox-cred-sample"/>.</t>
        </section>
        <section anchor="delegated-signer-credential">
          <name>Delegated signer credential</name>
          <t>A delegated signer credential proves that automation running under the control of the OP has been authorized by the AP to originate VVP traffic (and thus, sign VVP passports) on its behalf.</t>
          <t>An example delegated signer credential and its schema are shown in <xref format="counter" target="dsig-cred-sample"/>.</t>
        </section>
      </section>
    </section>
    <section anchor="interoperability">
      <name>Interoperability</name>
      <t>VVP can achieve its goals without any dependence on RCD, SHAKEN, or similar mechanisms. However, it also provides easy bridges so value can flow to and from other ecosystems with similar goals.</t>
      <section anchor="chat-and-conversations">
        <name>Chat and conversations</name>
        <t>The dossier cited in a VVP passport may also be cited by an RCS verification authority (VA), may include evidence that is also submitted to a VA, or may consist of evidence created by a VA. This unlocks synergies between vetting for RCS (<xref target="GSMA-RCS"/>) and vetting for voice. It may also allow properly vetted RCS chatbots to make verifiable voice calls, including calls that carry brand information (see <xref target="RCD-DRAFT"/> and <xref target="CTIA-BCID"/>), distinguishing them with 100% confidence from AI-driven voice scams.</t>
        <t>When conversations are captured in rich containers such as vCon (<xref target="VCON-DRAFT"/>), a VVP passport may be included (e.g., in the <tt>stir</tt> field of a vCon), proving the identity of a calling party. As long as signatures over the data structure assert truthfully that the passport was verified at the time of attachment, no replay attack is possible, and all of VVP's guarantees transfer. A VVP dossier by itself can also provide permanent evidence of assertions as attachments to a conversation.</t>
      </section>
      <section anchor="interop-certs">
        <name>Certificates</name>
        <t>Certificates can add value to VVP, and VVP can add value to certificate-based ecosystems or stacks. In the rest of this section, note the difference between normative language (imposing requirements on VVP implementations) and non-normative language (suggesting how other solutions could react).</t>
        <section anchor="cascaded-mode">
          <name>Cascaded mode</name>
          <t>Verifiers who prefer to operate in certificate ecosystems such as SHAKEN and RCD can be satisfied by having an intermediary verify according to VVP rules (see <xref format="counter" target="verifying"/>), and then signing a new passport in a certificate-dependent format (e.g., for SHAKEN and/or RCD). In such cases, the new passport contains an <tt>x5u</tt> header pointing to the certificate of the new signer.</t>
          <t>This form of trust handoff is called <em>cascaded mode</em>. In cascaded mode, if the certificate fetched from the <tt>x5u</tt> URL satisfies enough trust requirements of the verifier, the goals of the new context are achieved. For example, if this intermediary is the OSP, the standard assumptions of SHAKEN are fully met, but the OSP's attestation can always be <tt>A</tt>, since VVP conclusively proves the identity of the AP and OP.</t>
        </section>
        <section anchor="foundation-mode">
          <name>Foundation mode</name>
          <t>In another pattern called <em>foundation mode</em>, a VVP passport <bcp14>MAY</bcp14> itself contain an <tt>x5u</tt> header. If it does, the <tt>x5u</tt> header <bcp14>MUST NOT</bcp14> be used to achieve any VVP verification guarantees; the key state of the OP's AID <bcp14>MUST</bcp14> still justify any acceptance of the signature. However, the associated X509 certificate <bcp14>SHOULD</bcp14> be issued to the public key of the party that plays the OP role in VVP. If and only if it does so, the full weight of VVP evidence about the OP's status as a trusted signer for the AP could be transferred to the certificate, even if the certificate is self-issued or otherwise chains back to something other than a known, high-reputation certificate authority.</t>
          <t>Valid VVP passports that obey this requirement can thus be used to enable VVP-unaware but certificate-based checks without certificate authorities (or without prior knowledge of them). Such certificate-based checks should be done in real-time, since the binding between a key and the owner of a cert cannot be known to be valid except at the current moment.</t>
        </section>
      </section>
      <section anchor="interop-creds">
        <name>Other credential formats</name>
        <t>The stable evidence that drives VVP -- vetting credential (<xref format="counter" target="vetting-credential"/>), TNAlloc credential (<xref format="counter" target="tnalloc-credential"/>), brand credential (<xref format="counter" target="brand-credential"/>), brand proxy credential (<xref format="counter" target="brand-proxy-credential"/>), and delegated signer credential (<xref format="counter" target="delegated-signer-credential"/>) -- <bcp14>MUST</bcp14> all be ACDCs. This is because only when the data in these credentials is modeled as an ACDC is it associated with permanent identities that possess appropriate security guarantees.</t>
        <t>However, VVP can easily be driven by other approaches to evidence, treating the ACDCs as a somewhat secondary format transformation. In such a case, a <em>bridging party</em> plays a pivotal role. This party <bcp14>MUST</bcp14> verify foreign evidence (e.g., W3C verifiable credentials <xref target="W3C-VC"/>), and then issue ACDCs that derive from it. It <bcp14>MAY</bcp14> radically transform the data in the process (e.g., combining or splitting credentials, changing schemas or data values).</t>
        <t>This transformation from foreign evidence to ACDCs is very flexible, and allows for tremendous interoperability. On the calling side, any ecosystem that deals in cryptographic evidence can provide input to VVP, no matter what evidence mechanisms they prefer.</t>
        <t>(On the receiving side, the information carried via ACDCs in VVP could be transformed again, with a second bridging party, to enable even more interoperability. However, the goals of such a secondary transformation are undefined by VVP, so the constraints and rules of the transformation are out of scope here.)</t>
        <t>All VVP stakeholders need to understand that accepting foreign evidence does much more than alter format. Bridging is not a simple conversion or reissuance. It replaces identifiers (e.g., DIDs as specified in <xref target="W3C-DID"/> with AIDs as specified in <xref target="TOIP-KERI"/>). The new identifiers have different lifecycles and different trust bases than the original. Bridging also changes the <em>meaning</em> of the credential. Foreign evidence directly asserts claims backed by the reputation of its original issuer. A new ACDC embodies a claim by the bridging party, that they personally verified foreign evidence according to foreign evidence rules, at a given moment. It cites the foreign evidence as a source, and may copy claims into the ACDC, but the bridging party is only asserting that they verified the original issuer's commitment to the claims, not that the bridging party commits to those claims.</t>
        <t>Verifiers <bcp14>MAY</bcp14> choose to accept such derivative ACDCs, but the indirection <bcp14>SHOULD</bcp14> color their confidence. They <bcp14>MUST NOT</bcp14> assume that identifiers in the foreign evidence and in the ACDC have the same referents or controllers. They <bcp14>MUST NOT</bcp14> hold the bridging party accountable for the claims -- only for the claim that they verified the original issuer's commitment to the claims. Unless additional governance offers guarantees beyond those explicitly provided by VVP, they <bcp14>MUST</bcp14> accept that there is no defined relationship between revocation of the foreign evidence and revocation of the ACDC.</t>
      </section>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Complying with a specification may forestall certain easy-to-anticipate attacks. However, <em>it does not mean that vulnerabilities don't exist, or that they won't be exploited</em>. The overall assurance of VVP requires reasonable vigilance. Given that a major objective of VVP is to ensure security, implementers are strongly counseled to understand the underlying principles, the assumptions, and the ways that choices by their own or other implementations could introduce risk.</t>
      <t>Like most cryptographic mechanisms, VVP depends on the foundational assumption that people will manage cryptographic keys carefully. VVP enforces this assumption more thoroughly than many existing solutions:</t>
      <ul spacing="normal">
        <li>
          <t>Parties that issue credentials <bcp14>MUST</bcp14> be identified with AIDs (<xref format="counter" target="aid"/>) that use witnesses (<xref format="counter" target="appendix-b"/>). This guarantees a non-repudiable, publicly accessible audit log of how their key state evolves, and it makes key rotation easy. It also offers compromise and duplicity detection. Via prerotation, it enables recovery from key compromise. AIDs can be upgraded to use quantum-proof signing algorithms without changing the identifier.</t>
        </li>
        <li>
          <t>Parties that issue credentials <bcp14>MUST</bcp14> do so using ACDCs (<xref format="counter" target="acdcs"/>) signed by their AID rather than a raw key. This makes evidence revocable. It also makes it stable across key rotation, and prevents retrograde attacks by allowing verifiers to map an issuance or revocation event to an unambiguous key state in the KEL (<xref format="counter" target="KEL"/>).</t>
        </li>
        <li>
          <t>Parties that issue credentials <bcp14>SHOULD</bcp14> employ threshold-based multi-signature schemes. This enhances security by distributing signing authority across multiple key holders, reducing the risk of single-point compromise. Threshold-based signatures ensure that no single key compromise undermines the system’s integrity while enabling controlled key recovery and rotation without disrupting credential validity.</t>
        </li>
      </ul>
      <t>Nonetheless, it is still possible to make choices that weaken the security posture of the ecosystem, including at least the following:</t>
      <ul spacing="normal">
        <li>
          <t>Sharing keys or controlling access to them carelessly</t>
        </li>
        <li>
          <t>Issuing credentials with a flimsy basis for trust</t>
        </li>
        <li>
          <t>Delegating authority to untrustworthy parties</t>
        </li>
        <li>
          <t>Delegating authority without adequate constraints</t>
        </li>
        <li>
          <t>Failing to fully verify evidence</t>
        </li>
      </ul>
      <t>Generally understood best practices in cybersecurity will avoid many of these problems. In addition, the following policies that are specific to VVP are strongly recommended:</t>
      <ol spacing="normal" type="1"><li>
          <t>Passports <bcp14>SHOULD</bcp14> have an aggressive timeout (e.g., 1 minute). Signatures on passports are not anchored in a KEL, and must therefore be evaluated for age with respect to the time they were received. Overly old passports could be a replay attack (a purported second call with the same orig and dest numbers, using the same backing evidence, soon after the first.)</t>
        </li>
        <li>
          <t>Witnesses (which <bcp14>MUST</bcp14> be used) <bcp14>SHOULD</bcp14> be used in such a way that high availability is guaranteed, and in such a way that duplicity by the controller of an AID is detected. See <xref format="counter" target="appendix-b"/>. (Verifiers will be able to see the witness policy of each AID controller, and <bcp14>SHOULD</bcp14> decide for themselves whether the party is reliable, depending on what they observe.)</t>
        </li>
        <li>
          <t>Revocations <bcp14>SHOULD</bcp14> be timely, and the timeliness guarantees of issuers <bcp14>SHOULD</bcp14> be published.</t>
        </li>
        <li>
          <t>Watchers <bcp14>SHOULD</bcp14> propagate events to local caches with a low latency, and <bcp14>MUST</bcp14> provide information that allows verifiers to decide whether that latency meets their freshness requirements.</t>
        </li>
      </ol>
    </section>
    <section anchor="privacy">
      <name>Privacy</name>
      <t>Both institutions and individuals that make phone calls may have privacy goals. Although their goals might differ in some ways, both will wish to disclose some attributes to the TP, and both may wish to suppress some of that same information from intermediaries. Both will want control over how this disclosure works.</t>
      <section anchor="graduated-disclosure">
        <name>Graduated Disclosure</name>
        <t>ACDCs support a technique called <em>graduated disclosure</em> that enables this.</t>
        <t>The hashing algorithm for ACDCs resembles the hashing algorithm for a merkle tree. An ACDC is a hierarchical data structure that can be modeled with nested JSON. Any given layer of the structure may consist of a mixture of simple scalar values and child objects. The input to the hashing function for a layer of content equals the content of scalar fields and the <em>hashes</em> of child objects.</t>
        <figure>
          <name>ACDC hashes like a Merkle tree</name>
          <artset>
            <artwork type="svg" name="fig4.svg">
      <svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="432" width="408" viewBox="0 0 408 432" class="diagram" text-anchor="middle" font-family="monospace" font-size="13px" stroke-linecap="round">
                <path d="M 8,48 L 8,272" fill="none" stroke="black"/>
                <path d="M 72,320 L 72,328" fill="none" stroke="black"/>
                <path d="M 72,368 L 72,376" fill="none" stroke="black"/>
                <path d="M 112,48 L 112,272" fill="none" stroke="black"/>
                <path d="M 152,48 L 152,160" fill="none" stroke="black"/>
                <path d="M 216,320 L 216,328" fill="none" stroke="black"/>
                <path d="M 216,344 L 216,360" fill="none" stroke="black"/>
                <path d="M 224,80 L 224,88" fill="none" stroke="black"/>
                <path d="M 224,104 L 224,120" fill="none" stroke="black"/>
                <path d="M 256,48 L 256,160" fill="none" stroke="black"/>
                <path d="M 296,48 L 296,80" fill="none" stroke="black"/>
                <path d="M 400,48 L 400,80" fill="none" stroke="black"/>
                <path d="M 8,48 L 112,48" fill="none" stroke="black"/>
                <path d="M 152,48 L 256,48" fill="none" stroke="black"/>
                <path d="M 296,48 L 400,48" fill="none" stroke="black"/>
                <path d="M 296,80 L 400,80" fill="none" stroke="black"/>
                <path d="M 152,160 L 256,160" fill="none" stroke="black"/>
                <path d="M 8,272 L 112,272" fill="none" stroke="black"/>
                <path d="M 240,96 C 248.83064,96 256,103.16936 256,112" fill="none" stroke="black"/>
                <path class="jump" d="M 224,104 C 218,104 218,88 224,88" fill="none" stroke="black"/>
                <path class="jump" d="M 216,344 C 210,344 210,328 216,328" fill="none" stroke="black"/>
                <g class="text">
                  <text x="56" y="20">Fully</text>
                  <text x="208" y="20">Partially</text>
                  <text x="344" y="20">Fully</text>
                  <text x="56" y="36">Expanded ACDC</text>
                  <text x="204" y="36">Compact ACDC</text>
                  <text x="348" y="36">Compact ACDC</text>
                  <text x="40" y="68">a = {</text>
                  <text x="184" y="68">a = {</text>
                  <text x="348" y="68">a = H(...)</text>
                  <text x="60" y="84">b = N,</text>
                  <text x="200" y="84">b = N</text>
                  <text x="56" y="100">C = {</text>
                  <text x="200" y="100">c = H</text>
                  <text x="232" y="100">c</text>
                  <text x="76" y="116">d = M,</text>
                  <text x="200" y="116">g = Q</text>
                  <text x="76" y="132">e = O,</text>
                  <text x="212" y="132">i = H(i)</text>
                  <text x="72" y="148">f = P</text>
                  <text x="168" y="148">}</text>
                  <text x="44" y="164">},</text>
                  <text x="60" y="180">g = Q,</text>
                  <text x="56" y="196">i = {</text>
                  <text x="76" y="212">j = R,</text>
                  <text x="72" y="228">k = S</text>
                  <text x="40" y="244">}</text>
                  <text x="24" y="260">}</text>
                  <text x="48" y="308">H(a) = H(</text>
                  <text x="192" y="308">H(a) = H(</text>
                  <text x="344" y="308">H(a) = SAID</text>
                  <text x="48" y="324">b = N</text>
                  <text x="192" y="324">b = N</text>
                  <text x="64" y="340">c = H(c),</text>
                  <text x="192" y="340">c = H</text>
                  <text x="232" y="340">c),</text>
                  <text x="72" y="356">recurse</text>
                  <text x="192" y="356">g = Q</text>
                  <text x="48" y="372">g = Q</text>
                  <text x="204" y="372">i = H(i)</text>
                  <text x="60" y="388">i = H(i)</text>
                  <text x="188" y="388">) = SAID</text>
                  <text x="72" y="404">recurse</text>
                  <text x="44" y="420">) = SAID</text>
                </g>
              </svg>
            </artwork>
            <artwork type="ascii-art" name="fig4.txt">
&lt;![CDATA[
    Fully            Partially          Fully
Expanded ACDC      Compact ACDC      Compact ACDC
+------------+    +------------+    +------------+
| a = {      |    | a = {      |    | a = H(...) |
|   b = N,   |    |   b = N,   |    +------------+
|   C = {    |    |   c = H(c),|
|     d = M, |    |   g = Q,   |
|     e = O, |    |   i = H(i) |
|     f = P  |    | }          |
|   },       |    +------------+
|   g = Q,   |
|   i = {    |
|     j = R, |
|     k = S  |
|   }        |
| }          |
+------------+

 H(a) = H(         H(a) = H(         H(a) = SAID
   b = N,            b = N,
   c = H(c),         c = H(c),
     recurse         g = Q,
   g = Q,            i = H(i)
   i = H(i)        ) = SAID
     recurse
 ) = SAID
]]&gt;
    </artwork>
          </artset>
        </figure>
        <t>This means is that any given child JSON object in an ACDC can be replaced with its hash, <em>without altering the hash of the parent data</em>. Thus, there can be expanded ACDCs (where all data inside child objects is visible) or compacted ACDCs (where some or all of the child objects are opaquely represented by their equivalent hashes). A signature over an expanded ACDC is also a signature over any of the compacted versions of the same ACDC, and a revocation event over any of the versions is guaranteed to mean the same thing.</t>
        <t>In combination with the <tt>evd</tt> claim in a passport, graduated disclosure can be used to achieve privacy goals, because different verifiers can see different variations on an ACDC, each of which is guaranteed to pass the same verification tests and has the same revocation status.</t>
        <t>For example, suppose that company X wants to make a call to an individual in jurisdiction Y, and further suppose that auditor Z requires proof that X is operating lawfully, without knowing the name of X as a legal entity. In other words, the auditor needs to <em>qualify</em> X but not necessarily <em>identify</em> X. Company X can serve the KEL for its dossier from a web server that knows to return the expanded form of the vetting credential in the dossier to the individual or the individual's TSP in Y, but a compacted form of the vetting credential (revealing just the vetter's identity and their signature, but not the legal identity of the issuee, X) to auditor Z. Later, if law enforcement sees the work of the auditor and demands to know the legal identity of X, discovery of the expanded form can be compelled. When the expanded form is disclosed, it will demonstrably be associated with the compact form that Z recorded, since the qualifying and identifying forms of the ACDC have the same hash.</t>
        <t>Company X doesn't have to engage in sophisticated sniffing of traffic by geography to achieve goals like this. It can simply say that anonymous and unsigned HTTP requests for the dossier return the compact form; anyone who wants the expanded form must make an HTTP request that includes in its body a signature over terms and conditions that enforce privacy and make the recipient legally accountable not to reshare.</t>
        <t>Importantly, transformations from expanded to compact versions of an ACDC can be performed by anyone, not just the issuer or holder. This means that a verifier can achieve trust on the basis of expanded data, and then cache or share a compacted version of the data, meaning that any subsequent or downstream verifications can have equal assurance but higher privacy. The same policy can be applied to data any time it crosses a regulatory, jurisdictional boundary where terms and conditions for disclosure have weaker enforcement. It can also be used when business relationships should be redacted outside of a privileged context.</t>
        <t>Schemas for credentials should be designed to allow graduated disclosure in increments that match likely privacy goals of stakeholders. ACDC schema design typically includes a salty nonce in each increment, avoiding rainbow attacks on the hashed data. VVP encourages but does not require this.</t>
      </section>
      <section anchor="correlation">
        <name>Correlation</name>
        <t>Privacy theorists will note that, even with contractually protected graduated disclosure and maximally compact ACDCs, verifiers can still correlate by using some fields in ephemeral passports or long-lived ACDCs, and that this may undermine some privacy goals.</t>
        <t>There are three correlators in each passport:</t>
        <ol spacing="normal" type="1"><li>
            <t>Any brand information in <tt>card</tt> (may strongly identify an AP)</t>
          </li>
          <li>
            <t>the <tt>kid</tt> header (identifies the OP)</t>
          </li>
          <li>
            <t>the <tt>evd</tt> claim (uniquely identifies a dossier used by an AP)</t>
          </li>
        </ol>
        <t>We discount the first correlator, because if it is present, the AP is explicitly associating its correlated reputation with a call. It has asserted this brand publicly, to every stakeholder in the SIP pipeline. In such cases, any question of the AP's privacy is off the table, and no privacy protections on the other two correlators will be effective. However, if the first correlator is missing, the other two correlators become more interesting.</t>
        <section anchor="kid">
          <name>kid</name>
          <t>In VVP, the OP role that's identified by <tt>kid</tt> is played by automation. Automation is unlikely to have any direct privacy goal. The company that operates it is likely to be either a service provider, or a large corporation capable of significant IT investments. Either way, the OP is in the business of servicing phone calls, and is likely to be content for its traffic to be correlated publicly. Therefore, the fact that <tt>kid</tt> correlates the OP is not particularly interesting.</t>
          <t>However, could the OP be used as an indirect correlator for the AP?</t>
          <t>The OP's SBC can service many thousands or millions of callers, providing a some herd privacy. This is not a perfect protection, but it is a beginning. We add to this the crucial observation that <em>the OP doesn't need to have a stable reputation to support VVP goals</em>. Trust in the OP comes from the existence of a delegated signer credential (see <xref format="counter" target="delegated-signer-credential"/>), not from a certificate or any other long-term identity. Therefore, the AID that provides cryptographic identity for an OP <bcp14>MAY</bcp14> be rotated often (as often as APs are willing to delegate to a new one). Further, even without rotation, an OP organization <bcp14>MAY</bcp14> provide multiple instances of its automation, each using a different AID. Also, an AP <bcp14>MAY</bcp14> delegate signing authority to multiple OP organizations, each of which is using various strategies to mitigate correlation. Taken together, these measures offers reasonable protection -- protection that an AP can tune -- against correlating an AP via <tt>kid</tt>.</t>
        </section>
        <section anchor="evd">
          <name>evd</name>
          <t>The other correlator, <tt>evd</tt>, tracks an AP more directly, because a dossier is uniquely identified by its SAID, and can only be used by a single AP. Furthermore, if someone resolves <tt>evd</tt> to an actual dossier (something that might be avoidable with judicious use of graduated disclosure), the dossier will at a minimum have an issuer field that ties it to the AP as a perfect correlator.</t>
          <t>One answer here is to introduce an <em>AP blinding service</em>. This service creates <em>derived dossiers</em> on a schedule or by policy. Each derivation includes the hash of the original dossier, in a field that is hidden but available (along with a salty nonce) via graduated disclosure. The derived dossier is signed by the blinding service rather than the original AP. It embodies an assertion, by the blinding service, that it has verified the original dossier according to published rules, and that it will revoke the derivative if the original is revoked. AP blinding services would have to be trusted by verifiers, much like root CAs in SHAKEN. However, unlike CAs, their actions could be trivially audited for correctness, since every derivation would have to be backed by a dossier that has the associated hash. Such a mechanism is probably unnecessary for b2c calling, but may be justified when VVP is used by individual APs if they wish to merely qualify without identifying themselves to some intermediaries or TPs.</t>
        </section>
      </section>
    </section>
    <section anchor="appendix-a">
      <name>Appendix A: Evidence theory</name>
      <t>Most existing approaches to secure telephony uses X509 certificates <xref target="RFC5280"/> for foundational identity. Certificates have great virtues. Notably, they are well understood, and their tooling is ubiquitous and mature. However, they also have some serious drawbacks. They are protected by a single key whose compromise is difficult to detect. Recovery is cumbersome and slow. As a result, <em>certificates are far more temporary than the identities they attest</em>.</t>
      <t>This has numerous downstream consequences. When foundational evidence of identity has to be replaced constantly, the resulting ecosystem is fragile, complex, and expensive for all stakeholders. Vulnerabilities abound. Authorizations can only be analyzed in a narrow <em>now window</em>, never at arbitrary moments in time. This creates enormous pressure to build a centralized registry, where evidence can be curated once, and where the cost of reacting to revocations is amortized. The entire fabric of evidence has to be rebuilt from scratch if quantum security becomes a requirement.</t>
      <t>In contrast, the issuers and holders of ACDCs -- and thus, the stakeholders in VVP passports -- are identified by autonomic identifiers, not raw keys. This introduces numerous security benefits. Keys, key types, and signing algorithms can all change (even for post-quantum upgrades) without invalidating evidence. Signing and rotation operations are sequenced deterministically, making historical audits possible. Key compromises are detected as soon as an attacker attempts consequential actions. Recovery from compromise is trivial. Multisig signing policies allow diffuse, nuanced control.</t>
      <t>The result is that <em>identities in ACDCs are as stable as identities in real organizations</em>. This makes delegations and chaining mechanisms far more robust than their analogs in certificates, and this in turn makes the whole ecosystem safer, more powerful, and easier to maintain. Revocations are cheap and fast. No central registries are needed, which eliminates privacy concerns and regulatory hurdles. Adoption can be opportunistic; it doesn't require a central mandate or carefully orchestrated consensus throughout a jurisdiction before it can deliver value.</t>
      <t>ACDCs make it practical to model nuanced, dynamic delegations such as the one between Organization X and Call Center Y. This eliminates the gap that alternative approaches leave between accountable party and the provider of call evidence. Given X's formal approval, Y can sign a call on behalf of X, using a number allocated to X, and using X's brand, without impersonating X. They can also prove to any OSP or any other party, in any jurisdiction, that they have the right to do so. Furthermore, the evidence that Y cites can be built and maintained by X and Y, doesn't get stale or require periodic reissuance, and doesn't need to be published in a central registry.</t>
      <t>Even better, when such evidence is filtered through suballocations or crosses jurisdictional boundaries, it can be reused, or linked and transformed, without altering its robustness or efficiency. Unlike W3C verifiable credentials and SD-JWTs, which require direct trust in the proximate issuer, ACDCs and the JWTs that reference them verify data back to a root through arbitrarily long and complex chains of issuers, with only the root needing to be known and trusted by the verifier.</t>
      <t>The synergies of these properties mean that ACDCs can be permanent, flexible, robust, and low-maintenance. In VVP, no third party has to guess who's accountable for a call; the accountable party is transparently and provably accountable, period. (Yet notwithstanding this transparency, ACDCs support a form of pseudonymity and graduated disclosure that satisfies vital privacy and data processing constraints. See <xref format="counter" target="privacy"/>.)</t>
    </section>
    <section anchor="appendix-b">
      <name>Appendix B: Witnesses and Watchers</name>
      <t>A full description of witnesses and watchers is available in <xref target="TOIP-KERI"/>. Here, we merely summarize.</t>
      <t>A KERI <em>witness</em> is a lightweight server that acts as a notary. It exposes a standard interface. It receives signed events from the controller of an identifier that it services. If these events are properly sequenced and aligned with the identifier's signing policy and key state, they are recorded and become queryable, typically by the public. KERI allows the controller of an autonomic identifier to choose zero or more witnesses. The witnesses can change over the lifecycle of the identifier. However, the relationship between an identifier and its witnesses cannot be changed arbitrarily; the controller of the identifier makes a cryptographic commitment to its witnesses, and can only change that commitment by satisfying the signing policy of the identifier. In VVP, identifiers used by issuers <bcp14>MUST</bcp14> have at least one witness, because this guarantees viral discoverability, and <bcp14>SHOULD</bcp14> have at least 3 witnesses, because this guarantees both high availability and the detection of duplicity by the controller of the identifier.</t>
      <t>Witnesses provide, for VVP, many of the security guarantees that alternate designs seek from blockchains. However, witnesses are far more lightweight than blockchains. They can be run by anyone, without coordination or approval, and can be located in any jurisdiction that the owner of the identifier prefers, satisfying regulatory requirements about data locality. Although a single witness may service mulptiple identifiers, the records related to any single identifier are independent, and no consensus algorithm is required to order them relative to others. Thus, every identifier's data evolves in parallel, without bottlenecks, and any identifier can be deleted without affecting the integrity of other identifiers' records, satisfying regulatory requirements about erasure. Witnesses only store (and thus, can only expose to the public) what a given data controller has instructed them to store and publish. Thus, witnesses do not create difficulties with consent or privacy.</t>
      <t>In VVP, when a party shares an identifier or a piece of evidence, they do so via a special URL called an OOBI (out of band invitation). The OOBI serves a tamper-evident KEL (<xref format="counter" target="KEL"/>) that reveals the full, provable history of the key state and other witnesses for the identifier, and even includes a forward reference to new witnesses, if they have changed. It also allows the discovery of issuance and revocation events, and their sequence relative to one another and to key state changes.</t>
      <t>An additional and optional feature in KERI is enabled by adding <em>watchers</em>. Watchers are lightweight services that synthesize witness data. They may <bcp14>MAY</bcp14> monitor multiple witnesses and enable hyper-efficient caching. They <bcp14>SHOULD</bcp14> also compare what multiple witnesses for a given identifier are saying, which prevents controllers of an identifier from forking reality in a duplicitous way, and which can detect malicious attempts to use stolen keys.</t>
      <t>Witnesses are chosen according to the preference of each party that controls an identifier, and a mature ecosystem could have dozens, hundreds, or thousands. Watchers, on the other hand, address the needs of verifiers, because they distill some or all of the complexity in an ecosystem down to a single endpoint that verifiers can query. Any verifier can operate a watcher at any time, without any coordination or approval. Viral discoverability can automatically populate the watcher's cache, and keep it up-to-date as witness data evolves.</t>
      <t>Verifiers can share watchers if they prefer. Anything that watchers assert must be independently verified by consulting witnesses, so watchers need not have a complete picture of the world, and they are a convenience rather than an oracle that must be trusted. The data that watchers synthesize is deliberately published by witnesses for public consumption, at the request of each data stream's associated data controllers, and does not represent surveillance (<xref format="counter" target="privacy"/>). If a watcher can no longer find witness data to back one of its assertions, it <bcp14>MUST</bcp14> delete the data to satisfy its contract. This means that acts of erasure on witnesses propagate to watchers, again satisfying regulatory erasure requirements.</t>
    </section>
    <section anchor="appendix-c">
      <name>Appendix C: Sample Credentials</name>
      <section anchor="common-fields">
        <name>Common fields</name>
        <t>Some structure is common to all ACDCs. For details, consult <xref target="TOIP-ACDC"/>. Here, we provide a short summary.</t>
        <ul spacing="normal">
          <li>
            <t><tt>v</tt> <em>(required)</em> Contains a version statement.</t>
          </li>
          <li>
            <t><tt>d</tt> <em>(required)</em> Contains the SAID (<xref format="counter" target="said"/>) of the ACDC. (Nested <tt>d</tt> fields contain SAIDs of nested JSON objects, as discussed in <xref format="counter" target="graduated-disclosure"/>.</t>
          </li>
          <li>
            <t><tt>i</tt> <em>(required)</em> In the outermost structure, contains the AID (<xref format="counter" target="aid"/>) of an issuer. Inside <tt>a</tt>, contains the AID of the issuee.</t>
          </li>
          <li>
            <t><tt>ri</tt> <em>(optional)</em> Identifies a registry that tracks revocations that might include one for this credential.</t>
          </li>
          <li>
            <t><tt>s</tt> <em>(required)</em> Contains the SAID of a schema to which the associated ACDC conforms.</t>
          </li>
          <li>
            <t><tt>a</tt> <em>(required)</em> Contains additional attributes for this specific ACDC, as allowed by its schema.</t>
          </li>
          <li>
            <t><tt>dt</tt> <em>(optional)</em> Contains the date when the issuer claims to have issued the ACDC. This data will correspond closely with a timestamp saved in the issuer's KEL, at the point where the signature on the ACDC was signed and anchored there. The ordering of the signature in the KEL, relative to other key state events, is what is definitive here; the timestamp itself should be viewed more as a hint.</t>
          </li>
          <li>
            <t><tt>e</tt> <em>(optional)</em> Contains edges that connect this ACDC to other data upon which it depends.</t>
          </li>
          <li>
            <t><tt>r</tt> <em>(optional)</em> Contains one or more rules that govern the use of the ACDC. Holding the credential requires a cryptographically nonrepudiable <tt>admit</tt> action with a wallet, and therefore proves that the holder agreed to these terms and conditions.</t>
          </li>
        </ul>
        <t>All ACDCs are validated against a schema that conforms to <xref target="JSON-SCHEMA"/>. Below we show some sample credentials and their corresponding schemas. VVP does not require these specific schemas, but rather is compatible with any that have roughly the same information content.</t>
      </section>
      <section anchor="vet-cred-sample">
        <name>Vetting credential</name>
        <t>The schema of a vetting credential (<xref format="counter" target="vetting-credential"/>) can be very simple; it needs to identify the issuer and issuee by AID, and it needs to identify the vetted legal entity in at least one way that is unambiguous. Here is a sample LE vLEI that meets these requirements. The issuer's AID appears in the first <tt>i</tt> field, the issuee in the second <tt>i</tt> field, and the connection to a vetted legal entity in the <tt>LEI</tt> field. (The validity of this credential depends on its issuer having a valid, unrevoked QVI credential; the specifc credential it links to is conveyed in <tt>e</tt>. The full text of rules has been elided to keep the example short.)</t>
        <sourcecode type="json"><![CDATA[
{
  "v":"ACDC10JSON0005c8_",
  "d":"Ebyg1epjv7D4-6mvl44Nlde1hTyL8413LZbY-mz60yI9",
  "i":"Ed88Jn6CnWpNbSYz6vp9DOSpJH2_Di5MSwWTf1l34JJm",
  "ri":"Ekfi58Jiv-NVqr6GOrxgxzhrE5RsDaH4QNwv9rCyZCwZ",
  "s":"ENPXp1vQzRF6JwIuS-mp2U8Uf1MoADoP_GqQ62VsDZWY",
  "a":{
    "d":"EdjPlxlRyujxarfXHCwFAqSV-yr0XrTE3m3XdFaS6U3K",
    "i":"Eeu5zT9ChsawBt2UXdU3kPIf9_lFqT5S9Q3yLZvKVfN6",
    "dt":"2024-09-19T13:48:21.779000+00:00",
    "LEI":"9845006A4378DFB4ED29"
  },
  "e":{
    "d":"EeyVJC9yZKpbIC-LcDhmlS8YhrjD4VIUBZUOibohGXit",
    "qvi":{
      "n":"EmatUqz_u9BizxwOc3JishC4MyXfiWzQadDpgCBA6X9n",
      "s":"EBfdlu8R27Fbx-ehrqwImnK-8Cm79sqbAQ4MmvEAYqao"
    }
  },
  "r":{
    "d":"EgZ97EjPSINR-O-KHDN_uw4fdrTxeuRXrqT5ZHHQJujQ",
    "usageDisclaimer":{
      "l":"Usage of a valid...fulfilled."
    },
    "issuanceDisclaimer":{
      "l":"All information...Governance Framework."
    }
  }
}
]]></sourcecode>
        <t>The schema that governs this credential, <tt>ENPX...DZWY</tt>, is shown in the <tt>s</tt> field. LE vLEI credential schemas are managed by GLEIF and published at <xref target="LE-VLEI-SCHEMA"/>.</t>
        <t>As fundamentally public artifacts that are issued only to organizations, not individuals, vLEIs are not designed for graduated disclosure (<xref format="counter" target="graduated-disclosure"/>). Vetting credentials for individuals would require a different schema -- perhaps one that documents their full legal name but allows disclosure strategies such as first name + last initial, or first initial plus last name.</t>
      </section>
      <section anchor="tn-cred-sample">
        <name>TNAlloc credential</name>
        <t>A TNAlloc credential needs to identify its issuer and issuee. If and only if it isn't issued by a national regulator that acts as a root of trust on allocation questions, it also needs to cite an upstream allocation that justifies the issuer's right to pass along a subset of the numbers it controls.</t>
        <t>Here is a sample TNAlloc credential that meets these requirements.</t>
        <sourcecode type="json"><![CDATA[
{
  "v": "ACDC10JSON0003cd_",
  "d": "EEeg55Yr01gDyCScFUaE2QgzC7IOjQRpX2sTckFZp1RP",
  "u": "0AC8kpfo-uHQvxkuGZdlSjGy",
  "i": "EANghOmfYKURt3rufd9JNzQDw_7sQFxnDlIew4C3YCnM",
  "ri": "EDoSO5PEPLsstDr_XXa8aHAf0YKfPlJQcxZvkpMSzQDB",
  "s": "EFvnoHDY7I-kaBBeKlbDbkjG4BaI0nKLGadxBdjMGgSQ",
  "a": {
      "d": "ECFFejktQA0ThTqLtAUTmW46unVGf28I_arbBFnIwnWB",
      "u": "0ADSLntzn8x8eNU6PhUF26hk",
      "i": "EERawEn-XgvmDR_-2ESVUVC6pW-rkqBkxMTsL36HosAz",
      "dt": "2024-12-20T20:40:57.888000+00:00",
      "numbers": {
          "rangeStart": "+33801361002",
          "rangeEnd": "+33801361009"
      },
      "channel": "voice",
      "doNotOriginate": false
  },
  "e": {
      "d": "EI9qlgiDbMeJ7JTZTJfVanUFAoa0TMz281loi63nCSAH",
      "tnalloc": {
          "n": "EG16t8CpJROovnGpgEW1_pLxH5nSBs1xQCbRexINYJgz",
          "s": "EFvnoHDY7I-kaBBeKlbDbkjG4BaI0nKLGadxBdjMGgSQ",
          "o": "I2I"
      }
  },
  "r": {
      "d": "EJFhpp0uU7D7PKooYM5QIO1hhPKTjHE18sR4Dn0GFscR",
      "perBrand": "Issuees agree not to share..."
  }
}
]]></sourcecode>
        <t>The schema used by this particular credential, <tt>EFvn...GgSQ</tt>, is published at <xref target="TN-ALLOC-SCHEMA"/>.</t>
      </section>
      <section anchor="bcred-sample">
        <name>Brand credential</name>
        <t>TODO
~~~json
~~~</t>
      </section>
      <section anchor="bprox-cred-sample">
        <name>Brand proxy credential</name>
        <t>A brand proxy credential (<xref format="counter" target="brand-proxy-credential"/>) is very similar to a delegated signer credential, in that it proves carefully constrained delegated authority. The difference lies in what authority is delegated (proxy a brand vs. sign passports).</t>
        <t>A Generalized Cooperative Delegation (GCD) credential embodies delegated but constrained authority in exactly this way. A GCD credential suitable for use as a brand proxy in VVP might look like this:</t>
        <sourcecode type="json"><![CDATA[
{
    "v": "ACDC10JSON00096c_",
    "d": "EWQpU3nrKyJBgUJGw5461CbWcug9BZj7WXUkKbNOlnFx",
    "u": "0ADE6oAxBl4E7uKeGUb7BEYi",
    "i": "EC4SuEyzrRwu3FWFrK0Ubd9xejlo5bUwAtGcbBGUk2nL",
    "ri": "EM2YZ78SKE8eO4W1lQOJeer5xKZqLmJV7SPr3Ji5DMBZ",
    "s": "EL7irIKYJL9Io0hhKSGWI4OznhwC7qgJG5Qf4aEs6j0o",
    "a": {
        "d": "EPQhEk5tfXvxyKe5Hk4DG63dSgoP-F2VZrxuIeIKrT9B",
        "u": "0AC9kH8q99PTCQNteGyI-F4g",
        "i": "EIkxoE8eYnPLCydPcyc_lhQgwOdBHwzkSe36e2gqEH-5",
        "dt": "2024-12-27T13:11:29.062000+00:00",
        "c_goal": ["ops.telco.*.proxybrand"],
        "c_proto": ["VVP:OP,TP"]
    },
    "r": {
        "d": "EFthNcTE20MLMaCOoXlSmNtdooGEbZF8uGmO5G85eMSF",
        "noRoleSemanticsWithoutGfw": "All parties agree...",
        "issuerNotResponsibleOutsideConstraints": "Although verifiers...",
        "noConstraintSansPrefix": "Issuers agree...",
        "useStdIfPossible": "Issuers agree...",
        "onlyDelegateHeldAuthority": "Issuers agree..."
    }
}
]]></sourcecode>
        <t>Note the <tt>c_goal</tt> field that limits goals that can be justified with this credential, and the <tt>c_proto</tt> field that says the delegate can only exercise this authority in the context of the "VVP" protocol with the "OP" or "TP" role. The wildcard in <tt>c_goal</tt> and the addition of the "TP" role in <tt>c_proto</tt> are complementary changes that allow this credential to justify proxying the brand on both outbound and inbound calls. (Branding on inbound calls is out of scope for VVP, but is included here just to show that the same credentials can be used for both VVP and non-VVP solutions. To convert this credential to a purely outbound authorization, replace the wildcard with <tt>send</tt>, and limit the roles in <tt>VVP</tt> to <tt>OP</tt>.)</t>
        <t>The schema for GCD credentials, and an explanation how to add additional constraints, is documented at <xref target="GCD-SCHEMA"/>.</t>
      </section>
      <section anchor="dsig-cred-sample">
        <name>Delegated signer credential</name>
        <t>A delegated signer credential (<xref format="counter" target="delegated-signer-credential"/>) must prove that the issuer is giving authority to the issuee. This authority should be carefully constrained so that it applies only to outbound voice calls, not to signing invoices or legal contracts. It can also be constrained so it only applies on a particular schedule, or when the call originates or terminates in a particular geo or jurisdiction.</t>
        <t>A Generalized Cooperative Delegation (GCD) credential embodies delegated but constrained authority in exactly this way. A GCD credential suitable for use as a delegated signer credential in VVP might look like this:</t>
        <sourcecode type="json"><![CDATA[
{
    "v": "ACDC10JSON00096c_",
    "d": "EDQpU3nrKyJBgUJGw5461CbWcug9BZj7WXUkKbNOlnFR",
    "u": "0ADE6oAxBl4E7uKeGUb7BEYi",
    "i": "EC4SuEyzrRwu3FWFrK0Ubd9xejlo5bUwAtGcbBGUk2nL",
    "ri": "EM2YZ78SKE8eO4W1lQOJeer5xKZqLmJV7SPr3Ji5DMBZ",
    "s": "EL7irIKYJL9Io0hhKSGWI4OznhwC7qgJG5Qf4aEs6j0o",
    "a": {
        "d": "EPQhEk5tfXvxyKe5Hk4DG63dSgoP-F2VZrxuIeIKrT9B",
        "u": "0AC9kH8q99PTCQNteGyI-F4g",
        "i": "EIkxoE8eYnPLCydPcyc_lhQgwOdBHwzkSe36e2gqEH-5",
        "dt": "2024-12-27T13:11:29.062000+00:00",
        "c_goal": ["ops.telco.send.sign"],
        "c_proto": ["VVP:OP"]
    },
    "r": {
        "d": "EFthNcTE20MLMaCOoXlSmNtdooGEbZF8uGmO5G85eMSF",
        "noRoleSemanticsWithoutGfw": "All parties agree...",
        "issuerNotResponsibleOutsideConstraints": "Although verifiers...",
        "noConstraintSansPrefix": "Issuers agree...",
        "useStdIfPossible": "Issuers agree...",
        "onlyDelegateHeldAuthority": "Issuers agree..."
    }
}
]]></sourcecode>
        <t>Note the <tt>c_goal</tt> field that limits goals that can be justified with this credential, and the <tt>c_proto</tt> field that says the delegate can only exercise this authority in the context of the "VVP" protocol with the "OP" role.</t>
        <t>The schema for GCD credentials, and an explanation how to add additional constraints, is documented at <xref target="GCD-SCHEMA"/>.</t>
      </section>
      <section anchor="dossier-1">
        <name>Dossier</name>
        <t>A dossier (<xref format="counter" target="dossier"/>) is almost all edges -- that is, links to other credentials. Here's what one might look like:</t>
        <sourcecode type="json"><![CDATA[
{
  "v": "ACDC10JSON00036f_",
  "d": "EKvpcshjgjzdCWwR4q9VnlsUwPgfWzmy9ojMpTSzNcEr",
  "i": "EIkxoE8eYnPLCydPcyc_lhQgwOdBHwzkSe36e2gqEH-5",
  "ri": "EMU5wN33VsrJKlGCwk2ts_IJi67IXE6vrYV3v9Xdxw3p",
  "s": "EFv3_L64_xNhOGQkaAHQTI-lzQYDvlaHcuZbuOTuDBXj",
  "a": {
    "d": "EJnMhz8MJxmI0epkq7D1zzP5pGTbSb2YxkSdczNfcHQM",
    "dt": "2024-12-27T13:11:41.865000+00:00"
  },
  "e": {
    "d": "EPVc2ktYnZQOwNs34lO1YXFOkT51lzaILFEMXNfZbGrh",
    "vetting": {
      "n": "EIpaOx1NJc0N_Oj5xzWhFQp6EpB847yTex62xQ7uuSQL",
      "s": "ENPXp1vQzRF6JwIuS-mp2U8Uf1MoADoP_GqQ62VsDZWY",
      "o": "NI2I"
    },
    "alloc": {
      "n": "EEeg55Yr01gDyCScFUaE2QgzC7IOjQRpX2sTckFZp1RP",
      "s": "EFvnoHDY7I-kaBBeKlbDbkjG4BaI0nKLGadxBdjMGgSQ",
      "o": "I2I"
    },
    "brand": {
      "n": "EKSZT4yTtsZ2AqriNKBvS7GjmsU3X1t-S3c69pHceIXW",
      "s": "EaWmoHDYbkjG4BaI0nK7I-kaBBeKlbDLGadxBdSQjMGg",
      "o": "I2I"
    },
    "bproxy": {
      "n": "EWQpU3nrKyJBgUJGw5461CbWcug9BZj7WXUkKbNOlnFx",
      "s": "EL7irIKYJL9Io0hhKSGWI4OznhwC7qgJG5Qf4aEs6j0o",
      "o": "I2I"
    },
    "delsig": {
      "n": "EMKcp1-AvpW0PZdThjK3JCbMsXAmrqB9ONa1vZyTppQE",
      "s": "EL7irIKYJL9Io0hhKSGWI4OznhwC7qgJG5Qf4aEs6j0o",
      "o": "NI2I"
    }
  }
}
]]></sourcecode>
        <t>Notice how each named edge references one of the previous sample credentials in its <tt>n</tt> field, and that other credential's associated schema in the <tt>s</tt> field.</t>
        <t>The schema for this credential is documented at <xref target="DOSSIER-SCHEMA"/>.</t>
      </section>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This specification requires no IANA actions. However, it does depend on OOBIs (see <xref format="counter" target="aid"/>) being served as web resources with IANA content type <tt>application/json+cesr</tt>.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC3261">
          <front>
            <title>SIP: Session Initiation Protocol</title>
            <author fullname="J. Rosenberg" initials="J." surname="Rosenberg"/>
            <author fullname="H. Schulzrinne" initials="H." surname="Schulzrinne"/>
            <author fullname="G. Camarillo" initials="G." surname="Camarillo"/>
            <author fullname="A. Johnston" initials="A." surname="Johnston"/>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <author fullname="R. Sparks" initials="R." surname="Sparks"/>
            <author fullname="M. Handley" initials="M." surname="Handley"/>
            <author fullname="E. Schooler" initials="E." surname="Schooler"/>
            <date month="June" year="2002"/>
            <abstract>
              <t>This document describes Session Initiation Protocol (SIP), an application-layer control (signaling) protocol for creating, modifying, and terminating sessions with one or more participants. These sessions include Internet telephone calls, multimedia distribution, and multimedia conferences. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3261"/>
          <seriesInfo name="DOI" value="10.17487/RFC3261"/>
        </reference>
        <reference anchor="RFC5626">
          <front>
            <title>Managing Client-Initiated Connections in the Session Initiation Protocol (SIP)</title>
            <author fullname="C. Jennings" initials="C." role="editor" surname="Jennings"/>
            <author fullname="R. Mahy" initials="R." role="editor" surname="Mahy"/>
            <author fullname="F. Audet" initials="F." role="editor" surname="Audet"/>
            <date month="October" year="2009"/>
            <abstract>
              <t>The Session Initiation Protocol (SIP) allows proxy servers to initiate TCP connections or to send asynchronous UDP datagrams to User Agents in order to deliver requests. However, in a large number of real deployments, many practical considerations, such as the existence of firewalls and Network Address Translators (NATs) or the use of TLS with server-provided certificates, prevent servers from connecting to User Agents in this way. This specification defines behaviors for User Agents, registrars, and proxy servers that allow requests to be delivered on existing connections established by the User Agent. It also defines keep-alive behaviors needed to keep NAT bindings open and specifies the usage of multiple connections from the User Agent to its registrar. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5626"/>
          <seriesInfo name="DOI" value="10.17487/RFC5626"/>
        </reference>
        <reference anchor="RFC5280">
          <front>
            <title>Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile</title>
            <author fullname="D. Cooper" initials="D." surname="Cooper"/>
            <author fullname="S. Santesson" initials="S." surname="Santesson"/>
            <author fullname="S. Farrell" initials="S." surname="Farrell"/>
            <author fullname="S. Boeyen" initials="S." surname="Boeyen"/>
            <author fullname="R. Housley" initials="R." surname="Housley"/>
            <author fullname="W. Polk" initials="W." surname="Polk"/>
            <date month="May" year="2008"/>
            <abstract>
              <t>This memo profiles the X.509 v3 certificate and X.509 v2 certificate revocation list (CRL) for use in the Internet. An overview of this approach and model is provided as an introduction. The X.509 v3 certificate format is described in detail, with additional information regarding the format and semantics of Internet name forms. Standard certificate extensions are described and two Internet-specific extensions are defined. A set of required certificate extensions is specified. The X.509 v2 CRL format is described in detail along with standard and Internet-specific extensions. An algorithm for X.509 certification path validation is described. An ASN.1 module and examples are provided in the appendices. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5280"/>
          <seriesInfo name="DOI" value="10.17487/RFC5280"/>
        </reference>
        <reference anchor="RFC4648">
          <front>
            <title>The Base16, Base32, and Base64 Data Encodings</title>
            <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
            <date month="October" year="2006"/>
            <abstract>
              <t>This document describes the commonly used base 64, base 32, and base 16 encoding schemes. It also discusses the use of line-feeds in encoded data, use of padding in encoded data, use of non-alphabet characters in encoded data, use of different encoding alphabets, and canonical encodings. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="4648"/>
          <seriesInfo name="DOI" value="10.17487/RFC4648"/>
        </reference>
        <reference anchor="RFC8032">
          <front>
            <title>Edwards-Curve Digital Signature Algorithm (EdDSA)</title>
            <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
            <author fullname="I. Liusvaara" initials="I." surname="Liusvaara"/>
            <date month="January" year="2017"/>
            <abstract>
              <t>This document describes elliptic curve signature scheme Edwards-curve Digital Signature Algorithm (EdDSA). The algorithm is instantiated with recommended parameters for the edwards25519 and edwards448 curves. An example implementation and test vectors are provided.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8032"/>
          <seriesInfo name="DOI" value="10.17487/RFC8032"/>
        </reference>
        <reference anchor="RFC8224">
          <front>
            <title>Authenticated Identity Management in the Session Initiation Protocol (SIP)</title>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <author fullname="C. Jennings" initials="C." surname="Jennings"/>
            <author fullname="E. Rescorla" initials="E." surname="Rescorla"/>
            <author fullname="C. Wendt" initials="C." surname="Wendt"/>
            <date month="February" year="2018"/>
            <abstract>
              <t>The baseline security mechanisms in the Session Initiation Protocol (SIP) are inadequate for cryptographically assuring the identity of the end users that originate SIP requests, especially in an interdomain context. This document defines a mechanism for securely identifying originators of SIP requests. It does so by defining a SIP header field for conveying a signature used for validating the identity and for conveying a reference to the credentials of the signer.</t>
              <t>This document obsoletes RFC 4474.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8224"/>
          <seriesInfo name="DOI" value="10.17487/RFC8224"/>
        </reference>
        <reference anchor="RFC8225">
          <front>
            <title>PASSporT: Personal Assertion Token</title>
            <author fullname="C. Wendt" initials="C." surname="Wendt"/>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <date month="February" year="2018"/>
            <abstract>
              <t>This document defines a method for creating and validating a token that cryptographically verifies an originating identity or, more generally, a URI or telephone number representing the originator of personal communications. The Personal Assertion Token, PASSporT, is cryptographically signed to protect the integrity of the identity of the originator and to verify the assertion of the identity information at the destination. The cryptographic signature is defined with the intention that it can confidently verify the originating persona even when the signature is sent to the destination party over an insecure channel. PASSporT is particularly useful for many personal-communications applications over IP networks and other multi-hop interconnection scenarios where the originating and destination parties may not have a direct trusted relationship.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8225"/>
          <seriesInfo name="DOI" value="10.17487/RFC8225"/>
        </reference>
        <reference anchor="FIPS186-4" target="https://doi.org/10.6028/NIST.FIPS.186-4">
          <front>
            <title>Digital Signature Standard (DSS)</title>
            <author>
              <organization>National Institute of Standards and Technology (NIST)</organization>
            </author>
            <date year="2013" month="July"/>
          </front>
        </reference>
        <reference anchor="TOIP-CESR" target="https://trustoverip.github.io/tswg-cesr-specification/">
          <front>
            <title>Composable Event Streaming Representation (CESR)</title>
            <author initials="S." surname="Smith" fullname="Sam Smith">
              <organization/>
            </author>
            <author initials="K." surname="Griffin" fullname="Kevin Griffin" role="editor">
              <organization/>
            </author>
            <author>
              <organization>Trust Over IP Foundation</organization>
            </author>
            <date year="2023" month="November"/>
          </front>
        </reference>
        <reference anchor="TOIP-KERI" target="https://trustoverip.github.io/tswg-keri-specification/">
          <front>
            <title>Key Event Receipt Infrastructure (KERI)</title>
            <author initials="S." surname="Smith" fullname="Sam Smith">
              <organization/>
            </author>
            <author initials="K." surname="Griffin" fullname="Kevin Griffin" role="editor">
              <organization/>
            </author>
            <author>
              <organization>Trust Over IP Foundation</organization>
            </author>
            <date year="2024" month="January"/>
          </front>
        </reference>
        <reference anchor="TOIP-ACDC" target="https://trustoverip.github.io/tswg-acdc-specification/">
          <front>
            <title>Authentic Chained Data Containers (ACDC)</title>
            <author initials="S." surname="Smith" fullname="Sam Smith">
              <organization/>
            </author>
            <author initials="P." surname="Feairheller" fullname="Phil Feairheller">
              <organization/>
            </author>
            <author initials="K." surname="Griffin" fullname="Kevin Griffin" role="editor">
              <organization/>
            </author>
            <author>
              <organization>Trust Over IP Foundation</organization>
            </author>
            <date year="2023" month="November"/>
          </front>
        </reference>
        <reference anchor="ISO-17442-1" target="https://www.iso.org/standard/78829.html">
          <front>
            <title>Financial services – Legal entity identifier (LEI) – Part 1: Assignment</title>
            <author>
              <organization>International Organization for Standardization</organization>
            </author>
            <date year="2020"/>
          </front>
        </reference>
        <reference anchor="ISO-17442-3" target="https://www.iso.org/standard/85628.html">
          <front>
            <title>inancial services – Legal entity identifier (LEI) – Part 3: Verifiable LEIs (vLEIs)</title>
            <author>
              <organization>International Organization for Standardization</organization>
            </author>
            <date year="2024"/>
          </front>
        </reference>
        <reference anchor="ATIS-1000074" target="https://atis.org/resources/signature-based-handling-of-asserted-information-using-tokens-shaken-atis-1000074-e/">
          <front>
            <title>Signature-Based Handling of Asserted Information Using toKENs (SHAKEN)</title>
            <author>
              <organization>Alliance for Telecommunications Industry Solutions</organization>
            </author>
            <date year="2019" month="February"/>
          </front>
        </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>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="RFC3986">
          <front>
            <title>Uniform Resource Identifier (URI): Generic Syntax</title>
            <author fullname="T. Berners-Lee" initials="T." surname="Berners-Lee"/>
            <author fullname="R. Fielding" initials="R." surname="Fielding"/>
            <author fullname="L. Masinter" initials="L." surname="Masinter"/>
            <date month="January" year="2005"/>
            <abstract>
              <t>A Uniform Resource Identifier (URI) is a compact sequence of characters that identifies an abstract or physical resource. This specification defines the generic URI syntax and a process for resolving URI references that might be in relative form, along with guidelines and security considerations for the use of URIs on the Internet. The URI syntax defines a grammar that is a superset of all valid URIs, allowing an implementation to parse the common components of a URI reference without knowing the scheme-specific requirements of every possible identifier. This specification does not define a generative grammar for URIs; that task is performed by the individual specifications of each URI scheme. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="STD" value="66"/>
          <seriesInfo name="RFC" value="3986"/>
          <seriesInfo name="DOI" value="10.17487/RFC3986"/>
        </reference>
        <reference anchor="RFC7519">
          <front>
            <title>JSON Web Token (JWT)</title>
            <author fullname="M. Jones" initials="M." surname="Jones"/>
            <author fullname="J. Bradley" initials="J." surname="Bradley"/>
            <author fullname="N. Sakimura" initials="N." surname="Sakimura"/>
            <date month="May" year="2015"/>
            <abstract>
              <t>JSON Web Token (JWT) is a compact, URL-safe means of representing claims to be transferred between two parties. The claims in a JWT are encoded as a JSON object that is used as the payload of a JSON Web Signature (JWS) structure or as the plaintext of a JSON Web Encryption (JWE) structure, enabling the claims to be digitally signed or integrity protected with a Message Authentication Code (MAC) and/or encrypted.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7519"/>
          <seriesInfo name="DOI" value="10.17487/RFC7519"/>
        </reference>
        <reference anchor="RFC8226">
          <front>
            <title>Secure Telephone Identity Credentials: Certificates</title>
            <author fullname="J. Peterson" initials="J." surname="Peterson"/>
            <author fullname="S. Turner" initials="S." surname="Turner"/>
            <date month="February" year="2018"/>
            <abstract>
              <t>In order to prevent the impersonation of telephone numbers on the Internet, some kind of credential system needs to exist that cryptographically asserts authority over telephone numbers. This document describes the use of certificates in establishing authority over telephone numbers, as a component of a broader architecture for managing telephone numbers as identities in protocols like SIP.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8226"/>
          <seriesInfo name="DOI" value="10.17487/RFC8226"/>
        </reference>
        <reference anchor="RFC8588">
          <front>
            <title>Personal Assertion Token (PaSSporT) Extension for Signature-based Handling of Asserted information using toKENs (SHAKEN)</title>
            <author fullname="C. Wendt" initials="C." surname="Wendt"/>
            <author fullname="M. Barnes" initials="M." surname="Barnes"/>
            <date month="May" year="2019"/>
            <abstract>
              <t>This document extends the Personal Assertion Token (PASSporT), which is a token object that conveys cryptographically signed information about the participants involved in communications. The extension is defined based on the "Signature-based Handling of Asserted information using toKENs (SHAKEN)" specification by the ATIS/SIP Forum IP-NNI Task Group. It provides both (1) a specific set of levels of confidence in the correctness of the originating identity of a call originated in a SIP-based telephone network as well as (2) an identifier that allows the Service Provider (SP) to uniquely identify the origin of the call within its network.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8588"/>
          <seriesInfo name="DOI" value="10.17487/RFC8588"/>
        </reference>
        <reference anchor="RFC6350">
          <front>
            <title>vCard Format Specification</title>
            <author fullname="S. Perreault" initials="S." surname="Perreault"/>
            <date month="August" year="2011"/>
            <abstract>
              <t>This document defines the vCard data format for representing and exchanging a variety of information about individuals and other entities (e.g., formatted and structured name and delivery addresses, email address, multiple telephone numbers, photograph, logo, audio clips, etc.). This document obsoletes RFCs 2425, 2426, and 4770, and updates RFC 2739. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6350"/>
          <seriesInfo name="DOI" value="10.17487/RFC6350"/>
        </reference>
        <reference anchor="RFC7095">
          <front>
            <title>jCard: The JSON Format for vCard</title>
            <author fullname="P. Kewisch" initials="P." surname="Kewisch"/>
            <date month="January" year="2014"/>
            <abstract>
              <t>This specification defines "jCard", a JSON format for vCard data. The vCard data format is a text format for representing and exchanging information about individuals and other entities, for example, telephone numbers, email addresses, structured names, and delivery addresses. JSON is a lightweight, text-based, language- independent data interchange format commonly used in Internet applications.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7095"/>
          <seriesInfo name="DOI" value="10.17487/RFC7095"/>
        </reference>
        <reference anchor="VCON-DRAFT">
          <front>
            <title>The JSON format for vCon - Conversation Data Container</title>
            <author fullname="Daniel Petrie" initials="D." surname="Petrie">
              <organization>SIPez LLC</organization>
            </author>
            <author fullname="Thomas McCarthy-Howe" initials="T." surname="McCarthy-Howe">
              <organization>Strolid</organization>
            </author>
            <date day="19" month="March" year="2025"/>
            <abstract>
              <t>   A vCon is the container for data and information relating to a real-
   time, human conversation.  It is analogous to a [vCard] which enables
   the definition, interchange and storage of an individual's various
   points of contact.  The data contained in a vCon may be derived from
   any multimedia session, traditional phone call, video conference, SMS
   or MMS message exchange, webchat or email thread.  The data in the
   container relating to the conversation may include Call Detail
   Records (CDR), call meta data, participant identity information (e.g.
   STIR PASSporT), the actual conversational data exchanged (e.g. audio,
   video, text), realtime or post conversational analysis and
   attachments of files exchanged during the conversation.  A
   standardized conversation container enables many applications,
   establishes a common method of storage and interchange, and supports
   identity, privacy and security efforts (see [vCon-white-paper])

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-vcon-vcon-container-03"/>
        </reference>
        <reference anchor="GSMA-RCS" target="https://www.gsma.com/solutions-and-impact/technologies/networks/wp-content/uploads/2019/10/RCC.07-v11.0.pdf">
          <front>
            <title>Rich Communication Suite - Advanced Communications Services and Client Specification, version 11.0</title>
            <author>
              <organization>GSMA</organization>
            </author>
            <date year="2019" month="October"/>
          </front>
        </reference>
        <reference anchor="RCD-DRAFT">
          <front>
            <title>SIP Call-Info Parameters for Rich Call Data</title>
            <author fullname="Chris Wendt" initials="C." surname="Wendt">
              <organization>Somos</organization>
            </author>
            <author fullname="Jon Peterson" initials="J." surname="Peterson">
              <organization>Neustar</organization>
            </author>
            <date day="17" month="March" year="2025"/>
            <abstract>
              <t>   This document describes a usage of the SIP Call-Info header field
   that incorporates Rich Call Data (RCD) associated with the identity
   of the calling party in order to provide to the called party a
   description of the caller or details about the reason for the call.
   RCD includes information about the caller beyond the telephone number
   such as a calling name, or a logo, photo, or jCard object
   representing the caller, which can help the called party decide
   whether to answer the phone.  The elements defined for this purpose
   are intended to be extensible in order to accommodate related
   information about calls and to be compatible and complementary with
   the STIR/PASSporT RCD framework.

   This document defines three new parameters 'call-reason', 'verified',
   and 'integrity' for the SIP Call-Info header field and also a new
   token ("jcard") for the 'purpose' parameter of the Call-Info header
   field.  It also provides guidance on the use of the Call-Info
   'purpose' parameter token, "icon".

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-sipcore-callinfo-rcd-16"/>
        </reference>
        <reference anchor="RCD-PASSPORT">
          <front>
            <title>PASSporT Extension for Rich Call Data</title>
            <author fullname="Chris Wendt" initials="C." surname="Wendt">
              <organization>Somos Inc.</organization>
            </author>
            <author fullname="Jon Peterson" initials="J." surname="Peterson">
              <organization>Neustar Inc.</organization>
            </author>
            <date day="5" month="June" year="2023"/>
            <abstract>
              <t>   This document extends PASSporT, a token for conveying
   cryptographically-signed call information about personal
   communications, to include rich meta-data about a call and caller
   that can be signed and integrity protected, transmitted, and
   subsequently rendered to the called party.  This framework is
   intended to include and extend caller and call specific information
   beyond human-readable display name comparable to the "Caller ID"
   function common on the telephone network and is also enhanced with a
   integrity mechanism that is designed to protect the authoring and
   transport of this information for different authoritative use-cases.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-stir-passport-rcd-26"/>
        </reference>
        <reference anchor="SD-JWT-DRAFT">
          <front>
            <title>Selective Disclosure for JWTs (SD-JWT)</title>
            <author fullname="Daniel Fett" initials="D." surname="Fett">
              <organization>Authlete</organization>
            </author>
            <author fullname="Kristina Yasuda" initials="K." surname="Yasuda">
              <organization>Keio University</organization>
            </author>
            <author fullname="Brian Campbell" initials="B." surname="Campbell">
              <organization>Ping Identity</organization>
            </author>
            <date day="1" month="March" year="2025"/>
            <abstract>
              <t>   This specification defines a mechanism for the selective disclosure
   of individual elements of a JSON-encoded data structure used as the
   payload of a JSON Web Signature (JWS).  The primary use case is the
   selective disclosure of JSON Web Token (JWT) claims.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-oauth-selective-disclosure-jwt-17"/>
        </reference>
        <reference anchor="CTIA-BCID" target="https://api.ctia.org/wp-content/uploads/2022/11/Branded-Calling-Best-Practices.pdf">
          <front>
            <title>Branded Calling ID Best Practices</title>
            <author>
              <organization>CTIA</organization>
            </author>
            <date year="2022" month="November"/>
          </front>
        </reference>
        <reference anchor="W3C-DID" target="https://www.w3.org/TR/2022/REC-did-core-20220719/">
          <front>
            <title>Decentralized Identifiers (DIDs) v1.0</title>
            <author fullname="Amy Guy" role="editor"/>
            <author fullname="Drummond Reed" role="editor"/>
            <author fullname="Manu Sporny" role="editor"/>
            <author fullname="Markus Sabadello" role="editor"/>
            <date day="19" month="July" year="2022"/>
          </front>
          <seriesInfo name="W3C REC" value="REC-did-core-20220719"/>
          <seriesInfo name="W3C" value="REC-did-core-20220719"/>
        </reference>
        <reference anchor="W3C-VC" target="https://www.w3.org/TR/2022/REC-vc-data-model-20220303/">
          <front>
            <title>Verifiable Credentials Data Model v1.1</title>
            <author fullname="Brent Zundel" role="editor"/>
            <author fullname="Daniel Burnett" role="editor"/>
            <author fullname="Dave Longley" role="editor"/>
            <author fullname="Grant Noble" role="editor"/>
            <author fullname="Kyle Den Hartog" role="editor"/>
            <author fullname="Manu Sporny" role="editor"/>
            <date day="3" month="March" year="2022"/>
          </front>
          <seriesInfo name="W3C REC" value="REC-vc-data-model-20220303"/>
          <seriesInfo name="W3C" value="REC-vc-data-model-20220303"/>
        </reference>
        <reference anchor="ARIES-RFC-0519" target="https://github.com/hyperledger/aries-rfcs/blob/main/concepts/0519-goal-codes/README.md">
          <front>
            <title>Aries RFC 0519: Goal Codes</title>
            <author initials="D." surname="Hardman" fullname="Daniel Hardman">
              <organization/>
            </author>
            <date year="2021" month="April"/>
          </front>
        </reference>
        <reference anchor="JSON-SCHEMA" target="https://json-schema.org/specification">
          <front>
            <title>JSON Schema Specification 2020-12</title>
            <author>
              <organization>JSON Schema Community</organization>
            </author>
            <date year="2022" month="June"/>
          </front>
        </reference>
        <reference anchor="LE-VLEI-SCHEMA" target="https://github.com/GLEIF-IT/vLEI-schema/blob/main/legal-entity-vLEI-credential.json">
          <front>
            <title>Legal Entity vLEI Credential</title>
            <author>
              <organization>GLEIF</organization>
            </author>
            <date year="2023" month="November"/>
          </front>
        </reference>
        <reference anchor="TN-ALLOC-SCHEMA" target="https://github.com/provenant-dev/public-schema/blob/main/tn-alloc/tn-alloc.schema.json">
          <front>
            <title>TN Allocation Credential</title>
            <author>
              <organization>Provenant</organization>
            </author>
            <date year="2024" month="December"/>
          </front>
        </reference>
        <reference anchor="GCD-SCHEMA" target="https://github.com/provenant-dev/public-schema/blob/main/gcd/index.md">
          <front>
            <title>Generalized Cooperative Delegation (GCD) Credentials</title>
            <author initials="D." surname="Hardman" fullname="Daniel Hardman">
              <organization/>
            </author>
            <date year="2023" month="December"/>
          </front>
        </reference>
        <reference anchor="DOSSIER-SCHEMA" target="https://github.com/provenant-dev/public-schema/blob/main/vvp-dossier/vvp-dossier.schema.json">
          <front>
            <title>Verifiable Voice Dossier</title>
            <author initials="A." surname="Singh" fullname="Arshdeep Singh">
              <organization/>
            </author>
            <date year="2025" month="January"/>
          </front>
        </reference>
      </references>
    </references>
    <?line 1299?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>Much of the cybersecurity infrastructure used by VVP depends on KERI, which was invented by Sam Smith, and first implemented by Sam plus Phil Fairheller, Kevin Griffin, and other technical staff at GLEIF. Thanks to logistical support from Trust Over IP and the Linux Foundation, and to a diverse community of technical experts in those communities and in the Web of Trust group.</t>
      <t>Techniques that apply KERI to telco use cases were developed by Daniel Hardman, Randy Warshaw, and Ruth Choueka, with additional contributions from Dmitrii Tychinin, Yaroslav Lazarev, Arshdeep Singh, and many other staff members at Provenant, Inc. Thanks as well to Ed Eykholt for multiple editorial improvements.</t>
    </section>
  </back>
  <!-- ##markdown-source:
H4sIAAAAAAAAA+S923IbV7Yt+I6vyENHh0kagHgTRcmXOhBJ2bQlkSVScnlX
V2wlgASRFpAJZyZIwbZ2nH/op37r137on+jzJ+dLeo55WWtlAqBEVe3THdGO
qBII5GVd5pr3OWan02lVaTVJnkQbb5IiHaVxf5JEb/J0kEQXRV7lg3yy0Yr7
/SK5wTVvLjZag7hKrvNi8SQqq2GrNcwHWTylJwyLeFR1xnExnMZZ58Y9rnOD
x3Vm+rjOzk6rnPenaVmmeVYtZnTr2enVsyj6IoonZU6vSbNhMkvo/7Jqox1t
JMO0yos0nuCPs95T+icv6NOrq2cbrWw+7SfFk9aQRvWkNcizMsnKefkkqop5
0qJB77fouUUSP4l6r0579MdtXry7LvL57En08/fRz/RXml1H3+Ob1rtkQT8P
n7SiTkTDnuHfKpkkg3yqHwe5fTcb51kSyfv5+qSq6En4+NMvx62bJJvTiL6I
Ivcy/CETrr+Vvp7G6QSX/NfkfTydTZIu3kjfx8Vg/CQaV9WsfPLgQfDjA3oc
PTqtxvM+LdlwPN7d3Tt6cHMz26DvJ7QaZUXf2536e1du6KY5rnzwiVvWHVdT
IoNWPK/GeYHFoVdE0Wg+mcjWb5zEWZpMoh/kSRv8c15c07e/xxVt8xNQE61I
nFXt6Cwb8AWJTHpjyDd3dRj/9RpfY4r0xiwvpvSAG1rIKHr17Hh/73BXPz48
3Du0j3tHO/rx4PDgSD8e7ezv2ce9vQP/8SE+Pju7uNw9Ouzw97QtcXGdVH6l
h3napQk82N3pHu7Qur48u7zq4p4u3yT3yMk5SWlR40l0mV5ncTUvkuiyirMh
zSbaPLm83OJr3dJFujRPope8MnTjWVbSo+ZVEuUjd28Z0b/RVTIYZ/kkv15E
mxiCPIxpPfpxPllEezu7+/Td1fnZRef49PLV6tnQWSirHPs7CyigKm+vO4Ok
LDrlLBnQ1g94RA/CyW0c59NZXjJbOKUNrGiAdJimIN5XyaxI6LhVfFu0ifdv
bayYbkf/jSIhl8t4Gl1OaRxrfv8puUkzOhvpaJRm7rcix4CEGSzdyCt6hWlG
5zTP6OwiepbPaSUxtGDRHkUv8xtatT23aj+dvjq796q9oy/vWrWfkoUu16tk
kKSzijZ5VMQlPXLAJLKJ1/5/fbEeRj/GGRbrwBard3xyfO/FigfDwV2L1aP5
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
CFPfpILGz5jJK9zLslI7+3vSvOPZ2cXl7tFh5wB/1tqR1ry0aMHEDZSCQjJt
alZJy2odDGd1gsk5g897sEiNyBgfUIGZDGSVse+NMZMdLyHiGsq69DuL5djX
oQrcmvYXbreNnllGuyZj7jbjQV7qOc291vKd3QdpOZiXwvKJUGhrvxml17Qm
37W+QQLgd0qKF26oUrU+VGAd98M3D/jy1jcxHdqk+q4VRfjIaR1YtW83ypvr
DU4q/HaDXrHbxd/fMZbIN/Qxej+dZOW3jA1OJtDt7W33dr+bF9cP9nZ2dh7w
zXpcvt3Y7e5uEGuBwPh2Y+9gZ4MO4bAaf7tB0nCDGfnT/P23GzvRTkTfRHwF
7UNJzx+mMS3SdCMCXFZHjN5vN6bpcDhJNoh3ZFVnFNNZWNCXeZbTUR7Y92X6
O419d3/2foMVwndJB81ZyKj+dqOAk9+mMyNCi4bfbryIjtr7e9Fz+mf38R49
JZ1Mvt3I8iyxB3y70Yc1vfFg6U6atdyLD/e/e3+vfXiAu+nD3t7BPe9+fKjv
pg+7jw7vd/fBkc4aH+5998M9mu4Bho5P9x76kV+0/fuumc1aJnC/m2mH/IIf
3nPQB4/2gjnTp/sPnNb5c1ecifNzCW33kDfpcykNA5bb77Pb+WRxDegUOdHc
9hh6xoY6c7/dOKAVwWMPjg7ae7tHXf2097jr1kYe6b3XOMKw6zd3j3baOqyt
e7xy91BmsvvwUF/Jnz75lbqQ/pWDtBiQYB4QHzsAQQ2IIzFpELs6dOwsh1zN
K3sFqcbV2nW7tpvA+oxX4XNE79jdoUfTK/Z2Npo8/5sHuKhx/f7jQ3d9XQ6s
uPihXPtwb+M7MtMQXUqGq596cPCJV+7uHPGVh0cb371Lh080Nsqd+i4vVj/8
aKd+i4rP89WXH8gLjg5oKNIOZPVT9w8/6Tp93O4OLRgpmHc+686LaG34mt3D
je+Q/71mIXc+4Sp7FHG77wAqefej7rzqUC+iaX6HEOG6hz3e89clN8No88fn
khbOmvLWypvsHjoG33W7XQmssVq1+h2HR/76IPNg7U4fCdHRMWxev4aSdEB7
pG18p3SnduAawjvy169W72r3Pbi2D6T2sCb1QFWpFWpVXA7StEPf1ZSrik/4
N//l78cnvave36U9TFOXW/1feJpbX3VW//dVcMPaa1p/Ru4Q117xZ+3zmmta
uGr5aEedr4L3u2vcWfZ362lsTO/P4P1rr+F30wFcWpz63Wuu4btx6D5298pr
+G6cs4/dvfIavlsO4N13AzNp9d31I7b67hVHV/aFntA8Qque0DiW4RjvpDl7
wp3XtJrzaq7Dx/77Vz2hzhuib5ZOzxpb7xteyX/8w9hAePofmIH1zQOz1CSL
AcG21lN23JUr3ZGZpsr5qj+fJeGxWZxvU7oPxg1cCwsHIdu3nvWIryTr0Op5
kfKNyC3cgK7dmAe3EaBYh8zTHHE3ep1xCsKS57Ntpb7c7HqeBRArvvbPErPT
YhUkkQRb4RBx8Ve7oUws4VbnomV68ZDLFpPRKOH0Y36Rq6UM98+nLfNjLUWE
lT0ftHAAm1hfmdBSMnbss1Q4d+WPL5C50lq/MMgTCAHNZa+RxPHGB7COg2xc
Set4cyy5fvUoDW+ylHRowGhbI3LsQwalbTtq+Fr9K22fargdAFP0F/5SHtO2
y0JKs+0VOPgeONTyOqJtHCZJEp/k19sI123Temwv5To0fBiKOO8dFxjEfR0W
e/8yh8U+VG11WBxANa45LOibiK/4/5fD4sAs94PPeTfdtHewo7fvQd26z+37
jw71dv5039sPzNmCD3uP7jn2A5v5wefM/J/xd4Qvvu/NB/RCN+f7+jv+KY+D
EsjnLpgnFd31zyCVR3ufu9lKnvektI/7O3aOsBtkk7cfwvWAD4ef7Ozgrdz6
NDfB3pGz+sFVV5o7e4f+IuG0K400Z+gDM231NTveG3ATbSo3XW0jHh442/6N
XLf6kXv+OtJgzYMOtOLVzz3yXoBLVmKil1xVuebp/uo02rSHs/qx+vGw9J3F
f8YXPolOXvrb7jbJcVdBb1L4D4MzWv2u0HHAmIFptViz7oHzAFoJw0usm8CB
9w5cCuBlbQbJ6lfsHvrb4mjT44R85DXwG9Broot5HxDuZ9kofwIw97/d7VDB
bY0dSdYQ0o53Hpy+r9CZO8/WOBoOgmuHVbTpwNdRzLlmEw69r8Flxaw+Rub2
wKVkkyXVYPV1+kj2LpA6tGa91WVxqD4OzrKDLnHnu/ceEQUgoIqD8q/1Uewt
+yhYT1v7H1jJR/wR635ls5ShGZf++1P/P+AvtZ/ZIlaOsvLGJhcR401vrLGM
xo1LDEK+xo2rGIG/cdWB1xvtWK+eoz/KtR9x48qT626sH9Dmjctn0d3YnGSy
5W70Z2vVUKPl4+Te6FwHK2+Uk9JcgLu9Cmsp5yuinOhz/rvbgxBxj4nPuK05
zK8+7Tbxt7gjbx6Mj99mR7/29o8tydIg7+HJ6PHKwOLmzC1Bw2yCrGhivsB2
AjkIha1NOGfNwrc6C63LYGJE9vWmJYZamrrrlWBW6lbk+rAqOlkAAihJCmyT
c/LnbR7A87P3wQHqbvJjXFa7QGpsKdyv5NByG1a0/ImvuXTkGuZ3JtmFnFyW
15p/OFTWVPrVxkO0/EIPUanP5WHxwJFNxbDGmcfblGJuPld4tn8XHLG0oJKs
4NfUsI6ywdw/yf/MdfbI2UJWqiHQBolzNZw5dluweS+NHytGXnQYFn3O3rnO
UWKERFp2ihiabpEkk0VQuOoSOyGzBJIzi/mFmrBomCQMxaPJvijc4Orr8Jp6
9wX4CdgbzQjsszjTmlxLts2YJ3FZ/WCSM3qJZL+a94bM9SH3Re34S6xzsyvl
x9ukPA/At1YjwXknSNS45I65UriAcmxLuvN5mZVmvEsqpxTZcnm+NdMxCPe6
N6W0HNOB1sm/9LRRJo1O22VU6wKT3OmvK1eNN1tYcs0SVkAtRbYG6qoJX0GZ
ffNepQmpVOPcvZjH5yvwXVsZrR2U803EyhUNJ1rKzxiUiiaJj5LrF2umX27A
sUy7vvIzQAbApi4MmSj3cEEun1Dvklp4pKOhfd6w7RI2S7ThqQy4z3KgvixD
Z+LCg4urS9IVz2e5K4UK+tMU3NCmNNxMSyZ1PaOVkXn4U/ZwNuBOrPZXgCF5
MgxQXgdBV1eylobobLk3JNPyPDM4YOdTdZhfnmG61MuqWWprFQA4ixOkpAZN
UCTNagmvmTv2Io1OCgctoTdAvdKyVwH8qrcYZlfr8ZuT1vZxmBvOnLvhoUQ1
GV0ppYEuDfvLZQC9eEWempS1h5nOt+PcpDR6AzFkEboccesl31GNS3Ct2iVM
42tWw4ZAK0guH5YeiMQljstjy1qZN1dP45UjNA6R5F8r1nV9xxtIsks124ug
WhvTwUyUOEhq50MtHebaNmE3WiniWpNzP0MtMOA0Ri6zEohC+hYPBDlqjZFb
rqCJm+Tu0ZcKjCj49EVUMpq4gmBY6YYg3a9oW8XZpts+ULNtROKc6ECc8EVB
21opqqfyXZoNbbzCEmXJBWhuonJxpAmTRJK0n4z43Qf8Q4HeC9uCYzQRySDf
b3f9E7n1x3kAtxT9TVEKjf6C5sUkPayNeKayfyrNDASPRHnG8o1yWmC+tU0f
MtilVIr13BJwFnjY7TKuwViRZnbL7UulMFyuaJ6ZsImg5hffZ3nwQ+oWeRgC
ZLlGhIg81laNAd/0DPKGKzpQkqFhAqetB1UGFsdBh52k4CRjsJqUBplopqvT
PhUFXXRSFM9j97SEylUGAS6eyxMMTL7MJ3NL1QSGvkCp0Ou01JLPQB2rq6Y1
8UkT4RGQoYS+eBD1G0HVT2VZK6Dxceq4pOhzQLAf/GZ1XVaAKrV33OEpAHyW
RvRI1Eel5Xb4AD0mTZRNaQDGePKpoMrU9EeGaq2wyrgBMW6ak5ZaYQtp1xVJ
Y0ojSLiEINGm4IoMz8XSWtvFKqDU4liLNUnAdt3hrhP93W2t1dXoSoWxNJN+
VT5JWGQN8lkqOGMSEkVLChLhCNIhJipjJm3+XWplW8KzfL83IgeO7qR0Ah3h
kroyzoAUbkVZBmRQ2x+GBBJsSxRYFkDbWFXuPQkRQnQKPiXDKr2GCWNxcp9N
14Z46Lq3SHY2F2ZlyaS0Jhv6HJdunEJ3QPy00eDo6vmlu9cVljOagKsHLRJX
HVpJCRyKKRXQ2mwB6XVkoJia+AzQCWhtSuJXKFnCcwY1Dl4tf6006hitU9PL
AExWyxBl8QM8DaeiOevSHQ1Dq3cbOljSNbQ0MEBziZX3LG/iVq25sOgUDWU9
oN4eMLSW4ZhEtVtaAuMLPz7HGgVdyFHMAQ3ox+eGjRBg10hs2BoPigTOXVG0
W09DERHNJDikpveIBEB35h+fO7qQmqtwQxZ6bFQXwLWMyjO8Tgxh1IeyJUWe
kbEujT2786a1M5eXrVOgHt/k6UAbf3HJtxOoaKZ89vLN2dWpGceipjBWsv/R
1Feml7dnut31qhiub3BghoGK6HE+6P2kVoZd1tQM2Oa0DVilHSdq3AOwOzQT
2h7XoAB1E3sPH+4+Dl4TpGYQKQO6yhAMgDIcE7O6FGfH4UEAZhXA1qhCuwxi
dXgoFysqqAOp6iialgIx9XpvDVWFppw5XFPRyLj8Zl4pCwiRqd7uPH3rkDVp
akdHHecoUogOSJ0V0FG1pz/BgwJ4KIOcKqVaW8pRN7VjHarUEHgXY2S4Zfe/
/D0+3p3820m32w3QrN6/VUvWL1PYaVCHAHfEXNqm4VupbPFN0jgTg6GKHII7
j0PAjh2sBjHmIO1jFaiRW/9NIb+t6Ktoo7tB/+9/0XQ4RhiCh0JbLEnjd6Kw
thRNLWEc1YDL1IPiSrT0AW0Hl91nmNckC+7RfgO39Mq8qOEq8p167N523zI3
B8oB10UTMUhtUze6QFkxStqk/F99P/ZKoUDraCLrtfH1bFZ9e3Mz2+Buu3k+
UbZSDrRCaPnImhPNlcOgTxWdvGFiTXgN5LF2memKtY6gpIqUSTBNJRZ5k4En
S7eJ6C0RBJHm22oxwz80cCVUxg7hfua+URGRCHecBgF3bAwKCLdQQGR5rCy7
IUkQf2YQPindW1uOJ6iskhxYHyS3uGxrg3r6l4QP/iGNwUaLrtsBXr7dyA0c
29q+sY2/J5N/l7YK+PPXKsU/ePyZ3R8OPdpkf9pHV0DH3jiODKZP+2ELz+cf
UlKmaEhhRqpLndsZoLCv1ra1TjiRrEje0aDXuOvs5OupVELgWwaF2DTQ+i0D
aqnLLsuHwg3bmny5LRMLGgPG2mvO+8/QTln8v8Q7uCp9qW6vIZVrvajW929f
Qi/nGkUPiKWgBdLaUM0rLa/ruWvrDZ1V9Hv+cJsXaNQuCCkNJNtmawcDh27a
Xwb3FGC5XrA1cGrz/+OL3sXph1a4lDUCd/Bgt1ohq1uxHeLDioVha8oAUhen
2wwCcnEqaJeltLIwbIhA3Woz9JWmxRmylpTmceFnbTSrgO0dFIWsrELI+1tW
9Jh1QBe05a+uXjfAeoE47rh2qdtnaZYXX4PtuQLzWKGyFX7q/MKQXErVeNGf
KcSmbn/0Feg+K9WWrkNs78J5tAw64T3qakmHcfqSSQzF906Xlm6pa0S4cJtn
mRSwR9JEmre5EK3SUORgntIez3nTNvhxG+jALhg9zIlm0pM+7DtrTYqC25l5
p9P42nCcgkp7NmbfHCNVm6X74f5DVPsDr8F/+Wjn8UPi7lvSEXt5ZtyNik3d
dtBQ0jWSSKVtoy2JCXHtGsu2TYxidWZGCzYWHG6ImQcnvp9zcJhO6Cz9LEXW
y6vGTkyHuM/bxSo0m6EOcVx6qYwb7aCXYAZuAd85U0hhojOFFXOK1iCdpQrw
EvT6UI5Ix1JEChavyRL7ySLX9+L4Atymn3jA8TDgmPkmvkqUooAI/vFkCkRG
BbYxzMGwYa+ANjE0x8K60hj4UDBhGk2qyo0bJDNXFoFG4HQOcwfH2CgGtqbf
jK47kFWAMbGiKTe414kwr5NTdvsl3JpJp+G0T6cV9i7UYR3Cv9dgnBugKx4e
zPd1Dp1yHJmo91MJMcKazdrv/YIvHQg5EJ7yUXUbWzsCOjTIGC4Dg46sS1oH
UQ/nDDAO/jtPy7FzQfQGNJLjHKCNBpFqiDoKP2MvEYAe2WrcRUM5u0KpPAkQ
9snaeIm0JZLhWyUaDoxYqFUBZ/1AlADG4is0a32FhPChDye1GDrCo/pBebe1
hC6fLVymfDmOZCxFAkmIs6fLhFAhBgPPFmOWTInN60M5XiFFKRpXZBRAazPx
taTScx8vQCzCN8wOXcgDBXthZEzX2Ngb5uxp1dWTDtfd6BkJTQ3gaaQktb2S
E2C9u2D7AlVtsEBHDPPDwktXrqiEF4PQHTomsK9xckkFp4XCqOG0lNbpp+A1
J6f3zTLf/5dlmXMpvJXFI/urXha/uxfxFf+vZJnvHViyd3t3757Z1nSPpXp/
Tv5te3/nQG7ef3j/mw929M0H98+2bh8c6pt5O+5VZb1nOc/4tLdz3yXbtXp+
+nDf7Hbcsytrhk/33i6/X5+1YX7HPmvL/J59zrr7XHN8Oti9Z2U9zdbm/uhz
ksXpJp07Pu1/xtt17vj0+L63Hx3hJtxOn+6/dI+J1HYMQ+K+VLMPHIQ9zpP/
HESE/cMd3Td8uvd5QUY8jx0f7j12lCXIuvOn+647cQklGny6967jpgN3+723
jREkdh16x30Xnm96bLcf3LcwxMkFZlifSXD7u3vto/uWdRwGO37fm2mmck5o
BPfebVCYX+/7Myg9Jp/Hm+Vofi6he6mk5+1zBbl8+lzeqgfmM3jr/uHnnjKR
RZ8tlUKhdLDzGUMP+Mu9b8c7dw8/V6YdyE26cJ93u0PZubcWxe+UurPP4i8i
CD+XNYsK8dnKhIjR+3HmAAWGJKGgwIA//SeBwOx5EJiPgro82vtUqJY9V3LV
7a7G0zgMruh+AjaLL7N6clc12EexW7SAB9eNOne+i0ut7nwZX5Hc3I0Swxdp
vchdb0Pl1eq36VpJbdYngJvsHwSP9FGEu16OmqzVLz/y1VR3XnC4dmf29oJL
1rviV0PoKHnyvStcjndRH1dR3fzlzuIovmaTbPfVpVsHIU7M5smaq6yij8ux
lt0vd+4R37Psob+rmo8Lupaqs5qVfHdf5bCfUO1Vq0la/dCHe/e53DEVUhDo
eD+hE6439S66wX9P1jAHV7q24v47aHB/Zy2RanEbX+HTGu8EpOJrdWeep2vA
jfTFe2uJf1erHvkSebN3T65+v3JZvsOAWXwt1l3DOFjLsGxH+JL7PfThWr6k
Fzz6CO8AFtJHtgVXNIMYd7JvvkPbrbhI2h1jONhZu0N6wd7atVPa5yvWHih9
yv7axbITx5d8wonTolS+XDLDXOviV1ev23eJpQMI6CefcGzsWPMNxLjY/Szt
kKti9St0xw4O3Y6tP0g2HFwrUUJf9oNbV89BVxICGh0w7iTnhzsfJ+d/umx1
fzW0Fv6rAWfdBYt1F+iV8MLVkFZP1gNWuU/01hyqjL7qiUNrWlcaiyJCK2B1
b1kPz2SfgnyEYKJ44cchw77qdL5a8TW/+5P+W4nAtHT3HYH+VQHL1s1fPv5m
1g6WvyVloFkU2ViGr2ofvmpcvFSJ+eddfzanz3eviPSE16+I+wd3ry+c5rvv
2NI/mZp9jWhzoH+u//lPuzuKaiyweffqn/+U03KXOvFn4+fmu+VweA1gxcjd
wkHor787CDLW715mR7W7V/2st9655utPme7YHf997JR9wt1LKQb1u5uiuH73
Z9HaV3b3Wlr76o6pf2Wrdhet8f+vEK4yIuJsa4nJgwg0pSZ/G9C5F5Ir7l4l
Ff/keendkIDLGxL8//Jv9uJ1hCaLs3LBP8YXbNVX/XqPiu+fOcPm5FRLltou
1YLTJlyGd5h1Zo3ufV9wTpzTRDXppiZp8M10zfozJfHCweEhP+E2d92WLa3P
VRxyeF0KHWWUSImQd67OFruzd5QUg9mMXMIU9y5x8HLciVzC2r6yoKzSGSLn
iWvyh9JvaWOH36WqS6PeTs5xConVC1qWz50JZFbP6+tNJZNKc8pq+SZ35qKd
X7RrSWbyHdrBaU5hkNp1ao8sVyRpaSa5rj0vdmMUcoecpPA+rkgK26XSUiN3
hNMMkPNg2Sm84miaII3G6slqIDfkVfBFSKRMpYRH0n5/tZbmsms8Eu1Vkks5
V6OTxYqkfSsHCPt8YvkszwVwmtbqpZLWBFoVzFPCTCTZpLK+ej5NWwqh86wz
K5IplydN8vkwunj6t3Y0L10vOOvmoc0jS5/NKT1y3BKGGRWW/aIpf8QerTUk
ckOQeeYy6LlHBZJAxulMKIIzYLTF0nL3395F2CU1l/br75IoicsUrTSkbIL7
zCTFDfJCJDdeU9PeLNFlq7eKWDlndkUFjAwkKAGsNMemnkrj+SrXqmvn3TBx
aVUC55L2oHUK7/Q9mvKkT9MdHIM6fp0XaTlMZfW1WohW6fnp2ZbrXFJ/mfSZ
szNZS6mKOWWrd6FlJdrA6nqS9znJSl6vxLt66egQai6spXoFyf6akot0o2Ko
iTm+zyFK5fWZPnc+Rl3ESJtTTbW8mTuKOfpESiJXfcrTJeFTW/yESZeaLp55
dFBLJKtcxjjq4FbNTGo7GxWAvMMCEeCIOqi1CvcUbxn590s1nhXq+Y6tjXKw
uLQsReAarCofd7xBrvuytNZzqybRoDlB7V0uvfwNKbSS9+3xUDiJTGsmtZCf
IX/tPUoxqAZbcWpWPlJl8qqB9n4JKqEwzvpDmH3dauWd1tpxUiQqvrR9VZHM
knqv2FKqzJFVWZRaKAFZxgLRUk6DTjqGEbJSpEly4/PT6IZO2teRlEicXZ53
dh8dHOx19j984FH98cc3dHMHN3akCsEj46IFC0oWc+lgzoBMWnMUYLGMClIS
oTh1o3OpdFgeDHejkaRkbYvmNKKFrzRCnmmojAuLSRLhrlluNf61QlsoOlYv
YonCfUe5UmIKhuA7rQHmA7l0WN3rTCBR2qsXMahHQ22DDRqcB6UOupNxA4xE
9iTci8yVFCoSsfJBhrulx16edLh6qImTu/Xx9lnL5jKdrRU29N1Sw9hHHmCQ
aEqyafnWpxzVQ2Hj6FDxkD2ec3+1Vy5rUpusLg9KsivRITHSDn9tRpeArjov
9PhgFFNcePXyNYCO6f+1jJhbRKngrTWSPZNqlAun1nK5gDAT0bi8HEqm3GqO
5yPWEDh9sWXqfai88XBWVybkynnp4W1drZGWpHGlws/gv1x0SXwAokMIWfU3
Zv6cHSwIK7aaqrRnye2qlyLFm7YzKqec9U8EcSptziA6V622CiBu0GSbI4gV
q65u1HsaNxY1acUdbcAkaIljAl6IJe2n12g21piXSEZTn8myKB1et/WKD0Ea
mB3R+3kcdIonNQI28awKD5fGm0rGF39poDpWgC+9t/0Yi5xL5tiGZoEl5gRv
iKDegHyAVLT07qRA991PYzArtvA/m8HwS8l0Y6cQT83a5x1ykdllo3KOHlk2
m3CvGLZ16TKZwO296yVtVdYQKgrb0DCUiFmtKgP5NAXX2VCGdCGNP71BJiAg
8Ea0UbVfkShDA952xDoQnaBkSHrLmC6dOAAzNGLkG70a7DVDaQiIEo9mtr+C
wlQexMgN9FMUcStSMmjytFoD5iGFfJLDnTCCFR250Xwih/PqAgz0y1JKPVnx
GyeVdg9mIK5YGTZ4Hc/wE1i/mZx+j2V5iZFoj2xGKitJ5mrhx3xQ+do5PXyO
JImYAS5VvIvkDumbKGV4zYPxUY38f4Im3ijr4IeNtezgY2sEdR0W60RkCZ1n
xpJxsBBN4i/9Mo3EZmLl3hVptKO3vSm61SKvPboq6GGT6CSZV3QUJ1xB9v20
/8PbthYmQayueAcEBKt1by/fLaJXpM+/lSae9P3b86L/3/+vCp6/50BvyePp
f/8/C1JH3hK/eIWnluF8uZ5F3qDcSmFmEm4G6ybau6CpveWakzvHPpaRyJU/
0PBp8croOM7iYdyOnlfDt1LahNFb6+rVE/RzA6LdMptZI9+W1UD1CZVj6YGq
omVp59WPEpfW1DNREopHFSPTSEX1KvU4QNuoof54w6nOkpfm8gkMub+eHTe9
UI4pN38ImUXMPpTaSoSuJXlAbpoY111p42TPgLiXujRpFkvPtS8tk4kEHVVz
CHyHvnFHALFmZiY32JVCTU+HxIdUiIkihtLG9R64ONQDtVyGq3NcFY/6OW1y
5pT6JK+cY91EogNnpDLGInQQsxzZ8866CR+MwFeBJLlytfdJik1Zu1mQEgGI
MO8SdkqxlaRyx3a/FVqGOCXeLCV9qswKUWcOXQjLtdaNWNeaTX+vsfZVlLxE
ZyvoGccvM1rGDSv1i5P1jmyi6rvc3M7lK97uXFUtQ7yQ7VE3NhtCej7pEEAY
9OFUdF7yoG6cAV0V6Ee6qWoRnOKtjuelNDSpdVott0wga61YbdXumsdHlm5I
dyyvXHTWsC8ZUktK7ESpxSMFPdQgIuCrkHa5TIg03FfHJ23t3dUG8VqvXl8n
XIe9ZavKdZFP4nKBzscMhkM/CKAJN2SfCGIFiyicdFF1HQilot3Y63iYApxz
LNieQ0VjLcWfW6ubR0tbbTRea3ULKeOgVtPKNfR9dXypxckK+enhLDff9Mhu
xI3mxKofU4NTJZ43TavKiv/f9Hi1cJ8W3dd6LBk4AR/KNz1lf/MMwLa0UAva
f8bXMs+2CRicbwx2848/vr980evQZwYsyIa1S7hCkTVBN2NuxaxKJ8NJ8ljx
LFWiS1exGEBNBqWO7aDbsDIX9jIwtpcc+bDYXAE80Lz55FXv2ZXzTR1fnfU6
T4/PTmjg7bCIVdntVDZ+d2fnf2F2ryvGNNI76wwLBmKVgZWDeAqq4DrvGjlI
h/h4Vs0VzYC7G1sDocKbFTfHObfLfnN8/tJGCif2MuFAcxUSGJpCZ0E/mkNh
GBvivKOnboWBn7oOIOKI5aZEUHrS8QoDavZBqsZLPYkEn0KAUkW0Oonhg41x
afX2Q0M4qtKpOBeriljAlCMjWS7IRgv59h0XgTuHnqGRCBImSQRffK/2a1JA
EcNi2eETEOGEhKlDNjZIPgf/4U8ChmNYi+wg9YMrVYEI9lU5QNB1KvrjizpG
TKv260DajSvjkbbRMi3HDMNfAz9dB8BEw5AhgfthibgHt/ptS0WMQhRCKtw5
XKZ2g0pqruSXg+w9nqQd02JeJ9EmqTd5uYQ2mIvwYN0H3whdbylWQNZZ9aRy
fk2MltkAu/SYpXogR9F7GGLYGnsdx3SGQNHTfJi03jiABrjspB85yzopFjdg
Z+ufHqyNHSft8ohBoo27gRIqsCIzPO9R4o1je71QgNtF3SrEAhTzSeLhreUq
+llOqcTOM1eRHrNfzR2CtNHxvWOyrWr4VBhq3g39AXPZk60lpAdz3C0D6ABi
jYGLFKqJm+PoLFjBCJZNlQw8SES92coOs4qhb+DCIOM3RHoZhLu1zcOrfdW2
IE/4ulEC4LGh16dloK9fPQ8AL5NMYBj5zXU6tIiJkIYsgmgNwUQMMpdh5UW9
GDZgFlM9J7VdN7CWS42EAGR3CHARjyjM77HNQfiJOd4UyJouA+OSVXRf46+s
x+Au3vbeGsowH/scfBzu2skiTAtommkeU0gOyzMUlMvz+biceRfdjPEDMrdT
o/ql20sShRGolE2avVqnIVbv1fnUDjZOKSyMjMA7L8kbotgZVEpNp/GsWyAP
0M8Oy5V4rVdCefJoYiPE+BV0kZ8IWO8ZgyAvIfAFOmAjINkMf1gCR83/xpLL
9UL0iTMeLXUSL1yWynJcwEc4zVlX5oq7CqyzW0YlUCHmRY/Hw+GZa1cT9gJa
uFFVcZ+WYlALiRN/RYA956dZQ0CtzZ8lxWTU0dnTk5mCboGxKy0PGAfGsE/F
5lOEujGoOnqXkerfjsY0KYbBNpIPXuL0V6JcbstSN0TUs9YH4HaA6M64Hw5f
JKCrJGNtkJ7RmWcx44fg6C1LS2I0UGAdOvGKIYHbbNKs7ZpZkdJfmNMEmJm6
+VM4spnzrnuHQnUgRwr2LlS8JJ50oOMEiOIOydcEcMwUZmg+tJAKnS9NUmny
cPPSQ3mR1X5mwBpiZByIsSiExjSmOVZN9BKJldZzkAAuHuoo7I0XXMZqBXo5
q7cl71ans8qvtCnRXXzdqWGPtVc59TfZa8++i+bVS/4mXMtfrr5yyZ731/NP
zbsU/HatTYvb3e8d+b3+DKyARuo4F04RVs1TZP4TPvoOAyiAqSzroWe6Bax4
IlijsW8EkVZLCOBeUVWZ4Nz05p+MZ7ClCtwTgGiH0FSOI5qmKTlDTLFixPQt
j4ofFgs8aB40XwDOX+XcUNJ2VpolTBNGgaM355CXhmPfCCp5BSZmFQZSaJvN
cWd7bCtvjaNZepMj0QPsVVdZODDvgapnyD+EX8NRbRD1DuzGcN19k9dQYxM/
ksxJKJ/DbqKlAFLzTGSkdr6FjWNTa+6zixfoWAb5lE49s03SfmeTtHmISo4c
ZbwI4lJh5Z4fKZiOLnzRCNLx6JbWQJu6Molxh47RJHlfM6DgZWYhwkx2iEhi
M/rfjc41WqqmIVCM2yx4nZ5tK6XQyXWsqVrrCrO4HHgk2z0ZLHwGOmLq8RBe
HvStkvYJ0PxpDTbPzdAZJIJ1K6NibSmw9uEFSLUVii5FpqpWTVwCHYoW5JrE
nMNVFRqO6mTZDsQOS1LOS1hes5ra4bRSJXl/OhrbyBkNmYDHs03Cq1MagqxP
aWXgXzZAVCdZ8SAIMbxzQAOT1JWtVgtA15h/iQCdJkJIV6ZK3cKs6aprkhUr
dd7USYuVmSmmwwsgGsCkckHhbvTU1k37IsTmL1e7Wds00XO1oRkfLUUzLoP0
P3d+TgBxHbv2VRZtwCk+gdtGNq63+qqgF7ICnsI8CN/CwTLv5ndNrGW1/Q9i
i/RjAXBUUFz1uk6CebOHgc+zqvHbGkHdtk0L8w6eLa2wde+23hiKvAolzPt8
Az2Le+2VbiQaCoUXBDNloaJdRkrXZUWfskTjvmEJrQzigq7TSzJcJoaabbz0
K9NpO+JGTdKtSHUTjginQfZo46m+/Y4BpsFpOVvYStBJyJ0E8kZXfTIuDutw
04PZuSmFW+i7IqEHWSqoc6ZJ85st8zhe+UK5q5RbkG0iN0Hj9TiTSOob5/iV
zSPW4Jg7sLgR/wkzLD+vEK1QjZVBPhELIC0Cn2QzRY1NVnMLBwSvUmp54TOH
yMtUIx1JLP6qOYFMaRafAA5o860cDl6xPCEqrNkvuqGkV/FW1b7+57erG73O
Jqwb+cZAQVKhBvIDD6KDt8T+AHo2JTJVkxwI544zV27GuoU2VgEAz/LIeHkt
v9t0/novr7V7sXwZtoVDKZem4R3n3F2g0KDDcU6sduGScT3or5r+sWhMxOs5
+ig90RAU6VR5h1aBJjxj46hSx6KTZ9th2gkYmsz5Zj7JTPyBwZDt82Ul1Ssc
cPCbeMu/9GVhcwQ7FKc5Z9zfMJVCDWPXNEKwryUAQJs/EanxPfMU7QQ3jX+F
5cpxXpwhfUQqCmxWCri/LFrbOzEtnVDy7bmj3jwrk8kKuSgSupDVJUU7GyDn
oHQOBvMOOZ0yuo2tgICOfMqdORZ6aGHLmaXddKmqjpLihHGzC0Aw0q4/B/wt
46bW9SyvLIlqLz7F0qpmvOcnXu6LNUtyiGau7iEDA07b+sO5CMKFzLvisMg4
rlyKrR48UlWCnHONJQqgXa2Wu/g8abW2uRDVWTKigS9lB/aTsCOgF/UBMjjf
DtPLd7zjXxlWP33f6fsmEcFpjxt9u9rq8pkstGFcyg016dcK6V0gKUa15w30
zio6pJMb61iTWr0Cfue24gwgSweMpR6rBsp3ACZK2jvcLKxnzIXdLKwDH6yl
NylC5Ik9SFO2MFgcCm7atxAbAO/zT+zKEqm3ez5DE0bf9+k3Uruq+bQjsLjO
VW1NFgJ3iRkl3hkJCdL9xJ3TnAMOJYgSzrsyGA6AnF8HP1eYYklNM8cSOmzQ
xHTrZGG9esHcEQ0S3crKFWllrox4UJB1XNuLtnZ81DaGRUKHjFfHWB6HQGEg
MaCsE9wci5xZpxvhUkXIofmBmrs3z2Ky+K7nMKs8oahoRUtXrAP9C7L8+Fqq
zJckYrqIOCJkrHqfOPmpE3Qwgf2YmFsiycbSJM65BPoLjnFyWqDYT7r9LsKs
q+ayqjADlzpN45oPjCTAmAR/F8lnHY4x1KjwqjHYIJaoPJnnjL6Nkr9WJ2Ph
uFOgSIsewkbn//hv/7tYq9c8XCkq41PBVrVpJkPZdzslLFDtQLoOFGlZzGdN
l9aN9o0mnot+oPTmCbeP1Ca67Ie2kKQLUhuLl9zJhL7SziC28HSHYQjge2dD
h3FsB6kvjFvJkFnl5TguXFVaoIHxbQNJT2TlZ8rsGiOeLOg+dM9ueBtMNxhN
SElaKKC5eAPIwqF7DA+gRhYsD/mK27yoxgsrDV13vUvhGCIJuqrZsXRPAEss
ARR16Nj5brW+F5xoLrliOZznsNzRtgx9bXi14XSowRULvPhNng5F8LhertbO
t1b52a4vNO0ReLDL0MFxClomW2copyyAuKZTToeiPdrtOsALd2hZhQYvQydU
SciHQxjrosbtbkT0PZcyjCDSngXOcbyTLWkGIrZEEuIfbd9MonJdR6FhudxA
bqx6nVgf4nKmaXAu+i6qGfRWcakgSnZ+wykZ0OP9IJzjJG7E5zdjgeIuJJOO
fScexd6ZD1Db1QdbVpakH2a1SZJnA3EeThC4NTi7kfcKLbHg0NjlNDuT9pJM
b/oCwgRbQWCHwwap8zzexpZgm6Ik6oYoUf03UaghDF03q+Z9XlarHe3NIUvY
k6JBa8nrkuBDlaQbbQbxba2vdgjfmh+tGo1QJpMzF3hw32P3Uhmozlcb8Kgt
NSVl9kZaN6hkTbx9TGxCNR/RGdlFmbn+Y/S6Pjev1fV+5aRdGSwuyGiy8Fov
/y3A/4Gy5TAGwlsVRJ3bxGA/uSOVvwIO7fhadCxLv+BO2URf7JtWPoZEIlSA
ZwMdBtOB9zh695gca3F/1mS7LppfJXBieSRXh1nLjhHkWSaQ7/VOudGFdNZt
tZ4ibRhtOtLKGlYyGbkOGZGra63lRsI4Y36hPXo1x6zWkzDVzDNNvRbnFJMo
ymBhcLQlbZnp6RYI9ZiddN5O5KqgKEA5wZWmoPCdGIbdiC7fDHDPN1oPBT6p
4bKKj9yH0bmz8VM/jDhzBdSSQyR6tODQW9twlPdpRt331jOcW1PL79rJ0/qO
x9L3kSuBLcbtWo0Hj92OtKBDlGa81DpLxZLi5ZuL4cjIW1BnMNUb1l3JDVHf
4bQWSVJvZ06MhSRXMeD+hc1kKc1SY83c4j9MyERWGPuPl+cvpZG2OM24VNMF
uN1jGpl8NJr0vekX6nAt6e2x6wrF0TWuLRIrWRw39W5ONtPRXCvZZaJuCJxV
gWyp35SOE/cVe5z5fdqK2vjBNh6alOz8rL9/qamAep1wuXUufeHX+L7dAw60
e8A/1zmAUVm1c8ABsLNrnQPom4iv+J/TOSDEWW4fAKv46BOQ1IO7APS7B7Rc
/vAxiOPGjYdHeuOjj0HFhrjIu3syUny411h3H9qd9GH38GPIvksQ/zsOO/se
8+QbDgzgf/9eb907UJB3fLjPOwFc7WD9d/fu886Hh7JG+HC/NXpsdzJU+Kff
CHTsA4PJvs+NR54ODu6xOo4MZK6fMUMZ8f1u/HT888ZQaRM+Zzv4HH/OKdk7
2AHg+jEArLtH+zuHB/iT37+z3909fLyvf30UYlkeqozs1/l0tlEnT3rF7hF/
wr9HR59E52sfqucMD93hT/zv3tGnHdkl5GYPSXnoQJufwa40wEOPubtz5K5g
z0u86iqDOl3/HH0RQChP389iromBAFvxwgN35bF2A115oQHffvRCRfoEeGQc
fRv9sXTBroLzrr/C3mVX/LDZ7Xa3li479JDQfbrqZXvF7BqXrFsoBns+XjkY
ewZfMsBoli/Z3wsuWfr5UYADPaQHvFg/UL7mmq7569qnAPIZnWLPVzzF0JFx
TcoLly4vm+LUMjT0iC66WN6hwwA9+sPyDgfYzh+WR6HbwtjLPJXlS2zVHx/K
OJdXXWeLGX33K13xavkhOg9GYn5Hl1yuI8W9g4NV0zCwYwAur5hkgE38w2a8
xau5vFIhQPH6y2rYxHpZCEm79Na9tQTr3rj+ksMAM5gJdnOwtbx87kEHH6Vr
uWTFMwzyGFjDBbxcZbL+PQ/XkvZBgEi8+grHph7dRdmHAcjw2ot2jwJ447Ub
oTNj/OF1M9NNZYDhpQcBvvazoWsPVkLXMqsPQQOdhPBf8TWtGs+XH0KevfxN
66slyMCPfdP6M2LuHWAbrvtG+Hf0Z4uBFZlV+wua3yy9hUZqT3W3OLKWZ0aR
8FV/gTAe/KEXCMv0Fxh9uAuYFbpXfAigGfmCD+0QxXHFIBtvTN2Y9fnCxdyf
zLHcw8N31V7deFErckzGXbT2G9BjK1xf95980woX0v3mvhGgWyV+97NMsxVO
2P1na9oK11f/CwfkntryX386DKXE25I4K6UgIpZKTHFIiBEPN4Va8gINImSv
jo16c3rGaSOzvh1tu6gAcsbM9YvfgiR7uBPgNOH8gLlE2IvEHp2EB49dv/gR
DmdNwUQ+RN3TwHmQKcdrtiR2wsey+QxxchVWYFaNm4+RPpXxb/OEnf/aRzaM
YcIpeBNPMAPxY2wJOIMDkIb3C6m3Ne5hNZvx8pWu+MCPWf0ULgWQ3XGSCvX/
tHdlTYlsW/rdX0F4Ho7lARsRUet2R4cyKE6I4NhxQxNIIDXJxExGK+r+9t5r
2ntnQlX1uX07uqPjvlVJDjv3sMZvfYuIs1aykuln6Sckwt2YynIZ14YPRaz/
zgbUlRCG1WTP8CJq5U1oHcxJSLogm1kXi9P56FR1SCLeaerQDfLOhGrhCRAa
t35zAPNM86G3YZai5OpzNWln8jthoOY7E2UpULND0Svh32D4k55UKsxQ85Io
J8LIZCzxPe4U+ihl7Zwl5Lp/ShNb7X/V7CU4DJ9oLfvTCOPRiWcjIkG9+dkA
ZKwGt48IfMP6ODhevjPH9FpW5+OgkEAOHjEA9NVNK1wzmCcjfIoSFT3BufC7
ATmKX7VNhHTLbfUMAKxBnkr6AQO4fFv4ZdUFO6QPcVpoISMGmEFOHEKNICik
bBODyk5m7nboQo7Kw/C5Yyryd2EuVU6TLlgbrqdmTPLTctDTWgbGn5m//B5n
2i2gM4AV6SClgzmIv3jbFoAMHExyvnGKjsqcI4vsVcKkXmTOflbPJNySYlBM
MHZkM49fcDPJltgBPhXuP66WXqA6iI2LXY5no2XEz5E7KTM3criPOMzyD97+
iEXSnFWXZHZiAfiYw0S5EJnfyTxINUTyQpMAYDJdTBeoYVCmuMNNb1O1EJY0
zDD8Xu2LZ8zGRj14kqm24d1J9Z09TXbM0OZRbAPrUnhHkN/qjJstC+g3gLDR
ZYAqG0BqFZMv4yHgm4iPIw6UcMJUWl/TMHSARY1AVUtb9FEyB2PdmJpAaCwc
DYjgL9VAlqJ9w2A5AjwJ9pAPGDtz1m4TTA5llsAnZX9bJ8Ser7+AKoC0E9TU
GtaN5NJgUplEVpB4TSbJq8YsrJ2wt1xVX5AQioUagRt1Sz4G96UW/bovMoP7
uUM57j4/iR3FcwHHPx4qfQzaaQQqR30HSLkkHj4mKaI/DUnzaCZsLZoyXpTw
5MIAZGOAuSLkrz7GQt4ZMTBGEEpoMTEiUZRWguGCMOTpTvJ6fGDBWDUpmObE
opEh1rGuGgGyf+lGxpkbgw2Z5dSyUbP3XjiHc+U6o4TGI62Ku5ro6gwQEyme
vQEWlNJKUdIIDwinpHnSnDEweRLXDNhh2CcbEAZAnhxhkRKaJswJqJbKVnjq
rdjLGmojyBhbu3dgh1v2BI4ZsTaRLen0KRJqDTQ4sCJL96S3cbl27Z4S3zTB
SlWiIYm5Nc1225PCYrXvWlypgxz3FrrGKgR0+ZxOhO9irVkEZyjoSn0zJ4cn
ymwBuYDwY8s+wkSbVcSxQ1uXmViYDtC0hLf4w2Nlc0OPeFhYRP2CYSTvzRJo
Bqv+HS/oqLEKII53K9qztEUFBqoOZeRAlQPsEw0OZqtEcq1Q1B9GMt8bnCaH
R4YRcNyT0GeOAmfChaoo6TFnrJZjip9imsSsnUUSIQtvhBd3Lc9b2S4pCxIh
XF0eFVIREQ4FPQDOX8IUjQFLFwFxj8bBqMUGZoycD1gZebyunJkQUHFpkGv0
zGRKHxPQMGScpch19VhCgufj2sg7CVoECeFVVhN17WvXiZQVvgVv1cgkq1NA
5vjmCzwADXbsBsAF21sa0SmVzOY6y7DfIsJr81CqIxElg2ero1+08eCSeTAN
JgawY32fxTPVZ0Qd+1Ga1wlwiwZ8L+ofS4oQiMTL1rOLYBgKohkHwXanyg8s
G/A0kSNDfKmeC20Y6zSJhdiq32TG3hhxLCukCyDZUBXawHzkwOdFRqHO5VmO
rroLQn0B72RxWrCqgXAn8zCxFQQV5CpvB3HtNrdRf+38YlkpMPEHg+xPntxx
kVbfVLERTQcTC6htsmHzQUuRO+zx32Mbj61WnjYVrCPgBGgzaG4rtXENzxVR
CpFQU9PP4LgllzwlDgnpGXGjqDx8zEyVtGvMc2CCPPxKJyOs94z+ibAIARAM
0cC1OQ6BiwfNCUFAgzZUW7YO5OAzNRkE7MlU6cFzZ6lnwtMVNFqbwEPwxSvU
c3hgU4MVyIR4PGIkyq96f8tmXem1YQhoub+H3BNbgwRZjBjNrlK5EeoCe531
RiJkH98n2pIqkqX0yN5fhnvg3wlIg2QFrZOy9um46wAsm7JY0aUA6im1l8Xg
QsQOwP9omYgpBQWl+s6ebWtQaTXVEYJdRvtEjo8mREXUTccdeEikphwOF3l0
0MNjSg/p2ECYNgsPts2fLva9VEXS9hQsuSVrGBgFMCTQgyjTIVaFth1vDWg/
ob4nNiwnWAKhKYZ+XorO5DI/L0cnm5Td5ASfi90SA5UVGFNWf5HUbgIwoe5I
gjRpyRoQ7f0hGggpGYVfHgDVYCwhV/aWI6zZ2BWE4mUgwhjnqxsJIY0SFCeq
g/JlJ1OjKIel+SFOYSP24ZVhNFDW7SctAbxfAH4aqA6YO0K7c0mkEUMcEBJ+
TBM+gk4BmWMf6DmIuRCerAe6Co6HQI68LzWoeE3UiV4oZM3g1E5cJFKD5yij
dkDAaG0eqbUh5Hg4cGlOCL2sLPuYgMFUPGJVRJnTAHV01v/YC5CWIZOpkkrq
Cix2tlQGcx+pq6BYGuUJawFlBOABp41kq3C0D9DZAgOR7kZVIsWrRssbSwGl
f9qU6DE9F0aoSVzCYLEcUGRRh1xLJrjV+2WEG1ipQRAcIHLV/GApDpsvFGQj
81EPYstwmJChjThK8F/A/MUJRVPibao8E1w0pHTor7U5mcBdnk3Yc6xG8wJv
NB1p+Df7i0TIRoYitXCQGJSwPYuIM5Ot1qIRwEPiOQAnucJwElr1YeoF29Bj
xmdqEZbB2yw/RSQTx1+c2SZmg56MG6B5ATdf6E19ogRdsnunNKBjVaeiyakp
1ZORe12Yyc/lZjTWR6vBDL1eD/2wiQCv1Qu3HCSbk5JF46d8wT25burJPkh9
SYZb/Jgy6fScJAqMEoOGjaXsRlMpHRgeuOyPHscV0x7Zm+vLVGVsiWJpjXzW
VdLiQUgUjPv6TOQrqTTYS001grjhQiCBXt0CMVPBSsiq42omoc7SOEVZqujH
MFQUKqVSPkYbh0iuLJuTrDf4OctBS6dr1yzi85WrTEEbCC1yDQLu5y5C2SU8
R8a3tbFWhmoq3o0QSRBjW5FBjNYRQ49jKiLJuwg7GEqcBhKYJk3WKXSF24Ls
CCZVJIopT0IGXEYqksiKFoOKowUxiGnlLoJ847ijVmZ24NFC5TOnUgo7DQew
fUOo8mMuGMgcfzUNO9F3Xm58+yrlBJnfdGGB831j4wqKRHXJZZLMBStlILzi
u2CoguerfkizYsXE4b9fOMx//46zlSgjNaZEgtwQ124AYoY525UBfR2C/bTk
mmm0CFy1vU1Jj453eRCRD32mjph2lKrwJhLyHK2h9WImUXwrTqPa9dQUIXLm
HapfbstbTfTAVidQIjanYn1Tdcasz2A3T8hugTuh/oGj3sCARwUsiKeHxjt+
OEfWTAhxxeq+bGY7MZ1IFOdwO5OJCyFL5AEROZSg9XGXzB23LbQvsOORqh8/
z8TxAAGOAb4uzDWG2RMLZdNaajMOj0+YSNNibZaEUDEECx+BlTia6wWKxCJn
4IFDC7PluwtaO+WsuwHWNvU5e5oMUN2nasQdDPWhZ4hMxlYUUvS+owa//JRS
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
fF6ftnKjceHu8K6/exUeV8Kbl9OPZqlwH1eeH57oLmfz6zcksKFP7L3d+Av/
djl9WzhR//GsPK8df7Tuc8so/xi1q3ujvcdezWmV7vYuNolphz7Sne5/to/K
w9iZn0wKd4+9u733m3r/6MWvfbT3W0fNveXl8+zivn9dkvt6E3VjIV8o5vJH
ud2j9u7e1+Lh18LuzsHBkZr7P/L5r/m8XKz2o7r66LC4n8+Xjot7B4eV2kmx
WikcbW4AyRF8ipv8FHd5f14+Wj5fjDv1cu6yWxmO/Nbh0zB6qxTv63cnz3cN
rxMOTx+9ibzlY+bJM9T/AniKknB3H58v06MT73Mxb3T3zpW3Vi5eLR/73sNn
0+lVxoPyyXHp8Sjgp8hSnPR7/vTwtnBQ6yxy7jD6mNdHwUXusDw6OIo/OsfN
4tVoVj1++nDCTbzxu/6SKPklg+ejg+rbTat+fZtr5C7OKtcv03mx34vaC3d6
+xipGX4+O2ueT9+a8iXT2Bm4SPSsjCo3sr7KV0+8g19Z7sLh3NnZUQcJuCGV
E8uDkdXl2OAPnwU60NIF6lGnph1ULVKqAqgxdqxP3PgOx27DVgGWVRCnxUs2
8wrbWj0Ydu0rGkigJAMtrGItqkTMWlJEej86yO8M3XjQXj1Vl9XskDaobXC3
Lqu5e/WbUc1KzcdA3txzsJ2QL057NwN1gH10R3VrA2n4G1BhYqqUCZSyxVme
xcGaXgS6tB1M7rVYgK0fOknKS19VvGS82yzpc+4OL0g1U7TFKwHlTm40dMZk
vBE1f9idSh09EraD0CW1gWQ3WHhCsWVrrFZhlqDMSH3hPX9kfAcBMR6tMaDh
8Vf+S2bsT2O6Bq4n02JN89tvv02CpGVxvO6yVR1vaSpjGqxrNe0h6okXFnHu
gSDBdRQhjUFAGI1u8h4GGQNo0mXOFAvBiLEeHeC4wD+djhmLbt2Hr5A6ijjp
0mjAGHIwUeWPQ0wVE93BndD1iJTiMCxUrKYtlTWT93OjZVWJZpJadK/bM1o0
s1mtuoP9/acovzuoLMutbu3OqRaag8/yQb3x1rwdPxbidve99jzevb2h26Zw
W/64fPg+7oe56Vlztnifnj73/Nbb6VJrWvXk4+vBsDHqP13c3U72omm/d3R+
/dmszF8O4mZtEVT8ujsvlveeysGVUbXqvkrYauzfVG8u43hSiV4eH51D5+y4
n3+66N/4583u4nn2Pr5qqUedaF2rbqvNgvCs8nRQz707Jyfuhd+pdN7fTosn
Tj0fXFyeOr3FSe/t6nTQamplm9HCkyajXKu5b++T5nG+PWx/XE6O79qjh2Jp
Gtyf9guH9Rcn6pzUgvo8eDgx+oUnpNK6DCafweHi0L2+K90M72qF0vDdXEYf
V7115tUg9ziYjSq3L7lCtXV/d18ujR9y0fvHyfviqh1f7pXOwvj409wKyjlD
2nm3kCvk24X812L+6/7BzuHhYVo7g66kzWV9H/45guRPawIskepxf+ztHeZ3
90q7+XxB32quqwa91FVHm3zRd/0iyCcFrg8XzqA5kDXk8DqcNKiIa6JsgUxf
nS3Xtg7Sc18/+vAHXqVz5Z4fnLef2+f9eye4qx2HTr599Vk43PVDr7QXlFvH
Z+Y13Gk7/aUBPvF0tzQ5LI/PbxvhLDgdD6oPuy/jy8XZftA6iXcXzXLn1l3U
r5/OB5/JCfj7NpS+PYTb64W6ni/blEh/9nltOB7np3cHlYObizB8utpv1hu7
w+HNRfvtrLp7GN8WK0H+tBZ3b81nK6VwAoBYfBHKypi8ZOEOIuagHVT061S8
gFcm0nOaSuhTil7NAFgQ6gNJ0aeUc/s6d3x52Sjb2lnphZN0m/Nvv3WS3maj
0tBiCkem71ppea7uhb+llcrf0yBd94pWTqoHH4t+10+q1LNk0xCwjGMTBjmu
gX2u3XVd11Fz+oE1ehcSo4RxoJS/Lrf2YuvuLfoih79vppxQRFDrSpQvCMXj
vlFYylMOuVRj5uouVUo/bZ2WK1/sqdFln+ZtHUTAmK+wBgX8jQ726MUdolxr
YHlUz0wYc1PP4DmxEjrWQ6cP4UIairL6YfhuiMC+JjXVWl11VOq+aAcFT8tD
c3y3F0QXy/OTwd356Xy/WNotdx6608HRyfPbwcPj3ftF57rhB7WFNr5ZPFdL
4fHixC9WD6YX7uld5+Ck+uRZbhOI/2JrWl1+Rrfz6V7toRZd5O86vaOF++aH
+527+fHktNs5Ob17LwSXciPrrKvC0/PBYeuieug2ig+7frNx7rrR/uLi+eNy
dH5/0LqJlK+yX7k6eZY7SchcHnhR/eLp/PKoHuaHw4vW6UO92PgMhvPywcfg
/HS/2S861bj0lg/lRich7XhibprD6vv+pP84Wywv3P2z92LltLTXaw3Cm1yt
cP8cLaZ1t34RtY9OLGGllfnR+9nhx9HRTbvcvJ64p8t6rlYc2BfSZ9bfF6H6
xKfg5rK87N10l90Xf9gczBu9k7P553vL3Su5hcFH9Sy3b9+c0l8H4F3u7n4t
HO3kS4VV/QWK5QU4J9Rd/7EZjuOdiet3w53tHdxVuME2/5q4GmofQ7xc7bev
jZts+2bzrwnXKVo3a7XJ8LrbrhbyV5dXTrkRPvqt0fWkF4an1c5z7XB6Omrs
nx7uu1etmj26ILwNfbcFZIJKcMYPlAk+7c9xB0PvPO53iDIZxLA9k2gmKu14
ixFDLJBqEBVX2WCF6UkM/dL56tSjgtDc0XKC+EbJJm+hlUK0fgDqpLYmvXr/
hquzfnU9WN8sWdwz5dgdi5hYeyN7lqxyrkPOKr7Sir7axfJQrqKsWCL9spsG
WfXJhMhNuaASQ3vlhU88NaaetK7huLAwWG7U9QQumRB3gnvk4BX8F7bSJlbV
ht3Qava22VB/VhJvU+0xJA0SrK3f6xKo2XytjFSSOfrZci9fzZ+BWI5QN8uN
llaXdenrtRLwU2qMJmxJUlfi9SSIoeoGwKBqg2KFBvlXAf0bKXx2MluofLk3
WuI3ZHqacu8jpWgM0hNpaWJJnfWIt4HoA0MKm+swPkaobT/YZsnFOnUYIPYe
RMRhkIN/6z66anpDijdGk3Ufj935IONkPtEuu81KDTAhDGSVcDlfYzcAmg+s
bYDdSPn80CdV/arGgSwbr42bVwhQWhYUjDupDzVAEbm9HEaD4EyEyNVjZfSs
qgC0rMSpF9NKPTllVVV+wqbz7bee+mPaRvop/84vuXcITsGFVLKS7KID1tib
rdDGWPlZyg+aX01WbL0BFYfa0CKaxdhEbWRV0cMQ1imxcxm67QUzak4KdUYY
CxHIQrzClZh6rzehV5n3MviRTWIhDcGoiE6TUkWb+Df4XqqLJf6u1DMGLkL0
bejw/31D7mf75x9u2FX+y4bd7T8Nu/9vhh1I4R3YZL+w6v5p0v3TpPufM+nQ
lPvf1fFEAQS6W8i8QE/TvzmC4fgIsMI6bESL5HKS9c6aDC0TmplxUxb8d0az
QDIhJbu//jpyXOonIscXs3E3Hr4N3j575Yf5bfHj6D7w47v5zaD/8DlaHoVv
V+N26/O6W43ssPCfFTVaEt/tz6/39u7j6PzCPy3P3wuT+KV+7pUO6o/V0ix6
ut+bHT32FvO9cTIsvPdyWSq+LK6HjdPmu3N81mzXc/5n86ky852z7vS5M220
p5WTx7d0WFgidMHV8PPw6nwxqufd8fvHQWX38/Nmf3za7rQ6hafFe6vX/bzu
d8+aV3Y2dY1cLO7uHJb2jVxcEw4VqX/fLbxPnoLnZmN+He8V/cbu02Ot8d7e
3/U/nfplrXr1eN1/7pxGQ3kngzPsCCOFQetjp7HYvT7v5q9fGm/7i8+HYa05
LlXHJ4fFg2XbXZQKi+bBdNpqXmoZwZP3ZxPYJFzg1msd/xRpnQ7U8uj+bP7B
Gt3fE6BNBWdlcB2OpqYGd9F6bheX7Un8XDj+iLzri5NZ6+D0bRTf7T3uTnKt
vW7paHzWdeuPD+nBOQ8jGJw1IHucPLhWE4b3y8GhW7c6uj8fDPtvWCc/HJ2S
yUp1r47u6qI73s0dz8YP+ZvnXnv4drF3Xu5cxY/Ho+jj5Khx7ezOnpft8bhZ
/ceNztp2G0mdBb4DyGlEaEMSs4fy0xTwxIKR5sKJGRFarsK+uCHAa5DC9IBc
TYndJPybtcpKonxF56Sd3DXKo9JoterV24QCydSPr48B7geGB7P3ELmWoM1I
XWn0XhDSLZpSx1AvM9s5gYnAJ4KKrFjztjJ+t+MKFR/R+EArE+ConEZdKTXD
FwgfMPAaZV7R06Kx/AsonD/UxRFQcuaULgO0OuK9u0B14Ks1wsTmxrevlNVy
e/+2ibmkTaCBm3Y1OWN3CTkvqTn1gj5QQQnKW/IdiMgzACmob5L6njlW281c
aXfUckaZlrJmhtyohvLhEpsx12Bq/Gbo+Zma40VDl9rVX6j9E2ROI2yUkbVK
zaipN3DCxBOn34fVRPQDuMwOa28/HDC9kuYpwLoi4t9tQP12/UabTJdeMF1k
apoULSt1XwAoAIQ5xpRG00AAY3oEQGsWMZuYUMThdZ4rLd3xDQ9qWdWN9PpB
FE7HsGelO7kEp8bQzwMrxiAWAIY9+pLIKa52BjI+zVxfebk4dxUnULs/c+ZE
PWV0ZzO36oXLzIMTxUNnTt9wq8y5TFkZzO67w9wYSfuKYNGmDUZFrVfkeZn2
EsrBYOKfnCiMfWeWuXQ+HXWos5lj9YIeQNBaau/y4o4MOQytysil9Lz6rhsI
gQQOFMTWg65eJtzt1Oio2stUl+/D0CfCa11k5mLjGTzAIwykcIr+PwFGGyf+
UMYBAA==

-->

</rfc>
