<?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.11 (Ruby 3.2.4) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-carter-high-assurance-dids-with-dns-04" category="info" submissionType="independent" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.21.0 -->
  <front>
    <title abbrev="hiadid">High Assurance DIDs with DNS</title>
    <seriesInfo name="Internet-Draft" value="draft-carter-high-assurance-dids-with-dns-04"/>
    <author initials="J." surname="Carter" fullname="Jesse Carter">
      <organization>CIRA</organization>
      <address>
        <email>jesse.carter@cira.ca</email>
      </address>
    </author>
    <author initials="J." surname="Latour" fullname="Jacques Latour">
      <organization>CIRA</organization>
      <address>
        <email>jacques.latour@cira.ca</email>
      </address>
    </author>
    <author initials="M." surname="Glaude" fullname="Mathieu Glaude">
      <organization>Northern Block</organization>
      <address>
        <email>mathieu@northernblock.ca</email>
      </address>
    </author>
    <author initials="T." surname="Bouma" fullname="Tim Bouma">
      <organization>Digital Governance Council</organization>
      <address>
        <email>tim.bouma@dgc-cgn.org</email>
      </address>
    </author>
    <date year="2024" month="May" day="23"/>
    <keyword>next generation</keyword>
    <keyword>unicorn</keyword>
    <keyword>sparkling distributed ledger</keyword>
    <abstract>
      <?line 93?>

