Bitcoin Research Snapshot Verifier

Server-side canonical JSON and SHA-256 recomputation for immutable public research records

What is the Bitcoin Research Snapshot Verifier?

The verifier reloads an immutable snapshot, canonicalizes its JSON and recomputes SHA-256 for comparison with the stored content hash.

How do I use the Bitcoin Research Snapshot Verifier?

Download a verification receipt before citing, republishing or bundling a snapshot; every integrity check should pass.

What should I watch out for?

A matching hash proves the record was not altered; it does not prove the model, input data or conclusion is correct.

How the Bitcoin Research Snapshot Verifier works

Have the server re-read an immutable research snapshot, canonicalize its JSON, recompute the SHA-256 hash and compare it with the hash stored at publication. Run it before citing, republishing or bundling a snapshot to confirm the record is unaltered.

What you enter

  • Snapshot ID in bir_... format (18–32 letters, digits, hyphens or underscores after the prefix), or a link containing it

What it shows

  • VERIFIED or FAILED verdict with title and ID
  • Server-recomputed SHA-256
  • Eight checks: JSON readable, canonical hash matches, valid ID, valid research type, data version present, methodology version present, valid creation time, schemaVersion ≥ 1
  • Downloadable verification receipt and an Open original snapshot link

How to use it

  1. Paste the ID or snapshot link.
  2. Click Recompute and verify.
  3. Confirm every check passes.
  4. Download the receipt and keep it with your report.

Formula

Canonical JSON = payload with keys sorted alphabetically at every level, undefined values dropped and non-finite numbers set to null. Recomputed hash = SHA-256(canonical JSON) in hex. VERIFIED only if recomputed hash = stored hash and all 8 checks pass.

Worked example

You paste the link of a power-law backtest snapshot. Seven checks pass but canonicalHashMatches fails, so the verdict is FAILED: all 8 are required. When all pass, you download the ID-verification.json receipt and attach it to your report.

How to read the result

  • canonicalHashMatches is the core check that the payload matches the recorded hash.
  • Other checks validate metadata such as ID format and one of the 5 research types.
  • The receipt hash must match a cited hash character for character.

Limits and cautions

  • A matching hash proves integrity, not that the model or conclusion is correct.
  • It does not rerun the backtest or any calculation.
  • Errors include invalid_snapshot_id and snapshot_not_found; the API allows 120 requests per minute per IP.

Common questions

Does it rerun the backtest?

No. It only re-canonicalizes, rehashes and checks metadata.

What is canonical JSON?

JSON with keys sorted at every level, so identical content always yields the same hash.

Can I verify via API?

Yes: GET /api/bitcoin-research-verify?id=bir_... returns the same receipt, no key needed.

🌡 Latest BTC cycle reading: 40/100 · Neutral Zone (as of 2026-11-05). BTC Cycle Thermometer: Bitcoin top or bottom?

Free to use with no signup. Read Bitcoin valuation, cycle, backtests and alerts, and calculate fees, slippage, funding and post-rebate cost before trading.