<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.43 (Ruby 3.3.6) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>


<rfc ipr="trust200902" docName="draft-sweeney-wimse-credential-delegation-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="Credential Delegation for AI Agents">Credential Delegation Protocol for AI Agents in Multi-System Environments</title>

    <author initials="K." surname="Sweeney" fullname="Kieran Sweeney">
      <organization></organization>
      <address>
        <email>kieran@kierans.net</email>
      </address>
    </author>

    <date year="2026" month="October" day="13"/>

    <area>sec</area>
    <workgroup>WIMSE</workgroup>
    <keyword>AI agents</keyword> <keyword>delegation</keyword> <keyword>OAuth</keyword> <keyword>WIMSE</keyword> <keyword>capability</keyword>

    <abstract>


<?line 241?>

<t>Autonomous AI agents increasingly require access to protected resources across multiple service providers on behalf of human users. Existing OAuth 2.0 extensions address individual aspects of this problem (token exchange, proof-of-possession, and structured authorization) but no current specification defines how these mechanisms compose into a coherent credential delegation framework for AI agents.</t>

<t>This document specifies the Credential Delegation Protocol: a profile of OAuth 2.0 Token Exchange (RFC 8693), Demonstrating Proof-of-Possession (RFC 9449), Rich Authorization Requests (RFC 9396), and Client-Initiated Backchannel Authentication (OpenID Connect CIBA) that enables human users to delegate scoped, attenuated credentials to AI agents operating across heterogeneous service providers.</t>

<t>The protocol defines: agent identity lifecycle management using ephemeral key pairs; capability-shaped delegation tokens bound to specific operations and resources; credential wrapping semantics that prevent exposure of underlying OAuth tokens to agents; consent-gated delegation flows for asynchronous agents; real-time cascading revocation; and tamper-evident audit chains.</t>