<t>This document outlines a method for improving the authenticity, discoverability, and portability of Decentralized Identifiers (DIDs) by utilizing the current DNS infrastructure and its technologies. This method offers a straightforward procedure for a verifier to cryptographically cross-validate a DID using data stored in the DNS, separate from the DID document.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://ciralabs.github.io/high-assurance-dids-with-dns/draft-carter-high-assurance-dids-with-dns.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-carter-high-assurance-dids-with-dns/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/CIRALabs/high-assurance-dids-with-dns"/>.</t>
    </note>
  </front>
  <middle>
    <?line 97?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>In the ever-evolving digital world, the need for secure and verifiable identities is paramount. DIDs have emerged as a promising solution, providing a globally unique, persistent identifier that does not require a centralized registration authority. However, like any technology, DIDs face challenges in terms of authenticity, discoverability, and portability.</t>
      <t>This is where the Domain Name System (DNS), a well-established and globally distributed internet directory service, comes into play. By leveraging the existing DNS infrastructure, we can enhance the verification process of DIDs. Specifically, we can use Transport Layer Security Authentication (TLSA) and Uniform Resource Identifier (URI) DNS records to add an additional layer of verification and authenticity to DIDs.</t>
      <t>TLSA records in DNS allow us to associate a certificate or public key with the domain name where the record is found, thus providing a form of certificate pinning. URI records, on the other hand, provide a way to publish mappings from hostnames to URIs, such as DIDs.</t>
      <t>By storing crucial information about a DID, such as the DID itself and its Public Key Infrastructure (PKI) in these DNS records, we can provide a verifier with a simple yet effective method to cross-validate and authenticate a DID. This not only ensures the authenticity of the DID document but also allows for interaction with material signed by the DID without access to the DID document itself.</t>
      <t>In essence, the integration of DIDs with DNS, specifically through the use of TLSA and URI records, provides a robust solution to some of the challenges faced by DIDs, paving the way for a more secure and trustworthy digital identity landscape.</t>
    </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="securing-a-did-using-the-dns">
      <name>Securing a DID using the DNS</name>
      <t>Much like presenting two pieces of ID to provide a higher level of assurance when proving your identity or age, replicating important information about a DID into a different domain (like the DNS) enables a similar form of cross validation. This enhances the initial trust establishment between the user and the DID document, as the key information can be compared and verified across two segregated sets of infrastructure. This also acts as a form of ownership verification in a similar way to 2FA, as the implementer must have control over both the DNS zone and the DID document to properly duplicate the relevant information.</t>
      <artwork><![CDATA[
+----------------+     +----------------+
|                |     |                |
|   DNS Server   |     |   Web Server   |
|                |     |                |
|   +-------+    |     |   +-------+    |
|   |  DID  |<---+-----+-->|  DID  |    |
|   +-------+    |     |   +-------+    |
|   +-------+    |     |   +-------+    |
|   |  PKI  |<---+-----+-->|  PKI  |    |
|   +-------+    |     |   +-------+    |
|                |     |                |
+----------------+     +----------------+
]]></artwork>
      <t>The diagram above illustrates how a web server storing the DID document, and the DNS server storing the URI and TLSA records shares and links the key information about the DID across two independent sets of infrastructure.</t>
      <section anchor="specifically-for-didweb">
        <name>Specifically for did:web</name>
        <t>With did:web, there’s an inherent link between the DNS needed to resolve the associated DID document and the domain where the relevant supporting DNS records are located. This means that the domain specified by the did:web identifier (for example, did:web:<strong>example.ca</strong>) is also the location where you can find the supporting DNS records.</t>
      </section>
      <section anchor="consideration-for-other-did-methods">
        <name>Consideration for other DID methods</name>
        <t>In the case of other DID methods, the association between a DID and a DNS domain is still possible although less inherent than with the aforementioned did:web. As such, it provides much of the same benefits as the <xref target="wellKnownDidConfiguration"/>, but the method in which it accomplishes this is slightly different. Specifically, the integrity of the DID document is secured by including a dataIntegrityProof inside the DID document itself rather than in a seperate resource, and the key material used to verify this proof is explicitly duplicated in the DNS, rather than only being referenced back to the DID document which is being verified.</t>
        <section anchor="the-dnsdomain-property">
          <name>The "dnsDomain" property</name>
          <t>To faciliate the linking of a non did:web to the DNS, we propose the inclusion of an optional property "dnsDomain" to the DID document.</t>
          <artwork><![CDATA[
{"dnsDomain": "example.ca"}
]]></artwork>
          <t>In the case of non did:webs that wish to use DNS for increased assurance, the verification process is identical to the one used for did:web but instead of referencing the domain in the identifier, the verifier <bcp14>MUST</bcp14> use the domain referenced by the "dnsDomain" property instead.</t>
        </section>
      </section>
      <section anchor="mapping-dids-to-domains-with-uri-records">
        <name>Mapping DIDs to Domains with URI records</name>
        <t>The association to a domain stemming only from the did is unidirectional. By leveraging URI records as outlined in <xref target="DID-in-the-DNS"/>, we can create a bidirectional relationship, allowing a domain to publish their associated DID in the DNS.</t>
        <t><strong><em>Ex: _did.example-issuer.ca IN URI 1 0 “did:web:XXXXXX”</em></strong></t>
        <t>This relationship enhances security, as an entity would require control over both the DID and the domain’s DNS server to create this bidirectional association, reducing the likelihood of malicious impersonation.</t>
        <section anchor="uri-record-scoping">
          <name>URI record scoping</name>
          <ul spacing="normal">
            <li>
              <t>The records <bcp14>MUST</bcp14> be scoped by setting the global underscore name of the URI RRset to <em>_did</em> (0x5F 0x64 0x69 0x64).</t>
            </li>
          </ul>
        </section>
        <section anchor="entity-handles">
          <name>Entity Handles</name>
          <t>An implementer may have multiple sub entities operating and issuing credentials on their behalf, like the different deparments in a university issuing diplomas or publishing research. For this reason, the introduction of an entity handle, represented as a subdomain in the resource record name, provides a simple way to facilitate the distinction of DIDs, their public keys, and credentials they issue in their relationship to another entity or root authority.</t>
          <t><strong><em>Ex: _did.diplomas.example-issuer.ca IN URI 1 0 “did:web:diplomas.example-issuer.ca”</em></strong></t>
          <t><strong><em>Ex: _did.certificates.example-issuer.ca IN URI 1 0 “did:web:certificates.example-issuer.ca”</em></strong></t>
        </section>
      </section>
      <section anchor="mapping-verificationmethods-to-the-dns-with-tlsa-records">
        <name>Mapping verificationMethods to the DNS with TLSA records</name>
        <t>The DID to DNS mapping illustrated in section 3.2 provides a way of expressing the association between a DID and a domain, but no way of verifying that relationship. By hosting the public keys of that DID in its associated domain’s zone, we can provide a cryptographic linkage to bolster this relationship while also providing access to the DID’s public keys outside of the infrastructure where the DID document itself resides, facilitating interoperability and increasing availability.</t>
        <t>TLSA records <xref target="RFC6698"/> provide a simple way of hosting cryptographic information in the DNS. Key material can be represented in TLSA records either hashed or unhashed depending on the requirements and use case of the implementer.</t>
        <t>It is important to note that as key sizes increase in respect to the needs of post-quantum cryptography, TLSA records can support these keys via the hashed representation, making this implementation post-quantum compatible.</t>
        <section anchor="tlsa-record-scoping-selector-field">
          <name>TLSA Record Scoping, Selector Field</name>
          <t>When public keys related to DIDs are published in the DNS as TLSA records:</t>
          <ul spacing="normal">
            <li>
              <t>The records <bcp14>MUST</bcp14> be scoped by setting the global underscore name of the TLSA RRset to <em>_did</em> (0x5F 0x64 0x69 0x64).</t>
            </li>
            <li>
              <t>The Selector Field of the TLSA record must be set to 1, SubjectPublicKeyInfo: DER-encoded binary structure as defined in <xref target="RFC5280"/>.</t>
            </li>
          </ul>
        </section>
        <section anchor="instances-of-multiple-key-pairs">
          <name>Instances of Multiple Key Pairs</name>
          <t>Depending on the needs of the implementer, it is possible they may use multiple keypairs associated with a single DID to sign and issue credentials or enable other PKI related interactions. In this case, a TLSA record will be created per <xref target="verificationMethod"/> and then be bundled into the corresponding TLSA RRset. A resolver can then parse the returned records and match the key content to the verificationMethod they wish to interact with or verify.</t>
          <t><strong><em>Ex: _did.example-issuer.ca IN TLSA 3 1 0 "4e18ac22c00fb9...b96270a7b4"</em></strong></t>
          <t><strong><em>Ex: _did.example-issuer.ca IN TLSA 3 1 0 "5f29bd33d11gc1...b96270a7b5"</em></strong></t>
          <section anchor="security-consideration">
            <name>Security Consideration</name>
            <t>It is <bcp14>RECOMMENDED</bcp14> implementers limit the total number of TLSA records for a given domain to 255 to mitigate DoS style attacks, such as creating a problematic number of TLSA records to then be resolved and parsed by the verifier.</t>
            <t>If total number of TLSA records returned to a verifier exceeds this threshold, it is <bcp14>RECOMMENDED</bcp14> the verifier abort the verification process and deem the target DID insecure.</t>
          </section>
        </section>
        <section anchor="benefits-of-public-keys-in-the-dns">
          <name>Benefits of Public Keys in the DNS</name>
          <t>Hosting the public keys in TLSA records provides a stronger mechanism for the verifier to verify a did and its associated entity with, as they are able to perform a cryptographic challenge against the DID using the corresponding TLSA records, or against the domain using the corresponding <xref target="verificationMethod"/> in the DID document. The accessibility of the public keys is also beneficial, as the verifier does not need to resolve the DID document to accesss its associated key material, enhancing interoperability.</t>
        </section>
      </section>
    </section>
    <section anchor="role-of-dnssec-for-assurance-and-revocation">
      <name>Role of DNSSEC for Assurance and Revocation</name>
      <t>It is <bcp14>RECOMMENDED</bcp14> that all the participants in this digital identity ecosystem enable DNSSEC signing for the DNS instances they operate. See <xref target="RFC9364"/>.</t>
      <t>DNSSEC provides cryptographic assurance that the DNS records returned in response to a query are authentic and have not been tampered with. This assurance within the context of the <em>_did</em> URI and <em>_did</em> TLSA records greatly strengthens the mechanism to ensure the integrity of the DID and its public keys. DNSSEC vastly reduces the possible attack vectors in which the repudiated DID information in the DNS can be tampered with.</t>
      <t>Within this use-case, DNSSEC also provides revocation checks for both DIDs and their public keys. In particular, a DNS query for a specific <em>_did</em> URI record or <em>_did</em> TLSA record can return an NXDOMAIN <xref target="RFC8020"/> response if the DID or public key has been revoked. This approach can simplify the process of verifying the current validity of DIDs and public keys by reducing the need for complex revocation mechanisms or implementation specific technologies.</t>
    </section>
    <section anchor="digital-signature-and-proof-value-of-the-did-document">
      <name>Digital Signature and Proof Value of the DID Document</name>
      <t>Digital signatures ensure the integrity of the DID Document, and by extent the public keys, authentication protocols, and service endpoints necessary for initiating trustworthy interactions with the identified entity. The use of digital signatures in this context provides a robust mechanism for verifying that the DID Document has not been tampered with and indeed originates from the correct entity.</t>
      <t>In accordance with W3C specifications, we propose including a data integrity proof such as those outlined in <xref target="dataIntegrityProofECDSA"/> and <xref target="dataIntegrityProofEdDSA"/>, with the mandatory inclusions of the "created" and "expires" fields. The inclusion of which acts as a lifespan for the document, similar to the TTL for a DNS record. Depending on the use case and security requirements, a longer or shorter expiry period would be used as necessary.</t>
      <artwork><![CDATA[
"proof": {
   "type": "DataIntegrityProof",
   "cryptosuite": "ecdsa-jfc-2019",
   "created": "2023-10-11T15:27:27Z",
   "expires": "2099-10-11T15:27:27Z",
   "proofPurpose": "assertionMethod",
   "verificationMethod": "did:web:trustregistry.ca#key-1",
}
]]></artwork>
      <t>The data integrity proof <bcp14>SHOULD</bcp14> be signed using a verificationMethod that has an associated TLSA record to allow for the verification of the data integrity proof using pki material contained outside of the DID document. This provides an added layer of authenticity, as the PKI information contained in the DID document would need to be repudiated across 2 different domains, the resource hosting the DID document and its associated DNS domain.</t>
      <section anchor="use-of-alternative-cryptosuites">
        <name>Use of Alternative Cryptosuites</name>
        <t>While <xref target="dataIntegrityProofECDSA"/> and <xref target="dataIntegrityProofEdDSA"/> are the cryptosuites we have chosen to highlight in this specification, it is important to note that this implementation for a high assurance did using dns is cryptosuite agnostic. It is interoperable with any new and existing cryptosuites and associated key types as required by the implementers and verifiers.</t>
      </section>
    </section>
    <section anchor="verification-process">
      <name>Verification Process</name>
      <t>Using the new DNS records and proof object in the DID document, we enable a more secure and higher assurance verification process for the DID. It is important to note that while not strictly necessary, DNSSEC verification <bcp14>SHOULD</bcp14> be performed each time a DNS record is resolved to ensure their authenticity.</t>
      <t>The process below outlines the general steps required to complete the higher assurance did verification process;</t>
      <ol spacing="normal" type="1"><li>
          <t><strong>Verification of the DID:</strong> The user verifies the DID is represented as a URI record in the associated domain.
          </t>
          <ol spacing="normal" type="1"><li>
              <t>In the case of did:web, the domain and record name to be queried is indicated by the last segment of the did. In example, <strong>did:web:example.ca</strong> would translate to a URI record with the name <strong>_did.example.ca</strong>.</t>
            </li>
            <li>
              <t>In the case of other did methods, the domain and record name to be queried is indicated by the "dnsDomain" property. In example, <strong>{"dnsDomain": "example.ca"}</strong> would translate to a URI record with the name <strong>_did.example.ca</strong>.</t>
            </li>
          </ol>
        </li>
        <li>
          <t><strong>Verification of the PKI:</strong> The user verifies the verificationMethod/s in the DID document are represented as TLSA record/s in the associated domain.
          </t>
          <ol spacing="normal" type="1"><li>
              <t>The domain and record name for the TLSA record to be queried is determined identically to steps 1.a or 1.b.
              </t>
              <ol spacing="normal" type="1"><li>
                  <t>Note: The matching of the TLSA record content and verificationMethod may require some conversion, as TLSA records store key material as hex encoded DER format, and this representation is not supported by <xref target="verificationMethod"/>. However, there are many well supported cryptography libraries in a variety of languages that facilitate the conversion process.</t>
                </li>
              </ol>
            </li>
          </ol>
        </li>
        <li>
          <t><strong>Verification of the DID document's integrity:</strong> The user verifies the "proof" object to ensure the integrity of the DID document.
          </t>
          <ol spacing="normal" type="1"><li>
              <t>This can be accomplished by using either the <xref target="verificationMethod"/> directly from the DID document, or using the key material stored in the TLSA record. Using the TLSA record would provide a higher level of assurance as this confirms the key material is being accurately represented across 2 different domains, both at the DID document level and the DNS level.
              </t>
              <ol spacing="normal" type="1"><li>
                  <t>Note: Unlike with matching the verificationMethod and TLSA record in step 2, DER is a widely supported encoding format for key material enabling a verifier to directly use the TLSA record content to verify the signature without having to convert the key back to its representation in the verificationMethod.</t>
                </li>
              </ol>
            </li>
          </ol>
        </li>
      </ol>
      <t><em>Note</em>: The order of the steps presented does not specify a required order for verification. As a general rule (and depending on the use case) the 3 verification steps outlined above may be performed in any order as best fits the verifier's needs. In example, a verifier may arrive at the DID document during a credential verification process, in which case it makes sense to peform step 3 before steps 1 and 2. Alternatively, a verifier may arrive at the DID document after exploring an organization's domain, in which case it may make more sense to perform steps 1 and 2 prior to step 3. So long as the 3 steps are performed together, the same level of assurance is achieved irrespective of their order.</t>
      <section anchor="verification-failure">
        <name>Verification Failure</name>
        <t>If at any given step verification fails, the DID document should be deemed INSECURE. Whether it is due to the DID and DNS being out of sync with recent updates, or the resource hosting the DID document or DNS zone themselves being compromised, a failed verification <bcp14>MAY</bcp14> indicate malicious activity. It is then up to the verifier to determine, according to their requirements and use case, the appropriate course of action regarding interactions with the target DID until successful verification is restored.</t>
      </section>
    </section>
    <section anchor="control-requirements">
      <name>Control Requirements</name>
      <t>This section defines a simple framework to define a set of technical controls that can be implemented and mapped into levels of assurance for did:web identifiers.
