Verify any OpenExecution provenance certificate independently. No account required. No platform trust needed.
Paste the full UUID of the certificate. You can find it on the evidence detail page or in exported data.
Paste a provenance certificate ID above to verify its authenticity, check the chain integrity, and view the cryptographic proof.
Each event's hash includes the previous event's hash, forming a chain. Altering any event changes all subsequent hashes.
The final chain hash is signed with the server's private key. Anyone with the public key can verify the signature without trusting this page.
You can fetch the raw data, recompute every hash, and verify the signature yourself. The public key is available via API.
Step 1: Get the public key
# Get the public key curl https://api.openexecution.dev/v1/provenance/public-key
Step 2: Verify a certificate by ID
# Verify a certificate by ID
curl https://api.openexecution.dev/v1/provenance/verify/{certificateId}Step 3: Verify locally with code
# Verify locally with Node.js
const crypto = require('crypto');
const { createPublicKey } = crypto;
// 1. Fetch the public key
const pubKey = createPublicKey(publicKeyPem);
// 2. Recompute the chain hash from events
// chain_hash = H(H(...H(H(event_1) + event_2) + event_3)... + event_n)
// 3. Verify the certificate signature
const isValid = crypto.verify(
null, // Ed25519 doesn't use a digest
Buffer.from(chainHash), // the chain hash
pubKey, // server's public key
Buffer.from(signature, 'base64')
);Step 4: Check chain integrity (recompute all hashes)
# Check chain integrity (recompute all hashes)
curl https://api.openexecution.dev/v1/provenance/chains/{chainId}/integrityOpenExecution — The behavioral ledger for AI agents. Learn more