<t>This document does not define new token formats, new OAuth grant types, or modifications to existing authorization server behavior. It specifies how existing mechanisms are combined to achieve secure, auditable credential delegation for AI agents.</t>



    </abstract>

    <note title="About This Document" removeInRFC="true">
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-sweeney-wimse-credential-delegation/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        Workload Identity in Multi System Environments (WIMSE) Working Group mailing list (<eref target="mailto:wimse@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/wimse/"/>.
        Subscribe at <eref target="https://www.ietf.org/mailman/listinfo/wimse/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/cred-ninja/protocol"/>.</t>
    </note>


  </front>

  <middle>


<?line 251?>

<section anchor="introduction"><name>Introduction</name>

<section anchor="problem-statement"><name>Problem Statement</name>

<t>OAuth 2.0 <xref target="RFC6749"/> solved human-to-service authorization. When a user authorizes an application to act on their behalf, the application receives an access token representing that delegation. This model assumes a human present at a browser for the consent ceremony.</t>

<t>AI agents operate autonomously. They are ephemeral (spawned on demand), numerous (many agents per user per service), and adversarially promptable: a compromised prompt can direct an agent to misuse any credential it holds. Existing standards fail the agent delegation use case in seven specific ways:</t>

<t><list style="numbers" type="1">
  <t><strong>No agent identity primitive.</strong> OAuth clients require pre-registration. Agents are ephemeral and cannot register at instantiation time. SPIFFE requires admin provisioning. No standard defines bootstrapping an agent identity from nothing.</t>
  <t><strong>No delegation chain attenuation.</strong> When Agent A sub-delegates to Agent B, existing standards do not enforce that authority can only narrow. RFC 8693 records delegation chains via nested <spanx style="verb">act</spanx> claims but treats them as "informational only": no enforcement, no structural guarantee. The delegation chain splicing vulnerability (disclosed to the OAuth WG mailing list, February 26, 2026 <xref target="OAUTH-SPLICING"/>) demonstrates that Sections 2.1-2.2 of <xref target="RFC8693"/> permit a compromised intermediary to present mismatched <spanx style="verb">subject_token</spanx> and <spanx style="verb">actor_token</spanx> from different delegation contexts, producing a properly-signed token asserting a delegation chain that never occurred.</t>
  <t><strong>No credential wrapping.</strong> Agents need to use credentials at resource servers that do not understand delegation. No standard defines how a delegation token authorizes credential exercise without exposing the raw credential to the agent.</t>
  <t><strong>No granular authorization.</strong> OAuth scopes are coarse string identifiers. Agents need resource- and operation-level capability binding: not "can access Google Drive" but "can read file X in folder Y until time T." RFC 9396 provides the structural mechanism but no agent-specific vocabulary or attenuation rules.</t>
  <t><strong>No synchronous revocation cascade.</strong> Revoking a root delegation must immediately invalidate all derived delegations. UCAN revocation is gossip-based. RFC 8693 explicitly defers revocation to implementations. No existing standard provides sub-second cascading revocation for a delegation tree.</t>
  <t><strong>No asynchronous consent.</strong> Agent-initiated flows require user approval without a redirect URI. CIBA <xref target="OIDC-CIBA"/> provides the mechanism but is not profiled for agent delegation scenarios, and CIBA + DPoP interaction is underspecified.</t>
  <t><strong>No delegation audit chain.</strong> No standard defines an immutable, portable audit trail for "Agent A used User B's credential C to perform operation D at time T via delegation chain E."</t>
</list></t>

<t>This document profiles existing standards to address all seven gaps.</t>

</section>
<section anchor="relationship-to-existing-work"><name>Relationship to Existing Work</name>

<t>The IETF landscape for agent authorization moved quickly during 2026. The OAuth Working Group was rechartered in June 2026 with agents acting on behalf of users explicitly in scope. The WIMSE Working Group held an interim meeting on June 3, 2026 dedicated to AI agent authentication and authorization and has since adopted that work as AIMS. Several dozen individual drafts now address some slice of agent identity or delegation. This section positions this protocol against the working group documents and the individual drafts closest to its mechanics. It is not a survey.</t>

<section anchor="frameworks-and-working-group-documents"><name>Frameworks and Working Group Documents</name>

<t><strong>draft-ietf-wimse-aims</strong> (<xref target="AIMS"/>): AI Identity Management System, a framework for AI agent authentication and authorization, adopted by WIMSE and published as draft-ietf-wimse-aims-00. The framework identifies the need for concrete delegation mechanics and defers them to OAuth flows. This document supplies those mechanics and is designed as a companion, not a replacement.</t>

<t><strong>draft-ietf-wimse-arch</strong> (<xref target="WIMSE-ARCH"/>): Defines the trust domain model and terminology assumed here for WIMSE deployments. The Delegation Server is a service within a trust domain, and Agent identities established per <xref target="agent-identity"/> are compatible with WIMSE workload identifiers.</t>

<t><strong>draft-ietf-wimse-wpt</strong> (<xref target="WIMSE-WPT"/>): Defines the Workload Proof Token (WPT), a proof-of-possession mechanism for workloads. This protocol binds Delegation Tokens with DPoP <xref target="RFC9449"/> instead: DTs are exercised over plain HTTP by ephemeral agents that may sit outside any WIMSE trust domain, the deployment shape DPoP already serves. A future revision may profile WPT for DS-to-resource-server hops inside WIMSE trust domains.</t>

<t><strong>draft-ni-wimse-ai-agent-identity</strong> (<xref target="WIMSE-AGENT"/>): Addresses agent identity within WIMSE. The did:key model used here is compatible. This document adds credential wrapping, revocation, consent gating, and chain verification.</t>

<t><strong>draft-reece-wimse-cross-org-delegation</strong> (<xref target="CROSS-ORG-REQS"/>): A problem statement and requirements catalogue for cross-organizational delegation, used on the WIMSE list as a common frame for evaluating delegation proposals. A future revision of this document will map the protocol against those requirements.</t>

</section>
<section anchor="delegation-chain-mechanics"><name>Delegation Chain Mechanics</name>

<t><strong>draft-ietf-oauth-identity-chaining</strong> (<xref target="OAUTH-CHAINING"/>): In the RFC Editor queue at -17. Chains identity and authorization across trust domains by exchanging a token in one domain for a JWT assertion accepted in another. It preserves identity across hops but does not constrain what each hop may do. This protocol adds structural attenuation and receipt-based chain verification on the same RFC 8693 substrate. The two compose.</t>

<t><strong>draft-niyikiza-oauth-attenuating-agent-tokens</strong> (<xref target="AAT"/>): Defines tokens a holder can attenuate offline, in the macaroon tradition. Same goal as <xref target="chain-integrity"/>, different trust model: AAT verification relies on the root issuer key and offline derivation, while this protocol keeps the Delegation Server in the loop at every hop in exchange for synchronous revocation (<xref target="revocation"/>) and server-checked strict-subset validation.</t>

<t><strong>draft-asor-wimse-agent-delegation-chain</strong> (<xref target="ASOR"/>): Defines an offline-verifiable Delegation Chain of RFC 9068 JWTs, each committing to its parent's signing input by hash, carrying authority as an RFC 9396 <spanx style="verb">agent_delegation</spanx> detail with a wildcard scope grammar and a typed constraint vocabulary (Section 4.2 of that draft), and verified by a deterministic algorithm with no call to an authorization server. This protocol is the server-side counterpart: the Delegation Server is in the loop at every hop and holds the credentials, so revocation is synchronous and aggregate budgets have a single writer, while a receipt chain verified offline still proves scope narrowing, depth, linkage, expiry ordering, and, with <xref target="constraint-ceilings"/>, ceiling narrowing. The two share the constraint vocabulary so that a chain minted by either can be checked by a verifier written for the other; Cred's reference implementation is run against the Asor interop vectors as part of its conformance suite and, at the time of writing, passes all twenty; <xref target="impl-status"/> states what those vectors do and do not cover.</t>

<t><strong>draft-gco-oauth-delegate-sd-jwt</strong> (<xref target="DELEGATE-SD-JWT"/>; the OAuth WG call for adoption closed on 12 October 2026, and the chairs had not announced the result at the time of writing): Delegates SD-JWT credentials holder-to-holder by allowing a Key Binding JWT to act as an SD-JWT. It operates at the credential format layer; this protocol operates at the delegation service layer. A DS could issue capability attestations as Delegate SD-JWTs without changing the mechanics defined here. Comments in the adoption call identified what the format layer leaves open: a delegate payload may add claims with no rule against widening a predecessor's, a delegation's lifetime is not bounded by its predecessor's, and depth and no-further-delegation limits are undefined. Those are the chain rules of <xref target="chain-integrity"/>, which a holder-signed profile would need to state in its own terms.</t>

<t><strong>draft-zhu-oauth-async-delegation</strong> (<xref target="ASYNC-DELEG"/>): Defines delegated refresh tokens so agents can act while the user is offline. This protocol answers the same need by keeping refresh tokens in the Credential Vault and giving agents only short-lived DTs. The two are alternative positions on whether agents may hold long-lived credentials at all.</t>

<t><strong>draft-oauth-ai-agents-on-behalf-of-user</strong> (<xref target="OBO-USER"/>; expired February 2026): Introduced <spanx style="verb">requested_actor</spanx> and <spanx style="verb">actor_token</spanx> parameters binding the acting agent into the authorization code exchange. That closes the same actor-binding weakness this protocol closes with <spanx style="verb">prf</spanx> receipts, but only for the first hop and only at the authorization server. See <xref target="splicing"/>.</t>

</section>
<section anchor="credential-intermediation"><name>Credential Intermediation</name>

<t><strong>draft-hartman-credential-broker-4-agents</strong> (<xref target="CB4A"/>; expired): Specifies a credential vaulting broker that mediates agent API access through short-lived, narrowly scoped proxy credentials. Architecturally the closest work to the Delegation Server and Credential Vault defined here. CB4A defines the broker; this document additionally defines the delegation chain (attenuation, receipts, sub-delegation), the consent flow, and the revocation cascade such a broker must enforce.</t>

<t><strong>draft-araut-oauth-transaction-tokens-for-agents</strong> (<xref target="TXN-AGENTS"/>): Extends transaction tokens to carry agent context in the <spanx style="verb">act</spanx> claim for intra-domain call chains. Complementary: transaction tokens propagate context within a domain after authorization exists; this protocol governs how the authorization comes to exist.</t>

<t><strong>draft-schwenkschuster-wimse-credential-exchange</strong> (<xref target="WIMSE-CRED-X"/>; expired): Despite the similar name, addresses a workload exchanging its own credential for a different format or trust domain. This document addresses human-to-agent delegation over stored credentials that are never issued to the requesting party.</t>

</section>
<section anchor="consent-mandates-and-audit-evidence"><name>Consent, Mandates, and Audit Evidence</name>

<t><strong>draft-yossif-agent-mandate-problem</strong> (<xref target="MANDATE-PS"/>): A problem statement on verifiable human mandates: intent authorized at one time, executed autonomously later. The consent records (<xref target="consent-flow"/>) and capability constraints defined here are a concrete answer to part of that problem space.</t>

<t><strong>draft-nelson-agent-delegation-receipts</strong> (<xref target="DELEG-RECEIPTS"/>): Defines a delegation receipt signed by the authorizing human principal's key, recording what an agent may do, for how long, and under what instructions, with scope attenuation rules for multi-agent chains and a revocation registry with cascade semantics. The <spanx style="verb">prf</spanx> receipts in <xref target="chain-integrity"/> are DS-signed and bind hops within a chain; Nelson's receipts are principal-signed and bind the principal's instruction to the agent's run. They answer different trust questions and can coexist.</t>

<t><strong>draft-nennemann-wimse-ect</strong> (<xref target="ECT"/>; expired): Execution Context Tokens define an audit record format. This protocol's audit chain is designed to be ECT-compatible.</t>

<t><strong>draft-goswami-agentic-jwt</strong> (<xref target="AGENTIC-JWT"/>): Proposes agent checksums and intent binding. The <spanx style="verb">agent_checksum</spanx> claim (<xref target="agent-authentication"/>) remains defined for compatibility, with no dependency taken. A US patent has been filed on the underlying mechanism; this specification avoids the patented specifics.</t>

</section>
</section>
<section anchor="design-principles"><name>Design Principles</name>

<t><strong>Compose, don't invent.</strong> Every mechanism reuses an existing standard. New concepts appear only where the gaps identified in <xref target="problem-statement"/> are confirmed.</t>

<t><strong>Attenuation is structural.</strong> Agents cannot widen authority at any delegation hop. This is enforced by the Delegation Server, not by trusting agents. Inspired by UCAN attenuation semantics and the object-capability model <xref target="MILLER-2006"/>.</t>

<t><strong>Credentials are never possessed.</strong> Agents receive and exercise delegated authority through the Delegation Server. Raw credentials never cross the boundary to the agent host. This architecturally eliminates the confused deputy attack surface for credential theft <xref target="CONFUSED-DEPUTY"/>.</t>

<t><strong>Revocation is synchronous.</strong> A user revoking delegation takes effect within the SLA defined in <xref target="revocation"/>. Eventual consistency is not acceptable for credential revocation in adversarially-promptable systems.</t>

<t><strong>Capability-shaped, not identity-scoped.</strong> Delegation tokens authorize specific operations on specific resources with specific constraints, not "Agent X can access Service Y." Follows the NORA (designation = authority) principle from capability security.</t>

<t><strong>Chain integrity is cryptographic.</strong> Each delegation hop produces a signed receipt. The chain is verifiable end-to-end without trusting intermediate agents, addressing the RFC 8693 delegation chain splicing vulnerability.</t>

</section>
</section>
<section anchor="terminology"><name>Terminology</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?>

<dl>
  <dt>Delegation Server (DS):</dt>
  <dd>
    <t>A service that issues, manages, and revokes Delegation Tokens on behalf of Subjects. The DS maintains the Credential Vault and enforces delegation policies. It acts as an intermediary between Agents and upstream OAuth authorization servers.</t>
  </dd>
  <dt>Agent:</dt>
  <dd>
    <t>An autonomous software entity that performs actions on behalf of a Subject across one or more service providers. An Agent authenticates to the DS using an ephemeral key pair and receives Delegation Tokens authorizing specific operations. An Agent <bcp14>MUST NOT</bcp14> possess or have access to the underlying credentials stored in the Credential Vault.</t>
  </dd>
  <dt>Subject:</dt>
  <dd>
    <t>The human user who authorizes credential delegation. The Subject authenticates to the DS, deposits credentials into the Credential Vault, defines delegation policies, and approves or denies consent-gated delegation requests.</t>
  </dd>
  <dt>Delegation Token (DT):</dt>
  <dd>
    <t>A signed JWT issued by the DS that authorizes an Agent to perform specified operations on specified resources via the DS. A DT contains capability claims structured per <xref target="RFC9396"/>, a DPoP key binding for proof-of-possession verification, and an opaque credential handle. Delegation Tokens <bcp14>MUST NOT</bcp14> contain raw OAuth tokens or credentials.</t>
  </dd>
  <dt>Credential Vault:</dt>
  <dd>
    <t>Server-side secure storage maintained by the DS that holds OAuth tokens and credentials deposited by Subjects. Credentials are referenced by opaque handles and exercised exclusively by the DS on behalf of Agents presenting valid Delegation Tokens.</t>
  </dd>
  <dt>Capability:</dt>
  <dd>
    <t>A structured authorization grant specifying a permitted operation, a target resource, and optional constraints (time bounds, rate limits, argument restrictions). Expressed using the <spanx style="verb">authorization_details</spanx> object defined in <xref target="RFC9396"/> and bound to a specific Delegation Token.</t>
  </dd>
  <dt>Attenuation:</dt>
  <dd>
    <t>The process by which a Capability is further constrained when delegated from one entity to another. An attenuated Capability <bcp14>MUST</bcp14> be a strict subset of its parent. Authority can only narrow at each delegation hop; it can never widen.</t>
  </dd>
  <dt>Delegation Chain:</dt>
  <dd>
    <t>An ordered sequence of Delegation Tokens from Subject to Agent_1 to Agent_2 ... to Agent_N, where each link attenuates the authority of the previous. The chain is verifiable from any link back to the root consent event via signed delegation receipts.</t>
  </dd>
  <dt>Credential Exercise:</dt>
  <dd>
    <t>The act of the DS using a stored credential on behalf of an Agent. The Agent presents a valid DT and DPoP proof to the DS, which validates the DT, retrieves the credential from the Vault, calls the resource server, and returns only the API response.</t>
  </dd>
</dl>

</section>
<section anchor="architecture-overview"><name>Architecture Overview</name>

<figure title="Protocol Architecture" anchor="arch-figure"><artwork><![CDATA[
+------------------------------------------------------+
|                    SUBJECT (User)                    |
|  1. Connects services (OAuth)                        |
|  2. Sets delegation policies                         |
|  3. Approves consent requests (CIBA)                 |
+--------------------------+---------------------------+
                           |
                           v
+------------------------------------------------------+
|              DELEGATION SERVER (DS)                  |
|                                                      |
|  +-------------+  +------------+  +--------------+   |
|  | Credential  |  | Delegation |  |   Consent    |   |
|  |   Vault     |  |   Engine   |  |   Manager    |   |
|  |             |  |            |  |   (CIBA)     |   |
|  | OAuth tokens|  | DT issue   |  |              |   |
|  | API keys    |  | Attenuation|  | Approve/Deny |   |
|  | Refresh tkns|  | Chain vrfy |  | Policy eval  |   |
|  +------+------+  +------------+  +--------------+   |
|         |                                            |
|  +------+---------------------------------------+    |
|  |               Exercise Proxy                 |    |
|  |  Validates DT -> Retrieves cred -> Calls RS  |    |
|  |  Returns API response (never raw credential) |    |
|  +----------------------------------------------+    |
|                                                      |
|  +----------------------------------------------+    |
|  |           Revocation & Audit                 |    |
|  |  Synchronous cascade | Tamper-evident log    |    |
|  +----------------------------------------------+    |
+--------------------------+---------------------------+
                           |
                           v
+------------------------------------------------------+
|                      AGENT                           |
|                                                      |
|  1. Generates ephemeral did:key                      |
|  2. Authenticates via JWT Bearer (RFC 7523)          |
|  3. Requests delegation (capabilities + constraints) |
|  4. Receives DT (DPoP-bound, capability-shaped)      |
|  5. Exercises credentials via DS /exercise endpoint  |
|  6. Sub-delegates via attenuation (optional)         |
|                                                      |
|  TRUST BOUNDARY: Agent sees DT + API responses only  |
|  Agent NEVER sees: raw tokens, refresh tokens, keys  |
+------------------------------------------------------+
]]></artwork></figure>

<t><strong>Critical architectural property:</strong> The Agent's trust boundary extends only to the network interface of the Delegation Server. The Agent never crosses into the Vault. This eliminates credential theft as an attack surface: there is nothing for a compromised agent to exfiltrate.</t>

<section anchor="protocol-version-negotiation"><name>Protocol Version Negotiation</name>

<t>The canonical protocol version for this draft is <spanx style="verb">0.1.0</spanx>.</t>

<t>HTTP protocol clients <bcp14>MUST</bcp14> advertise the highest Cred Protocol version they support for a request using the <spanx style="verb">Cred-Protocol-Version</spanx> request header. The header value <bcp14>MUST</bcp14> be a single semantic-version string in <spanx style="verb">MAJOR.MINOR.PATCH</spanx> form. Delegation Servers <bcp14>MUST</bcp14> set <spanx style="verb">Cred-Protocol-Version</spanx> on every protocol response, including error responses, to the version selected by the server for that response.</t>

<t>Each implementation <bcp14>MUST</bcp14> maintain:</t>

<t><list style="symbols">
  <t>a supported-version set, ordered from newest to oldest</t>
  <t>a configured version floor, below which requests are rejected</t>
</list></t>

<t>For this draft, the supported-version set is <spanx style="verb">["0.1.0"]</spanx> and the default version floor is <spanx style="verb">0.1.0</spanx>.</t>

<t>A Delegation Server <bcp14>MUST</bcp14> reject a request that advertises a version lower than the configured floor or a version outside the supported-version set. The server <bcp14>MUST</bcp14> return HTTP 426 with a JSON body containing:</t>

<figure><sourcecode type="json"><![CDATA[
{
  "error": "protocol_version_unsupported",
  "message": "Cred Protocol version 0.0.9 is not supported",
  "requested_version": "0.0.9",
  "supported_versions": ["0.1.0"],
  "minimum_version": "0.1.0",
  "current_version": "0.1.0"
}
]]></sourcecode></figure>

<t>The response <bcp14>MUST</bcp14> also include <spanx style="verb">Cred-Protocol-Version</spanx> set to the server's current version so clients can distinguish protocol drift from authentication, authorization, or policy failures.</t>

<t>During the <spanx style="verb">0.1.0</spanx> compatibility window, a missing <spanx style="verb">Cred-Protocol-Version</spanx> request header <bcp14>MAY</bcp14> be treated as <spanx style="verb">0.1.0</spanx>. This allowance exists only because there is no earlier wire version to downgrade to. Implementations that raise the version floor above <spanx style="verb">0.1.0</spanx> <bcp14>MUST</bcp14> reject missing protocol-version headers with <spanx style="verb">protocol_version_unsupported</spanx>.</t>

</section>
</section>
<section anchor="agent-identity"><name>Agent Identity</name>

<section anchor="ephemeral-key-pairs"><name>Ephemeral Key Pairs</name>

<t>An Agent <bcp14>MUST</bcp14> generate an Ed25519 or P-256 key pair at instantiation. The DID is derived deterministically from the public key using the <spanx style="verb">did:key</spanx> method <xref target="DID-KEY"/>, a DID method conforming to <xref target="DID-CORE"/>. No pre-registration is required. The DS <bcp14>MUST NOT</bcp14> reject a DID it has not seen before.</t>

</section>
<section anchor="agent-authentication"><name>Agent Authentication</name>

<t>The Agent authenticates to the DS using a JWT Bearer assertion <xref target="RFC7523"/> signed with the private key corresponding to its <spanx style="verb">did:key</spanx>. Required claims:</t>

<texttable title="Required authentication claims">
      <ttcol align='left'>Claim</ttcol>
      <ttcol align='left'>Value</ttcol>
      <ttcol align='left'>Notes</ttcol>
      <c><spanx style="verb">iss</spanx></c>
      <c>Agent DID</c>
      <c><spanx style="verb">did:key:z...</spanx></c>
      <c><spanx style="verb">sub</spanx></c>
      <c>Agent DID</c>
      <c>Same as <spanx style="verb">iss</spanx></c>
      <c><spanx style="verb">aud</spanx></c>
      <c>DS endpoint URL</c>
      <c>&#160;</c>
      <c><spanx style="verb">iat</spanx></c>
      <c>Current time</c>
      <c>&#160;</c>
      <c><spanx style="verb">exp</spanx></c>
      <c>iat + max 300s</c>
      <c>5-minute maximum</c>
      <c><spanx style="verb">jti</spanx></c>
      <c>Unique nonce</c>
      <c>Prevents replay</c>
</texttable>

<t>Optional claims:</t>

<texttable title="Optional authentication claims">
      <ttcol align='left'>Claim</ttcol>
      <ttcol align='left'>Value</ttcol>
      <ttcol align='left'>Notes</ttcol>
      <c><spanx style="verb">agent_model</spanx></c>
      <c>Model identifier</c>
      <c>Vendor-prefixed, e.g., <spanx style="verb">"vendor:model-id"</spanx></c>
      <c><spanx style="verb">agent_operator</spanx></c>
      <c>Operator DID or URL</c>
      <c>Organization running the agent</c>
      <c><spanx style="verb">agent_checksum</spanx></c>
      <c>SHA-256 hash</c>
      <c>Intent binding per <xref target="AGENTIC-JWT"/>; advisory only due to IPR</c>
</texttable>

</section>
<section anchor="agent-lifecycle"><name>Agent Lifecycle</name>

<t>Agents <bcp14>SHOULD</bcp14> generate a new key pair per session. The DS <bcp14>MAY</bcp14> require Subject pre-authorization of specific agent DIDs or agent operators before issuing Delegation Tokens. When an agent terminates, the DS <bcp14>SHOULD</bcp14> invalidate any active Delegation Tokens bound to that agent's DPoP key within the revocation SLA.</t>

</section>
<section anchor="wag-composition"><name>Workload Authorization Grant Composition</name>

<t>Workload Authorization Grant <xref target="WAG"/> supplies the provisioning layer: a platform-signed RFC 7523 grant identifies a workload to an authorization server that trusts the platform. Its on-behalf-of delegation composition slot is addressed by this document's subject consent, capability attenuation, and signed delegation receipts; WAG does not supply those properties itself.</t>

<t>A WAG assertion is presented to an authorization server's token endpoint, not to the DS. A WAG-provisioned workload therefore authenticates to the DS as any other Agent, per <xref target="agent-authentication"/>, and <spanx style="verb">act.sub</spanx> in its Delegation Tokens remains the Agent DID. The WAG Agent Identifier is source identity evidence about that Agent, not a replacement for its DID. When a deployment links the two, the DS records in the delegation receipt (<xref target="chain-integrity"/>) the WAG assertion's issuer, the Agent Identifier, and, where several Platforms share one issuer identifier, the registration-distinguishing claim name and value described in Section 6.3 of draft-carleton-workload-authz-grant-01. Section 6.1 of that draft requires <spanx style="verb">sub</spanx> and <spanx style="verb">jti</spanx> to be interpreted only within the matched Platform registration, so the DS <bcp14>MUST NOT</bcp14> equate bare Agent Identifiers from different registrations, and a downstream verifier <bcp14>MUST</bcp14> have a trusted mapping from the recorded issuer and registration context to the actor identity; a platform-local identifier is not globally resolvable. A deployment that surfaces the WAG identity inside a token <bcp14>MAY</bcp14> carry it as <spanx style="verb">iss</spanx> and <spanx style="verb">sub</spanx> members of <spanx style="verb">act</spanx>, which RFC 8693 Section 4.1 allows for identifying an actor, while the outer <spanx style="verb">sub</spanx> remains the delegated principal.</t>

<t>The WAG assertion is a bearer credential, and WAG leaves proof of possession open (Section 8 of that draft). The DS <bcp14>MUST NOT</bcp14> treat WAG-asserted identity as proof that the presenting party controls the workload's key; sender constraint comes from the Delegation Token's DPoP binding (<xref target="agent-authentication"/>). WAG actor identity <bcp14>MUST NOT</bcp14> be treated as user consent or as permission to re-delegate.</t>

</section>
</section>
<section anchor="delegation-token-format"><name>Delegation Token Format</name>

<t>A Delegation Token is a DPoP-bound JWT <xref target="RFC9449"/> issued by the Delegation Server.</t>

<section anchor="required-claims"><name>Required Claims</name>

<texttable title="Required Delegation Token claims">
      <ttcol align='left'>Claim</ttcol>
      <ttcol align='left'>Value</ttcol>
      <ttcol align='left'>Specification</ttcol>
      <c><spanx style="verb">iss</spanx></c>
      <c>DS identifier</c>
      <c>&#160;</c>
      <c><spanx style="verb">sub</spanx></c>
      <c>Subject identifier</c>
      <c>User on whose behalf delegation occurs</c>
      <c><spanx style="verb">client_id</spanx></c>
      <c>Agent DID</c>
      <c>Acting agent, per <xref target="RFC9068"/> Section 2.2 and <xref target="AIMS"/> Section 10.3</c>
      <c><spanx style="verb">act</spanx></c>
      <c><spanx style="verb">{"sub": "&lt;Agent DID&gt;"}</spanx></c>
      <c>Current actor plus prior-actor history, per RFC 8693, Section 4.1</c>
      <c><spanx style="verb">authorization_details</spanx></c>
      <c>Capability array</c>
      <c>Per RFC 9396</c>
      <c><spanx style="verb">constraints</spanx></c>
      <c>Ceiling array</c>
      <c>Per-key ceilings in the <xref target="ASOR"/> Section 4.2 shape; see <xref target="constraint-ceilings"/>. <bcp14>OPTIONAL</bcp14> on a root token; <bcp14>REQUIRED</bcp14> on a child whose parent carries any</c>
      <c><spanx style="verb">cnf</spanx></c>
      <c><spanx style="verb">{"jkt": "&lt;DPoP thumbprint&gt;"}</spanx></c>
      <c>Per RFC 9449</c>
      <c><spanx style="verb">iat</spanx></c>
      <c>Issuance time</c>
      <c>&#160;</c>
      <c><spanx style="verb">exp</spanx></c>
      <c>Expiry time</c>
      <c>Max 1 hour; 15 minutes <bcp14>RECOMMENDED</bcp14></c>
      <c><spanx style="verb">jti</spanx></c>
      <c>Unique identifier</c>
      <c>&#160;</c>
      <c><spanx style="verb">consent_id</spanx></c>
      <c>Consent record ID</c>
      <c>Traceable to root consent event</c>
      <c><spanx style="verb">credential_handle</spanx></c>
      <c>Opaque string</c>
      <c>References Vault entry; <bcp14>MUST NOT</bcp14> be the credential itself</c>
</texttable>

<t><spanx style="verb">client_id</spanx> and <spanx style="verb">act.sub</spanx> name the same current actor. <spanx style="verb">client_id</spanx> follows the adopted AIMS Section 10.3 convention (acting agent in <spanx style="verb">client_id</spanx>, delegating principal in <spanx style="verb">sub</spanx>); <spanx style="verb">act</spanx> adds the RFC 8693 history trail so a verifier can tell the current actor from prior actors without a second claim set. The two <bcp14>MUST</bcp14> agree; a token in which they differ is malformed.</t>

</section>
<section anchor="capability-structure"><name>Capability Structure</name>

<t>Capabilities are expressed as RFC 9396 <spanx style="verb">authorization_details</spanx> objects:</t>

<figure><sourcecode type="json"><![CDATA[
{
  "type": "cred_delegation",
  "provider": "google",
  "operations": ["drive.files.get", "drive.files.list"],
  "resources": ["folder:abc123"],
  "expires": "2026-07-28T22:00:00Z"
}
]]></sourcecode></figure>

<t>The DS <bcp14>MUST</bcp14> validate that capabilities in a sub-delegation request are a subset of the parent DT's capabilities, equal or narrower, never wider. Validation is the DS's responsibility, not the requesting agent's.</t>

<t>Numeric and enumerated bounds on how a capability may be exercised are not part of the capability object. They are carried in the token's <spanx style="verb">constraints</spanx> claim (<xref target="constraint-ceilings"/>) so that a verifier holding only the chain can check that they narrow hop by hop.</t>

</section>
<section anchor="constraint-ceilings"><name>Constraint Ceilings</name>

<t>A Delegation Token <bcp14>MAY</bcp14> carry a <spanx style="verb">constraints</spanx> claim: an array of objects, each with a <bcp14>REQUIRED</bcp14> <spanx style="verb">key</spanx> naming the constrained dimension and exactly one typed constraint value. The shape and the type vocabulary are those of Section 4.2 of <xref target="ASOR"/>, so that a Cred receipt chain and an Asor Delegation Chain can be checked by the same subsumption code:</t>

<t><list style="symbols">
  <t><spanx style="verb">max</spanx> (number): the quantity <bcp14>MUST NOT</bcp14> exceed it.</t>
  <t><spanx style="verb">min</spanx> (number): the quantity <bcp14>MUST NOT</bcp14> be less than it.</t>
  <t><spanx style="verb">one_of</spanx> (array): the value <bcp14>MUST</bcp14> be a member.</t>
  <t><spanx style="verb">not_one_of</spanx> (array): the value <bcp14>MUST NOT</bcp14> be a member.</t>
  <t><spanx style="verb">prefix</spanx> (string): the value <bcp14>MUST</bcp14> have it as a prefix.</t>
  <t><spanx style="verb">rank</spanx> (number or label): position in an ordered enumeration; the value's rank <bcp14>MUST NOT</bcp14> exceed the constraint's.</t>
</list></t>

<figure><sourcecode type="json"><![CDATA[
"constraints": [
  { "key": "max_rows", "max": 5000 },
  { "key": "region", "one_of": ["us", "eu"] },
  { "key": "egress", "rank": "none" }
]
]]></sourcecode></figure>

<t>Parsing is fail-closed. An entry with no type member, more than one, a type the DS does not recognize, a malformed value, or a <spanx style="verb">key</spanx> repeated within the array makes the whole claim malformed, and a token with a malformed <spanx style="verb">constraints</spanx> claim is invalid before any subsumption is evaluated. A verifier that encounters an unknown constraint type <bcp14>MUST</bcp14> treat the action as denied, never as unconstrained.</t>

<t>Subsumption follows Section 4.3 of <xref target="ASOR"/>: for every constraint in the parent, the child <bcp14>MUST</bcp14> carry a constraint under the same <spanx style="verb">key</spanx> and the same type whose admissible set is a subset of the parent's (<spanx style="verb">max</spanx> no greater, <spanx style="verb">min</spanx> no smaller, <spanx style="verb">one_of</spanx> a subset, <spanx style="verb">not_one_of</spanx> a superset, <spanx style="verb">prefix</spanx> extending the parent's prefix, <spanx style="verb">rank</spanx> no higher). A constraint present in the parent and absent from the child means the child is unbounded on that dimension, which is wider, and the DS <bcp14>MUST</bcp14> refuse to issue the child. The child <bcp14>MAY</bcp14> add constraints the parent does not carry. When a sub-delegation request omits <spanx style="verb">constraints</spanx>, the DS inherits the parent's ceilings into the child unchanged.</t>

