Verification Guide
Verifying a Horizon Proof Bundle
Canonical · Public · Reference
Audience: Auditors · External reviewers · Security teams · Legal experts
Applies to: All Horizon deployments
1. Purpose of This Document
This document explains how Horizon evidence can be verified and what such verification guarantees.
It defines:
- what a Horizon proof bundle contains,
- what is cryptographically verifiable,
- how tampering is detected,
- and the limits of verification.
This guide does not explain how Horizon is implemented internally. It explains what can be independently checked.
2. What Is a Horizon Proof Bundle
A proof bundle is a verifiable artifact produced by Horizon that packages:
- a set of sealed facts,
- their cryptographic hashes,
- their chaining information,
- and a Horizon signature.
A bundle represents the state of a stream at a given point in time. Bundles are immutable once issued.
3. Contents of a Proof Bundle
A Horizon proof bundle includes, at minimum:
bundle_idbundle_versiona list or manifest of factsthe head_hash of the stream at bundle timea cryptographic signaturea reference to the signing key (key_id or equivalent)
Optionally, a bundle may reference:
- attachments manifests,
- external evidence objects.
4. What Verification Checks
Verification of a Horizon proof bundle consists of four independent checks.
4.1 Signature Verification
The bundle signature is verified using the public key corresponding to the declared signing key.
This establishes that:
- the bundle was produced by Horizon,
- the bundle content has not been altered since signing.
4.2 Fact Hash Verification
For each fact in the bundle:
- the fact payload is hashed,
- the computed hash is compared to the stored fact_hash.
This establishes that each fact has not been modified after sealing.
4.3 Hash Chain Verification
Facts are linked using a hash chain (prev_hash → fact_hash).
This establishes:
- append-only ordering,
- tamper evidence across the entire stream segment.
Verification recomputes the chain and confirms that:
- each fact correctly references the previous one,
- the final computed hash matches the bundle head_hash.
4.4 Bundle Consistency Verification
The verifier checks that:
- the bundle references the correct stream,
- the set of facts is complete up to head_hash,
- no fact is missing, reordered, or duplicated.
5. What Verification Proves
Successful verification proves that:
Successful verification proves that:
- the bundle was produced by Horizon,
- the included facts were sealed by Horizon,
- the facts have not been altered since sealing,
- the ordering of facts is append-only and intact.
Verification establishes integrity and authenticity of the evidence.
6. What Verification Does NOT Prove
Verification does not prove:
Verification does not prove:
- that the declared facts are true,
- that the declared actors are legitimate,
- that actions occurred as described,
- that timestamps reflect real-world occurrence,
- that the stream is complete,
- that no other facts exist outside the bundle.
Verification validates evidence integrity, not evidence meaning.
7. Verification Scope and Independence
Verification can be performed:
Verification can be performed:
- by Horizon systems,
- by client systems,
- by third-party auditors,
- by regulators or courts.
No access to Horizon internal systems is required, provided that:
- the proof bundle,
- and the corresponding public verification material are available.
8. Handling of Incomplete or Partial Bundles
A proof bundle reflects the stream up to a specific point in time.
A proof bundle reflects the stream up to a specific point in time.
The absence of later facts:
- does not indicate failure,
- does not indicate success,
- does not indicate abandonment.
Verification does not infer completeness.
9. Key Management and Trust Assumptions
Verification assumes:
- the authenticity of the Horizon public signing key,
- correct key distribution or trust anchoring.
Verification does not:
- assess key governance,
- assess Horizon operational security,
- assess client security posture.
10. Legal Interpretation Boundary
Verification establishes technical integrity, not legal qualification.
Verification establishes technical integrity, not legal qualification.
A verified bundle:
- is not a decision,
- is not an authorization,
- is not a compliance assertion,
- is not a determination of responsibility.
Interpretation remains the responsibility of organizations, auditors, courts, or regulators.
11. Canonical Summary
Verification confirms that Horizon evidence is intact and authentic. It does not confirm what the evidence means.
12. Status and Stability
This document defines the stable verification semantics of Horizon. Any future evolution of Horizon must remain consistent with the guarantees described here.