DID Method Name: trustagent
Conformance Target: W3C DID Core v1.1 (Candidate Recommendation, March 2026)
Editors: TrustDID Foundation
The did:trustagent method is a decentralized identifier method designed specifically for autonomous AI agents. It extends W3C DID Core v1.1 with agent-specific lifecycle management, delegation chains, capability-based authorization, and KERI-inspired pre-rotation key management.
This specification conforms to W3C Decentralized Identifiers (DIDs) v1.1 [DID-CORE]. The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" are to be interpreted as described in [RFC2119].
did:trustagent:<network>:<agent-class>:<identifier>
Where:
trustagent-did = "did:trustagent:" network ":" agent-class ":" identifier
network = evm-network / keri-network / web-network
evm-network = "evm:" chain-id
keri-network = "keri"
web-network = "web:" domain
chain-id = 1*DIGIT
domain = 1*(ALPHA / DIGIT / "." / "-")
agent-class = "autonomous" / "delegated" / "ephemeral" / "org" / "human"
identifier = multibase-btc-encoded-public-key
| Class | Description | Typical Use |
|---|---|---|
autonomous | Self-governing AI agent with independent decision authority | Standalone agents, personal assistants |
delegated | Agent operating under delegation from a parent entity | Task-specific agents, sub-agents |
ephemeral | Short-lived agent instance with temporary identity | Session agents, one-time task runners |
org | Organizational identity that may delegate to agents | Companies, departments, teams |
human | Human controller identity (delegation chain root) | Agent owners, administrators |
| Network | Format | Ledger Backend |
|---|---|---|
| EVM | evm:<chain-id> | Ethereum, Polygon, Arbitrum, etc. |
| KERI | keri | Key Event Receipt Infrastructure (ledger-less) |
| Web | web:<domain> | HTTPS-based DID resolution |
did:trustagent:evm:1:human:z6MkpTHR8VNs5xhqzV43EYm1VNkKCX2i3s9WnHJA11Yi5GQa
did:trustagent:evm:137:delegated:z6Mkf5rGMoatrSj1f4CyvuHBeXJELe9RPdzo2PKGNCKVtZxP
did:trustagent:keri:autonomous:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK
did:trustagent:web:example.com:org:z6MkjchhfUsD6mmvni8mCdXHw216Xrm9bQe2xJfmm7M8Go8J
did:trustagent:evm:42161:ephemeral:z6MktempSession123abc
Every did:trustagent DID Document MUST include the following @context values:
"@context": [
"https://www.w3.org/ns/did/v1",
"https://w3id.org/security/suites/jws-2020/v1",
"https://trustdid.org/ns/agent/v1"
]
DID Documents MAY include a trustagent property containing agent-specific metadata:
| Property | Type | Required | Description |
|---|---|---|---|
agentClass | string | REQUIRED | One of: autonomous, delegated, ephemeral, org, human |
parentDID | string | OPTIONAL | DID of the parent entity (for delegated/ephemeral agents) |
delegationChainRoot | string | OPTIONAL | DID of the root human/org in the delegation chain |
delegationDepth | integer | OPTIONAL | Depth in delegation chain (0 = root) |
preRotationCommitment | string | OPTIONAL | Multibase-encoded hash of next public key |
lifecycle | string | REQUIRED | Current lifecycle state |
capabilities | array | OPTIONAL | List of granted capabilities |
created --> active --> suspended --> active (resume)
--> rotating --> active (rotated)
--> deactivated --> decommissioned
suspended --> deactivated --> decommissioned
| State | Description |
|---|---|
created | Identity created but not yet activated |
active | Fully operational identity |
suspended | Temporarily paused (reversible) |
rotating | Key rotation in progress |
deactivated | Permanently deactivated (reversible to decommissioned only) |
decommissioned | Permanently destroyed, all delegations revoked |
A delegated agent DID Document includes standard W3C DID properties (id, controller, verificationMethod, authentication, service) plus the trustagent extension block with fields such as agentClass, parentDID, delegationChainRoot, delegationDepth, preRotationCommitment, lifecycle, and capabilities.
{
"@context": ["https://www.w3.org/ns/did/v1", "..."],
"id": "did:trustagent:evm:137:delegated:z6Mkf5r...",
"controller": "did:trustagent:evm:137:org:z6Mkjchh...",
"verificationMethod": [{ "type": "Ed25519VerificationKey2020", ... }],
"authentication": ["...#auth-1"],
"service": [{ "type": "DIDCommMessaging", ... }],
"trustagent": {
"agentClass": "delegated",
"parentDID": "did:trustagent:evm:137:org:z6Mkjchh...",
"delegationDepth": 2,
"lifecycle": "active",
"capabilities": ["credential:issue", "payment:authorize:limit=1000"]
}
}
To create a new did:trustagent DID:
hash(nextPublicKey)trustagent extensionTrustDIDRegistry.createDID() with document hashhttps://<domain>/.well-known/did.jsonTo resolve a did:trustagent DID:
ResolutionResult containing the DID Document, resolution metadata, and document metadataTo update a did:trustagent DID Document:
deactivated on the ledgerhash(newPublicKey) == storedPreRotationCommitmentdecommissioned (irreversible)Human (depth 0) -> Organization (depth 1) -> Agent (depth 2) -> Sub-Agent (depth 3)
Maximum delegation depth: 10 (configurable per ecosystem).
Capabilities are expressed as structured tokens: resource:action[:constraint=value]
credential:issue - Can issue verifiable credentialspayment:authorize:limit=1000 - Can authorize payments up to 1000data:read:scope=public - Can read public data onlyA child agent's capabilities MUST be a subset of its parent's capabilities. Delegation MUST NOT escalate privileges.
Each delegation is recorded as a W3C Verifiable Credential with type AgentDelegationCredential, containing the delegated capabilities, delegation depth, and maximum allowed depth.
| Standard | Status | Integration |
|---|---|---|
| W3C DID Core v1.1 | Candidate Recommendation | Full compliance |
| W3C VC v2.0 | Recommendation | Delegation credentials, capability tokens |
| DIDComm v2.1 | DIF Approved | Agent-to-agent communication |
| SD-JWT (RFC 9901) | Internet Standard | Selective disclosure of agent attributes |
| OID4VC | Finalized | Credential issuance and presentation |
| KERI | DIF Specification | Pre-rotation key management |
| ToIP Framework | Active | Trust registry governance |
| NIST AI Agent Standards | Active Initiative | Federal alignment |
| AIS-1 | v0.1 Draft | Agent identity standard alignment |
| DIF MCP-I | Active WG | Agent delegation protocol |
| CSA Agentic AI IAM | Published | Zero-trust agent identity |