This reference documents the DID methods supported by the Resolver service. These methods can be used with Verifier configurations to establish trust in verifiable credentials.
Vidos supports multiple Decentralized Identifier (DID) methods that enable identity management across different platforms and technologies. Each method follows W3C DID specifications while offering unique characteristics for specific use cases.
This reference documents each supported DID method, its format, and implementation details. For implementation guidance, see the DID Integration Guide.
The following DID methods are available for identity resolution within the Vidos ecosystem:
Method | Foundation | Primary Use Case | Network Support | Resource Linking |
---|---|---|---|---|
did:cheqd | Cosmos | Identity with linked data | Mainnet, Testnet | Yes |
did:dht | Distributed Hash Table | Decentralized resolution | N/A | No |
did:ebsi | EBSI Blockchain | EU public services | EBSI Network | No |
did:ens | Ethereum Name Service | Domain-based identity | Ethereum | No |
did:ethr | Ethereum | Blockchain identity | Multiple Networks | No |
did:ion | Bitcoin (Sidetree) | High-throughput identity | Mainnet, Testnet | No |
did:jwk | JSON Web Key | Cryptographic identity | N/A | No |
did:key | Public Key | Self-contained identity | N/A | No |
did:oyd | Own Your Data | Self-sovereign identity | N/A | No |
did:pkh | Public Key Hash | Multi-chain identity | Multiple Networks | No |
did:plc | PLC Protocol | Self-sovereign identity | Centralized Directory | No |
did:polygonid | Polygon | Scalable identity | Mainnet, Mumbai | No |
did:web | Web Domain | Web-integrated identity | N/A | Yes |
did:cheqd
The cheqd DID method enables verifiable data exchange on the cheqd network with enhanced privacy features for user-centric identity management.
Built on the Cosmos blockchain, cheqd operates on both mainnet and testnet networks, enabling decentralized identity management without central authorities.
Use cheqd DIDs when you need decentralized identity with linked resources, especially in sectors requiring enhanced data protection and verifiability.
Where:
[network]
is optional (mainnet
or testnet
)<identifier>
is a UUID format stringresourceId
parameter links to associated resourcesdid:cheqd:testnet:b5d70adf-31ca-4662-aa10-d3a54cd8f06c?resourceId=5e16a3f9-7c6e-4b6b-8e28-20f56780ee25
did:cheqd:b5d70adf-31ca-4662-aa10-d3a54cd8f06c
did:cheqd:mainnet:b5d70adf-31ca-4662-aa10-d3a54cd8f06c
did:cheqd:testnet:b5d70adf-31ca-4662-aa10-d3a54cd8f06c
did:ebsi
The EBSI DID method provides secure, cross-border identity services across European Union member states through the European Blockchain Services Infrastructure.
Operates on EBSI's public permissioned blockchain network, designed specifically for government and public sector applications within the EU.
Use EBSI DIDs for public sector applications, cross-border EU services, and scenarios requiring compliance with European digital identity frameworks.
Where:
<identifier>
is a base58-encoded stringdid:ebsi:zbM8cCuoBMFNLeQyLiVFyxw
did:ens
The ENS DID method connects decentralized identities with human-readable Ethereum Name Service domains for improved user experience.
Based on the Ethereum Name Service infrastructure running on the Ethereum blockchain, providing name resolution for blockchain addresses.
Use ENS DIDs when you need human-readable identifiers for blockchain interactions, especially on Ethereum and for public-facing identity applications.
Where:
<ens-name>
is a registered ENS domaindid:ens:mailchain.eth
did:ethr
The Ethr DID method uses Ethereum addresses and transactions to enable lightweight, standards-compliant identity management on the Ethereum blockchain.
Built directly on Ethereum's account system, using addresses as identifiers and transactions for identity operations.
Use Ethr DIDs for Ethereum-based applications, smart contract interactions, and when simple blockchain identity with broad compatibility is needed.
Where:
[network]
is optional (defaults to mainnet)<identifier>
is an Ethereum address or public keydid:ethr:0xf3beac30c498d9e26865f34fcaa57dbb935b0d74
did:ethr:0x0279be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798
did:ion
The ION DID method provides high-throughput, Layer 2 decentralized identifiers on Bitcoin, enabling scalable identity systems without increasing blockchain costs.
Implements the Sidetree protocol on Bitcoin, using batched transactions to manage many DID operations in a cost-effective manner.
Use ION DIDs for production identity systems requiring high scalability, strong security, and Bitcoin's decentralization properties.
Where:
[network]
is optional (mainnet
or test
)<encoded-state>
is the encoded DID statedid:ion:EiClkZMDxPKqC9c-umQfTkR8vvZ9JPhl_xLDI9Nfk38w5w
did:ion:test:EiClWZ1MnE8PHjH6y4e4nCKgtKnI1DK1foZiP61I86b6pw
did:polygonid
The PolygonID DID method provides scalable identity infrastructure on the Polygon blockchain with optimized performance and cost.
Built on the Polygon (formerly Matic) blockchain, offering Ethereum compatibility with higher throughput and lower fees.
Use PolygonID DIDs for high-volume identity applications, credential issuance at scale, and when lower transaction costs are important.
Where:
[network]
is optional (main
or mumbai
)<identifier>
is a base58-encoded stringdid:polygonid:polygon:main:2pzr1wiBm3Qhtq137NNPPDFvdk5xwRsjDFnMxpnYHm
did:polygonid:polygon:mumbai:2qL4AhwQThPWJ8QH9mxH41CDgKj9chrHN92azh5wkx
did:polygonid:readonly:2mbH5rt9zKT1mTivFAie88onmfQtBU9RQhjNPLwFZh
did:dht
The DHT DID method uses Distributed Hash Table technology for a scalable, peer-to-peer approach to DID resolution without blockchain dependencies.
Built on Distributed Hash Table (DHT) networks, similar to those used in BitTorrent and IPFS, providing decentralized storage without consensus requirements.
Use DHT DIDs for decentralized applications requiring self-sovereign identity without blockchain dependencies, particularly in resource-constrained environments.
Where:
<identifier>
is a base32-encoded hash valuedid:dht:1ati6y645tprnm9nkqgguj718bmtqw5mbjq87ttbrntfokekzeso
did:jwk
The JWK DID method encodes a JSON Web Key directly into the identifier, enabling immediate cryptographic verification without external resolution.
Based on JSON Web Key (JWK) standard from IETF, using cryptographic keys in a standardized JSON format as the foundation for identifiers.
Use JWK DIDs for lightweight verification scenarios, offline environments, and applications requiring minimal infrastructure dependency.
Where:
<base64url-encoded-jwk>
is a base64url encoding of a JWKdid:jwk:eyJjcnYiOiJQLTI1NiIsImt0eSI6IkVDIiwieCI6ImFjYklRaXVNczNpOF91c3pFakoydHBUdFJNNEVVM3l6OTFQSDZDZEgyVjAiLCJ5IjoiX0tjeUxqOXZXTXB0bm1LdG00NkdxRHo4d2Y3NEk1TEtncmwyR3pIM25TRSJ9
did:key
The Key DID method encodes public keys directly into the identifier, creating portable, self-contained identifiers that work without network access.
Based on multicodec-encoded public keys, supporting various cryptographic algorithms without requiring any external infrastructure.
Use Key DIDs for lightweight identity applications, offline verification scenarios, and bootstrapping more complex identity systems.
Where:
<multibase-encoded-public-key>
is a multibase-encoded multicodec public keydid:key:z6MkhaXgBZDvotDkL5257faiztiGiC2QtKLGpbnnEGta2doK
did:oyd
The Own Your Data (OYD) DID method enables self-sovereign identity management through a self-sustained environment for managing decentralized identifiers.
Built on a self-hosted architecture that prioritizes data sovereignty, allowing individuals to maintain complete control over their identity data.
Use OYD DIDs for private identity management, applications emphasizing data sovereignty, and scenarios requiring minimal external dependencies.
Where:
<identifier>
is a base58-encoded valuedid:oyd:zQmNXp9zTLQECaLwWcXy4ctdKctnPLghHWftwdJsfGd8Erz
did:pkh
The PKH DID method creates identifiers from public key hashes across multiple blockchains, offering a unified interface for blockchain addresses as DIDs.
Based on standard public key hash derivation methods used in various blockchains, creating a cross-chain identity layer.
Use PKH DIDs to integrate existing blockchain addresses into DID ecosystems, for cross-chain identity, and when leveraging existing wallet infrastructure.
Where:
<network-identifier>
specifies the blockchain network (e.g., bip122:000000000019d6689c085ae165831e93
for Bitcoin)<address>
is the blockchain address in the native formatdid:pkh:bip122:000000000019d6689c085ae165831e93:128Lkh3S7CkDTBZ8W7BbpsN3YYizJMp8p6
did:pkh:eip155:1:0xb9c5714089478a327f09197987f16f9e5d936e8a
did:pkh:tezos:NetXdQprcVkpaWU:tz1TzrmTBSuiVHV2VfMnGRMYvTEPCP42oSM8
did:plc
The PLC DID method uses a central directory server to validate operations and maintain a transparent log for each DID, balancing decentralization with auditability.
Based on a protocol that collects and validates operations through a central directory server, maintaining operation logs for auditability.
Use PLC DIDs for applications requiring both self-sovereign control and transparent, auditable identity operations.
Where:
<identifier>
is a base32-encoded stringdid:plc:7iza6de2dwap2sbkpav7c6c6
did:web
The Web DID method integrates decentralized identifiers with standard web infrastructure, using existing domains and HTTPS for resolution.
Uses standard web domains and HTTPS URLs to host DID documents, leveraging existing web infrastructure for identity management.
Use Web DIDs to integrate DIDs with existing web infrastructure, for organizational identities, and when simplicity of implementation is prioritized.
Where:
<domain>
is a standard web domain<port>
is optional (defaults to standard HTTPS port)<path>
is optional for sub-identitiesdid:web:w3c-ccg.github.io
did:web:w3c-ccg.github.io:user:alice