Verifiable Operations Ledger & Trace
Tamper-evident, portable, verifiable traces of agent operations. Cryptographic hash chains that prove what happened - not just log it.
VOLT protocol explainer. SHA-256 hash chains, Evidence Bundles, tamper-evident verification.
Why VOLT?
Logs record what happened. VOLT proves it. Modern agent systems are powerful, but their audit trails are often mutable, platform-locked, and unverifiable. VOLT turns them into tamper-evident agent logs: hash-chained events that break verification at the exact point anything is altered.
Event schema
Every VOLT event carries 10 required fields:
{
"v": "VOLT/0.1",
"run_id": "run_01JM8...",
"seq": 1,
"ts": "2026-02-28T12:00:00.000Z",
"type": "tool.call",
"actor": "agent.cipher",
"hash": "a1b2c3d4...",
"prev_hash": "0000000000000000000000000000000000000000000000000000000000000000",
"payload": {
"tool": "ssh.exec",
"host": "nw-web-01",
"command": "df -h"
}
}Event types cover the full spectrum of agent operations:
Hash chaining
Each event's hash is computed over its canonical JSON serialization (sorted keys, no whitespace). The prev_hash field links to the preceding event, forming an append-only chain.
Genesis Event (seq: 0)
┌─────────────────────────────────┐
│ prev_hash: 0000...0000 (64 zeros) │
│ hash: SHA-256(canonical_json) │
│ = a1b2c3d4... │
└─────────────┬───────────────────┘
│
▼
Event (seq: 1)
┌─────────────────────────────────┐
│ prev_hash: a1b2c3d4... │ ← must match Event 0's hash
│ hash: SHA-256(canonical_json) │
│ = e5f6a7b8... │
└─────────────┬───────────────────┘
│
▼
Event (seq: 2)
┌─────────────────────────────────┐
│ prev_hash: e5f6a7b8... │ ← must match Event 1's hash
│ hash: SHA-256(canonical_json) │
│ = c9d0e1f2... │
└─────────────────────────────────┘
⚠ Modify any event → its hash changes
→ next event's prev_hash won't match
→ CHAIN BROKEN - tampering detected
Evidence bundles
A run can be exported as a portable, self-describing Evidence Bundle: a tamper-evident audit trail that any party can verify independently:
evidence-bundle/
manifest.json # Run metadata, hash algorithm, event count,
# first/last event hashes
events.ndjson # Complete event chain, one JSON per line
attachments/ # Content-addressed artifacts (SHA-256 named)
signatures/ # Optional Ed25519 attestationsRolling bundles
Generated during execution. Partial event chains that grow as events are recorded. Useful for real-time monitoring and early anomaly detection.
Final bundles
Generated after a run completes. Complete event chains with verified manifest. The definitive evidence artifact for audit and compliance.
Verification
A VOLT verifier checks bundle integrity through a 9-step algorithm:
Exit codes: 0 = PASS (all checks valid), 1 = FAIL (integrity violation detected), 2 = ERROR (malformed bundle).
Conformance levels
VOLT defines three conformance levels, each building on the previous:
Emits valid VOLT events with correct hashing and prev_hash linking
- SHA-256 event hashing
- prev_hash chain linking
- All 10 required fields
- Genesis event with 64 zeros
Packages events into portable Evidence Bundles with manifest and attachments
- All VOLT-R requirements
- manifest.json generation
- events.ndjson export
- Content-addressed attachments
Independently validates any Evidence Bundle and produces PASS/FAIL report
- Hash recomputation
- Chain integrity check
- Manifest validation
- Attachment verification
Threat model
VOLT addresses 10 categories of evidence tampering:
| ID | Threat | Mitigation |
|---|---|---|
T1 | Event deletion | Hash chain breaks on any gap |
T2 | Event modification | Hash mismatch detected by verifier |
T3 | Event insertion | prev_hash won't match surrounding events |
T4 | Event reordering | Sequence numbers + hash chain |
T5 | Log fabrication | Ed25519 signatures (optional) |
T6 | Selective export | Manifest records expected event count |
T7 | Attachment tampering | Content-addressed by SHA-256 |
T8 | Timestamp manipulation | Monotonic ordering enforced |
T9 | Secret leakage | No-secrets rule in spec |
T10 | Full host compromise | Tamper-evidence, not prevention |
Privacy & redaction
VOLT enforces privacy at the protocol level:
No-secrets rule
VOLT events store metadata (tool names, operation types, durations, exit codes) rather than raw inputs or outputs. Secrets in event payloads are non-conformant.
Explicit redaction
Fields that must be included but contain sensitive data can be explicitly redacted with a redaction flag, preserving chain integrity while protecting data.
Shareable evidence
Evidence Bundles are designed to be shared with auditors, regulators, and counterparties without exposing sensitive operational data.
Open Specification
VOLT is fully specified and implemented in QuoxCORE today. It is a live IETF Internet-Draft (draft-cowles-volt-01), filed 2026-02-28.
VOLT specification on GitHub · draft-cowles-volt-01 on the IETF datatracker
From the blog