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.5.tar.gz (10.5 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.5-py3-none-any.whl (9.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: aqta_verify_receipt-1.0.5.tar.gz
  • Upload date:
  • Size: 10.5 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.5.tar.gz
Algorithm Hash digest
SHA256 1ea5895dd9ca9e5631a905b109ad8819cf42f41fa2cbc053327c624ac54dada8
MD5 d126867ccc178147ee4401f9b9ae0dd5
BLAKE2b-256 e4993557b8bfe880ef45f0b8502576841f6e3a307d6c1596c9b973fa292c98ba

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aqta_verify_receipt-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 1f275d6c4d1ecf0d5d0a5f78c925a363bcf9678baa622bbdcb78ecdbe95f3213
MD5 1ee7a254a4eee4a19904df927e724cb7
BLAKE2b-256 72cc872f4ed2247d0080d27225de31d14608b6ec3cee4affbf671ab13df895f7

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