How to verify a pack offline in 2 minutes
You have been handed an evidence packet, a .zip. You do not have to take the sender's word
that it is intact.
What you need
Python 3 and the cryptography package. Nothing else, and no network once those are installed.
Steps
pip install actaseal-verify # or: pip install cryptography, and download verify.py python -m verify your-packet.zip
A packet that passes ends with VERIFIED and exits 0. One that fails names the check that failed
and exits 1. Exit 2 means the cryptography package is missing, and nothing is passed in that case.
Read the key line
Unless you give it the operator's published key, the verifier checks the signature against the key the packet
itself declares, and says so. A packet re-signed from start to finish with a different key would pass that check.
Compare the key it prints with the one the operator has published, or pass it with
--receipt-public-key.
Try it first
The sample pack has a clean packet and one with a single byte changed. The second one fails.
What it does not do
It checks the hash chain, the signature and the documents in the packet. It does not decide again whether the action should have been allowed. See what ActaSeal is not.