<?xml version='1.0' encoding='utf-8'?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="info" docName="draft-raskar-agentic-web-federated-resolution-02" ipr="trust200902" submissionType="IETF" version="3">
  <front>
    <title abbrev="Registry-Assisted Resolution">Registry-Assisted Resolution for Known Subjects Without DNS Discovery Anchors</title>
    <seriesInfo name="Internet-Draft" value="draft-raskar-agentic-web-federated-resolution-02"/>
    <author fullname="Ramesh Raskar" initials="R." surname="Raskar">
      <organization>MIT Media Lab</organization>
      <address>
        <postal>
          <street>75 Amherst Street</street>
          <city>Cambridge</city>
          <region>MA</region>
          <code>02142</code>
          <country>United States of America</country>
        </postal>
        <email>raskar@mit.edu</email>
      </address>
    </author>
    <author fullname="Samuel Sharaf" initials="S." surname="Sharaf">
      <organization>ProjectNanda</organization>
      <address>
        <email>samuel.sharaf@gmail.com</email>
      </address>
    </author>
    <author fullname="Pradyumna Chari" initials="P." surname="Chari">
      <organization>MIT</organization>
      <address>
        <email>pradyumna.chari4@gmail.com</email>
      </address>
    </author>
    <date year="2026" month="October" day="28"/>
    <area>Internet</area>
    <keyword>DAWN</keyword>
    <keyword>AI agents</keyword>
    <keyword>agent discovery</keyword>
    <keyword>resolution</keyword>
    <keyword>registry</keyword>
    <keyword>DNS</keyword>
    <abstract>
      <t>Discovery mechanisms for AI resources increasingly use DNS and mDNS as interoperable publication and lookup substrates. These mechanisms work well when the publisher controls a usable DNS discovery anchor. They do not cover every deployment. An individual may control an email or platform account without controlling the provider's DNS namespace. A small organization may use managed infrastructure without operating an agent-specific DNS publication point. A workload may have a stable identity that is not itself DNS anchored.</t>
      <t>This document describes Registry-Assisted Resolution for the narrower case in which a discovering entity already knows the Subject Identity it wants to resolve, but no usable DNS Discovery Anchor is available or selected by local policy. A configured registry returns the minimum information needed to continue discovery, together with provenance, authority evidence, freshness, and revocation information.</t>
      <t>This mechanism is complementary to DNS-based discovery. A validated direct DNS-anchored discovery path remains direct and is normally preferred for a domain-controlled subject. This document does not define open-ended search, semantic matchmaking, ranking, capability search, a global registry, registry discovery, directory-to-directory routing, identity management, or trust evaluation.</t>
      <t>Multiple independently operated registries may implement the same resolution profile. Registry selection is a client or deployment policy decision; no universal NandaIndex or global root is assumed. NandaIndex is described as one reference implementation of this model.</t>
    </abstract>
  </front>
  <middle>
    <section anchor="sec-1">
      <name>Introduction</name>
      <t>
        The Discovery of Agents With Names (DAWN) Working Group is chartered to specify interoperable mechanisms for the initial discovery of public properties of AI resources. The DAWN charter explicitly excludes open-ended search, semantic matchmaking, ranking, selection based on capability or user intent, broad identity management, and trust evaluation beyond secure discovery exchange 
        <xref target="DAWN-CHARTER"/>
        .
      </t>
      <t>DNS and mDNS are important candidate mechanisms for DAWN. They are especially effective when a publisher controls an appropriate DNS namespace and can publish discovery data there. However, not every Named Entity or AI Resource that a client needs to resolve has a usable DNS Discovery Anchor.</t>
      <t>This document addresses one bounded case: the discovering entity already knows a stable Subject Identity, and it wants to obtain the minimum public information needed to continue discovery for that subject. If a usable direct DNS-anchored path exists, the client uses that path. If it does not, a configured registry may provide an authority-bound resolution target.</t>
      <t>The model is deliberately narrower than earlier "global switchboard" proposals. It does not ask a registry to discover the best agent for a task. It does not define a global search engine. It does not require all clients to use the same registry. It does not define registry-to-registry routing.</t>
      <section anchor="sec-1-1">
        <name>Problem Statement</name>
        <t>The problem addressed by this document is:</t>
        <t>Given a Subject Identity already known to the discovering entity, and no usable DNS Discovery Anchor for that subject, how can the discovering entity obtain current, integrity-protected, authority- bound information that allows the initial discovery process to continue?</t>
        <t>Examples include:</t>
        <ul>
          <li>
            <t>a person identified by a provider-managed email or account identifier who does not control the provider's DNS namespace;</t>
          </li>
          <li>
            <t>a small organization that has a stable identity but delegates its agent descriptor hosting and does not operate the relevant DNS discovery records;</t>
          </li>
          <li>
            <t>a workload identified by a stable non-DNS identifier;</t>
          </li>
          <li>
            <t>a community or project identity whose descriptor is hosted by a separate service.</t>
          </li>
        </ul>
        <t>This document does not address how the discovering entity initially learns which subject it wants. Search, recommendation, semantic matchmaking, capability ranking, and intent-to-agent selection are separate functions.</t>
      </section>
      <section anchor="sec-1-2">
        <name>Alignment with the DAWN Charter</name>
        <t>
          This document is intended to fit within the initial-discovery boundary described by the DAWN charter and emerging DAWN requirements 
          <xref target="DAWN-CHARTER"/>
          <xref target="DAWN-REQS"/>
          .
        </t>
        <t>In particular:</t>
        <ul>
          <li>
            <t>Resolution starts from a name or Subject Identity already known to the discovering entity.</t>
          </li>
          <li>
            <t>The response contains only the minimum information needed to continue discovery, plus integrity, authority, provenance, and freshness information needed to evaluate that response.</t>
          </li>
          <li>
            <t>The protocol does not carry free-form user intent and does not perform semantic matchmaking, capability search, ranking, or selection.</t>
          </li>
          <li>
            <t>The protocol does not define the lifecycle, governance, or registration process of an identity system.</t>
          </li>
          <li>
            <t>The protocol does not define how a subject proves identity during enrollment. It only defines how the resulting Authority Evidence is represented to and evaluated by a resolver.</t>
          </li>
          <li>
            <t>The protocol does not require a central registry. Multiple independent registries may exist, and an organization may continue to publish discovery information independently.</t>
          </li>
          <li>
            <t>Existing DNS or mDNS discovery mechanisms remain direct where they are available.</t>
          </li>
          <li>
            <t>The registry is a discovery service that can further the initial discovery process. It is not a general Internet-wide index.</t>
          </li>
        </ul>
        <t>This document does not claim Working Group adoption or consensus. It is an individual contribution describing one possible deployment mechanism.</t>
      </section>
      <section anchor="sec-1-3">
        <name>Goals</name>
        <t>The goals of this revision are to:</t>
        <ul>
          <li>
            <t>define a narrow resolution function for known subjects without a usable DNS Discovery Anchor;</t>
          </li>
          <li>
            <t>preserve direct DNS-based discovery where it works;</t>
          </li>
          <li>
            <t>define how a client selects one or more registries without assuming a global root;</t>
          </li>
          <li>
            <t>separate registry provenance from subject-specific authority;</t>
          </li>
          <li>
            <t>define freshness, expiry, revocation, and anti-replay behavior;</t>
          </li>
          <li>
            <t>reduce enumeration risk, especially for personal and provider-managed identities;</t>
          </li>
          <li>
            <t>support coexistence among independently operated registries without registry-to-registry recursive routing;</t>
          </li>
          <li>
            <t>return only the information needed to continue initial discovery.</t>
          </li>
        </ul>
      </section>
      <section anchor="sec-1-4">
        <name>Non-Goals</name>
        <t>This document does not define:</t>
        <ul>
          <li>
            <t>open-ended Internet search;</t>
          </li>
          <li>
            <t>semantic matchmaking or natural-language intent matching;</t>
          </li>
          <li>
            <t>capability ranking or selection;</t>
          </li>
          <li>
            <t>a mandatory global registry or global NandaIndex root;</t>
          </li>
          <li>
            <t>a registry discovery protocol;</t>
          </li>
          <li>
            <t>registry-to-registry recursive forwarding or routing;</t>
          </li>
          <li>
            <t>a new naming system;</t>
          </li>
          <li>
            <t>identity enrollment or identity governance;</t>
          </li>
          <li>
            <t>trust or reputation scoring;</t>
          </li>
          <li>
            <t>agent invocation, task delegation, settlement, or execution;</t>
          </li>
          <li>
            <t>a public browse interface or capability marketplace.</t>
          </li>
        </ul>
      </section>
      <section anchor="sec-1-5">
        <name>Relationship to DNS-Based Discovery</name>
        <t>
          The DAWN charter states that DNS and mDNS are mechanisms to consider when building a discovery protocol 
          <xref target="DAWN-CHARTER"/>
          . DAWN work also proposes common parameters for DNS-based agent discovery 
          <xref target="DAWN-DNS-PARAMS"/>
          .
        </t>
        <t>Registry-Assisted Resolution is complementary to those mechanisms.</t>
        <t>A client that has a validated direct DNS-anchored discovery path SHOULD use it directly. A registry MUST NOT be inserted into that path merely because a registry also contains a record for the same subject.</t>
        <t>A temporary DNS challenge used to prove control of a domain during an out-of-scope enrollment process is not, by itself, a DNS Discovery Anchor. The distinction is between:</t>
        <ul>
          <li>
            <t>DNS used as the operational discovery publication path; and</t>
          </li>
          <li>
            <t>DNS used only as one form of authority evidence.</t>
          </li>
        </ul>
      </section>
      <section anchor="sec-1-6">
        <name>Changes from -01</name>
        <t>This revision makes the following major changes:</t>
        <ul>
          <li>
            <t>Renames the mechanism from "Registry-Assisted Discovery" to "Registry-Assisted Resolution for Known Subjects" to make the search-versus-resolution boundary explicit.</t>
          </li>
          <li>
            <t>Aligns the scope directly with the approved DAWN charter and draft-king-dawn-requirements.</t>
          </li>
          <li>
            <t>Generalizes the normative protocol from "NandaIndex" to a generic registry-assisted resolution profile. NandaIndex is now a reference implementation rather than a required registry.</t>
          </li>
          <li>
            <t>Defines explicit resolver-selection rules and states that no universal registry or global root is assumed.</t>
          </li>
          <li>
            <t>Strengthens Authority Evidence by separating registry provenance from subject-to-target authority.</t>
          </li>
          <li>
            <t>Defines renewable bindings using sequence numbers, validity bounds, expiry, and revocation information.</t>
          </li>
          <li>
            <t>Requires support for exact-lookup operation without a public browse or enumeration interface.</t>
          </li>
          <li>
            <t>Makes personal and provider-managed identities non-enumerable by default within this profile.</t>
          </li>
          <li>
            <t>Defines coexistence of multiple registries without recursive registry-to-registry forwarding.</t>
          </li>
          <li>
            <t>Removes language implying permissionless global publication or global-switchboard behavior.</t>
          </li>
          <li>
            <t>Clarifies that registration and proof acquisition are outside the protocol scope, while verification of discovery information is in scope.</t>
          </li>
        </ul>
      </section>
    </section>
    <section anchor="sec-2">
      <name>Conventions and Terminology</name>
      <t>
        The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 
        <xref target="RFC2119"/>
        <xref target="RFC8174"/>
         when, and only when, they appear in all capitals.
      </t>
      <t>
        This document uses DAWN terminology where applicable 
        <xref target="DAWN-TERMINOLOGY"/>
        .
      </t>
      <dl>
        <dt>Subject Identity</dt>
        <dd>
          <t>A stable identifier for the Named Entity or AI Resource that the discovering entity already intends to resolve. Examples include a domain name, an agent name, an email or provider-managed account, URI, URN, DID, platform identifier, or workload identifier.</t>
        </dd>
        <dt>Known Subject</dt>
        <dd>
          <t>A subject whose Subject Identity is already known to the discovering entity before this resolution procedure begins. "Known" does not imply trusted, authenticated, or authorized.</t>
        </dd>
        <dt>DNS Discovery Anchor</dt>
        <dd>
          <t>A usable discovery publication path under a controlled DNS namespace, such as a DNS-based agent discovery record, a well-known discovery resource under an authoritative domain, or an organization-controlled gateway discoverable from that domain.</t>
        </dd>
        <dt>Registry-Assisted Resolution</dt>
        <dd>
          <t>Resolution of a Known Subject through a registry selected by client or deployment policy when no usable DNS Discovery Anchor is available or selected.</t>
        </dd>
        <dt>Resolution Registry</dt>
        <dd>
          <t>A service implementing the registry-assisted resolution profile defined by this document.</t>
        </dd>
        <dt>Resolution Target</dt>
        <dd>
          <t>A terminal discovery object or subject-authorized gateway returned by a Resolution Registry.</t>
        </dd>
        <dt>Authority Evidence</dt>
        <dd>
          <t>Evidence allowing a resolver to determine that an issuer was authorized to bind a Subject Identity to a Resolution Target.</t>
        </dd>
        <dt>Registry Provenance</dt>
        <dd>
          <t>Information establishing which registry supplied a response and the integrity of the response. Registry Provenance is not, by itself, proof that the subject authorized the target.</t>
        </dd>
        <dt>Renewable Binding</dt>
        <dd>
          <t>A time-bounded subject-to-target binding with a sequence number, validity interval, and revocation information.</t>
        </dd>
      </dl>
    </section>
    <section anchor="sec-3">
      <name>Architecture</name>
      <t>Registry-Assisted Resolution is one possible mechanism within a larger discovery architecture. It is not intended to replace direct publication.</t>
      <section anchor="sec-3-1">
        <name>Direct DNS-Anchored Path</name>
        <t>For a subject with a validated DNS Discovery Anchor:</t>
        <artwork align="left">   Known Subject
        |
        v
   DNS / mDNS / well-known discovery
        |
        v
   Minimum Discovery Information or descriptor
        |
        v
   Subsequent protocol-specific interaction</artwork>
        <t>A Resolution Registry is not required in this path.</t>
      </section>
      <section anchor="sec-3-2">
        <name>Registry-Assisted Path</name>
        <t>For a Known Subject without a usable DNS Discovery Anchor:</t>
        <artwork align="left">   Known Subject
        |
        v
   Client-selected Resolution Registry
        |
        v
   Authority-bound Resolution Target
        |
        v
   Minimum Discovery Information or descriptor
        |
        v
   Subsequent protocol-specific interaction</artwork>
        <t>Registry selection is not performed by the registry itself.</t>
      </section>
      <section anchor="sec-3-3">
        <name>Mixed Deployments</name>
        <t>A deployment MAY combine direct DNS-based discovery and Registry-Assisted Resolution. For example, an enterprise policy may use DNS for organization-controlled subjects and a configured registry for provider-managed account identities.</t>
        <t>A registry MAY be reached through ordinary service configuration or through a deployment-specific bootstrap mechanism. This document does not standardize a registry-discovery protocol.</t>
        <t>A registry response MUST NOT recursively refer the client to another generic Resolution Registry.</t>
      </section>
      <section anchor="sec-3-4">
        <name>Resolver Selection</name>
        <t>A client MUST select a Resolution Registry using local configuration, enterprise policy, application profile, identifier-method policy, or another explicitly configured mechanism.</t>
        <t>This document defines no universal default registry.</t>
        <t>A client configuration for a registry SHOULD include:</t>
        <ul>
          <li>
            <t>the registry base URI;</t>
          </li>
          <li>
            <t>the registry's expected identity or trust anchor;</t>
          </li>
          <li>
            <t>the Subject Identity types for which it may be queried;</t>
          </li>
          <li>
            <t>local policy governing acceptable Authority Evidence;</t>
          </li>
          <li>
            <t>privacy policy, including whether query fan-out is permitted.</t>
          </li>
        </ul>
        <t>A client MAY be configured with an ordered set of registries. A client MAY query more than one configured registry if local policy permits, but it MUST NOT perform unbounded registry fan-out.</t>
        <t>Registry selection is a local policy decision and MUST NOT be inferred solely from a display name.</t>
      </section>
      <section anchor="sec-3-5">
        <name>Multiple Registries</name>
        <t>Multiple independently operated registries MAY contain bindings for the same Subject Identity.</t>
        <t>No registry is authoritative merely because it is first in a global list, because it uses a particular brand name, or because it contains a record.</t>
        <t>A registry MUST identify itself in its response. A resolver MUST evaluate each returned binding using subject-specific Authority Evidence and freshness information.</t>
        <t>A registry MUST NOT claim exclusive control of a Subject Identity unless the underlying identity system provides such exclusivity and the claim is verifiable.</t>
        <t>This document does not define communication, synchronization, or routing among registries.</t>
      </section>
    </section>
    <section anchor="sec-4">
      <name>Resolution Model</name>
      <section anchor="sec-4-1">
        <name>Resolution Input</name>
        <t>A resolution request contains exactly one Subject Identity and its type.</t>
        <t>A request MAY include:</t>
        <ul>
          <li>
            <t>accepted target types;</t>
          </li>
          <li>
            <t>maximum result count;</t>
          </li>
          <li>
            <t>a required freshness bound;</t>
          </li>
          <li>
            <t>an audience or deployment scope;</t>
          </li>
          <li>
            <t>policy hints that do not disclose sensitive information.</t>
          </li>
        </ul>
        <t>A request MUST NOT include free-form user intent for the purpose of semantic matching.</t>
        <t>A display name MUST NOT be the sole lookup key for an authority-sensitive resolution operation.</t>
      </section>
      <section anchor="sec-4-2">
        <name>Resolution Output</name>
        <t>A successful response returns zero or more Resolution Target Objects.</t>
        <t>Each target MUST carry:</t>
        <ul>
          <li>
            <t>the Subject Identity;</t>
          </li>
          <li>
            <t>the target type and target URI;</t>
          </li>
          <li>
            <t>Authority Evidence or a verifiable reference to it;</t>
          </li>
          <li>
            <t>Registry Provenance;</t>
          </li>
          <li>
            <t>a sequence number;</t>
          </li>
          <li>
            <t>an issuance time;</t>
          </li>
          <li>
            <t>an expiry time.</t>
          </li>
        </ul>
        <t>A response MAY include a revocation URI and a target digest.</t>
        <t>The response MUST NOT include another generic registry as the terminal resolution target.</t>
      </section>
      <section anchor="sec-4-3">
        <name>Minimum Discovery Information</name>
        <t>The response is intended to carry only the minimum information needed to continue the DAWN initial-discovery process.</t>
        <t>This document does not define a capability taxonomy.</t>
        <t>A registry SHOULD return a reference to a terminal discovery object rather than duplicating rich capability metadata.</t>
        <t>Rich business metadata, reputation, user profiles, private capabilities, transaction history, credentials, and task-specific context are outside this profile.</t>
        <t>As DAWN converges on a common Minimum Discoverable Information (MDI) model, this profile SHOULD reuse that model rather than define a competing set of capability fields.</t>
      </section>
      <section anchor="sec-4-4">
        <name>Terminal Target Classes</name>
        <t>A target is one of:</t>
        <dl>
          <dt>artifact</dt>
          <dd>
            <t>A terminal discovery representation reachable by URI, such as an Agent Card, MCP server descriptor, workload descriptor, or a subject-owned discovery catalog.</t>
          </dd>
          <dt>gateway</dt>
          <dd>
            <t>A subject-authorized gateway that returns minimum discovery information or a subject-specific descriptor under its own access policy.</t>
          </dd>
        </dl>
        <t>A target MUST NOT be another generic Resolution Registry.</t>
      </section>
      <section anchor="sec-4-5">
        <name>Precedence</name>
        <t>A validated direct DNS-anchored path SHOULD normally be preferred for a domain-controlled subject.</t>
        <t>That preference does not apply mechanically to provider-managed account identities. Control of the DNS zone for example.net does not prove control of alice@example.net.</t>
        <t>A resolver MUST evaluate authority according to the Subject Identity type.</t>
        <t>A resolver MUST NOT silently replace a currently valid, stronger direct binding with a weaker registry result.</t>
        <t>If multiple registry results are valid, local policy MAY select one or retain several. The resolver SHOULD expose the provenance and selection reason.</t>
      </section>
      <section anchor="sec-4-6">
        <name>Failure Handling</name>
        <t>Implementations SHOULD distinguish:</t>
        <ul>
          <li>
            <t>no-binding;</t>
          </li>
          <li>
            <t>unverifiable;</t>
          </li>
          <li>
            <t>stale;</t>
          </li>
          <li>
            <t>revoked;</t>
          </li>
          <li>
            <t>unsupported-target;</t>
          </li>
          <li>
            <t>policy-rejected;</t>
          </li>
          <li>
            <t>malformed-response.</t>
          </li>
        </ul>
        <t>Public exact-lookup endpoints SHOULD avoid creating unnecessarily different externally observable responses for "unknown identity" and "not publicly resolvable" when doing so would increase enumeration risk.</t>
        <t>Requests and responses MUST be bounded by timeouts, response-size limits, and resource policy.</t>
      </section>
    </section>
    <section anchor="sec-5">
      <name>Data Model</name>
      <section anchor="sec-5-1">
        <name>Resolution Response</name>
        <t>The experimental JSON response contains:</t>
        <sourcecode type="json">{
  "registry": { ... Registry Provenance ... },
  "subject": "alice@example.net",
  "subjectType": "email",
  "targets": [ ... Resolution Target Objects ... ]
}</sourcecode>
        <t>An empty targets array indicates that the registry returns no public acceptable binding for the requested subject.</t>
      </section>
      <section anchor="sec-5-2">
        <name>Resolution Target Object</name>
        <t>A Resolution Target Object has the following members:</t>
        <t>subject REQUIRED. The normalized Subject Identity.</t>
        <t>subjectType REQUIRED. A documented Subject Identity type.</t>
        <t>method REQUIRED. One of "artifact" or "gateway".</t>
        <t>targetType REQUIRED. A media type or documented protocol identifier.</t>
        <t>targetUrl REQUIRED. An absolute HTTPS URI.</t>
        <t>targetDigest OPTIONAL. An integrity digest for the referenced target.</t>
        <t>authority REQUIRED. Authority Evidence as described in Section 5.4.</t>
        <t>sequence REQUIRED. A non-negative integer monotonically increasing within the subject-authority scope for updates to the binding.</t>
        <t>
          issuedAt REQUIRED. An 
          <xref target="RFC3339"/>
           timestamp.
        </t>
        <t>
          expiresAt REQUIRED. An 
          <xref target="RFC3339"/>
           timestamp after which the binding MUST be treated as stale unless refreshed.
        </t>
        <t>revocationUrl OPTIONAL. A URI at which revocation status may be checked.</t>
        <t>scope OPTIONAL. A bounded audience, role, service, or deployment scope.</t>
        <t>fallback OPTIONAL boolean. True if the target is intended only as a fallback under local policy.</t>
      </section>
      <section anchor="sec-5-3">
        <name>Subject Identity Normalization</name>
        <t>Domain names MUST be processed using applicable DNS and IDNA rules.</t>
        <t>For email identities, the domain part follows DNS canonicalization. The local-part MUST NOT be case-folded unless an applicable identity-provider profile defines that behavior.</t>
        <t>
          URIs MUST be normalized only as permitted by 
          <xref target="RFC3986"/>
          .
        </t>
        <t>
          URNs MUST follow 
          <xref target="RFC8141"/>
           and namespace-specific rules.
        </t>
        <t>DID, platform, and workload identifiers MUST follow their governing specifications.</t>
        <t>Normalization MUST NOT change the identified subject.</t>
      </section>
      <section anchor="sec-5-4">
        <name>Authority Evidence</name>
        <t>The Authority Evidence object separates subject authority from registry provenance.</t>
        <t>The object SHOULD contain:</t>
        <t>type REQUIRED. The authority mechanism or credential type.</t>
        <t>issuer REQUIRED. The issuer or validating authority.</t>
        <t>evidenceUrl or evidence RECOMMENDED. A verifiable reference or embedded evidence.</t>
        <t>subject RECOMMENDED. The subject covered by the evidence when not implicit.</t>
        <t>targetUrl or targetDigest RECOMMENDED. A binding to the target or publisher when supported by the evidence format.</t>
        <t>validFrom OPTIONAL.</t>
        <t>expiresAt REQUIRED for time-bounded evidence unless the underlying evidence format has an equivalent validity rule.</t>
        <t>revocationUrl OPTIONAL.</t>
        <t>A registry signature proves Registry Provenance. It does not by itself establish that the subject authorized the target.</t>
        <t>Examples of subject-specific evidence include:</t>
        <ul>
          <li>
            <t>DNS or WebPKI-backed domain control for domain identities;</t>
          </li>
          <li>
            <t>an account-provider assertion, mailbox challenge, or other account-specific proof for an email identity;</t>
          </li>
          <li>
            <t>a DID or wallet signature for a cryptographic identity;</t>
          </li>
          <li>
            <t>a platform-issued assertion for a platform account;</t>
          </li>
          <li>
            <t>an applicable workload identity credential.</t>
          </li>
        </ul>
        <t>The mechanism by which the publisher originally obtains the proof is outside the scope of this document. The resolution protocol is concerned with carrying enough information for the discovering entity to validate the discovery binding.</t>
      </section>
      <section anchor="sec-5-5">
        <name>Freshness and Renewable Bindings</name>
        <t>A registry binding is a renewable lease, not a permanent claim.</t>
        <t>Every returned target MUST contain sequence, issuedAt, and expiresAt.</t>
        <t>A registry MUST NOT return a binding as current after expiresAt.</t>
        <t>A registry SHOULD require renewed Authority Evidence before extending a binding beyond the validity of that evidence.</t>
        <t>When a target, ownership state, authority evidence, or publisher changes, the sequence number MUST increase.</t>
        <t>A resolver that has multiple bindings from the same authority scope MUST reject an older sequence when it has already observed a newer valid sequence.</t>
        <t>A revoked binding MUST NOT remain usable solely because an HTTP cache lifetime has not expired.</t>
        <t>Negative caching SHOULD be short and policy bounded.</t>
        <t>Implementations SHOULD preserve sufficient audit information to diagnose replacement, recovery, and revocation events without exposing sensitive history through the public resolution API.</t>
      </section>
      <section anchor="sec-5-6">
        <name>Provenance</name>
        <t>Registry Provenance SHOULD include:</t>
        <ul>
          <li>
            <t>registry identifier;</t>
          </li>
          <li>
            <t>registry base URI;</t>
          </li>
          <li>
            <t>response issuance time;</t>
          </li>
          <li>
            <t>response signature or authenticated-transport identity;</t>
          </li>
          <li>
            <t>profile version.</t>
          </li>
        </ul>
        <t>Provenance allows a client to identify which configured registry supplied the result. It MUST NOT be interpreted as subject authority unless the authority model explicitly says so.</t>
      </section>
    </section>
    <section anchor="sec-6">
      <name>Experimental HTTPS Binding</name>
      <section anchor="sec-6-1">
        <name>Endpoint and Transport</name>
        <t>A Resolution Registry implementing this experimental binding exposes:</t>
        <sourcecode type="http-message">   POST /resolve</sourcecode>
        <t>relative to its configured base URI.</t>
        <t>HTTPS is REQUIRED for public deployments.</t>
        <t>
          Requests and responses use application/json. Errors use application/problem+json 
          <xref target="RFC9457"/>
          .
        </t>
      </section>
      <section anchor="sec-6-2">
        <name>Request</name>
        <t>Example:</t>
        <sourcecode type="http-message">POST /resolve HTTP/1.1
