Every governed decision emits an ECDSA P-384-signed, hash-chained, replayable record bound to the policy version in force. Below is a real sample — download it and verify the signature offline yourself.
The pack is a simplified demonstration certificate that illustrates the shape of the decision record EVE produces for every governed decision — not the full production eve.decision.v3 schema: the proposed action, the ALLOW / MODIFY / BLOCK verdict and reason code, the policy set and version that governed it, a risk score, a content hash plus prior-record hash for the audit chain, and an ECDSA P-384 signature. This sample is signed with a clearly-labeled demo key (published below) so it is safe to share and you can verify it yourself. Production certificates are signed with the platform key whose public half is published at /.well-known/eve-pubkey.
This is a simplified demonstration certificate, signed with a published demo key so you can verify it offline — not the full production eve.decision.v3 schema. See EVE Proof for the production evidence format.
Schema & canonicalization registry. Production artifacts are canonicalized with jcs-1 (a constrained RFC 8785 JSON Canonicalization Scheme profile). The legacy sample on this page uses the same sorted-key principle described informally.
| Artifact | Schema | Canonicalization |
|---|---|---|
| CoreGuard decision record | eve.decision.v3 |
jcs-1 (constrained RFC 8785 JCS) |
| EVE Proof Governed Decision Certificate | GDC v1.1 | jcs-1 (constrained RFC 8785 JCS) |
| Legacy examiner sample (this page) | eve.decision.v1 |
sorted-key JSON, UTF-8, no insignificant whitespace |
{
"certificate_version": "eve.decision.v1",
"request_id": "req-2026-07-14-000042",
"tenant_id": "org_sample",
"timestamp": "2026-07-14T15:04:05Z",
"proposed_action": {
"type": "loan_approval",
"amount": 50000,
"applicant_ref": "app_9f3c"
},
"model_output": {
"decision": "approve",
"confidence": 0.91
},
"decision": {
"status": "MODIFIED",
"reason_code": "lending.dti_over_threshold",
"modification": "route_to_manual_review"
},
"policy": {
"policy_set": "lending_v1",
"policy_version": "2026.07.1"
},
"risk": {
"level": "MEDIUM",
"score": 0.42
},
"evidence": {
"canonicalization": "sorted-keys JSON, UTF-8, no insignificant whitespace",
"hash_alg": "sha256",
"prev_record_hash": "sha256:9b1f...c204"
},
"signature": {
"alg": "ecdsa-p384",
"public_key_id": "demo-examiner-sample-2026",
"content_hash": "sha256:72d4fcebb0777799e3cbcf453cadfaf052e943f4f76e7ed0505cd7d9938b5d49",
"value": "kms-ecdsa-p384:e78313dfbd4b6e702b6e7b52ea0b321d7da6ce2396182bc1458f76dcee159932ee44a354b5e2bd7edffd9ea470a8a8e8074b1fcb2f40301269180ba9616c1d0f"
}
}
77be917626243bd07e5d703372fea46d686c5e2ecb178c13e4bf809040b8639f
Remove the signature block and re-serialize the remaining fields with sorted keys, UTF-8, and no insignificant whitespace.
SHA-256 the canonical bytes and confirm it equals the certificate’s content_hash.
Verify the ECDSA P-384 signature over the canonical bytes against the demo public key (or the published platform key for production certs).
A minimal Python check — the same procedure the eve-coreguard SDK performs, and what the live verifier at /verify does for production certificates:
import json, base64, hashlib
from cryptography.hazmat.primitives.serialization import load_pem_public_key
from cryptography.hazmat.primitives.asymmetric import ec
from cryptography.hazmat.primitives import hashes
cert = json.load(open("sample-decision-certificate.json"))
sig = cert.pop("signature") # remove signature block
canonical = json.dumps(cert, sort_keys=True, separators=(",", ":")).encode()
assert sig["content_hash"] == "sha256:" + hashlib.sha256(canonical).hexdigest()
pub = load_pem_public_key(DEMO_PUBLIC_KEY_PEM.encode()) # ECDSA P-384 (AWS KMS)
pub.verify(bytes.fromhex(sig["value"].split(":", 1)[1]), canonical, ec.ECDSA(hashes.SHA384())) # raises if invalid
print("signature OK — verdict:", cert["decision"]["status"])
Set DEMO_PUBLIC_KEY_PEM to the PEM value above. For production certificates, fetch the key from /.well-known/eve-pubkey instead.
Because the verdict is deterministic — the same normalized input under the same policy version yields the same result — the certificate is not just a log line. It can be re-derived and re-verified long after the decision was made, and it names the exact policy version that governed it. That is the difference between “we have logs” and “here is the decision, signed, and here is how to prove it.” See EVE Proof for the full evidence layer.
eve-coreguard SDK performs it offline, and the live verifier at /verify checks production certificates with no login.Walk your model-risk, security, or engineering team through where the gate sits, how the evidence is produced, and how offline verification works — then run one of your real decisions through it. Founding design-partner pilot from $27,500 (standard $37,500).
Related: EVE Proof · Live verifier · For model risk · For compliance.