<t>Labels used with <spanx style="verb">rank</spanx> have no ordering on the wire. <xref target="ASOR"/> names one example ordering (<spanx style="verb">egress</spanx>: <spanx style="verb">none</spanx> &lt; <spanx style="verb">internal</spanx> &lt; <spanx style="verb">any</spanx>) and its interop vectors depend on it, but neither the token nor the proposed constraint-types registry carries an ordering for a key. A DS <bcp14>MUST</bcp14> hold a registered ordering for every <spanx style="verb">rank</spanx> label it mints, and <bcp14>MUST</bcp14> reject a delegation request whose <spanx style="verb">rank</spanx> label it cannot order rather than issue a token no later hop can compare. A verifier that encounters a label with no registered ordering <bcp14>MUST</bcp14> fail closed. The ordering gap is raised with the <xref target="ASOR"/> author as input to that draft's next revision.</t>

<t>Ceilings in <spanx style="verb">constraints</spanx> bound each exercise of the capability and are checked offline by any holder of the chain. Lifetime aggregates, such as a count of calls measured across a delegation's whole life, are not expressible as a per-hop ceiling: two holders of the same chain cannot both decrement a counter correctly without a shared writer. The DS is that writer (<xref target="exercise-flow"/>); the <spanx style="verb">constraints</spanx> claim carries the bound, the DS does the debit.</t>

