
DID Method Explorer
Key Characteristics
Security & Privacy
DID Resolution Example
Sample DID String:
did:method:unique-value
Resolution Process:
TL;DR
- DIDs are globally unique IDs that you control yourself, no central authority needed.
- The W3C DID Core v1.0 spec defines the data model, resolution process, and cryptographic proof formats.
- Protocol stacks can sit on blockchains, decentralized file systems, or traditional databases - the spec is tech‑agnostic.
- KeyAgreement and authentication keys let you encrypt messages and sign actions securely.
- Compared with traditional IDs, DIDs give better privacy, easier cross‑system interoperability, and unlimited persona creation.
What a Decentralized Identifier is a globally unique identifier that can be created, owned, and managed without any central registry?
Imagine you could hand out a web address that proves you own it, but no company decides whether you can keep it. That’s exactly what a DID does. The W3C defines a DID as a string that looks like did:method:unique‑value
. The method part tells a resolver which network or database to query, while the unique‑value is generated by the holder using a cryptographic key pair.
Because the identifier is tied directly to a public key, the owner can prove control by signing a challenge. No certificates, no password resets via email, no reliance on a single provider.
The W3C DID Core v1.0 specification that establishes the data model, registration, and resolution mechanisms for DIDs
The core spec is deliberately lightweight:
- Data Model: A DID Document holds public keys, service endpoints, and verification relationships (authentication, assertionMethod, keyAgreement, etc.).
- Resolution: A resolver takes the DID string, discovers the appropriate method, fetches the document, and returns a JSON‑LD structure.
- Proof Formats: JSON Web Signatures (JWS), Linked Data Proofs, and other W3C‑approved cryptographic proofs.
The spec says nothing about which ledger to use. That flexibility enables a whole ecosystem of method specifications - from Bitcoin and Ethereum to IPFS and traditional SQL databases.
Protocol Layers - From the Network Up to the Application
DID communication follows the classic protocol‑stack thinking used in the OSI model. Think of each layer as a set of rules that other layers can rely on:
Layer | Function in DID ecosystem |
---|---|
Application (Layer 7) | Verifiable Credential exchange, DID‑auth flows |
Presentation (Layer 6) | Formatting of proofs, JSON‑LD contexts |
Session (Layer 5) | Establishing secure channels via keyAgreement |
Transport (Layer 4) | HTTPS, libp2p, or other encrypted transports |
Network (Layer 3) | IP routing, peer‑to‑peer overlay networks |
Data Link (Layer 2) | Message framing for peer‑to‑peer protocols |
Physical (Layer 1) | Underlying hardware or cloud infrastructure |
Implementers can skip layers they don’t need. A simple DID resolver that runs on a server might only touch Layers 3‑4 and 7, while a mobile wallet that does end‑to‑end encryption will also use Layers 5‑6.