Host: registry.example
Content-Type: application/json
Accept: application/json</sourcecode>
        <sourcecode type="json">{
  "identity": "alice@example.net",
  "identityType": "email",
  "maxResults": 3,
  "acceptedMethods": ["artifact", "gateway"]
}</sourcecode>
        <t>identity and identityType are REQUIRED.</t>
        <t>maxResults defaults to 3 and MUST be between 1 and 100.</t>
        <t>acceptedMethods MAY constrain the target classes.</t>
        <t>The request MUST NOT contain an "intent", "capabilityQuery", "nextRegistry", or recursive forwarding field in this profile.</t>
      </section>
      <section anchor="sec-6-3">
        <name>Successful Response</name>
        <t>A registry returns HTTP 200 for a syntactically valid lookup, including a lookup for which no public binding is returned.</t>
        <t>Example:</t>
        <sourcecode type="json">{
  "registry": {
    "id": "https://registry.example",
    "profile": "known-subject-resolution-02",
    "issuedAt": "2026-10-28T20:00:00Z"
  },
  "subject": "alice@example.net",
  "subjectType": "email",
  "targets": []
}</sourcecode>
        <t>Using the same status code for an empty public result and a populated result does not eliminate enumeration attacks, but it avoids one unnecessary distinction.</t>
      </section>
      <section anchor="sec-6-4">
        <name>Error Response</name>
        <t>
          Protocol errors use 
          <xref target="RFC9457"/>
          .
        </t>
        <t>Example:</t>
        <sourcecode type="http-message">HTTP/1.1 422 Unprocessable Content