</section>
<section anchor="chain-integrity"><name>Delegation Chain Integrity</name>

<t>To address the delegation chain splicing vulnerability in Sections 2.1-2.2 of <xref target="RFC8693"/>, each delegation hop <bcp14>MUST</bcp14> produce a signed delegation receipt containing: the parent DT's <spanx style="verb">jti</spanx>, the child DT's <spanx style="verb">jti</spanx>, the delegating agent's DID, the receiving agent's DID, the root delegated subject (the outer <spanx style="verb">sub</spanx>), the attenuated capability set, and any source identity evidence recorded for the receiving agent (see <xref target="wag-composition"/>). The receipt is signed by the DS and included in the child DT as the <spanx style="verb">prf</spanx> claim (an array of receipt content identifiers). Chain verification traces <spanx style="verb">prf</spanx> links back to the root consent event.</t>

<t>At every hop, the DS <bcp14>MUST</bcp14> re-verify the parent token and its signed receipt chain, including issuer trust, signatures, expiry, DPoP binding, and revocation state, before issuing a child. It <bcp14>MUST</bcp14> establish that the delegator currently holds the authority being delegated and is allowed to delegate it. Signed provenance alone does not establish either condition. If a required authority or freshness check cannot be completed, the DS <bcp14>MUST NOT</bcp14> issue or exercise the child on the basis of that unresolved input.</t>

<t>Authority <bcp14>MUST</bcp14> narrow monotonically: the child's operations and resources <bcp14>MUST</bcp14> be contained in the parent's effective authority, and its constraint ceilings <bcp14>MUST</bcp14> subsume per <xref target="constraint-ceilings"/>. Containment is the per-hop admission check. Where independent policies constrain the same action, their intersection <bcp14>MUST</bcp14> be order-independent; an unrecognized or unevaluable constraint <bcp14>MUST NOT</bcp14> be silently discarded. A child's lifetime <bcp14>MUST NOT</bcp14> exceed the remaining lifetime of the parent or the applicable consent grant.</t>

