OpenAC in this repository
OpenAC (Open Design for Transparent and Lightweight Anonymous Credentials) is a two-phase anonymous credential design: a Prepare (policy-independent) proof over the issued credential, and a Show proof that binds a verifier challenge, evaluates presentation predicates, and links back to the same committed message vector. The construction targets standards-aligned wallets and is written up for EUDI ARF compatibility; see the mapping discussion in the paper (Paper appendix — EUDI) and EUDI mapping.
Who this site is for
- Wallet and identity engineers integrating SD-JWT–style selective disclosure with unlinkable presentations.
- Verifier operators checking Spartan2 proofs and public outputs (predicate result, device key coordinates).
- Standards readers tracing how OpenAC relates to ICAO 9303, SD-JWT, and ongoing ETSI / EUDI work.
What ships in zkID
| Area | Location | Notes |
|---|---|---|
| OpenAC SDK (TypeScript 0.1.0) | wallet-unit-poc/openac-sdk/ | WASM + optional Circom witness assets; precompute / present API. |
| Circom circuits | wallet-unit-poc/circom/ | JWT variants jwt / jwt_1k–jwt_8k, show, ecdsa, experimental mdoc. |
| Spartan2 CLI | wallet-unit-poc/ecdsa-spartan2/ | prepare / show setup, prove, reblind, verify. |
| Predicate design note | generalized-predicates/README.md | Formal model (no circuits in this folder). |
| Revocation research pointers | revocation/README.md | Links + narrative; no in-repo cryptographic revocation module. |
| Paper (LaTeX + PDF) | paper/ | Canonical public version: IACR ePrint 2026/251. |
Two-phase flow (Prepare / Show)
Terminology: the TypeScript SDK exposes precompute and present; the Rust CLI and WASM layer use the names prepare and show.
Versioning
- SDK version is published in
openac-sdkpackage.json(currently 0.1.0). Feature-level “v1 / v2” protocol labels are not yet mirrored as separate semver lines across the whole repo—treat the paper + this site’s “experimental” callouts as normative for roadmap items (mDOC path in Circom, W3C VC, in-proof revocation).
Next steps
- Installation — toolchains per component.
- Quickstart — minimal Prepare → Show path.
- OpenAC SDK overview — architecture and data flow.