Skip to content

SD-JWT .NET tutorials

Step-by-step guides for learning SD-JWT implementation with working code samples.

Learning path

Week 1: Fundamentals

Start with these beginner tutorials to understand core SD-JWT concepts:

  1. Hello SD-JWT - Create your first SD-JWT (5 min)
  2. Selective Disclosure - Hide and reveal claims (10 min)
  3. Holder Binding - Cryptographic proof of ownership (10 min)
  4. Verification Flow - Complete issuer-holder-verifier cycle (15 min)
  5. Hello mdoc - Create your first ISO 18013-5 credential (10 min)

Week 2: Standards

Protocol tutorials for credential issuance, presentation, and revocation:

  1. Verifiable Credentials - SD-JWT VC standard (15 min)
  2. Status List - Revocation and suspension (15 min)
  3. OpenID4VCI - Credential issuance protocol (20 min)
  4. OpenID4VP - Presentation protocol (20 min)
  5. Presentation Exchange - DIF query language (15 min)
  6. mdoc Issuance - Complete mdoc credential flows (20 min)
  7. Preview: Agent Trust Kits - Capability token enforcement for agent tool calls (25 min)
  8. W3C VCDM 2.0 - W3C Verifiable Credentials Data Model (15 min)

Week 3: Production

Advanced tutorials for enterprise deployment:

  1. OpenID Federation - Trust chain management (20 min)
  2. HAIP Profile Validation - HAIP Final flows and credential profiles (20 min)
  3. Multi-Credential Flow - Combined presentations (20 min)
  4. Key Rotation - Operational security (15 min)
  5. mdoc OpenID4VP Integration - mdoc presentation flows (25 min)
  6. EUDIW / ARF Reference - EU Digital Identity Wallet (25 min)

Choose by goal

I want to... Start here
Issue my first SD-JWT Hello SD-JWT
Hide claims from a verifier Selective Disclosure
Build a full issuance + verify loop Verification Flow
Issue credentials via a protocol OpenID4VCI
Present credentials to a verifier OpenID4VP
Revoke or suspend credentials Status List
Work with mobile driving licenses Hello mdoc
Validate HAIP profile requirements HAIP Profile Validation
Authorize AI agent tool calls Preview: Agent Trust Kits
Prepare for EUDIW / eIDAS 2.0 EUDIW / ARF Reference

Running the samples

All tutorials have corresponding runnable code in the samples/SdJwt.Net.Samples/ directory.

cd samples/SdJwt.Net.Samples
dotnet run

Or run specific tutorials directly:

dotnet run -- 1.1    # Hello SD-JWT
dotnet run -- 2.3    # OpenID4VCI
dotnet run -- 3.2    # HAIP Profile Validation

Prerequisites

  • .NET 9.0 SDK or later
  • Basic understanding of JWTs and public key cryptography
  • IDE with C# support (Visual Studio, VS Code, Rider)