Decentralized Identity: DIDs, VCs & SSI
Learning Goal: Implementing Decentralized Identity (DID): Building Self-Sovereign Identity Systems with W3C Standards and Verifiable Credentials. This curriculum equips modern identity engineers and architects to design and implement Self-Sovereign Identity (SSI) architectures. By mastering W3C Decentralized Identifiers (DIDs), Verifiable Credentials (VCs), and standard cryptography, learners will be able to issue, hold, and verify credentials across trust registries using cutting-edge developer tooling.
- Prerequisites: Intermediate programming experience (JavaScript/Node.js recommended), basic understanding of RESTful APIs, and foundational knowledge of JSON-based data structures.
- Estimated Total Study Time: 15 Hours
Module 1: Foundations of Identity & Cryptography
This module introduces the historical progression of digital identity, contrasting centralized, federated (OAuth/OIDC), and decentralized models. It establishes the mathematical and cryptographic primitives required to secure decentralized networks—focusing specifically on public-private keypairs, hashing algorithms, and digital signatures.
OAuth 2.0 and OpenID Connect (in plain English)
| Channel | Duration | Views | | OktaDev | 01:02:17 | 1,957,309 |
Why this video: Establishing a deep understanding of standard identity delegation and verification is critical before moving to decentralized setups. This deep-dive on OAuth 2.0 and OpenID Connect (OIDC) explains how centralized and federated auth function, identifying the architectural limitations that SSI aims to solve.
Introduction to Digital Signature | Public Key cryptography
| Channel | Duration | Views | | saurabhschool | 09:39 | 37,932 |
Why this video: This video introduces asymmetric cryptography, public key infrastructure (PKI), and how digital signatures verify authorship and document integrity. You will learn how hashing and keypairs interact to form the base of non-repudiation in modern networks.
Lecture 18: Digital Signatures and Security Services by Christof Paar
| Channel | Duration | Views | | introductiontocryptography4223 | 03:17 | 76,273 |
Why this video: Christof Paar provides an academic and mathematically rigorous description of digital signatures. This video defines how mathematical hard-problems are leveraged to generate unforgeable proofs, forming the backbone of DID Document keys.
Module 1 Knowledge Checkpoint
- Differentiate between OAuth 2.0 (Authorization) and OpenID Connect (Authentication) and locate where centralized identity providers present single-point-of-failure risks.
- Diagram how a sender hashes a message, signs it with a private key, and how a receiver uses a public key to verify data integrity.
- Define non-repudiation and explain its critical role in verifying signed attributes.
Module 2: Introduction to Self-Sovereign Identity (SSI)
This module moves from traditional identity architectures to the philosophical and structural foundation of Self-Sovereign Identity (SSI). It covers the three key entities of the SSI ecosystem—Issuers, Holders, and Verifiers—and explains how they interact without centralized intermediaries.
Introduction to Decentralized Identity [Live Workshop]
| Channel | Duration | Views | | docknetwork | 09:43 | 279 |
Why this video: This practical workshop maps out the "Trust Triangle" (Issuer, Holder, and Verifier) as standardized by the W3C. It provides a visual guide on how cryptographic trust flows among the three points of the triangle without calling home to a central identity server.
An introduction to Self-Sovereign Identity
| Channel | Duration | Views | | ssiambassador1718 | 09:00 | 22,805 |
Why this video: This conceptual deep dive details the user-centric design of SSI, introducing how data and credentials reside on edge wallets, moving digital assets and credentials under the user's explicit control.
SELF-SOVEREIGN IDENTITY | DATA SAFETY WITH DIGI YATRA
| Channel | Duration | Views | | DigiYatraFoundation | 02:38 | 435,735 |
Why this video: This video highlights a real-world implementation of the SSI Trust Triangle (used in airport passenger flows). It demonstrates how selective disclosure and local data storage protect identity data while enabling seamless authorization.
Module 2 Knowledge Checkpoint
- Draw the "Trust Triangle" and define the roles of Issuer, Holder, and Verifier.
- Explain how SSI differs from federated identity networks regarding data governance, access controls, and single points of failure.
- Understand "selective disclosure" and describe how a holder can present proof of an attribute (e.g., Age > 21) without revealing their full birthdate.
Module 3: W3C Decentralized Identifiers (DIDs)
This module focuses on W3C Decentralized Identifiers (DIDs), the foundation of persistent, globally unique, resolvable URIs that require no central registration authority. You will analyze the format of DIDs, the structure of DID Documents, and the mechanisms of DID resolution.
Decentralized identifiers (DIDs) fundamentals and deep dive
| Channel | Duration | Views | | ssimeetup | 01:26:22 | 29,045 |
Why this video: This deep dive focuses on the structural rules of the W3C DID specification. It explains the formal parts of a DID string (did:method:id-string) and how specific ledger networks write, read, and revoke DID records.
DIDs, DID Resolution and the Universal Resolver
| Channel | Duration | Views | | decentralized-identity-fdtn | 36:09 | 719 |
Why this video: Presented by the Decentralized Identity Foundation (DIF), this video unpacks DID Resolution and the architecture of the Universal Resolver, showing how different DIDs are resolved into their corresponding DID Documents.
Building a Next Generation DID and VC System with Hyperledger Indy/Aries
| Channel | Duration | Views | | lfdecentralizedtrust | 01:03 | 3,297 |
Why this video: This video introduces the mechanics of how DID documents store vital metadata, such as public cryptographic key records and service endpoints, supporting decentralized key rotation and communication.
Module 3 Knowledge Checkpoint
- Parse a DID URI (e.g.,
did:ion:12345) and identify the Scheme, DID Method, and Method-Specific Identifier. - Detail the structure of a standard JSON DID Document, including key verification blocks (
verificationMethod) and authentication suites. - Explain how a DID Resolver accesses public blockchains or ledger networks to retrieve and parse DID documents.
Module 4: W3C Verifiable Credentials (VCs)
This module details the W3C Verifiable Credentials Data Model, highlighting the structure of cryptographic claims, how they map via JSON-LD contexts, and the mechanical difference between Verifiable Credentials (VCs) and Verifiable Presentations (VPs).
How to use ACA-Py to issue and verify JSON-LD credentials
| Channel | Duration | Views | | IndicioID | 38:03 | 1,516 |
Why this video: This technical presentation demonstrates JSON-LD (JavaScript Object Notation for Linked Data) in credentials, highlighting why context mappings and URIs are critical to making data machine-readable and interoperable.
Education 3.0 Research Network 5/15: Digital Credentials Consortium
| Channel | Duration | Views | | SkywayInitiative | 03:10 | 4,899 |
Why this video: This short video shows how the W3C VC standard serves as an interoperable wrapper for production environments (like academic credentials), linking physical and digital identities.
How to create a DID and issue a Verifiable Credential
| Channel | Duration | Views | | docknetwork | 06:57 | 2,756 |
Why this video: This screencast tracks the entire credential life cycle from setup and anchor generation through issuer profiling and credential distribution.
Gaps and Supplementary Independent Study
⚠️ Technical Gaps in Current Video Pool: While the above videos show how tools structure credentials, they lack step-by-step breakdowns of raw cryptographic signature envelopes (such as BBS+ signatures or Ed25519 signatures) and complex JSON-LD context compilations.
To round out your knowledge, search for these specific terms on search engines or external technical repositories:
- Search Query:
W3C Verifiable Credentials JSON-LD format and signatures tutorial- Focus: Read through standard schemas and study how the
proofobject is appended directly to the assertion block.
- Focus: Read through standard schemas and study how the
- Search Query:
JSON-LD contexts and @vocab mapping in decentralized identity- Focus: Learn how namespaces are resolved so that terms in a credential link directly to ontologies.
Module 4 Knowledge Checkpoint
- Differentiate between a Verifiable Credential (issued by an Issuer to a Holder) and a Verifiable Presentation (constructed by a Holder for a Verifier).
- Explain the utility of the
@contextarray in a JSON-LD credential and how it maps raw values to globally resolved schemas. - Explain the layout of a standard cryptographic
proofobject, detailing how the signature matches the Issuer's DID Document key.
Module 5: Building and Coding SSI Applications
This final module focuses on writing code to implement decentralized identity solutions. You will explore developer frameworks and libraries, setting up agents to handle key generation, credential parsing, issuance, and verification workflows.
An Intro to the Veramo Javascript Framework
| Channel | Duration | Views | | decentralized-identity-fdtn | 54:45 | 739 |
Why this video: Veramo is a highly modular, plugin-based JavaScript framework designed to make decentralized identities, VCs, and key management accessible for Node.js developers. This session covers the architectural plugins, data stores, and credential issuance capabilities of the framework.
How To Make Decentralized Identity Easy: An Aries JavaScript Workshop
| Channel | Duration | Views | | lfdecentralizedtrust | 17:46 | 3,966 |
Why this video: This workshop guides you through writing real JavaScript code with the Hyperledger Aries framework. You will see how agents establish encrypted peer-to-peer connections and exchange VCs.
Gaps and Supplementary Independent Study
⚠️ Technical Gaps in Current Video Pool: Developing production-ready SSI flows requires writing custom server scripts that tie together verification methods, wallets, and ledger anchors, which are only partially covered in general framework overviews.
To gain complete hands-on proficiency, execute these practical coding challenges:
- Search Query:
Build verifiable credentials issuer and verifier nodejs code along- Focus: Write a raw Node.js script using tools like
@veramo/coreordid-jwtto sign a custom JSON payload and verify it without external frameworks.
- Focus: Write a raw Node.js script using tools like
- Search Query:
Veramo framework issue and verify credential tutorial step by step- Focus: Follow practical tutorials to build a local API server that generates a tenant DID, signs a tenant identity claim, and parses and validates incoming presentation requests.
Module 5 Knowledge Checkpoint
- Install and configure the Veramo core library, implementing plugins for database management (
@veramo/data-store) and key management (@veramo/key-manager). - Write an automated Node.js script that resolves a custom DID and verifies a signed JSON payload against public keys found in its retrieved DID document.
- Build a basic Issuer server route that constructs a valid W3C Verifiable Credential payload and signs it using the Issuer's private key.
Course Map
Below is the recommended pathway for navigating the modules, emphasizing prerequisite checks and supplementary coding sessions:
Key People Index
- Vittorio Bertocci (1972–2023): Renowned digital identity practitioner, former architect at Microsoft and Auth0/Okta, who advocated for bridging the gap between legacy federated systems (OAuth/OIDC) and decentralization.
- Christof Paar: Professor of Applied Cryptography at Ruhr University Bochum and author of Understanding Cryptography. His academic lectures provide the deep cryptographic foundational lessons used to secure SSI.
- Manu Sporny: W3C digital identity pioneer, CEO of Digital Bazaar, and co-editor of the W3C Verifiable Credentials Data Model and JSON-LD specifications.
- Drummond Reed: Co-chair of the W3C DID Working Group, co-author of Self-Sovereign Identity, and identity industry veteran, crucial to designing the global trust frameworks for DIDs and DID Resolution.
Final Self-Assessment
Complete this comprehensive self-assessment to confirm you have fully mastered decentralized identity engineering:
- I can describe the core limits of centralized and federated authentication models (OAuth/OIDC), particularly regarding data ownership and runtime authorization.
- I can mathematically explain how asymmetric public-private key cryptography secures identity without sending private credentials across networks.
- I can draw and explain the W3C Trust Triangle, mapping how data, authorizations, and cryptographic keys flow among Issuers, Holders, and Verifiers.
- I can identify all three parts of a DID string and explain how the specified DID method directs the resolution process.
- I can write a valid, schema-compliant JSON DID Document containing multiple
verificationMethodkeys. - I can explain how the Universal Resolver interacts with multiple registries and distributed ledgers to fetch raw documents.
- I can detail the difference between Verifiable Credentials and Verifiable Presentations and explain why holders must use VPs when sharing credentials.
- I can explain the mechanics of JSON-LD contexts and how the
@contextarray enables different systems to interpret raw credential claims. - I can use JavaScript to install an SSI library (such as Veramo or Aries) and write code to create local keypairs, DIDs, and credentials.
- I can write an end-to-end verification pipeline in Node.js that resolves a signature proof, verifies credential integrity, and confirms issuer authenticity.