Issuer: demo (localStorage)

1) Context (hashed, optionally shared)

The DAR stores context_hash (SHA-256 of canonicalized context JSON). You can keep context separate for privacy or include it with the receipt.

2) Issue DAR (sign payload hash)

Ready.

Canonical payload is hashed then signed using ECDSA P-256 (WebCrypto). Signature and hashes are embedded in dar.json.

Verifier Inputs

Verification performs: canonicalize → hash → signature verify. No network calls.

Verification Result

Paste inputs and click Verify.

Checks

Signature: —
Payload hash: —
Context hash: —

What this proves

✅ Integrity: any mutation breaks verification
✅ Authenticity: issuer key must match signature
✅ Survivability: verifier needs only receipt + public key + open logic