Skip to content

Introduction to BaseID

BaseID is an open-source digital identity infrastructure built in Rust. It provides everything needed to issue, hold, present, and verify digital credentials across multiple formats and protocols. 35 crates, 1003 tests, all passing.

  • Credential Formats: W3C Verifiable Credentials (JWT-VC + Data Integrity), ISO 18013-5 mDL, SD-JWT VC, BBS+ unlinkable credentials, Hyperledger AnonCreds
  • Protocols: OID4VCI 1.0 (issuance), OID4VP 1.0 (presentation), SIOPv2 (authentication), DIDComm v2 (messaging), HAIP 1.0 (high assurance)
  • DID Methods: did:key, did:web, did:jwk, did:peer (numalgo 0/2/3/4), did:webvh
  • Privacy: BBS+ selective disclosure, ZK predicates, cryptographic accumulator revocation, credential delegation
  • Compliance: PCTF (58 tests), eIDAS 2.0, HAIP 1.0, MOSIP, cross-framework assurance mapping
  • SDKs: Python, Go, Web (WASM), Android (Kotlin/UniFFI), iOS (Swift/UniFFI), React Native
  • Applications: Reference wallet (web, browser extension, mobile), issuer portal, verifier portal, interactive playground
  • Server: HTTP API with 40+ endpoints (OID4VCI, OID4VP, DIDComm, admin REST)
  • Government agencies building digital identity programs (PCTF-aligned, bilingual EN/FR)
  • Enterprises implementing credential-based verification (Python/Go server SDKs)
  • Developers building identity wallets, issuers, or verifiers (Rust + WASM + mobile)
  • Standards bodies evaluating credential format implementations

BaseID implements international standards including:

  • PCTF (Canada) — full compliance with all 5 components (58 tests), bilingual policy engine
  • eIDAS 2.0 (EU) — PID data model, QEAA, LoA mapping (14 tests)
  • HAIP 1.0 — High Assurance Interoperability Profile with algorithm/format constraints (12 tests)
  • MOSIP — offline QR verification for low-connectivity environments (16 tests)

Cross-framework assurance level mapping (PCTF Level 1-3 ↔ eIDAS ↔ NIST 800-63 ↔ TDIF) is built-in.

The project is organized as a Rust workspace with the following layers:

  1. Foundation — shared types, cryptographic primitives (Ed25519, P-256, P-384), bilingual errors
  2. Identity — DID methods (did:key, did:web, did:peer, did:webvh) and resolution
  3. Credentials — format-specific implementations (JWT-VC, Data Integrity, SD-JWT, mDL, BBS+, AnonCreds)
  4. Privacy — BBS+ signatures, delegation chains, cryptographic revocation
  5. Protocols — OID4VCI, OID4VP, SIOPv2, DIDComm v2, ISO 18013-7
  6. Transport — HTTP client (reqwest), DIDComm delivery, BLE, NFC
  7. Components — wallet-core, issuer-core, verifier-core, encrypted storage, PCTF compliance
  8. Compliance — HAIP, eIDAS, MOSIP, PCTF, trust graphs, identity proofs