Cryptographic Foundations: Authentication and KeyAgreement
Two verification relationships dominate DID usage:
- Authentication - proves the DID holder is who they claim to be by signing a challenge with a private key listed in the DID Document.
- KeyAgreement - supplies a public key that the other party can use to derive a shared secret, enabling encrypted messaging.
Both relationships rely on widely vetted algorithms like ECDSA, Ed25519, or post‑quantum candidates under development. The DID spec does not force a particular curve; the verificationMethod
entry includes a type
field (e.g., Ed25519VerificationKey2018
) that tells the verifier which algorithm to apply.
Because the public key lives inside the DID Document, anyone can fetch it and verify signatures without contacting the original holder. That property is what powers verifiable credentials - tamper‑evident attestations that can be checked offline.
How DIDs Stack Up Against Traditional Identity Systems
Aspect | Centralized (e.g., email) | Federated (e.g., SAML, OAuth) | Decentralized Identifier |
---|---|---|---|
Ownership | Provider controls | Identity provider controls | User generates & controls |
Privacy | Data often linked to a single account | Attribute sharing limited to federation agreements | Selective disclosure via verifiable credentials |
Portability | Locked to service | Requires trust between providers | Works across any DID‑aware ecosystem |
Scalability | Depends on provider's infrastructure | Scales with federation architecture | Scales with underlying ledger or database |
Revocation | Provider can disable | Provider can suspend | Holder can rotate keys or deactivate DID |
The table makes it clear why self‑sovereign identity (SSI) is gaining traction: you keep control, you decide what to share, and you can spin up as many personas as you need.
Choosing an Underlying Technology
Because the DID spec is technology‑agnostic, you’ll find implementations on:
- Public blockchains - Bitcoin, Ethereum, and other smart‑contract platforms provide immutable registries.
- Permissioned ledgers - Hyperledger Indy, Fabric, or Corda give enterprises privacy controls.
- Decentralized file systems - IPFS or Swarm can host DID Documents without a chain.
- Traditional databases - Some projects store DIDs in PostgreSQL or DynamoDB for speed and cost effectiveness.
Your choice hinges on three factors:
- Trust model: Public blockchains are open but noisy; permissioned ledgers suit regulated industries.
- Performance: On‑chain reads can be slow; off‑chain caches or hybrid designs improve latency.
- Governance: Who decides how the method evolves? Open standards favor community governance.
Best Practices and Common Pitfalls
Implementing DID‑based flows isn’t just copy‑paste. Here are lessons from early adopters:
- Never hard‑code keys. Store private keys in secure enclaves or hardware wallets.
- Version your DID Documents. Include a
service
entry that points to an off‑chain endpoint for future updates. - Validate the resolver. Check TLS certificates and ensure the method’s authenticity metadata is signed.
- Plan for key rotation. Use the
authentication
relationship to list multiple keys, marking the old one as revoked. - Avoid circular references. A DID Document that points to another DID which points back can cause infinite resolution loops.
Skipping any of these steps often leads to security gaps that are easy for attackers to exploit.
Future Directions - What’s Next for DIDs?
The W3C community is already drafting extensions:
- DID‑Connect - a standard for establishing encrypted sessions using the keyAgreement property.
- DID‑Auth 2.0 - adds multi‑factor support and biometric proof bindings.
- Method agnostic revocation registries - enable verifiable credential revocation without locking into a single ledger.
Enterprises are experimenting with hybrid models that blend on‑chain immutability for public keys and off‑chain storage for privacy‑sensitive data. As more wallets and browsers become DID‑aware, the ecosystem will likely converge around a handful of well‑supported method specifications.

Frequently Asked Questions
What does the "did:" prefix actually mean?
The prefix signals that the string follows the Decentralized Identifier syntax defined by the W3C. Everything after "did:" tells a resolver which method to use and where to find the associated DID Document.
Can I use DIDs on a private corporate network?
Absolutely. Permissioned ledgers like Hyperledger Indy let you run a DID method inside a firewall, giving you the same self‑sovereign benefits without exposing data to the public internet.
How does a verifier know a DID Document is authentic?
The document is signed with a proof (e.g., JWS) that ties it to a public key listed in the document itself. A verifier checks the signature against that key, ensuring the document hasn’t been tampered with.
What is the difference between authentication and keyAgreement keys?
Authentication keys prove who you are by signing challenges. KeyAgreement keys are used to derive a shared secret for encrypting messages; they’re never used for signing.
Do DIDs replace passwords?
In many SSI flows, passwords become unnecessary because the private key (stored securely) handles authentication. However, you still need a secure way to protect that private key on a device.
Comments
Fiona Chow
Oh great, another buzzword‑filled stack diagram that pretends to demystify DIDs while actually hiding the complexity behind a glossy UI. The way they lump together blockchains, IPFS, and SQL under one banner feels like a marketing collage rather than a technical deep dive. Still, I’ll give them credit for trying to cover all the bases in a single page. Maybe the next iteration will actually explain how the resolver picks the right method without requiring a PhD in distributed systems.
Rebecca Stowe
Looks like a solid start!
Kailey Shelton
The UI could use a bit more polish; those dropdowns look like they were slapped together at 3 AM.
Angela Yeager
When you’re picking a DID method, think about what you actually need from the ledger. Public blockchains give you immutability but can be pricey, while a permissioned ledger like Indy offers privacy controls at the cost of a trust framework. Also, remember to version your DID Document so you can rotate keys without breaking existing relationships. If you plan to host documents off‑chain, IPFS works great as long as you pin the content somewhere reliable. Finally, don’t forget to expose a simple health‑check endpoint for your resolver so monitoring tools can keep an eye on uptime.
Karl Livingston
The cryptographic foundations are the real heart of any DID system. Authentication keys let the holder sign challenges, proving ownership without a central CA. Meanwhile, keyAgreement keys enable two‑party encryption, turning what could be a public identifier into a private conversation channel. It’s also worth noting that most methods support multiple curves, so you can pick Ed25519 for lightweight mobile use or P‑384 for enterprise compliance. And don’t overlook the importance of revocation registries – they’re the safety net when a key gets compromised.
Kyle Hidding
The proliferation of redundant abstractions in this guide is, frankly, a symptom of the industry’s obsession with “innovation for its own sake.” Every new DID method seems to reinvent the wheel, sprinkling proprietary extensions that only serve to lock you into a vendor’s ecosystem. Moreover, the schematized tables mask the underlying latency penalties of on‑chain reads, which can cripple real‑time UX. If you’re not careful, you’ll end up with a “secure” identifier that is practically unusable in a consumer app. Bottom line: simplicity beats hype.
Andrea Tan
I like how the layers are broken down; it makes it easier to see where you can drop in a custom transport or swap out a ledger without rewiring the whole stack.
Gaurav Gautam
Building on the point about method choice, consider the ecosystem support you’ll actually get. Ethereum has a massive developer community, which means plenty of libraries for key management and DID resolution. Hyperledger Indy, on the other hand, offers built‑in zero‑knowledge proof primitives that are hard to replicate elsewhere. If you’re aiming for a lightweight mobile wallet, IPFS can host the DID Document off‑chain, but you’ll need to ensure the CID stays pinned to avoid disappearing content. Ultimately, match the ledger’s trust model to your regulatory requirements, and you’ll avoid costly pivots later.
Robert Eliason
But wha if you just ditch the whole blockchain nonsense and store DIDs in a simple encrypted DB? You’d save on gas fees, avoid the latency of block confirmations, and still get cryptographic proof if you sign the rows. Sure, you lose the public immutability guarantee, but for many enterprise use‑cases that’s a trade‑off worth making.
Cody Harrington
I’d add that key rotation is often overlooked in implementation guides. When you rotate an authentication key, remember to update every service endpoint that still points to the old public key, otherwise you’ll lock yourself out. A good practice is to include a “revocation” field in the DID Document that lists deprecated keys, so verifiers can gracefully reject them. Also, keep a backup of the old key for a transition window; it saves a lot of head‑scratching when a client still tries the stale credential.
Chris Hayes
The biggest mistake newcomers make is treating a DID like a traditional username. It’s not just an identifier; it’s a container for verification methods, service endpoints, and proofs. Forgetting that means you’ll end up with a document that can’t actually authenticate anything.
victor white
One must appreciate the ontological implications of a self‑sovereign identifier that lives outside any jurisdiction. When the discipline of identity becomes a decentralized protocol, the very notion of “authority” is re‑engineered, pushing us toward a landscape where trust is derived from cryptographic proof rather than institutional endorsement.
mark gray
Indeed, governance plays a pivotal role in keeping the ecosystem healthy. Open‑source method specifications need transparent update processes, otherwise you end up with forks that fragment the verifier base. A well‑documented governance model also encourages enterprises to adopt the standard, knowing there’s a clear path for future enhancements.
Alie Thompson
There is a profound moral imperative behind the push for decentralized identifiers, one that transcends mere technical curiosity. When individuals are handed the ability to control their own identifiers, they reclaim agency that has long been siphoned off by tech monopolies. This shift does not merely redistribute power; it redefines the very relationship between the self and the digital sphere. In a world where personal data is routinely harvested, the capacity to present verifiable credentials without surrendering raw personal information is nothing short of revolutionary. Moreover, the interoperability that DIDs promise dismantles the silos that once kept ecosystems walled off from each other, fostering a more inclusive digital commons. Critics will point to the complexity of key management, yet every breakthrough in human history has required an initial learning curve. The same argument was leveled at the early internet, and look where we are now. By embracing cryptographic proofs, we embed privacy directly into the fabric of identity, making mass surveillance considerably harder. When we consider the environmental costs of blockchain‑based methods, we also recognize that not all DIDs are created equal; hybrid models that combine on‑chain anchors with off‑chain storage mitigate this concern. The ethical calculus, therefore, must weigh the benefits of self‑sovereignty against the pragmatic challenges of deployment. Communities that invest in user‑friendly tooling and robust education will find that the adoption barrier lowers dramatically. Ultimately, the promise of DIDs is to empower individuals to be the custodians of their own digital narratives, a vision that aligns with the timeless principle of personal liberty. If we ignore this potential, we risk cementing a future where identity remains a commodity controlled by a few. The path forward is clear: prioritize standards, nurture open ecosystems, and place humanity at the center of digital identity design.
Samuel Wilson
In practice, consider these steps: first, define the trust framework that matches your regulatory environment; second, select a DID method that offers the necessary guarantees for key rotation and revocation; third, integrate a resolver library that validates proofs against the published DID Document; and finally, run a comprehensive audit of all service endpoints to ensure they reference the correct verification methods. Following this roadmap will help you avoid common pitfalls and deliver a secure, scalable SSI solution.