id · open source
agid

id

Deterministic identifier protocol.

The same input always produces the same identifier — on every platform, with no database, no coordination, no randomness. A single BLAKE3 hash over a domain-separated input: (domain, input) → 32 bytes → did:agid:<base58>. A pure function — no I/O, no clock, no state.

evidence ledger

measured facts, not exposed machinery.

Ag^id is open source — every fact below is reproducible from the published crate, its cross-language test vectors and an independent Python witness. Benchmarks on a Ryzen 9 7900X (BLAKE3 / AVX-512).

derivation
BLAKE3("agid:v1:"‖domain‖input)
cross-platform
identical id · x86-64 / ARM / Pi / WASM
domains
6 · separated by protocol prefix
throughput
1.14 GiB/s @1 KiB · 6.13 GiB/s @64 KiB
footprint
no_std · zero heap on hot path
conformance
cross-language vectors + Python witness
open & verifiable

No server. No randomness.

A pure function (domain, input) → 32 bytes, dual-licensed MIT / Apache-2.0. Domain separation is a security property: a User id can never equal a Document id from the same bytes. Wire form is a W3C DID URI ABNF-conformant string.

what a did is not

A name, not a credential.

It proves nothing about who computed it; do not use equality as proof of possession. Not constant-time. No deletion or rotation — a low-entropy input becomes a stable pseudonym forever (wrap under a deployment secret). Not yet a registered W3C DID method — registration is on the roadmap.