Evidence pack verifier
Verify an evidence pack
Every page of a Midnightly evidence pack carries a QR code. Scan it with your phone's camera, copy the text, and paste it below. The check runs entirely in this browser; nothing is sent anywhere.
What a valid result proves
- The report wasn't altered after it was generated: the ledger fingerprint, period and date match the signature.
- It was signed by the device that holds this public key. Compare the key with the one printed in the pack.
What it doesn't prove
- Where the person was. The ledger records what the phone saw and what its owner entered; a signature can't make that true.
- Who held the phone, or that the right days were included in the first place.
Treat a valid pack as a consistent, unaltered record to weigh alongside other evidence, not as proof of presence.
How it works
The app signs midnightly-evidence-v1, the ledger's SHA-256, the period and the generation time (one per line) with an ECDSA P-256 key kept in the device's Secure Enclave. This page checks that signature with your browser's built-in WebCrypto. The signature may be DER or raw r‖s, base64-encoded; the public key is an uncompressed X9.62 P-256 key.
Checking this browser…
The sample is signed with a published test key, so it shows the format only. You can download the sample payload.