Skip to content

W3C DID Interoperability with ATP Agent Identity #2

@MoltyCel

Description

@MoltyCel

Interesting spec — the Agent Trust Protocol addresses many of the same challenges we're working on: persistent agent identity, on-chain reputation, verifiable credentials, and privacy-preserving disclosure. A few thoughts and questions on identity interoperability.

Question: W3C DIDs as an additional identity layer?

ATP currently uses ICP Principal IDs (Ed25519 for agents, Passkeys for humans) as the universal identifier (ai_id). Have you considered supporting W3C Decentralized Identifiers (DIDs) as an alternative or additional identity layer?

DIDs would offer:

  • Cross-chain portability — not tied to a single blockchain runtime. An agent identity could resolve across ICP, EVM, and other networks.
  • Existing resolver infrastructuredid:web, did:key, did:ethr, did:icp (if one emerges), etc. This means ATP identities could be discoverable outside the ICP ecosystem without custom integrations.
  • Alignment with W3C Verifiable Credentials — ATP's Kind 2 (Identity Verification) and Kind 15 (General Attestation) map naturally to the VC data model. Using DIDs as the subject/issuer would make these credentials interoperable with the broader VC ecosystem out of the box.

A lightweight approach could be a did field in Kind 1 (Identity Profile) that maps a Principal ID to a DID, without changing the core signing model.

Interoperability context

We're building MolTrust, an agent trust and reputation system that uses W3C DIDs + ERC-8004 on Base (EVM). The trust primitives are similar to ATP's — identity, reputation scoring, verifiable credentials — but on a different chain.

The overlap is notable:

Concept ATP MolTrust
Agent identity ICP Principal ID W3C DID (did:moltrust:*)
On-chain registry Root Identity Canister ERC-8004 IdentityRegistry (Base)
Reputation Kind 14 (Review, 1-100) Trust score (0-100) + on-chain feedback
Credentials Kind 2 / Kind 15 (Attestations) Verifiable Credentials (W3C VC)

A shared DID layer could allow agents to hold both an ATP identity and an EVM identity, with cross-references between them.

ZK + DIDs

ATP's mention of ZK proofs for selective identity disclosure (Section 4.1) aligns well with emerging DID-based ZK credential standards (e.g., BBS+ signatures for selective disclosure). This could be a shared research area — the privacy goals are the same regardless of the underlying chain.


Genuinely curious about the design rationale for Principal IDs over DIDs. Was it primarily for tighter ICP integration, or were there other considerations?

References:

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions