Feature Friday n°1: Decentralized Identifiers (DIDs)
Introduction
Hey friends,
Welcome to Feature Friday! Each week, this series highlights new identity features available with the walt.id tooling. For feedback or episode suggestions, connect with us on Discord!
Today we explore decentralised identifiers (DIDs), self-sovereign, globally unique digital identifiers for individuals, companies, and devices.
What are Decentralized Identifiers (DIDs) ?
Self-Sovereign: DIDs are controlled by the individual or entity that they identify, giving them complete control over their digital identities.
Globally Unique: Each DID is unique, similar to an email address or a phone number, ensuring that each identifier refers to a single entity.
Decentralized: DIDs are not issued or controlled by a centralized authority or intermediary, but are generated and managed by the owner directly.
Interoperable: Different types of DIDs can operate together as long as they follow the same standards, facilitating their use across different systems and platforms.
Cryptographically Secure: DIDs are backed by public-private key cryptography, enhancing the security of digital interactions. The private key is held by the owner, while the public key is available to everyone for ver
Machine-Readable: DIDs are machine-readable, enabling automated systems to read and interpret them.
Verifiable: The authenticity of a DID and the data it signs can be verified, ensuring the integrity of digital interactions.
Persistent: DIDs are persistent and do not need to be changed or reissued by an external authority. They remain constant even if the owner's other data (like address or employer) changes.
Flexible in Distribution: DIDs can be privately held, hosted on a specific domain, or published on a public ledger. However, this flexibility comes with certain considerations. For instance, it is crucial to avoid publishing DIDs associated with individuals on a public ledger, due to privacy concerns. Conversely, when DIDs from organizations are published on a public ledger, accompanied by an established legal framework, they can significantly bolster trust and reliability.
What do DIDs enable ?
Verifiable Credentials: DIDs can be embedded in digital certificates, licenses, or other credentials, enabling third parties to verify their authenticity and origin. This can be used for academic certificates, driver's licenses, or even health records.
Digital Authentication: DIDs can be used to authenticate users in a variety of digital services, from social media platforms to online banking, without the need for centralised authentication providers.
Secure Communication: DIDs can be used to create secure communication channels where the identity of each participant can be verified, enhancing trust and privacy.
DID Features
With our open source tools, you can:
Create & Mange & Anchor - Create and anchor DIDs with multiple formats and rotate keys.
Resolve - View and use DID-Documents
Store - Manage DIDs and keys with multiple key stores
… but wait there’s more:
Works Across Programming Languages: You can create, mange and resolve DIDs easily with walt.id’s SSI-Kit, offering a CLI tool, a REST service and a Java and Kotlin library.
Works Across Ecosystems: Our supported DID methods range from key, web, ebsi, iota, jwk, cheqd and velocity with new ones added continuously.
Works Across Storage Options: Mange and store your keys and DIDs with various storage options, for instance S3 or the file system
Flexible, Extensible and Open-Source: Using our tools you can leverage the wide range of already supported ecosystems and storage options or extend our modular system bringing support for your own did:method or storage solution
Demo
Watch our short demo, showcasing how you can work with DIDs using the walt.id SSI-Kit
Get Started
Please note, that the demo shown used the SSI-Kit which is no longer maintained by walt.id. However, all the features are now available via the community stack.
You can get started with the new libs and APIs here.
For DIDs in particular, we offer the following:
DID Lib - create, register and resolve DIDs on different ecosystems in Kotlin/Java and JavaScript.
Wallet API - create and manage DIDs for your users.
Looking ahead, make sure to join us for the next Feature Friday, where we will learn about Verifiable Credentials.
And before you go, a little tech humour
Why don't programmers like nature?
Because it has too many bugs!
So, thanks for reading, and remember to debug your code.
See you next Friday, and in the meantime, let’s connect on discord!
Best
Tamino from walt.id