Verify an envelope

Supply the envelope on its own to check that it is well formed and signed under a recognized ML-DSA parameter set. Add the original document as well and Qsign also confirms that the file still hashes to the digest sealed inside the envelope.

Paste the envelope you were given, or use the file field below instead.
or upload
A .qsign.json file downloaded from the sign page. Overrides the pasted text.
Supply the file to prove the envelope still binds to it. Omit it to check the envelope alone.

What gets checked

Envelope parses
The payload must be a JSON object.
Required fields
envelope_id, signature_b64, public_key_b64 and algorithm must all be present.
Algorithm recognized
The parameter set must be ML-DSA-87 or ML-DSA-65 under NIST FIPS 204.
Material decodes
Signature and public key must be well formed base64 of the expected length.
Document binding
When a document is supplied its SHA3-256 digest must match the digest inside the envelope.