Skip to content

Cross-chain DID interoperability: name-service methods (did:ens ↔ did:sns) - Visibility Only #680

@chongkan

Description

@chongkan

Summary

Opened a cross-chain interoperability proposal at veramolabs/did-ens-spec#10 to explore bridging did:ens (Ethereum Name Service) and did:sns (Solana Name Service).

Both methods share the same core pattern — human-readable domain name → W3C DID Document — but resolve through different registries (ENS TEXT records vs. Solana PDA accounts).

SNS Executive Summary, why this matters? - https://github.com/Attestto-com/did-sns-spec/blob/main/did-sns/executive-summary.md

Overlaps

  • Both resolve human-readable names (.eth / .sol) to W3C-compliant DID Documents
  • Both are blockchain-anchored with decentralized persistence
  • Both derive a default verification method from the on-chain owner/controller
  • Both support custom service endpoints in the DID Document
  • DID syntax follows the same shape: did:<method>[:network]:<name>

Gaps

Area did:sns did:ens
CRUD protocol Fully specified (§5.1–5.4) Defers to ENS docs, no DID-specific protocol
Key types Ed25519, secp256k1, ML-DSA-44 (post-quantum) secp256k1 only
Key rotation Explicit update operation Implicit via ownership transfer
Privacy No PII on-chain, SD-JWT, pairwise DIDs Warns .eth names leak identity + tx history
Multi-sig Controller threshold signing Not specified
Verifiable Credentials SD-JWT, vLEI, eIDAS/FATF Not addressed
Encrypted messaging DIDComm v2 Not addressed
Spec maturity v1.0, 22/22 W3C requirements v0.1.1 WIP, production use discouraged

Proposed interop steps (detailed in veramolabs/did-ens-spec#10)

  1. alsoKnownAs bidirectional linking — cross-chain identity binding (DID Core §3.1)
  2. Shared service endpoint typesDIDCommMessaging, CredentialExchange, LinkedDomains
  3. Cross-chain resolution — unified resolver following alsoKnownAs with bidirectional verification
  4. Verification method alignment — document accepted key types for cross-chain VP verification

Related

  • veramolabs/did-ens-spec#10 — Detailed proposal and gap analysis
  • #677 — Onboarding guides + explorer (includes method comparison tooling)
  • #676 — Onboarding and ecosystem documentation

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions