Search IconIcon to open search


Last updated May 28, 2022 Edit Source

Summarized from W3C Proposal

Decentralized identifiers (DIDs) are a new type of self-sovereign identity that enables verifiable, decentralized digital identity through the use of cryptography.

They are designed to enable individuals and organizations to generate their own identifiers using systems they trust. These new identifiers enable entities to prove control over them by authenticating using cryptographic proofs such as digital signatures.

Identity is important to identify things. The digital economy relies on proper identification to combine information from different sources. Uniqueness is vital here!


  1. Ease of creation
  2. Decentralized
  3. Persistent
  4. Resolvable
  5. Cryptographically verifiable

# High level overview

A DID is a unique string that has a specific syntax. It can be resolved to a DID Document (also called a DDO - DID descriptor object) in a global, decentralized, key-value database (Verifiable Data Registry).

It can be on any and multiple personal device that you own!

Format: did:xyz:abcde123456

  1. did: fixed string, this is a DID
  2. xyz: method name (e.g. btcr which is built on top of Bitcoin, acts sort of like a namespace)
  3. abcde123456: method specific identifier

Can be thought of like a public decentralized keychain. It binds a public/private key pair to an identity, even when those keys are rotated out and replaced!

The VDR can be hosted/based on any platform (e.g. on distributed blockchains or just hosted files on GitHub)

A DID Document can have arbitrary content. It contains references to “controllers” which are entities that have permission to make changes to a DID Document. It can also contain various cryptographic data delated to the DID subject (e.g. RSA, keys, etc.)

# What it enables

# Creating DIDs using IPLD

# DID Method Key

The did:key format

This DID Method is purely generative, requiring no look ups in a registry. Since did:key values are not stored in any registry, they cannot be updated or deactivated.


A Decentralized Web Node (DWN) is a data storage and message relay mechanism entities can use to locate public or private permissioned data related to a given Decentralized Identifier (DID).

Decentralized Web Nodes are a mesh-like datastore construction that enable an entity to operate multiple nodes that sync to the same state across one another, enabling the owning entity to secure, manage, and transact their data with others.

# Methods

# did:key

Great for burner DIDs

# Sidetree

See Sidetree