To assist in decision-making and implementation, The controls are ordered in increasing level of security assurance and are grouped into levels of assurance from <strong>LOW-</strong> to <strong>HIGH+</strong>
- <strong>Issuing Authority</strong> is the entity accountable for the did:web identifier.
- <strong>Issuing Service</strong> is the entity responsible for operating the did:web identifier infrastructure.
In many cases the <strong>Issuing Authority</strong> may delegate elements of providing a high assurance did:web identifier to an <strong>Issuing Service</strong> that may be a commercial provider.
In the simplest case, the <strong>Issuing Authority</strong> can be regarded as the same as the <strong>Issuing Service</strong>.
Note that Controls 9, 10, and 11 CANNOT BE DELEGATED to an <strong>Issuing Service</strong></t>
      <t>11 technical controls are defined. These controls would be implemented in order of precedence for an increasing level of security assurance. (e.g., Control No. N would need to be implemented before implementing Control No. N+1)</t>
      <table>
        <thead>
          <tr>
            <th align="left">Control No.</th>
            <th align="left">Control Name</th>
            <th align="left">Description</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">1</td>
            <td align="left">DID Resource Control</td>
            <td align="left">The Issuing Service <bcp14>MUST</bcp14> control the resource that generates the DID document. (i.e., website)</td>
          </tr>
          <tr>
            <td align="left">2</td>
            <td align="left">DID Document Management</td>
            <td align="left">The Issuing Service <bcp14>MUST</bcp14> have the ability to do CRUD operations on the DID document.</td>
          </tr>
          <tr>
            <td align="left">3</td>
            <td align="left">DID Document Data Integrity</td>
            <td align="left">The Issuing Service <bcp14>MUST</bcp14> ensure the data integrity of the DID document by cryptographic means, typically a digital signature or other means. The use of approved or established cryptographic algorithms is HIGHLY <bcp14>RECOMMENDED</bcp14></td>
          </tr>
          <tr>
            <td align="left">4</td>
            <td align="left">DID Document Key Control</td>
            <td align="left">The Issuing Service <bcp14>MUST</bcp14> control the keys required to sign the DID document.</td>
          </tr>
          <tr>
            <td align="left">5</td>
            <td align="left">DID Document Key Generation</td>
            <td align="left">With proper delegation from the Issuing Authority, the DID Document signing key <bcp14>MAY</bcp14> be generated by the Issuing Service. Otherwise, the signing key must be generated by the Issuing Authority.</td>
          </tr>
          <tr>
            <td align="left">6</td>
            <td align="left">Domain Zone Control</td>
            <td align="left">The Issuing Service <bcp14>MUST</bcp14> have control of the domain zone (or subdomain zone).If direct control of the domain is not feasible, the use of an accredited DNS provider is HIGHLY <bcp14>RECOMMENDED</bcp14></td>
          </tr>
          <tr>
            <td align="left">7</td>
            <td align="left">Domain Zone Mapping</td>
            <td align="left">There <bcp14>MUST</bcp14> be domain zone records that map the necessary URI, TLSA, CERT and/or TXT records to the specified did:web identifier.</td>
          </tr>
          <tr>
            <td align="left">8</td>
            <td align="left">Domain Zone Signing</td>
            <td align="left">The domain zone records <bcp14>MUST</bcp14> be signed according to DNSSEC. (RRSIG)</td>
          </tr>
          <tr>
            <td align="left">9</td>
            <td align="left">Domain Zone Signing Key Control</td>
            <td align="left">The Issuing Authority <bcp14>MUST</bcp14> have control over the domain zone keys used for signing and delegation. (KSK and ZSK)</td>
          </tr>
          <tr>
            <td align="left">10</td>
            <td align="left">Domain Zone Signing Key Generation</td>
            <td align="left">The signing keys <bcp14>MUST</bcp14> be generated under the control of the Issuing Authority.</td>
          </tr>
          <tr>
            <td align="left">11</td>
            <td align="left">Hardware Security Module</td>
            <td align="left">A FIPS 140-2 compliant hardware security module must be under the control of the Issuing Authority.</td>
          </tr>
        </tbody>
      </table>
      <t>In addition to the technical controls specified in the table it is advisable to add in DANE (DNS-based Authentication of Named Entities) <xref target="RFC6698"/> to secure TLS communications. TLS uses certificates to bind keys to names, which are published by public "Certification Authorities" (CAs). It is important to realize that the public CA model is fundamentally vulnerable because it allows any CA to issue a certificate for any domain name. Thus, a compromised CA can issue a fake replacement certificate which could be used to subvert TLS-protected websites. DANE offers the option to use the DNSSEC infrastructure to store and sign keys and certificates that are used by a TLS-protected website. The keys are bound to names in the Domain Name System (DNS), instead of relying on arbitrary keys and names issued in a potentially compromised certificate.</t>
    </section>
    <section anchor="levels-of-assurance">
      <name>Levels of Assurance</name>
      <t>Many trust frameworks specify levels of assurance to assist in determining which controls must be implemented.</t>
      <t>The following table is not a definitive mapping to trust framework levels of assurance. It is intended to assist in determining mappings by grouping the controls within a range from <strong>LOW-</strong> to <strong>HIGH+</strong> relating to the appropriate risk level. Note that controls are additive in nature. (i.e.,, controls of the preceding level must be fulfilled).</t>
      <table>
        <thead>
          <tr>
            <th align="left">Level of Assurance</th>
            <th align="left">Controls</th>
            <th align="left">Description</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">
              <strong>LOW-</strong></td>
            <td align="left">Control 1</td>
            <td align="left">
              <bcp14>SHOULD</bcp14> only be used for low risk transactions where attribution to originator is desirable.</td>
          </tr>
          <tr>
            <td align="left">
              <strong>LOW</strong></td>
            <td align="left">Control 2</td>
            <td align="left">
              <bcp14>SHOULD</bcp14> only be used for lower risk transactions where establishing the accountability of the originator is desirable.</td>
          </tr>
          <tr>
            <td align="left">
              <strong>MEDIUM</strong></td>
            <td align="left">Controls 3, 4 and 5</td>
            <td align="left">
              <bcp14>MAY</bcp14> be used for medium risk commercial transactions, such as correspondence, proposals, etc.</td>
          </tr>
          <tr>
            <td align="left">
              <strong>MEDIUM+</strong></td>
            <td align="left">Controls 6 and 7</td>
            <td align="left">
              <bcp14>MAY</bcp14> be used for higher risk transactions, such as signing and verifying invoices, contracts, or official/legal documentation</td>
          </tr>
          <tr>
            <td align="left">
              <strong>HIGH</strong></td>
            <td align="left">Controls 8, 9 and 10</td>
            <td align="left">
              <bcp14>MUST</bcp14> be high risk transactions, such as government transactions for signing and verifying licenses, certifications or identification</td>
          </tr>
          <tr>
            <td align="left">
              <strong>HIGH+</strong></td>
            <td align="left">Control 11</td>
            <td align="left">
              <bcp14>MUST</bcp14> be used for extremely high risk transactions where there may be systemic or national security implications</td>
          </tr>
        </tbody>
      </table>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>TODO Security</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>Per <xref target="RFC8552"/>, IANA is requested to add the following entries to the