<t>For this on-behalf-of delegation profile, each child <bcp14>MUST</bcp14> preserve the root delegated subject in outer <spanx style="verb">sub</spanx> and name the receiving, current actor in <spanx style="verb">act.sub</spanx>. Prior actors <bcp14>MAY</bcp14> be represented using nested <spanx style="verb">act</spanx> as defined in RFC 8693 Section 4.1. Nested actors provide historical attribution only and <bcp14>MUST NOT</bcp14> be used independently to authorize an action. The DS's signed receipts <bcp14>MUST</bcp14> bind the subject and current actor attribution to the parent and child token identifiers and the effective capability set. Actor attribution is attested per hop, not re-derived downstream: each hop's receipt records the <spanx style="verb">act</spanx> value the DS verified at that hop together with the time it was verified, and a verifier reconstructing the chain composes those attestations rather than inferring a prior hop's actor from a later token. The <spanx style="verb">act</spanx> claim is the attribution carrier, not proof of authority or a replacement for signed receipts.</t>

<t>The DS <bcp14>SHOULD</bcp14> keep, for each hop, an audit record distinct from the receipt that identifies the receipt links, the grant and policy inputs evaluated, their as-of times and validity horizons, the decision, and any failed or unresolved check with a reason. The shape of that record is deployment-defined; verifier-side companion work may standardize it. A verifier <bcp14>MUST</bcp14> have authenticated evidence sufficient to reconstruct the chain to root consent, including the per-hop authority narrowing and subject/actor bindings; raw upstream credentials need not be forwarded. A valid receipt chain does not establish that issuer standing or consent remains current. Required freshness and revocation checks remain separate from chain reconstruction.</t>

</section>
</section>
<section anchor="credential-wrapping"><name>Credential Wrapping</name>

<section anchor="exercise-flow"><name>Exercise Flow</name>

<t>The Agent presents a valid DT and DPoP proof to the DS's <spanx style="verb">/exercise</spanx> endpoint. The DS:</t>

<t><list style="numbers" type="1">
  <t>Validates the DT signature and expiry</t>
  <t>Verifies the DPoP binding (<spanx style="verb">htm</spanx>, <spanx style="verb">htu</spanx>, <spanx style="verb">nonce</spanx>)</t>
  <t>Checks that the requested operation is within the DT's <spanx style="verb">authorization_details</spanx></t>
  <t>Retrieves the credential from the Vault using the opaque <spanx style="verb">credential_handle</spanx></t>
  <t>Performs the authorized API call against the resource server using the stored credential</t>
  <t>Returns only the API response</t>
</list></t>

<t>The raw credential <bcp14>MUST NOT</bcp14> appear in any agent-facing response.</t>

</section>
<section anchor="proxy-semantics"><name>Proxy Semantics</name>

<t>For resource servers that accept standard OAuth Bearer tokens: the DS acts as a reverse proxy, performing the actual API call with the stored credential. The Agent's HTTP request to <spanx style="verb">/exercise</spanx> specifies the operation and parameters; the DS maps these to the upstream API call.</t>

</section>
<section anchor="native-resource-server-support-future"><name>Native Resource Server Support (Future)</name>

<t>For resource servers that natively support this protocol: the DS performs RFC 8693 token exchange, issuing a scoped access token containing the DT's <spanx style="verb">act</spanx> claim and <spanx style="verb">authorization_details</spanx> for direct presentation at the resource server. This eliminates the proxy step for participating services.</t>

</section>
</section>
<section anchor="revocation"><name>Revocation</name>

<t>When a Subject revokes a delegation (root or any subtree node), the DS <bcp14>MUST</bcp14>:</t>

<t><list style="numbers" type="1">
  <t>Invalidate the specified DT within <strong>1 second</strong></t>
  <t>Cascade revocation to all descendant DTs within <strong>5 seconds</strong></t>
  <t>Return HTTP 401 with <spanx style="verb">error: delegation_revoked</spanx> for any in-flight <spanx style="verb">/exercise</spanx> request using a revoked DT</t>
  <t>Write an immutable revocation event to the audit log with a <spanx style="verb">revocation_time</spanx> claim</t>
</list></t>

<t><strong>Revocation endpoint:</strong> <spanx style="verb">DELETE /delegation/{jti}</spanx></t>

<t>The response <bcp14>MUST</bcp14> include a <spanx style="verb">revoked_count</spanx> field indicating the number of tokens invalidated in the cascade.</t>

</section>
<section anchor="consent-flow"><name>Consent Flow</name>

<section anchor="ciba-derived-agent-consent"><name>CIBA-Derived Agent Consent</name>

<t>When an Agent requests a delegation that exceeds pre-authorized policies, the DS initiates a CIBA <xref target="OIDC-CIBA"/> backchannel authentication request to the Subject. The Subject approves or denies on their registered device. On approval, the DS issues the Delegation Token. The Agent polls or receives a push notification when the token is available.</t>

</section>
<section anchor="consent-records"><name>Consent Records</name>

<t>The DS <bcp14>MUST</bcp14> store an immutable record of each consent event, including: Subject identifier, Agent DID, capabilities granted, grant time, expiry, and the full delegation chain context at time of consent. Records <bcp14>MUST</bcp14> be retained for at least 90 days.</t>

</section>
<section anchor="re-consent-triggers"><name>Re-Consent Triggers</name>

<t>Consent <bcp14>MUST</bcp14> be re-requested when:</t>

<t><list style="numbers" type="1">
  <t>an Agent requests broader capabilities than previously granted</t>
  <t>the grant has expired</t>
  <t>the <spanx style="verb">agent_operator</spanx> claim changes</t>
  <t>a security event triggers policy re-evaluation</t>
</list></t>

</section>
</section>
<section anchor="impl-status"><name>Implementation Status</name>

<t>Note to the RFC Editor: please remove this section and the reference to <xref target="RFC7942"/> before publication.</t>

<t>This section records the status of known implementations of the protocol defined by this specification at the time of posting of this Internet-Draft, and is based on a proposal described in <xref target="RFC7942"/>. The description of implementations in this section is intended to assist the IETF in its decision processes in progressing drafts to RFCs. Please note that the listing of any individual implementation here does not imply endorsement by the IETF. Furthermore, no effort has been spent to verify the information presented here that was supplied by IETF contributors. This is not intended as, and must not be construed to be, a catalog of available implementations or their features. Readers are advised to note that other implementations may exist.</t>

<t>According to <xref target="RFC7942"/>, "this will allow reviewers and working groups to assign due consideration to documents that have the benefit of running code, which may serve as evidence of valuable experimentation and feedback that have made the implemented protocols more mature. It is up to the individual working groups to use this information as they see fit".</t>

<section anchor="cred-sdk"><name>Cred SDK</name>

<dl>
  <dt>Implementer:</dt>
  <dd>
    <t>Kieran Sweeney (author of this document)</t>
  </dd>
  <dt>Location:</dt>
  <dd>
    <t>https://github.com/cred-ninja/sdk, branch <spanx style="verb">main</spanx>, described here as of commit 09f9488 (2026-10-13)</t>
  </dd>
  <dt>License:</dt>
  <dd>
    <t>Apache-2.0</t>
  </dd>
  <dt>Language:</dt>
  <dd>
    <t>TypeScript (Node.js)</t>
  </dd>
  <dt>Maturity:</dt>
  <dd>
    <t>Experimental. The implementation follows the architecture of this document (a Delegation Server holding deposited credentials, sub-delegation with attenuation, exercise by proxy) but not yet its token, request, or proof-of-possession formats. It is not wire-compatible with this document.</t>
  </dd>
  <dt>Contact:</dt>
  <dd>
    <t>kieran@kierans.net</t>
  </dd>
</dl>

<t>Implemented:</t>

<t><list style="symbols">
  <t>Agent identity (<xref target="agent-identity"/>): Ed25519 key pairs and <spanx style="verb">did:key</spanx> identifiers. P-256 is not implemented.</t>
  <t>Protocol version negotiation (<xref target="protocol-version-negotiation"/>): the <spanx style="verb">Cred-Protocol-Version</spanx> header, version <spanx style="verb">0.1.0</spanx>, and HTTP 426 with <spanx style="verb">protocol_version_unsupported</spanx>.</t>
  <t>Credential wrapping (<xref target="exercise-flow"/>): provider tokens stay in the server's vault and the server makes the upstream call on the agent's behalf. A sub-delegated agent always receives a brokered handle, never a raw provider token.</t>
  <t>Sub-delegation with attenuation (<xref target="chain-integrity"/>): wildcard-aware scope containment, a per-permission depth limit, matching service, user, and application context across hops, and a child expiry bounded by the parent's.</t>
  <t>Constraint ceilings (<xref target="constraint-ceilings"/>): all six types, fail-closed parsing, subsumption per hop, inherit-on-omit, and <spanx style="verb">rank</spanx> labels resolved through a per-key ordering, with an unknown label rejected.</t>
  <t>Signed receipts: the server mints a compact Ed25519 JWS at each hop carrying <spanx style="verb">client_id</spanx> (the agent DID), a commitment to the parent (SHA-256 over the full compact parent receipt), and a signed lineage of ancestor DIDs. Offline chain verification checks signatures, linkage, depth, scope and ceiling subsumption, and expiry ordering. Receipt payloads are decoded as strict JSON: duplicate member names and integers outside the exact range of an IEEE 754 binary64 are rejected.</t>
  <t>Revocation (<xref target="revocation"/>): per-agent and per-connection revocation endpoints. Before minting a child, the server checks the revocation status of every ancestor named in the parent's signed lineage.</t>
  <t>Audit: an audit log of delegation, exercise, and revocation events.</t>
</list></t>

<t>Not implemented, or implemented differently:</t>

