Skip to main content
           ▄▄▄▄▄▄▄▄
         ▄███████▀████▄▄
       ▄████████████████
       ██████████████▀▀
      █████████████▀
     ▄█████████████
    ▄██████████████
  ▄█████████████████
▄███████████████████
████████████████████         ▄
██████████████▀ ████      ▄▀
 ▀▀█████████▀   ███▀  ▄▄▀▀
     ▀▀▀██▄▄▄▄▄▄██▀ ▀▀

aqta-verify-receipt

PyPI npm Licence

Offline verifier for Seal receipts (ATTESTATION-v1).

Seal signs the model call at runtime. This package checks that signature without contacting Aqta. No account. Same algorithm as the npm package.

30-second check

pip install aqta-verify-receipt
aqta-verify-receipt receipt.json \
  --key gUoUhIvptKAoLTnry3VrDtOQEWggGQveLrHFVrfNqmE

Or pipe:

curl -sS https://api.aqta.ai/r/YOUR_RECEIPT_ID | aqta-verify-receipt - \
  --key gUoUhIvptKAoLTnry3VrDtOQEWggGQveLrHFVrfNqmE

ok + exit 0 means the Ed25519 signature verifies against the pinned key. Production key id: aqta-att-0a18c7c16bc18a12 (/v1/attestation/public-key).

Pin that string. Do not re-fetch it inside a verify loop.

Library

from aqta_verify_receipt import verify_receipt, fetch_published_public_key

# Once per environment: fetch, then pin somewhere you control.
trusted = fetch_published_public_key()

result = verify_receipt(receipt, trusted_public_key=trusted)
if not result.valid:
    raise ValueError(result.reason)

CLI

aqta-verify-receipt <file|-> --key <base64url> [--no-strict] [-q]
aqta-verify-receipt <file|-> --integrity-only [--no-strict] [-q]

Pinning is required by default. Without --key, pass --integrity-only (embedded key only; anyone can self-sign; result is marked untrusted).

Dependencies

cryptography (>= 42) for constant-time Ed25519. Nothing else.

What this is not

Not a governance dashboard. Not a cost router. A small verifier for one signed model-call receipt.

Licence

Apache-2.0. Aqta Technologies Limited.

If you implement or cite the ATTESTATION-v1 format itself, credit under CC-BY-4.0: see the repo CITATION.cff.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aqta_verify_receipt-1.0.6.tar.gz (12.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aqta_verify_receipt-1.0.6-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

Details for the file aqta_verify_receipt-1.0.6.tar.gz.

File metadata

  • Download URL: aqta_verify_receipt-1.0.6.tar.gz
  • Upload date:
  • Size: 12.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.8

File hashes

Hashes for aqta_verify_receipt-1.0.6.tar.gz
Algorithm Hash digest
SHA256 ca62ce86a5dff4c938c89a1eba329cc9217be86d86174f0761854505d3e0a7ba
MD5 e7ab26252eefc1a1bef8b876b0843ad0
BLAKE2b-256 9a82b7eccde2c16c275003bb4aa75b20c2dc5b6374c93ff0fbff70a745c99241

See more details on using hashes here.

File details

Details for the file aqta_verify_receipt-1.0.6-py3-none-any.whl.

File metadata

File hashes

Hashes for aqta_verify_receipt-1.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 a40127c5d2eb0c0e2cf15a02247e87eff9fbf2822f88a80f17a6c961354b5776
MD5 0d49b3165511c27862b7a536b9f3249e
BLAKE2b-256 75c83ba780cadd0d13edebd7fbf4b998dd9e31a753398e4652c9156d2c34edbc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page