Skip to content

did:iden3 Implementations

This page lists known implementations and services related to the did:iden3 method. It focuses on core libraries, protocol implementations, and services that enable DID creation, resolution, authentication, and verifiable credential workflows.

If you maintain a did:iden3-related implementation that is not listed here, or want to update an existing entry, please submit a pull request.


iden3 Communication Protocol

Implementations of the iden3 communication protocol, which defines message formats and flows used for authorization requests, responses, and credential-based interactions.

Resolver Implementations

  • driver-did-iden3 Universal Resolver driver enabling resolution of did:iden3 identifiers via standard resolver infrastructure. See an example resolution here: DID resolution.

Core Libraries (Multi-language)

Core libraries provide the fundamental building blocks for working with did:iden3 identities, claims, authentication messages, and zero-knowledge proofs. Implementations are available across TypeScript / JavaScript, Go, and Flutter.

TypeScript / JavaScript

  • js-iden3-core
    Low-level API to create and manipulate iden3 claims and related cryptographic primitives.

  • js-sdk
    High-level JavaScript SDK implementing iden3 communication flows, DID interactions, and verifiable credential usage.
    Can be used as a foundation for issuer, holder, and verifier applications.


Go

  • go-iden3-core
    Go implementation of the iden3 core library, providing primitives for claims, proofs, and DID-related data structures.

  • iden3comm
    Go implementation of the iden3 communication protocol used for message exchange, authorization requests, and responses.


Flutter / Dart

  • polygonid-flutter-sdk
    Flutter SDK enabling iden3comm-based authentication and credential presentation in mobile applications.

Authentication & Authorization Libraries

Libraries focused specifically on handling authentication messages in the communication protocol.

TypeScript / JavaScript

  • js-iden3-auth
    TypeScript libraries for handling iden3 authentication messages and protocol-level authorization flows.

  • js-jwz
    JavaScript implementation of JSON Web Zero-Knowledge (JWZ), used to encapsulate zero-knowledge proofs and signed messages.


Go

  • go-iden3-auth
    Go implementation of iden3 authentication message handling and authorization protocol logic.

  • go-jwz
    Go implementation of the JSON Web Zero-Knowledge (JWZ) standard.


Circuits & Proof Systems

Zero-knowledge circuits, proving systems, and supporting libraries used by did:iden3 implementations for credential verification and privacy-preserving proofs.

  • circuits
    Canonical repository of iden3 zero-knowledge circuits used for authentication, credential queries, and authorization flows.

  • go-circuits
    Go bindings and tooling for working with iden3 circuits.

  • circomlib
    Core Circom circuit library used by iden3 and other zero-knowledge systems.

  • rapidsnark
    High-performance zkSNARK prover optimized for iden3 and Circom-based circuits.


Smart Contracts

Smart contracts used by the did:iden3 ecosystem for on-chain identity state management, verification, and integration with blockchain networks.

  • contracts
    Smart contracts supporting identity state transitions, proof verification, and on-chain components of the iden3 protocol.

Example Implementations of the iden3comm Protocol

These projects demonstrate practical usage of the iden3 communication protocol in applications, SDKs, and backend services.

  • js-sdk
    High-level JavaScript SDK implementing iden3 communication flows, DID interactions, and verifiable credential usage.

  • polygonid-flutter-sdk
    Flutter SDK demonstrating iden3comm-based authentication and credential presentation in mobile applications.

  • issuer-node
    Backend service implementing iden3 communication flows for issuing verifiable credentials within the Privado ID ecosystem.


Issuer Software

Software components designed for issuers to create, manage, and issue verifiable credentials using did:iden3.

  • issuer-node
    Backend service for issuers implementing iden3 communication flows and credential issuance logic.

  • js-sdk
    Can also be used as a building block for custom issuer applications implemented in JavaScript / TypeScript.


Notes

  • All listed repositories are public and actively maintained.
  • This page is organized to reflect the protocol stack of did:iden3, from low-level primitives to concrete protocol implementations.