<t><list style="symbols">
  <t>Token exchange: delegation and sub-delegation use custom endpoints, not <xref target="RFC8693"/> token exchange.</t>
  <t>Proof of possession: no DPoP. Agents prove key possession with signed payloads and HTTP Message Signatures <xref target="RFC9421"/>.</t>
  <t>Capabilities: scope strings plus <spanx style="verb">constraints</spanx>, not <xref target="RFC9396"/> <spanx style="verb">authorization_details</spanx>.</t>
  <t>Agent authentication: opaque bearer tokens plus signed payloads, not an <xref target="RFC7523"/> assertion.</t>
  <t>Consent: a consent URL the user opens and the agent polls, not CIBA <xref target="OIDC-CIBA"/>.</t>
  <t>Token claims: receipts name the agent in both <spanx style="verb">sub</spanx> and <spanx style="verb">client_id</spanx>; the delegating principal is not yet in <spanx style="verb">sub</spanx>, and there is no <spanx style="verb">act</spanx> or <spanx style="verb">prf</spanx> claim. Moving the principal into <spanx style="verb">sub</spanx> is planned for the next wire version.</t>
  <t>Revocation interface and timing: no <spanx style="verb">DELETE /delegation/{jti}</spanx> endpoint or <spanx style="verb">revoked_count</spanx>, and the 1-second and 5-second bounds in <xref target="revocation"/> are not measured by tests.</t>
</list></t>

<t>Conformance results. The SDK's chain validation and sub-delegation checks were run against the twenty interop vectors published with <xref target="ASOR"/> (attenu-guard v0.9.0) and against four scope-class vectors proposed to that draft's author for its next revision. At commit 09f9488, all twenty and all four pass; four of the twenty pass with a rejection reason that the runner maps to the vector's reason name. The runner, vectors, and pinned results are at https://github.com/cred-ninja/protocol/tree/main/conformance/asor-delegation-chain. These vectors are chains of HS256 tokens in the <xref target="ASOR"/> format; the runner checks their signatures and parent hashes itself and maps their claims onto the SDK's hop model. They exercise the scope grammar, constraint subsumption, depth, linkage, expiry ordering, and strict JSON decoding that this document shares with <xref target="ASOR"/>. They do not test any token, receipt, or request format defined in this document.</t>

</section>
</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<section anchor="confused-deputy-mitigation"><name>Confused Deputy Mitigation</name>

<t>Capability-shaped tokens eliminate ambient authority. An adversarially-prompted agent cannot widen its own capabilities since attenuation is DS-enforced. OAuth access tokens are ambient authority: any code holding the token exercises its full scope. For adversarially-promptable agents, this is a structural exploit vector. Cred delegation tokens are operation-bound, resource-specific, and constraint-bearing, following the principle that designation should equal authority <xref target="CONFUSED-DEPUTY"/>.</t>

</section>
<section anchor="splicing"><name>Delegation Chain Splicing</name>

<t>The mandatory <spanx style="verb">prf</spanx> chain with DS-signed receipts addresses the vulnerability in Sections 2.1-2.2 of <xref target="RFC8693"/> disclosed to the OAuth WG on February 26, 2026 <xref target="OAUTH-SPLICING"/>. Each receipt cross-references parent and child DT <spanx style="verb">jti</spanx> values along with both agent DIDs, preventing presentation of tokens from mismatched delegation contexts. The <spanx style="verb">requested_actor</spanx>/<spanx style="verb">actor_token</spanx> binding proposed in <xref target="OBO-USER"/> mitigates the same class of attack at the authorization server for the first delegation hop; the <spanx style="verb">prf</spanx> chain extends equivalent protection across every subsequent hop (see <xref target="relationship-to-existing-work"/>). The two can compose: a DS can accept an actor-bound access token issued under <xref target="OBO-USER"/> as the credential it wraps, then produce <spanx style="verb">prf</spanx> receipts for every sub-delegation beyond that first hop.</t>

</section>
<section anchor="dpop-binding"><name>DPoP Binding</name>

<t>DPoP <xref target="RFC9449"/> prevents Delegation Token theft and replay by requiring cryptographic proof of private key possession on every <spanx style="verb">/exercise</spanx> request. The proof is bound to the <spanx style="verb">htm</spanx> (HTTP method) and <spanx style="verb">htu</spanx> (URI) of the specific request, preventing re-use across operations.</t>

</section>
<section anchor="prompt-injection-containment"><name>Prompt Injection Containment</name>

<t>Because credentials never reach the agent host, a successful prompt injection attack cannot exfiltrate credentials. The agent can only exercise capabilities already granted in its DT, and only via the DS <spanx style="verb">/exercise</spanx> endpoint. The blast radius of a compromised agent is bounded by its current DT's <spanx style="verb">authorization_details</spanx>.</t>

</section>
<section anchor="chain-depth-limits"><name>Chain Depth Limits</name>

<t>Implementations <bcp14>SHOULD</bcp14> enforce a maximum delegation chain depth of 5. Unbounded sub-delegation creates exponential revocation cascades and audit complexity.</t>

</section>
<section anchor="token-lifetime"><name>Token Lifetime</name>

<t>The default DT lifetime of 15 minutes limits the blast radius of any single token compromise. Implementations <bcp14>MUST NOT</bcp14> issue DTs with a lifetime exceeding 1 hour.</t>

</section>
<section anchor="model-identity-and-substitution"><name>Model Identity and Substitution</name>

<t>The <spanx style="verb">agent_model</spanx> and <spanx style="verb">agent_checksum</spanx> claims are self-asserted. A credential valid for an agent remains valid if the operator substitutes the underlying model, a threat class raised against the AIMS predecessor framework in March 2026. Verifying model identity requires attestation of the agent runtime and is out of scope for this document. Deployments that need it should treat these claims as advisory policy input, not proof, and look to remote attestation work in the RATS WG.</t>

</section>
</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>This document requests registration of:</t>

<t><list style="symbols">
  <t><spanx style="verb">cred_delegation</spanx> as an <spanx style="verb">authorization_details</spanx> type in the OAuth Authorization Server Metadata registry (per <xref target="RFC9396"/>)</t>
  <t><spanx style="verb">agent_model</spanx>, <spanx style="verb">agent_operator</spanx>, <spanx style="verb">consent_id</spanx>, <spanx style="verb">credential_handle</spanx>, <spanx style="verb">prf</spanx> as JWT claim names in the JSON Web Token Claims registry</t>
  <t><spanx style="verb">urn:ietf:params:oauth:grant-type:cred-delegation</spanx> as a URI in the OAuth Parameters registry</t>
</list></t>

</section>


  </middle>

  <back>


<references title='References' anchor="sec-combined-references">

    <references title='Normative References' anchor="sec-normative-references">



<reference anchor="RFC6749">
  <front>
    <title>The OAuth 2.0 Authorization Framework</title>
    <author fullname="D. Hardt" initials="D." role="editor" surname="Hardt"/>
    <date month="October" year="2012"/>
    <abstract>
      <t>The OAuth 2.0 authorization framework enables a third-party application to obtain limited access to an HTTP service, either on behalf of a resource owner by orchestrating an approval interaction between the resource owner and the HTTP service, or by allowing the third-party application to obtain access on its own behalf. This specification replaces and obsoletes the OAuth 1.0 protocol described in RFC 5849. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6749"/>
  <seriesInfo name="DOI" value="10.17487/RFC6749"/>
</reference>
<reference anchor="RFC8693">
  <front>
    <title>OAuth 2.0 Token Exchange</title>
    <author fullname="M. Jones" initials="M." surname="Jones"/>
    <author fullname="A. Nadalin" initials="A." surname="Nadalin"/>
    <author fullname="B. Campbell" initials="B." role="editor" surname="Campbell"/>
    <author fullname="J. Bradley" initials="J." surname="Bradley"/>
    <author fullname="C. Mortimore" initials="C." surname="Mortimore"/>
    <date month="January" year="2020"/>
    <abstract>
      <t>This specification defines a protocol for an HTTP- and JSON-based Security Token Service (STS) by defining how to request and obtain security tokens from OAuth 2.0 authorization servers, including security tokens employing impersonation and delegation.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8693"/>
  <seriesInfo name="DOI" value="10.17487/RFC8693"/>
</reference>
<reference anchor="RFC9068">
  <front>
    <title>JSON Web Token (JWT) Profile for OAuth 2.0 Access Tokens</title>
    <author fullname="V. Bertocci" initials="V." surname="Bertocci"/>
    <date month="October" year="2021"/>
    <abstract>
      <t>This specification defines a profile for issuing OAuth 2.0 access tokens in JSON Web Token (JWT) format. Authorization servers and resource servers from different vendors can leverage this profile to issue and consume access tokens in an interoperable manner.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9068"/>
  <seriesInfo name="DOI" value="10.17487/RFC9068"/>
</reference>
<reference anchor="RFC9449">
  <front>
    <title>OAuth 2.0 Demonstrating Proof of Possession (DPoP)</title>
    <author fullname="D. Fett" initials="D." surname="Fett"/>
    <author fullname="B. Campbell" initials="B." surname="Campbell"/>
    <author fullname="J. Bradley" initials="J." surname="Bradley"/>
    <author fullname="T. Lodderstedt" initials="T." surname="Lodderstedt"/>
    <author fullname="M. Jones" initials="M." surname="Jones"/>
    <author fullname="D. Waite" initials="D." surname="Waite"/>
    <date month="September" year="2023"/>
    <abstract>
      <t>This document describes a mechanism for sender-constraining OAuth 2.0 tokens via a proof-of-possession mechanism on the application level. This mechanism allows for the detection of replay attacks with access and refresh tokens.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9449"/>
  <seriesInfo name="DOI" value="10.17487/RFC9449"/>
</reference>
<reference anchor="RFC9396">
  <front>
    <title>OAuth 2.0 Rich Authorization Requests</title>
    <author fullname="T. Lodderstedt" initials="T." surname="Lodderstedt"/>
    <author fullname="J. Richer" initials="J." surname="Richer"/>
    <author fullname="B. Campbell" initials="B." surname="Campbell"/>
    <date month="May" year="2023"/>
    <abstract>
      <t>This document specifies a new parameter authorization_details that is used to carry fine-grained authorization data in OAuth messages.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9396"/>
  <seriesInfo name="DOI" value="10.17487/RFC9396"/>