"Underscored and Globally Scoped DNS Node Names" registry:</t>
      <artwork><![CDATA[
+---------+------------+-------------------------------------------+
| RR Type | _NODE NAME | Reference                                 |
+---------+------------+-------------------------------------------+
| TLSA    | _did       | [draft-ietf-high-assurance-dids-with-dns] |
| URI     | _did       | [draft-mayrhofer-did-dns-01]              |
+---------+------------+------------------------------------------+.
]]></artwork>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="DID-Specification-Registries" target="https://www.w3.org/TR/did-spec-registries/#did-methods">
          <front>
            <title>DID Specification Registries</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="W3C-VC-Data-Model" target="https://www.w3.org/TR/vc-data-model/">
          <front>
            <title>Verifiable Credentials Data Model v1.1</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="alsoKnownAs" target="https://www.w3.org/TR/did-core/#also-known-as">
          <front>
            <title>Decentralized Identifiers (DIDs) v1.0</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="services" target="https://www.w3.org/TR/did-core/#services">
          <front>
            <title>Decentralized Identifiers (DIDs) v1.0</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="LinkedDomains" target="https://identity.foundation/.well-known/resources/did-configuration/#linked-domain-service-endpoint">
          <front>
            <title>Well Known DID Configuration</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="DID-in-the-DNS" target="https://datatracker.ietf.org/doc/html/draft-mayrhofer-did-dns-05#section-2">
          <front>
            <title>The Decentralized Identifier (DID) in the DNS</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="verificationMethod" target="https://www.w3.org/TR/did-core/#verification-methods">
          <front>
            <title>Decentralized Identifiers (DIDs) v1.0</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="issuer" target="https://www.w3.org/TR/vc-data-model-2.0/#issuer">
          <front>
            <title>Verifiable Credentials Data Model v2.0</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="dataIntegrityProofECDSA" target="https://www.w3.org/TR/vc-di-ecdsa/#proof-representations">
          <front>
            <title>Data Integrity ECDSA Cryptosuites v1.0</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="dataIntegrityProofEdDSA" target="https://www.w3.org/TR/vc-di-eddsa/#proof-representations">
          <front>
            <title>Data Integrity ECDSA Cryptosuites v1.0</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="wellKnownDidConfiguration" target="https://identity.foundation/.well-known/resources/did-configuration/">
          <front>
            <title>Well Known DID Configuration</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </front>
        </reference>
        <reference anchor="didSpecRegistries" target="https://w3c.github.io/did-spec-registries">
          <front>
            <title>Did Specification Registries</title>
            <author>
              <organization/>
            </author>
            <date>n.d.</date>
          </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>
        <reference anchor="RFC6698">
          <front>
            <title>The DNS-Based Authentication of Named Entities (DANE) Transport Layer Security (TLS) Protocol: TLSA</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <author fullname="J. Schlyter" initials="J." surname="Schlyter"/>
            <date month="August" year="2012"/>
            <abstract>
              <t>Encrypted communication on the Internet often uses Transport Layer Security (TLS), which depends on third parties to certify the keys used. This document improves on that situation by enabling the administrators of domain names to specify the keys used in that domain's TLS servers. This requires matching improvements in TLS client software, but no change in TLS server software. [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6698"/>
          <seriesInfo name="DOI" value="10.17487/RFC6698"/>
        </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="RFC9364">
          <front>
            <title>DNS Security Extensions (DNSSEC)</title>
            <author fullname="P. Hoffman" initials="P." surname="Hoffman"/>
            <date month="February" year="2023"/>
            <abstract>
              <t>This document describes the DNS Security Extensions (commonly called "DNSSEC") that are specified in RFCs 4033, 4034, and 4035, as well as a handful of others. One purpose is to introduce all of the RFCs in one place so that the reader can understand the many aspects of DNSSEC. This document does not update any of those RFCs. A second purpose is to state that using DNSSEC for origin authentication of DNS data is the best current practice. A third purpose is to provide a single reference for other documents that want to refer to DNSSEC.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="237"/>
          <seriesInfo name="RFC" value="9364"/>
          <seriesInfo name="DOI" value="10.17487/RFC9364"/>
        </reference>
        <reference anchor="RFC8020">
          <front>
            <title>NXDOMAIN: There Really Is Nothing Underneath</title>
            <author fullname="S. Bortzmeyer" initials="S." surname="Bortzmeyer"/>
            <author fullname="S. Huque" initials="S." surname="Huque"/>
            <date month="November" year="2016"/>
            <abstract>
              <t>This document states clearly that when a DNS resolver receives a response with a response code of NXDOMAIN, it means that the domain name which is thus denied AND ALL THE NAMES UNDER IT do not exist.</t>
              <t>This document clarifies RFC 1034 and modifies a portion of RFC 2308: it updates both of them.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8020"/>
          <seriesInfo name="DOI" value="10.17487/RFC8020"/>
        </reference>
        <reference anchor="RFC8552">
          <front>
            <title>Scoped Interpretation of DNS Resource Records through "Underscored" Naming of Attribute Leaves</title>
            <author fullname="D. Crocker" initials="D." surname="Crocker"/>
            <date month="March" year="2019"/>
            <abstract>
              <t>Formally, any DNS Resource Record (RR) may occur under any domain name. However, some services use an operational convention for defining specific interpretations of an RRset by locating the records in a DNS branch under the parent domain to which the RRset actually applies. The top of this subordinate branch is defined by a naming convention that uses a reserved node name, which begins with the underscore character (e.g., "_name"). The underscored naming construct defines a semantic scope for DNS record types that are associated with the parent domain above the underscored branch. This specification explores the nature of this DNS usage and defines the "Underscored and Globally Scoped DNS Node Names" registry with IANA. The purpose of this registry is to avoid collisions resulting from the use of the same underscored name for different services.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="222"/>
          <seriesInfo name="RFC" value="8552"/>
          <seriesInfo name="DOI" value="10.17487/RFC8552"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="Self-Sovereign-Identity">
          <front>
            <title>Self-Sovereign Identity</title>
            <author initials="D." surname="Reed" fullname="Drummond Reed">
              <organization/>
            </author>
            <author initials="A." surname="Preukschat" fullname="Alex Preukschat">
              <organization/>
            </author>
            <date year="2021"/>
          </front>
          <seriesInfo name="ISBN" value="9781617296598"/>
        </reference>
      </references>
    </references>
    <?line 333?>

<section anchor="w3c-considerations">
      <name>W3C Considerations</name>
      <ol spacing="normal" type="1"><li>
          <t>We propose the inclusion of an optional data integrity proof for the DID document, as outlined in <xref target="dataIntegrityProofECDSA"/> and <xref target="dataIntegrityProofEdDSA"/>.</t>
        </li>
        <li>
          <t>We propose the inclusion of the optional "dnsDomain" property to the <xref target="didSpecRegistries"/> as outlined in section 3.2.</t>
        </li>
      </ol>
    </section>
    <section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>TODO acknowledge.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
pZP/6E/BXGv8zAkpceRGAqb6P451YBEUZQAA

-->

</rfc>
