Quick check (no install)
Section titled “Quick check (no install)”Compare your file's hash to the receipt:
$ sha256sum yourfileIf the output matches hash.value in receipt.json, the file is authentic.
Offline verification (No install needed)
Section titled “Offline verification (No install needed)”Every .veristamp.zip bundle includes a verify.html file.
- Double-click
verify.htmlto open it in your browser. - Drag and drop your file,
receipt.json, andkeyring.jsoninto the page. - The browser uses native cryptography to instantly verify the SHA-256 file integrity and Ed25519 signature entirely offline.
If you are online, it will also fetch the public epoch to verify Merkle inclusion and TSA anchors.
Verify online
Section titled “Verify online”Open stamp.veristamp.in/verify, drag in the file and receipt.json. Everything runs locally in the browser — the file is never uploaded.
The web app checks:
- File integrity — SHA-256 matches the receipt
- Signature — Ed25519 signature is valid against the keyring
- Public ledger — Receipt appears in the transparency log (optional, requires network)
- External anchoring — Which TSAs anchored the epoch (shown after ledger check)
What each layer proves
Section titled “What each layer proves”| Layer | What it proves | Needs network? |
|---|---|---|
| File hash | The file hasn't changed | No |
| Receipt signature | Veristamp issued this timestamp | No |
| Ledger inclusion | Receipt is in the public Merkle log | Yes |
| TSA anchoring | The epoch root was anchored by external authorities | Yes (included in epoch data) |
For Auditors
Section titled “For Auditors”If you need to cryptographically audit the public ledger using your own independent tools (like OpenSSL), you can use the bundled verify.py script.
- Via Web: In the verification UI (online or offline), click Download .tsr next to any TSA anchor to inspect the raw RFC 3161 Timestamp Responses.
- Via Script: The bundled
verify.pycan be used to independently rebuild the Merkle tree from the transparency log and verify the signature using OpenSSL:
$ python verify.py receipt.json yourfile --verify-sig --show-anchorsThe script will fetch the public epoch, verify the inclusion of your file, rebuild the Merkle tree, and provide the exact openssl ts -verify commands needed to validate the .tsr files against the root authorities.
Transparency log
Section titled “Transparency log”For details on how the transparency log works, see the Transparency Log guide.