Content-Type: application/problem+json</sourcecode>
        <sourcecode type="json">{
  "type": "https://registry.example/problems/unverifiable",
  "title": "Resolution binding is unverifiable",
  "status": 422,
  "code": "unverifiable"
}</sourcecode>
        <t>Error responses MUST NOT expose secret credentials, private identity attributes, or internal policy details.</t>
      </section>
      <section anchor="sec-6-5">
        <name>No Public Enumeration Requirement</name>
        <t>Conformance to this profile MUST NOT require a registry to expose:</t>
        <ul>
          <li>
            <t>a list-all endpoint;</t>
          </li>
          <li>
            <t>keyword search;</t>
          </li>
          <li>
            <t>natural-language search;</t>
          </li>
          <li>
            <t>browse-by-category;</t>
          </li>
          <li>
            <t>prefix enumeration;</t>
          </li>
          <li>
            <t>downloadable identity catalogs.</t>
          </li>
        </ul>
        <t>A registry MUST support exact lookup without requiring any of those interfaces.</t>
        <t>Provider-managed personal identities SHOULD NOT be included in public browse or search interfaces by default.</t>
        <t>If a deployment separately offers public search or browsing, that function is outside this profile and MUST be clearly separable from the resolution endpoint.</t>
      </section>
      <section anchor="sec-6-6">
        <name>No Inter-Registry Forwarding</name>
        <t>A Resolution Registry MUST NOT recursively query another Resolution Registry on behalf of the client under this profile.</t>
        <t>A response MUST NOT return another generic Resolution Registry as its Resolution Target.</t>
        <t>A client MAY independently query another registry from its configured registry set, subject to local privacy policy.</t>
        <t>This rule prevents a client-selected registry model from silently becoming a global registry-routing system.</t>
      </section>
    </section>
    <section anchor="sec-7">
      <name>Resolver Procedure</name>
      <t>A resolver performs the following procedure:</t>
      <ol>
        <li>
          <t>Accept one Known Subject and local policy.</t>
        </li>
        <li>
          <t>Normalize the Subject Identity without changing its semantics.</t>
        </li>
        <li>
          <t>Determine whether local policy has a validated, direct DNS-anchored discovery procedure for this Subject Identity type.</t>
        </li>
        <li>
          <t>If such a direct path exists and is selected, use it directly.</t>
        </li>
        <li>
          <t>Otherwise select a Resolution Registry from local configuration or policy.</t>
        </li>
        <li>
          <t>Send an exact resolution request.</t>
        </li>
        <li>
          <t>Validate Registry Provenance.</t>
        </li>
        <li>
          <t>Validate each candidate's Subject Identity, Authority Evidence, target binding, sequence, expiry, revocation status, and local policy.</t>
        </li>
        <li>
          <t>Reject unknown target methods and expired or revoked bindings.</t>
        </li>
        <li>
          <t>Retrieve the terminal discovery object over an authenticated transport.</t>
        </li>
        <li>
          <t>Continue any subsequent authentication, authorization, capability exchange, or invocation under the specification governing that target. Those actions are outside this profile.</t>
        </li>
      </ol>
      <section anchor="sec-7-1">
        <name>Domain-Controlled Subjects</name>
        <t>For a domain-controlled subject, a currently valid direct DNS-based discovery record is normally stronger than a registry binding because it is published under the subject's authoritative namespace.</t>
        <t>A registry binding MAY be useful when the subject does not publish the relevant discovery data in DNS or delegates descriptor hosting.</t>
        <t>If a direct path later becomes available, policy SHOULD normally prefer it.</t>
      </section>
      <section anchor="sec-7-2">
        <name>Email and Provider-Managed Accounts</name>
        <t>The operator of a provider domain does not automatically speak for every individual account in that namespace.</t>
        <t>For example, DNS control of example.net does not alone prove that a particular agent is authorized for alice@example.net.</t>
        <t>Authority Evidence for a provider-managed identity MUST be account-specific or be issued under an identity-provider delegation model that explicitly covers the account.</t>
        <t>Such evidence SHOULD be time bounded and revocable.</t>
      </section>
      <section anchor="sec-7-3">
        <name>DIDs, Platform Identities, and Workload Identities</name>
        <t>For a DID, wallet, platform account, SPIFFE identity, or other workload identity, the resolver follows the verification and lifecycle rules of the governing identity system.</t>
        <t>The registry MUST NOT redefine the identity system's authority model.</t>
      </section>
    </section>
    <section anchor="sec-8">
      <name>Deployment Examples</name>
      <section anchor="sec-8-1">
        <name>Enterprise with Direct DNS Discovery</name>
        <t>Example Corp controls example.com and publishes a DAWN-compatible DNS discovery record.</t>
        <artwork align="left">   example.com
       |
       v
   authoritative DNS discovery
       |
       v
   descriptor / MDI</artwork>
        <t>The registry-assisted mechanism is not used.</t>
      </section>
      <section anchor="sec-8-2">
        <name>SMB Without a Usable DNS Discovery Anchor</name>
        <t>Moon Bakery uses moon-bakery.example as its public identity but relies on managed hosting and does not operate the relevant discovery records. Its Agent Card is hosted by agenthost.example.</t>
        <t>A configured registry returns:</t>
        <sourcecode type="json">{
  "subject": "orders@moon-bakery.example",
  "subjectType": "agent-name",
  "method": "artifact",
  "targetType": "application/a2a-agent-card+json",
  "targetUrl":
    "https://cards.agenthost.example/moon-bakery/orders.json",
  "sequence": 8,
  "issuedAt": "2026-10-28T19:00:00Z",
  "expiresAt": "2026-10-29T19:00:00Z",
  "authority": {
    "type": "domain-control",
    "issuer": "https://registry.example",
    "evidenceUrl":
      "https://moon-bakery.example/.well-known/example-proof"
  }
}</sourcecode>
        <t>The registry proves the binding; it does not become the runtime.</t>
      </section>
      <section anchor="sec-8-3">
        <name>Individual Personal Agent</name>
        <t>Alice controls alice@example.net but does not control example.net DNS. A provider-specific or mailbox-specific proof authorizes her personal agent descriptor.</t>
        <artwork align="left">   alice@example.net
       |
       v
   configured registry
       |
       v
   account-specific Authority Evidence
       |
       v
   Agent Card
       |
       v
   local or cloud runtime</artwork>
        <t>Alice's identity is resolved by exact lookup. It need not appear in a public browse interface.</t>
      </section>
      <section anchor="sec-8-4">
        <name>Multiple Independent Registries</name>
        <t>A client is configured with Registry A and Registry B.</t>
        <t>Both contain a binding for the same Subject Identity.</t>
        <t>The client verifies both independently. It does not assume that one registry is a global root, and neither registry forwards the request to the other.</t>
        <t>Local policy may select the result with acceptable Authority Evidence and freshness, retain both for resilience, or reject both.</t>
      </section>
    </section>
    <section anchor="sec-9">
      <name>Operational Considerations</name>
      <section anchor="sec-9-1">
        <name>Registration Is Out of Scope</name>
        <t>
          DAWN's initial scope excludes entity registration and identity management 
          <xref target="DAWN-CHARTER"/>
          <xref target="DAWN-REQS"/>
          .
        </t>
        <t>Accordingly, this document does not standardize account creation, challenge issuance, proof acquisition, registrant recovery, or governance of an identity namespace.</t>
        <t>A registry implementation necessarily performs enrollment and lifecycle operations, but those operations are outside the resolution protocol defined here.</t>
        <t>What is in scope is that the resolution response carry enough integrity, provenance, authority, and freshness information for the discovering entity to evaluate the discovery result.</t>
      </section>
      <section anchor="sec-9-2">
        <name>Anti-Squatting</name>
        <t>A registry MUST NOT treat first registration as sufficient authority.</t>
        <t>A pending or unverified registration MUST NOT block a later registrant that presents valid authority evidence under the registry's policy.</t>
        <t>Resolver clients MUST NOT treat registry presence alone as proof of ownership.</t>
      </section>
      <section anchor="sec-9-3">
        <name>Migration and Recovery</name>
        <t>A subject may migrate its descriptor or runtime without changing its Subject Identity.</t>
        <t>The binding sequence MUST increase when the resolution target changes.</t>
        <t>Recovery of a subject binding SHOULD require evidence at least as strong as the evidence used for the previous valid binding, subject to the governing identity system.</t>
        <t>A registry MAY retain non-public audit history or tombstones to prevent immediate reassignment after withdrawal, subject to privacy and retention policy.</t>
      </section>
      <section anchor="sec-9-4">
        <name>Registry Independence</name>
        <t>Registries are independently operated.</t>
        <t>A registry MAY apply its own enrollment, evidence, jurisdiction, retention, and abuse policies.</t>
        <t>Interoperability depends on the common resolution representation and resolver behavior, not on shared registry governance.</t>
      </section>
    </section>
    <section anchor="sec-10">
      <name>Security Considerations</name>
      <section anchor="sec-10-1">
        <name>Authority Confusion</name>
        <t>The most important security property is distinguishing:</t>
        <ul>
          <li>
            <t>the identity of the registry;</t>
          </li>
          <li>
            <t>the Subject Identity;</t>
          </li>
          <li>
            <t>the authority that validates the subject;</t>
          </li>
          <li>
            <t>the host of the descriptor;</t>
          </li>
          <li>
            <t>the runtime operator.</t>
          </li>
        </ul>
        <t>These may all be different parties.</t>
        <t>Implementations MUST NOT infer subject authority from descriptor hosting or registry hosting alone.</t>
      </section>
      <section anchor="sec-10-2">
        <name>Registry Poisoning and Squatting</name>
        <t>A malicious registrant may attempt to bind another subject to an attacker-controlled descriptor.</t>
        <t>Registries MUST validate authority before publishing a current binding. Resolvers MUST evaluate the Authority Evidence rather than trusting registry presence alone.</t>
      </section>
      <section anchor="sec-10-3">
        <name>Target Substitution</name>
        <t>An attacker may replace a target after authority was verified.</t>
        <t>Authority Evidence SHOULD bind the subject to the target URI, target digest, authorized publisher, or another object from which the target is securely derived.</t>
      </section>
      <section anchor="sec-10-4">
        <name>Downgrade Attacks</name>
        <t>An attacker may try to suppress a stronger direct DNS path and force a client onto a weaker registry result.</t>
        <t>A resolver MUST NOT silently downgrade from a validated direct path to a weaker registry result.</t>
      </section>
      <section anchor="sec-10-5">
        <name>Replay and Stale Bindings</name>
        <t>An attacker may replay a previously valid binding.</t>
        <t>Sequence numbers, validity bounds, expiry, and revocation checks are therefore required.</t>
        <t>HTTP cache freshness MUST NOT override subject-level revocation or expiry.</t>
      </section>
      <section anchor="sec-10-6">
        <name>Resource Exhaustion</name>
        <t>Exact lookup endpoints are attractive denial-of-service and scraping targets.</t>
        <t>Registries SHOULD use rate limiting, request-size limits, deadlines, abuse detection, and bounded result sets.</t>
        <t>Clients MUST NOT perform unbounded registry fan-out.</t>
      </section>
      <section anchor="sec-10-7">
        <name>Registry Trust</name>
        <t>A configured registry is trusted to operate the protocol correctly and to preserve response integrity. It is not automatically trusted to make arbitrary claims about a subject.</t>
        <t>Subject-specific Authority Evidence remains necessary.</t>
      </section>
    </section>
    <section anchor="sec-11">
      <name>Privacy Considerations</name>
      <section anchor="sec-11-1">
        <name>Exact Lookup and Enumeration</name>
        <t>A major difference between resolution and search is that resolution can operate without exposing the entire set of registered subjects.</t>
        <t>This profile therefore requires support for exact lookup and does not require listing or browsing.</t>
        <t>Personal and provider-managed account identities SHOULD be hidden from public enumeration by default.</t>
        <t>Public search or browsing, if provided by the same implementation, is a separate function outside this profile.</t>
        <t>Rate limiting and uniform response behavior can reduce simple enumeration but do not eliminate it. Privacy-preserving exact-lookup mechanisms are an area for future work.</t>
      </section>
      <section anchor="sec-11-2">
        <name>Query Privacy</name>
        <t>Resolution queries can reveal relationships, planned interactions, or sensitive identities.</t>
        <t>Clients SHOULD avoid unnecessary query fan-out.</t>
        <t>Registries SHOULD minimize logs, document retention policy, protect transport confidentiality, and avoid logging secrets.</t>
      </section>
      <section anchor="sec-11-3">
        <name>Data Minimization</name>
        <t>A resolution record SHOULD contain only the information needed to find and validate the terminal discovery target.</t>
        <t>Rich profiles, personal attributes, transaction history, private capability descriptions, and credentials SHOULD NOT be included.</t>
      </section>
      <section anchor="sec-11-4">
        <name>Personal Agents</name>
        <t>Verification that a person controls an account does not imply consent for all actions by or toward the person's agent.</t>
        <t>Resolution identifies a discovery target. It does not authorize invocation, disclosure of private capabilities, or transactions.</t>
      </section>
    </section>
    <section anchor="sec-12">
      <name>IANA Considerations</name>
      <t>This revision requests no new DNS label, well-known URI, registry root, or URN namespace.</t>
      <t>The media type application/agent-resolution-target+json proposed in -01 remains experimental in this revision. A future Standards Track version may request formal registration if the DAWN architecture adopts a dedicated representation rather than a common MDI object.</t>
    </section>
    <section anchor="sec-13">
      <name>Interoperability Considerations</name>
      <t>The registry-assisted path SHOULD converge on the same DAWN minimum discovery semantics as direct DNS-based mechanisms.</t>
      <t>This document deliberately avoids defining a parallel capability model.</t>
      <t>As common DAWN discovery parameters and MDI definitions stabilize, implementations SHOULD map registry outputs to those common fields.</t>
      <t>Terminal Agent Card, MCP, workload, or other descriptors remain governed by their own specifications.</t>
      <t>This document does not define interoperability among registries beyond the fact that multiple registries may expose the same resolution profile to clients.</t>
    </section>
    <section anchor="sec-14">
      <name>NandaIndex as a Reference Implementation</name>
      <t>
        Project NANDA operates NandaIndex as an experimental implementation of agent resolution and discovery concepts 
        <xref target="NANDAINDEX"/>
        <xref target="NANDA-GITHUB"/>
        .
      </t>
      <t>For the model in this revision, NandaIndex is best understood as one possible Resolution Registry, not as a mandatory global root.</t>
      <t>To implement this profile, a NandaIndex deployment should:</t>
      <ul>
        <li>
          <t>expose exact resolution independently of public search or browse;</t>
        </li>
        <li>
          <t>keep direct DNS-anchored discovery outside the NandaIndex critical path where possible;</t>
        </li>
        <li>
          <t>require subject-specific authority evidence;</t>
        </li>
        <li>
          <t>publish expiry, sequence, provenance, and revocation information;</t>
        </li>
        <li>
          <t>make personal records non-enumerable by default;</t>
        </li>
        <li>
          <t>avoid recursive registry-to-registry forwarding;</t>
        </li>
        <li>
          <t>permit clients to choose other compatible registries.</t>
        </li>
      </ul>
      <t>Natural-language discovery, public browsing, capability search, and marketplace functions may exist as separate Project NANDA experimentation, but they are not part of the registry-assisted resolution profile described here.</t>
    </section>
    <section anchor="sec-15">
      <name>Conclusion</name>
      <t>DNS and mDNS are strong foundations for AI-resource discovery when the subject controls a usable discovery publication point.</t>
      <t>A narrower gap remains for a Known Subject whose identity is stable but whose discovery information cannot be published through a usable DNS Discovery Anchor.</t>
      <t>Registry-Assisted Resolution fills that gap without requiring a global index. The client starts with a Known Subject, selects a registry by local policy, validates subject-specific authority and freshness, and receives only the minimum information needed to continue discovery.</t>
      <t>The design preserves four important boundaries:</t>
      <ul>
        <li>
          <t>DNS remains direct where it works;</t>
        </li>
        <li>
          <t>resolution is distinct from open-ended search;</t>
        </li>
        <li>
          <t>registry provenance is distinct from subject authority;</t>
        </li>
        <li>
          <t>multiple registries coexist without registry-to-registry routing.</t>
        </li>
      </ul>
      <t>This makes registry-assisted resolution a complementary discovery mechanism rather than an alternative global naming or search system.</t>
    </section>
  </middle>
  <back>
    <references>
      <name>Normative References</name>
      <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119">
        <front>
          <title>Key words for use in RFCs to Indicate Requirement Levels</title>
          <author fullname="Scott Bradner" initials="S." surname="Bradner"/>
          <date month="March" year="1997"/>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="2119"/>
      </reference>
      <reference anchor="RFC3339" target="https://www.rfc-editor.org/info/rfc3339">
        <front>
          <title>Date and Time on the Internet: Timestamps</title>
          <author fullname="Graham Klyne" initials="G." surname="Klyne"/>
          <author fullname="Chris Newman" initials="C." surname="Newman"/>
          <date month="July" year="2002"/>
        </front>
        <seriesInfo name="RFC" value="3339"/>
      </reference>
      <reference anchor="RFC3986" target="https://www.rfc-editor.org/info/rfc3986">
        <front>
          <title>Uniform Resource Identifier (URI): Generic Syntax</title>
          <author fullname="Tim Berners-Lee" initials="T." surname="Berners-Lee"/>
          <author fullname="Roy Fielding" initials="R." surname="Fielding"/>
          <author fullname="Larry Masinter" initials="L." surname="Masinter"/>
          <date month="January" year="2005"/>
        </front>
        <seriesInfo name="STD" value="66"/>
        <seriesInfo name="RFC" value="3986"/>
      </reference>
      <reference anchor="RFC8141" target="https://www.rfc-editor.org/info/rfc8141">
        <front>
          <title>Uniform Resource Names (URNs)</title>
          <author fullname="Peter Saint-Andre" initials="P." surname="Saint-Andre"/>
          <author fullname="John Klensin" initials="J." surname="Klensin"/>
          <date month="April" year="2017"/>
        </front>
        <seriesInfo name="RFC" value="8141"/>
      </reference>
      <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174">
        <front>
          <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
          <author fullname="Barry Leiba" initials="B." surname="Leiba"/>
          <date month="May" year="2017"/>
        </front>
        <seriesInfo name="BCP" value="14"/>
        <seriesInfo name="RFC" value="8174"/>
      </reference>
      <reference anchor="RFC9457" target="https://www.rfc-editor.org/info/rfc9457">
        <front>
          <title>Problem Details for HTTP APIs</title>
          <author fullname="Mark Nottingham" initials="M." surname="Nottingham"/>
          <author fullname="Erik Wilde" initials="E." surname="Wilde"/>
          <author fullname="Sanjay Dalal" initials="S." surname="Dalal"/>
          <date month="July" year="2023"/>
        </front>
        <seriesInfo name="RFC" value="9457"/>
      </reference>
    </references>
    <references>
      <name>Informative References</name>
      <reference anchor="DAWN-CHARTER" target="https://datatracker.ietf.org/doc/charter-ietf-dawn/">
        <front>
          <title>Discovery of Agents With Names (DAWN) Charter</title>
          <author fullname="Internet Engineering Task Force"/>
          <date month="October" year="2026"/>
        </front>
        <seriesInfo name="Charter" value="charter-ietf-dawn-01"/>
      </reference>
      <reference anchor="DAWN-REQS" target="https://datatracker.ietf.org/doc/draft-king-dawn-requirements/">
        <front>
          <title>Requirements for the Discovery of Agents With Names (DAWN)</title>
          <author fullname="Daniel King" initials="D." surname="King"/>
          <author fullname="Adrian Farrel" initials="A." surname="Farrel"/>
          <date month="October" year="2026"/>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-king-dawn-requirements-02"/>
      </reference>
      <reference anchor="DAWN-TERMINOLOGY" target="https://datatracker.ietf.org/doc/draft-farrel-dawn-terminology/">
        <front>
          <title>Terminology for the Discovery of Agents With Names (DAWN)</title>
          <author fullname="Adrian Farrel" initials="A." surname="Farrel"/>
          <author fullname="Kehan Yao" initials="K." surname="Yao"/>
          <author fullname="Robert Schott" initials="R." surname="Schott"/>
          <author fullname="Nicholas Williams" initials="N." surname="Williams"/>
          <date month="October" year="2026"/>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-farrel-dawn-terminology-06"/>
      </reference>
      <reference anchor="DAWN-DNS-PARAMS" target="https://datatracker.ietf.org/doc/draft-blwm-dawn-common-discovery-parameters/">
        <front>
          <title>Common Agent DNS Discovery Parameters</title>
          <author fullname="Frank Brockners" initials="F." surname="Brockners"/>
          <author fullname="Lorand Jakab" initials="L." surname="Jakab"/>
          <author fullname="Nicholas Williams" initials="N." surname="Williams"/>
          <author fullname="James Mozley" initials="J." surname="Mozley"/>
          <date month="October" year="2026"/>
        </front>
        <seriesInfo name="Internet-Draft" value="draft-blwm-dawn-common-discovery-parameters-00"/>
      </reference>
      <reference anchor="NANDAINDEX" target="https://nandaindex.org/">
        <front>
          <title>NandaIndex</title>
          <author fullname="Project NANDA"/>
          <date year="2026"/>
        </front>
      </reference>
      <reference anchor="NANDA-GITHUB" target="https://github.com/projnanda/nanda-index-v2">
        <front>
          <title>NandaIndex Version 2 Source Code</title>
          <author fullname="Project NANDA"/>
          <date year="2026"/>
        </front>
      </reference>
    </references>
    <section anchor="app-a">
      <name>Example Resolution Response</name>
      <sourcecode type="http-message">POST /resolve</sourcecode>
      <sourcecode type="json">{
  "identity": "alice@example.net",
  "identityType": "email",
  "maxResults": 2,
  "acceptedMethods": ["artifact"]
}</sourcecode>
      <t>200 OK</t>
      <sourcecode type="json">{
  "registry": {
    "id": "https://registry.example",
    "profile": "known-subject-resolution-02",
    "issuedAt": "2026-10-28T20:00:00Z"
  },
  "subject": "alice@example.net",
  "subjectType": "email",
  "targets": [
    {
      "subject": "alice@example.net",
      "subjectType": "email",
      "method": "artifact",
      "targetType": "application/a2a-agent-card+json",
      "targetUrl":
        "https://cards.agenthost.example/alice/card.json",
      "targetDigest": "sha256:BASE64URLVALUE",
      "sequence": 14,
      "issuedAt": "2026-10-28T19:00:00Z",
      "expiresAt": "2026-10-29T19:00:00Z",
      "authority": {
        "type": "account-provider-assertion",
        "issuer": "https://identity.example.net",
        "evidenceUrl":
          "https://identity.example.net/evidence/EXAMPLE",
        "expiresAt": "2026-10-29T19:00:00Z"
      },
      "revocationUrl":
        "https://registry.example/revocations/alice-14"
    }
  ]
}</sourcecode>
    </section>
    <section anchor="app-b">
      <name>DAWN Requirements Mapping</name>
      <t>The following non-normative mapping explains how this mechanism is intended to relate to current DAWN requirements.</t>
      <t>Known starting point: The Subject Identity is already known before resolution.</t>
      <t>Referral / directory: The configured registry is a bounded discovery service that furthers discovery for the known subject.</t>
      <t>Minimum information: The response carries a target pointer and the security/lifecycle information needed to validate it, rather than a capability catalog.</t>
      <t>Decentralization: No single registry is required. Clients select registries by configuration or policy.</t>
      <t>Independent publication: Subjects with direct DNS publication remain independent of registries and are resolved directly.</t>
      <t>Existing protocols: DNS/mDNS are reused where applicable. HTTPS is used for the registry-assisted gap.</t>
      <t>Integrity: Registry Provenance protects the response, while Authority Evidence binds the subject to the target.</t>
      <t>Privacy: Exact lookup is supported without public enumeration.</t>
      <t>Scope boundary: Search, ranking, semantic matchmaking, identity management, and trust evaluation are not part of this profile.</t>
    </section>
    <section anchor="app-c">
      <name>Open Questions</name>
      <ul>
        <li>
          <t>Whether the generic registry-assisted mechanism belongs in a DAWN Architecture document, a use-case document, or a separate protocol specification.</t>
        </li>
        <li>
          <t>Whether DAWN MDI can directly represent all fields needed for the Resolution Target Object, eliminating a dedicated target media type.</t>
        </li>
        <li>
          <t>Which authority-evidence formats should be standardized or profiled for email, platform, DID, and workload identities.</t>
        </li>
        <li>
          <t>Whether privacy-preserving exact lookup techniques such as OPRF- or PIR-based designs are warranted for personal-agent deployments.</t>
        </li>
        <li>
          <t>How registry selection should be profiled for specific identity methods without creating a universal registry-discovery system.</t>
        </li>
        <li>
          <t>Whether a transparency mechanism is useful for detecting conflicting or malicious bindings without creating a public enumeration surface.</t>
        </li>
        <li>
          <t>How conformance tests should verify non-enumerability, freshness, and no-forwarding behavior.</t>
        </li>
      </ul>
    </section>
    <section anchor="acknowledgements" numbered="false">
      <name>Acknowledgements</name>
      <t>This document draws on work by the Project NANDA community and on discussions in the IETF DAWN community concerning discovery scope, DNS-based discovery, referrals, identity boundaries, authority, freshness, privacy, and enumeration.</t>
      <t>Earlier Project NANDA work explored a broader global-switchboard model. This revision intentionally narrows the protocol contribution to resolution of Known Subjects without usable DNS Discovery Anchors.</t>
    </section>
  </back>
</rfc>
