The Delegateable Anonymous Credentials (DAC) system. A system for issuing and verifying anonymous credentials that can be delegated to other parties.
This is a workspace broken down into:
Crate | Status | Description |
---|---|---|
delanocreds | ✅ | The Rust core library for issuing and using anonymous credentials. |
delano-keys | ✅ | A Rust library for generating, compacting, expanding, and using BLS12-381 verification keys (VKs). |
delano-wallet | ✅ | Wallet Component, uses Wasm Interface Types (WIT) for Wasm Component use from any host system such as Go, JavaScript, Python or Rust. |
delano-wit-ui | ✅ | A Work-In-Progress default implementation of the Delano UI using wurbo and minijinja HTML Templates.
|
See how fast it creates and verifies credentials.
cargo run --release
Workspace and integration tests are located in ./tests
and can be run with:
cargo test --workspace
When writing delanocreds
, the bls12-381-plus
crate wasn't wasm32 compatible, so I forked it and added wasm32 support. The wasm32 tests were added to verify the changes compile to wasm, added in ./tests/wasm.rs
using wasm-bindgen-test
and wasm-bindgen-cli. They can be run with this command:
cargo test --target wasm32-unknown-unknown
Because the workspace includes Wasm Interface Types (WIT), the build command must use component build
instead of build
. This is a wrapper around cargo build
anyway, so it builds non-components too:
cargo component build --workspace --release