Cryptographic receipt verifier for AI-assisted code changes (TRS-1)
Project description
Titan Gate
Titan Gate is the commit history for AI decisions.
Every code change evaluated by an AI system produces a receipt — a signed, chained, Merkle-anchored artifact that proves what was evaluated, what verdict was reached, and that the record has not been altered.
Receipts are independently verifiable by any party with access to the receipt file and the signing key. No network access, no database, no trusted third party required.
Verify a Receipt
pip install titan-gate
titan-verify receipt.json --key <hex_key>
Or run directly:
python titan/verify.py receipt.json --key <hex_key>
Expected output:
============================================================
TITAN GATE RECEIPT VERIFICATION
============================================================
Receipt ID : tv1-genesis
Tenant : tenant_test
Repo : tenant/test-repo
Verdict : PASS
Score : 0.88
Evaluated At : 2026-03-04T10:00:00Z
------------------------------------------------------------
VERIFICATION : PASS
Signature : VALID
Hash : VALID
============================================================
Example Receipts
Test vectors with known-good hashes and signatures are in examples/:
| File | Verdict | Key |
|---|---|---|
| TV1.json | PASS | 00...00 (64 zeros) |
| TV2.json | WARN | 00...00 (64 zeros) |
| TV3.json | PASS | 00...00 (64 zeros) |
Verify all three:
python titan/verify.py examples/TV1.json --key 0000000000000000000000000000000000000000000000000000000000000000
python titan/verify.py examples/TV2.json --key 0000000000000000000000000000000000000000000000000000000000000000
python titan/verify.py examples/TV3.json --key 0000000000000000000000000000000000000000000000000000000000000000
Specification
Full cryptographic specification: SPEC.md
Covers: receipt format, canonical JSON serialization, HMAC-SHA256 signing, Merkle ledger construction, anchor files, verification algorithm, SOC2 control mappings.
Architecture
Titan Gate consists of five cryptographic verification layers:
- Deterministic evaluation — three-judge scoring engine
- Signed receipts — HMAC-SHA256 over canonical JSON
- Receipt chaining — append-only chain via
prev_receipt_hash - Merkle ledger — daily Merkle root over all receipts
- Anchor notarization — sealed roots stored in Git
SOC2 Alignment
| Control | Coverage |
|---|---|
| CC6.1 | Tenant isolation, API key as SHA256 |
| CC6.7 | HMAC-SHA256 signature over canonical bytes |
| CC7.2 | Replay engine, chain integrity verification |
| CC8.1 | Signed receipt per PR, verdict + score recorded |
License
Apache 2.0 — see LICENSE
Specification — CC BY 4.0
Once all four files are saved, confirm:
Get-ChildItem C:\Users\rmaso\Projects\titan-gate-public -Recurse
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file titan_gate-1.0.2.tar.gz.
File metadata
- Download URL: titan_gate-1.0.2.tar.gz
- Upload date:
- Size: 5.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b83884c7bd18a64b63724254120baf1fb9559b8bc822d1160454c612d9ab5799
|
|
| MD5 |
0d5f3fd615cf9ef1825a73ed1f126d96
|
|
| BLAKE2b-256 |
5cda2be308c56f0e18bbe7a9bc316d4feafa8a7b2593acaacd82daa9f5396127
|
File details
Details for the file titan_gate-1.0.2-py3-none-any.whl.
File metadata
- Download URL: titan_gate-1.0.2-py3-none-any.whl
- Upload date:
- Size: 6.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9daed251bad08c83bc08b67cba147777667b89471120824b04d6007c01023367
|
|
| MD5 |
625901dfa037b3780a655ea5fb41822d
|
|
| BLAKE2b-256 |
52f5d6e9d6605c3249361ee39c4e9b9a8da9c904921ed35089255ed795ad0c49
|