Skip to content
Lukas.J.Han edited this page Feb 7, 2024 · 5 revisions

What is Selective Disclosure for JWTs?

Selective Disclosure for JWTs (JSON Web Tokens) is a concept aimed at enhancing privacy and data minimization in digital transactions. It allows the holder of a JWT to reveal only a subset of the information contained in the token, rather than disclosing the full contents.

You can check the details of the standard here: https://www.ietf.org/archive/id/draft-ietf-oauth-selective-disclosure-jwt-07.html

What is SD-JWT-JS?

SD-JWT-JS is a promise-based SD JWT Client for node.js and the browser. It is isomorphic (= it can run in the browser and nodejs with the same codebase). On the server-side it uses the native crypto module, while on the client (browser) it uses broswer crypto module.

Features

  • Issuer
    • Issue SD JWT Token
    • Add Key Binding in SD JWT Token
  • Holder
    • Validate SD JWT Token
    • Selectively present SD JWT Token
  • Verifier
    • Verify SD JWT Token
    • Verify Key Binding

Installing

Using npm:

npm install @hopae/sd-jwt

Using yarn:

yarn add @hopae/sd-jwt

Using pnpm:

pnpm install @hopae/sd-jwt