Skip to main content

Recompute a recompute-kit receipt on your own machine — trust no one. Stdlib only.

Project description

recompute-kit-verify

Recompute a recompute-kit receipt on your own machine. Trust no one — not even us.

Every recompute-kit / MCP receipt is a recompute-kit.conformance_proof_object.v0 (it embeds a receiptos.evidence_capsule.v0). This package re-derives the receipt's receipt_root locally and reads the capsule's own conformance verdict verbatim — so a receipt is only trusted once you recomputed it.

Stdlib only. No network. No dependency on us.

Install

pip install recompute-kit-verify

Use

recompute-verify receipt.json        # exit 0 = verified-good, 1 = verified-bad, 2 = UNVERIFIABLE
cat receipt.json | recompute-verify -
from recompute_kit_verify import verify_object
import json
verify_object(json.load(open("receipt.json")))
# {"status": "verified-good", "root": "0x…", "verifier_result": {"ok": true, "status": "verified"}, ...}

The tri-state (couldn't-check is its own verdict, never a silent pass)

status meaning
verified-good the root recomputes and the carried conformance verdict is ok
verified-bad the root mismatches (tampered / mis-derived) or the carried verdict is rejected
UNVERIFIABLE not parseable, no capsule to recompute, or no stored root / verdict to check

What it checks

  • Integrityreceipt_root == "0x" + sha256(JCS(receipt \ {anchor, receipt_root})) (receiptos-c14n-v0), recomputed here, compared to the stored root. A one-field tamper breaks it.
  • Verdict — the capsule's own verifier_result ({ok, status}), carried verbatim; the verdict is never inferred from the root match.
  • Signature — a lane reserved for signed receipts; today receipts are integrity-bound by receipt_root.

Recompute the source: https://github.com/trustless-ai/recompute-kit · mcp/receiptos.py.

Project details


Download files

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

Source Distribution

recompute_kit_verify-0.1.0.tar.gz (4.3 kB view details)

Uploaded Source

Built Distribution

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

recompute_kit_verify-0.1.0-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file recompute_kit_verify-0.1.0.tar.gz.

File metadata

  • Download URL: recompute_kit_verify-0.1.0.tar.gz
  • Upload date:
  • Size: 4.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.3

File hashes

Hashes for recompute_kit_verify-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b9990da5a0cae72e6fc309259ef9568fc5d06a1e1358a019ab4547f30e890cca
MD5 4e6c7544f17ac83844044df0d842f591
BLAKE2b-256 8c4bfe8a83707487229409e182a15e1ef3391a429da2f6fe08c71f49fc2e5863

See more details on using hashes here.

File details

Details for the file recompute_kit_verify-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for recompute_kit_verify-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 86cebc7637b4a4e9de299b6cb01e2bcb1666555b5df71bec720f00ef89f7bc74
MD5 c5be39fe850aaad7a4184056db3742a7
BLAKE2b-256 c595a7eaf44331d0f7cebdcf231fa13c873f9200b30b4ced0e6254ae07e12478

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 Pingdom Monitoring Sentry Error logging StatusPage Status page