Prebuilt binaries
Prebuilt for Linux (x64/arm64), macOS (Apple Silicon) and Windows (x64) — grab the latest archive on GitHub, unpack, and put both binaries on your PATH.
Get it on GitHub ↗
From source
cargo install decern-cli decern-server
Or clone and build with the pinned toolchain from rust-toolchain.toml.
# 1 · prove all invariants hold over every input (cvc5)
decern prove
# 2 · run the PDP (writes a tamper-evident ledger)
decern-serve --ledger /tmp/decern.jsonl &
# 3 · decide over HTTP (AuthZEN-shaped) — corp reads a claim it owns
curl -s localhost:8080/access/v1/evaluation -H 'content-type: application/json' -d '{
"subject": {"type":"Principal","id":"corp"},
"action": {"name":"Read"},
"resource": {"type":"Resource","id":"claim1"}
}'
# 4 · verify the ledger (hash chain + every signature)
decern verify --ledger /tmp/decern.jsonl \
--pubkey "$(curl -s localhost:8080/pubkey | jq -r .kid)"