LiveHow do we verify a Presence Record ourselves?

Verify a record

Download the verification bundle from any decision and check it offline against our published key. Nothing is sent to us.

Two independent checks

The chain check recomputes SHA-256 over the previous chain hash and the canonical payload, and compares it to the record's chain hash. That is what proves the record has not been altered.

The signature check verifies an Ed25519 signature over the canonical form of the chain hash and payload, against the JWK whose key id the record names. That is what proves we signed it.

A ~100-line dependency-free script does both. OpenSSL verifies the signature too, but reproducing the canonical bytes with shell tools is the error-prone step — which is why we ship the script rather than only a command line.

The artifacts behind this page

One next step

Run a decision and verify it