</reference>
<reference anchor="RFC7523">
  <front>
    <title>JSON Web Token (JWT) Profile for OAuth 2.0 Client Authentication and Authorization Grants</title>
    <author fullname="M. Jones" initials="M." surname="Jones"/>
    <author fullname="B. Campbell" initials="B." surname="Campbell"/>
    <author fullname="C. Mortimore" initials="C." surname="Mortimore"/>
    <date month="May" year="2015"/>
    <abstract>
      <t>This specification defines the use of a JSON Web Token (JWT) Bearer Token as a means for requesting an OAuth 2.0 access token as well as for client authentication.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7523"/>
  <seriesInfo name="DOI" value="10.17487/RFC7523"/>
</reference>

<reference anchor="DID-CORE" target="https://www.w3.org/TR/did-core/">
  <front>
    <title>Decentralized Identifiers (DIDs) v1.0</title>
    <author initials="M." surname="Sporny">
      <organization></organization>
    </author>
    <author initials="D." surname="Longley">
      <organization></organization>
    </author>
    <author initials="D." surname="Chadwick">
      <organization></organization>
    </author>
    <date year="2022" month="July"/>
  </front>
  <seriesInfo name="W3C" value="Recommendation"/>
</reference>
<reference anchor="DID-KEY" target="https://w3c-ccg.github.io/did-method-key/">
  <front>
    <title>The did:key Method v0.7</title>
    <author initials="D." surname="Longley">
      <organization></organization>
    </author>
    <date />
  </front>
  <seriesInfo name="W3C" value="CCG Draft"/>
</reference>
<reference anchor="OIDC-CIBA" target="https://openid.net/specs/openid-client-initiated-backchannel-authentication-core-1_0.html">
  <front>
    <title>OpenID Connect Client-Initiated Backchannel Authentication Flow - Core 1.0</title>
    <author >
      <organization>OpenID Foundation</organization>
    </author>
    <date year="2021" month="September"/>
  </front>
</reference>


<reference anchor="RFC2119">
  <front>
    <title>Key words for use in RFCs to Indicate Requirement Levels</title>
    <author fullname="S. Bradner" initials="S." surname="Bradner"/>
    <date month="March" year="1997"/>
    <abstract>
      <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="2119"/>
  <seriesInfo name="DOI" value="10.17487/RFC2119"/>
</reference>
<reference anchor="RFC8174">
  <front>
    <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
    <author fullname="B. Leiba" initials="B." surname="Leiba"/>
    <date month="May" year="2017"/>
    <abstract>
      <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="8174"/>
  <seriesInfo name="DOI" value="10.17487/RFC8174"/>
</reference>



    </references>

    <references title='Informative References' anchor="sec-informative-references">



<reference anchor="RFC7942">
  <front>
    <title>Improving Awareness of Running Code: The Implementation Status Section</title>
    <author fullname="Y. Sheffer" initials="Y." surname="Sheffer"/>
    <author fullname="A. Farrel" initials="A." surname="Farrel"/>
    <date month="July" year="2016"/>
    <abstract>
      <t>This document describes a simple process that allows authors of Internet-Drafts to record the status of known implementations by including an Implementation Status section. This will allow reviewers and working groups to assign due consideration to documents that have the benefit of running code, which may serve as evidence of valuable experimentation and feedback that have made the implemented protocols more mature.</t>
      <t>This process is not mandatory. Authors of Internet-Drafts are encouraged to consider using the process for their documents, and working groups are invited to think about applying the process to all of their protocol specifications. This document obsoletes RFC 6982, advancing it to a Best Current Practice.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="205"/>
  <seriesInfo name="RFC" value="7942"/>
  <seriesInfo name="DOI" value="10.17487/RFC7942"/>
</reference>
<reference anchor="RFC9421">
  <front>
    <title>HTTP Message Signatures</title>
    <author fullname="A. Backman" initials="A." role="editor" surname="Backman"/>
    <author fullname="J. Richer" initials="J." role="editor" surname="Richer"/>
    <author fullname="M. Sporny" initials="M." surname="Sporny"/>
    <date month="February" year="2024"/>
    <abstract>
      <t>This document describes a mechanism for creating, encoding, and verifying digital signatures or message authentication codes over components of an HTTP message. This mechanism supports use cases where the full HTTP message may not be known to the signer and where the message may be transformed (e.g., by intermediaries) before reaching the verifier. This document also describes a means for requesting that a signature be applied to a subsequent HTTP message in an ongoing HTTP exchange.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="9421"/>
  <seriesInfo name="DOI" value="10.17487/RFC9421"/>
</reference>

<reference anchor="UCAN-SPEC" target="https://github.com/ucan-wg/delegation">
  <front>
    <title>UCAN Delegation</title>
    <author initials="B." surname="Zelenka">
      <organization></organization>
    </author>
    <date />
  </front>
<refcontent>RC v1.0</refcontent></reference>
<reference anchor="CONFUSED-DEPUTY" >
  <front>
    <title>The Confused Deputy (or Why Capabilities Might Have Been Invented)</title>
    <author initials="N." surname="Hardy">
      <organization></organization>
    </author>
    <date year="1988"/>
  </front>
<refcontent>ACM SIGOPS Operating Systems Review</refcontent></reference>
<reference anchor="MILLER-2006" >
  <front>
    <title>Robust Composition: Towards a Unified Approach to Access Control and Concurrency Control</title>
    <author initials="M. S." surname="Miller">
      <organization></organization>
    </author>
    <date year="2006"/>
  </front>
<refcontent>PhD thesis, Johns Hopkins University</refcontent></reference>
<reference anchor="WAG" target="https://datatracker.ietf.org/doc/draft-carleton-workload-authz-grant/">
  <front>
    <title>Workload Authorization Grant</title>
    <author initials="P." surname="Carleton" role="editor">
      <organization></organization>
    </author>
    <author initials="N." surname="Steele">
      <organization></organization>
    </author>
    <author initials="A." surname="Parecki">
      <organization></organization>
    </author>
    <author initials="A." surname="Schwenkschuster">
      <organization></organization>
    </author>
    <author initials="B." surname="Campbell">
      <organization></organization>
    </author>
    <date year="2026" month="September" day="22"/>
  </front>
<refcontent>Work in Progress, draft-carleton-workload-authz-grant-01</refcontent></reference>
<reference anchor="AIMS" target="https://datatracker.ietf.org/doc/draft-ietf-wimse-aims/">
  <front>
    <title>AI Identity Management System</title>
    <author initials="P." surname="Kasselman">
      <organization></organization>
    </author>
    <author initials="J." surname="Lombardo">
      <organization></organization>
    </author>
    <author initials="Y." surname="Rosomakho">
      <organization></organization>
    </author>
    <author initials="B." surname="Campbell">
      <organization></organization>
    </author>
    <author initials="N." surname="Steele">
      <organization></organization>
    </author>
    <author initials="A." surname="Parecki">
      <organization></organization>
    </author>
    <date year="2026" month="September" day="15"/>
  </front>
<refcontent>Work in Progress, draft-ietf-wimse-aims-00</refcontent></reference>
<reference anchor="OAUTH-CHAINING" target="https://datatracker.ietf.org/doc/draft-ietf-oauth-identity-chaining/">
  <front>
    <title>OAuth Identity and Authorization Chaining Across Domains</title>
    <author >
      <organization>IETF OAuth Working Group</organization>
    </author>
    <date year="2026" month="August"/>
  </front>
<refcontent>Work in Progress, draft-ietf-oauth-identity-chaining-17, in the RFC Editor queue</refcontent></reference>
<reference anchor="ASOR" target="https://datatracker.ietf.org/doc/draft-asor-wimse-agent-delegation-chain/">
  <front>
    <title>Verifiable Attenuated Delegation for AI Agent Chains</title>
    <author initials="R." surname="Asor">
      <organization></organization>
    </author>
    <date year="2026" month="September"/>
  </front>
<refcontent>Work in Progress, draft-asor-wimse-agent-delegation-chain-01</refcontent></reference>
<reference anchor="AAT" target="https://datatracker.ietf.org/doc/draft-niyikiza-oauth-attenuating-agent-tokens/">
  <front>
    <title>Attenuating Authorization Tokens for Agentic Delegation Chains</title>
    <author initials="N." surname="Aimable">
      <organization></organization>
    </author>
    <date year="2026" month="June"/>
  </front>
<refcontent>Work in Progress, draft-niyikiza-oauth-attenuating-agent-tokens-01</refcontent></reference>
<reference anchor="DELEGATE-SD-JWT" target="https://datatracker.ietf.org/doc/draft-gco-oauth-delegate-sd-jwt/">
  <front>
    <title>Delegate SD-JWT</title>
    <author initials="G." surname="Oliver">
      <organization></organization>
    </author>
    <date year="2026" month="April"/>
  </front>
<refcontent>Work in Progress, draft-gco-oauth-delegate-sd-jwt-00</refcontent></reference>
<reference anchor="ASYNC-DELEG" target="https://datatracker.ietf.org/doc/draft-zhu-oauth-async-delegation/">
  <front>
    <title>Delegated Refresh Tokens for OAuth 2.0 Token Exchange</title>
    <author initials="L." surname="Zhu">
      <organization></organization>
    </author>
    <date year="2026" month="August"/>
  </front>
<refcontent>Work in Progress, draft-zhu-oauth-async-delegation-05</refcontent></reference>
<reference anchor="CB4A" target="https://datatracker.ietf.org/doc/draft-hartman-credential-broker-4-agents/">
  <front>
    <title>Credential Broker for Agents (CB4A)</title>
    <author initials="K." surname="Hartman">
      <organization></organization>
    </author>
    <date year="2026" month="March"/>
  </front>
