Public Transparency Log
Certificate Transparency for AI
Every compliance attestation Permisyn issues is written to an append-only Merkle log.
Don't trust us — verify it yourself.
Current Signed Tree Head
Loading tree head…
Verify an attestation
Verify independently (Python)
import hashlib
def _sha256(s): return hashlib.sha256(s.encode()).hexdigest()
def _node(l, r): return _sha256(f'node:{l}{r}')
def verify(leaf_hash, proof, root_hash, leaf_index):
node, idx = leaf_hash, leaf_index
for sib in proof:
node = _node(node, sib) if idx % 2 == 0 else _node(sib, node)
idx //= 2
return node == root_hash
# Fetch proof + head from the public API, then:
# verify(p['leaf_hash'], p['proof'], p['root_hash'], p['leaf_index']) -> TruePublic API: GET /transparency/proof/{id} · GET /transparency/head — no API key required.
Anchor chain
Each anchor pins a tree head and links to the previous one. Pin the latest anchor hash externally and Permisyn can never rewrite history without breaking the chain.
No anchors sealed yet — the first is created on the next hourly tick.
Recent log entries
No entries yet.