canaad-cli 1.0.0

CLI tool for AAD canonicalization per RFC 8785
canaad-cli-1.0.0 is not a library.

canaad-cli

crates.io MSRV

Canonicalize, validate, and hash AAD JSON from the command line. Useful for CI pipelines, test vector generation, and debugging AEAD context mismatches.

canonicalize

canaad canonicalize '{"v":1,"tenant":"org_abc","resource":"db","purpose":"encrypt"}'
echo '...' | canaad canonicalize
canaad canonicalize -f input.json
canaad canonicalize '...' -o hex
canaad canonicalize '...' -o base64
canaad canonicalize '...' -o raw
canaad canonicalize '...' --to-file output.bin

validate

canaad validate '{"v":1,"tenant":"org_abc","resource":"db","purpose":"encrypt"}'
canaad validate -f input.json
canaad validate '...' --quiet  # exit code only

hash

SHA-256 of the canonical form:

canaad hash '{"v":1,"tenant":"org_abc","resource":"db","purpose":"encrypt"}'
canaad hash '...' -o base64

Exit codes

Code Meaning
0 Success
1 Validation error
2 I/O error