<refcontent>Work in Progress (expired), draft-hartman-credential-broker-4-agents-00</refcontent></reference>
<reference anchor="TXN-AGENTS" target="https://datatracker.ietf.org/doc/draft-araut-oauth-transaction-tokens-for-agents/">
  <front>
    <title>Transaction Tokens For Agents</title>
    <author initials="A." surname="Raut">
      <organization></organization>
    </author>
    <date year="2026" month="May"/>
  </front>
<refcontent>Work in Progress, draft-araut-oauth-transaction-tokens-for-agents-02</refcontent></reference>
<reference anchor="DELEG-RECEIPTS" target="https://datatracker.ietf.org/doc/draft-nelson-agent-delegation-receipts/">
  <front>
    <title>Agent Delegation Receipts</title>
    <author initials="R." surname="Nelson">
      <organization></organization>
    </author>
    <date year="2026" month="October"/>
  </front>
<refcontent>Work in Progress, draft-nelson-agent-delegation-receipts-13</refcontent></reference>
<reference anchor="CROSS-ORG-REQS" target="https://datatracker.ietf.org/doc/draft-reece-wimse-cross-org-delegation/">
  <front>
    <title>Cross-Organizational Delegation for Workload and Agent Identity: Problem Statement and Requirements</title>
    <author initials="M." surname="Reece">
      <organization></organization>
    </author>
    <date year="2026" month="August"/>
  </front>
<refcontent>Work in Progress, draft-reece-wimse-cross-org-delegation-02</refcontent></reference>
<reference anchor="MANDATE-PS" target="https://datatracker.ietf.org/doc/draft-yossif-agent-mandate-problem/">
  <front>
    <title>Problem Statement on Verifiable Human Mandates for Autonomous Agent Actions</title>
    <author initials="M." surname="Yossif">
      <organization></organization>
    </author>
    <date year="2026" month="July"/>
  </front>
<refcontent>Work in Progress, draft-yossif-agent-mandate-problem-00</refcontent></reference>
<reference anchor="OAUTH-SPLICING" target="https://mailarchive.ietf.org/arch/browse/oauth/">
  <front>
    <title>Security Consideration: Delegation Chain Splicing in RFC 8693 Token Exchange</title>
    <author >
      <organization>OAuth Working Group mailing list</organization>
    </author>
    <date year="2026" month="February"/>
  </front>
</reference>
<reference anchor="OBO-USER" target="https://datatracker.ietf.org/doc/draft-oauth-ai-agents-on-behalf-of-user/">
  <front>
    <title>OAuth 2.0 Extension: On-Behalf-Of User Authorization for AI Agents</title>
    <author initials="T." surname="Dissanayaka">
      <organization></organization>
    </author>
    <author initials="A." surname="Dissanayaka">
      <organization></organization>
    </author>
    <date year="2025" month="August"/>
  </front>
<refcontent>Work in Progress (expired), draft-oauth-ai-agents-on-behalf-of-user-02</refcontent></reference>
<reference anchor="WIMSE-ARCH" target="https://datatracker.ietf.org/doc/draft-ietf-wimse-arch/">
  <front>
    <title>Workload Identity in a Multi System Environment (WIMSE) Architecture</title>
    <author >
      <organization>IETF WIMSE Working Group</organization>
    </author>
    <date year="2026" month="July"/>
  </front>
<refcontent>Work in Progress, draft-ietf-wimse-arch-08</refcontent></reference>
<reference anchor="WIMSE-WPT" target="https://datatracker.ietf.org/doc/draft-ietf-wimse-wpt/">
  <front>
    <title>WIMSE Workload Proof Token</title>
    <author >
      <organization>IETF WIMSE Working Group</organization>
    </author>
    <date year="2026" month="August"/>
  </front>
<refcontent>Work in Progress, draft-ietf-wimse-wpt-02</refcontent></reference>
<reference anchor="WIMSE-AGENT" target="https://datatracker.ietf.org/doc/draft-ni-wimse-ai-agent-identity/">
  <front>
    <title>WIMSE Applicability for AI Agents</title>
    <author initials="Y." surname="Ni">
      <organization></organization>
    </author>
    <author initials="P." surname="Liu">
      <organization></organization>
    </author>
    <date year="2026" month="October"/>
  </front>
<refcontent>Work in Progress, draft-ni-wimse-ai-agent-identity-03</refcontent></reference>
<reference anchor="WIMSE-CRED-X" target="https://datatracker.ietf.org/doc/draft-schwenkschuster-wimse-credential-exchange/">
  <front>
    <title>WIMSE Credential Exchange</title>
    <author initials="A." surname="Schwenkschuster">
      <organization></organization>
    </author>
    <date year="2025" month="October"/>
  </front>
<refcontent>Work in Progress (expired), draft-schwenkschuster-wimse-credential-exchange-03</refcontent></reference>
<reference anchor="AGENTIC-JWT" target="https://datatracker.ietf.org/doc/draft-goswami-agentic-jwt/">
  <front>
    <title>Secure Intent Protocol: JWT Compatible Agentic Identity and Workflow Management</title>
    <author initials="A." surname="Goswami">
      <organization></organization>
    </author>
    <date year="2026" month="July"/>
  </front>
<refcontent>Work in Progress, draft-goswami-agentic-jwt-01</refcontent></reference>
<reference anchor="ECT" target="https://datatracker.ietf.org/doc/draft-nennemann-wimse-ect/">
  <front>
    <title>Execution Context Tokens for Distributed Agentic Workflows</title>
    <author initials="C." surname="Nennemann">
      <organization></organization>
    </author>
    <date year="2026" month="February"/>
  </front>
<refcontent>Work in Progress (expired), draft-nennemann-wimse-ect-00</refcontent></reference>
<reference anchor="OWASP-AGENTIC" target="https://owasp.org/">
  <front>
    <title>Top 10 for Agentic Applications v1.0</title>
    <author >
      <organization>OWASP</organization>
    </author>
    <date year="2025" month="December"/>
  </front>
</reference>
<reference anchor="NIST-AGENT-ID" target="https://www.nccoe.nist.gov/">
  <front>
    <title>Accelerating the Adoption of Software and AI Agent Identity and Authorization</title>
    <author >
      <organization>NIST NCCoE</organization>
    </author>
    <date year="2026" month="February"/>
  </front>
</reference>


    </references>

</references>


<?line 738?>

<section numbered="false" anchor="changes-from-00"><name>Changes from -00</name>

<t><list style="symbols">
  <t>Workload Authorization Grant composition (<xref target="wag-composition"/>): WAG-provisioned workloads authenticate per <xref target="agent-authentication"/>; <spanx style="verb">act.sub</spanx> stays the Agent DID; WAG identity travels as receipt identity evidence or as <spanx style="verb">act</spanx> <spanx style="verb">iss</spanx> and <spanx style="verb">sub</spanx>; WAG bearer status noted, proof of possession comes from the Delegation Token's DPoP binding.</t>
  <t>Delegation Token adds <spanx style="verb">client_id</spanx> naming the acting agent per <xref target="RFC9068"/> and <xref target="AIMS"/> Section 10.3, which <bcp14>MUST</bcp14> agree with <spanx style="verb">act.sub</spanx>.</t>
  <t>New <xref target="constraint-ceilings"/>: the <spanx style="verb">constraints</spanx> claim adopts the <xref target="ASOR"/> Section 4.2 vocabulary (<spanx style="verb">max</spanx>, <spanx style="verb">min</spanx>, <spanx style="verb">one_of</spanx>, <spanx style="verb">not_one_of</spanx>, <spanx style="verb">prefix</spanx>, <spanx style="verb">rank</spanx>) and Section 4.3 subsumption, fail-closed parsing, inherit-on-omit, and the rank-label ordering rule. Numeric ceilings leave the capability object. Lifetime aggregates stay DS-debited.</t>
  <t><xref target="chain-integrity"/>: per-hop re-verification of authority and freshness; monotonic narrowing stated as containment plus order-independent intersection; root subject preserved in <spanx style="verb">sub</spanx>, current actor in <spanx style="verb">act.sub</spanx>, prior actors as nested <spanx style="verb">act</spanx> for attribution only; actor attribution attested per hop with its as-of time; receipt content adds the root subject and identity evidence; a <bcp14>SHOULD</bcp14>-level per-hop audit record distinct from the receipt; sub-delegation subset rule reads equal or narrower.</t>
  <t>Related Work: <xref target="ASOR"/> added; AIMS and WAG references refreshed; Delegate SD-JWT paragraph notes the adoption call and the chain rules it leaves to this layer.</t>
  <t>New <xref target="impl-status"/> per <xref target="RFC7942"/>: what the open source SDK implements and does not, and what the <xref target="ASOR"/> interop vector results do and do not cover.</t>
  <t>Related Work and references refreshed against Datatracker on 2026-10-13: identity chaining is in the RFC Editor queue at -17; the Delegate SD-JWT adoption call has closed, result pending; newer revisions of the Nelson, Reece, Zhu, Raut, Ni, Goswami, and WPT drafts; CB4A and ECT noted as expired.</t>
  <t>References: <xref target="RFC9068"/> normative; <xref target="ASOR"/>, <xref target="RFC7942"/>, and <xref target="RFC9421"/> informative.</t>
</list></t>

</section>
<section numbered="false" anchor="acknowledgments"><name>Acknowledgments</name>

<t>The design of this protocol draws on UCAN attenuation semantics <xref target="UCAN-SPEC"/>, the object-capability literature, and ongoing work in the IETF WIMSE and OAuth working groups. Threat modeling was informed by <xref target="OWASP-AGENTIC"/> and <xref target="NIST-AGENT-ID"/>. Rafael Asor's delegation chain draft supplied the constraint vocabulary adopted in -01; Iman Schrock found the defect in the first scope-class proposal; Wes Jackson supplied the per-hop attestation framing in <xref target="chain-integrity"/>.</t>

</section>


  </back>

<!-- ##markdown-source:
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
7/uW63nqOhoqKZ+31iKgep3/B54/nxQN3gAA

-->

</rfc>

