Independent Verification Protocol · Earth Observation & Carbon Integrity

Verify the claim,
not the headline.

An open cryptographic evidence ledger that holds environmental claims and carbon market baselines accountable to raw Earth observation. Submitters package reproducible Sentinel-2 satellite telemetry, automated quality gates detect cherry-picked scenes and hidden calibration offsets, and every audit trail, challenge, and supersession is anchored immutably on Ethereum Sepolia — with zero backend trust.

Operational module Sentinel-2 L2A Disturbance & Baseline Verification · any MGRS tile Anchored case June 2025 İzmir Disturbance · Tile 35SMC · 6 Sepolia transactions Contract 0xb1ce…210f on Etherscan ↗
Pre-Fire True Color (25 June 2025)
Contained Burn Scar (5 July 2025)
FIG. 0 — dNBR · 5 JUL 2025 · 35SMC
9,726.2 hacontained · dNBR ≥ 0.20
+24.6%after 30 June overpass

Real Copernicus Sentinel-2 L2A 20 m COGs via AWS Open Data. Drag slider to wipe between 25 June pre-fire baseline and 5 July contained burn scar. Raster dNBR is computed by the open CLI; the browser hashes, gates and anchors. No simulated panels.

0
NERO reference · 30 June (ha)
0
CCEL 30 June · dNBR ≥ 0.20 (ha)
0
Contained · 5 July (ha)
0
Offset bias if BOA −1000 omitted (ha)
Mission control

Today on the desk

Live from fixtures + Sepolia RPC
Anchored packages2

v1 challenged → v2 approved. Lineage preserved on-chain.

View registry →
Needs evidence1

Package v1 · NEEDS_EVIDENCE · rationale requested, not accused.

Open workspace →
Local drafts (this browser)0

Drafts you build in Submit live only here until you anchor them with your wallet.

New submission →
System healthChecking…

Fixtures, canonical hashing and Sepolia RPC.

Run full verification →

Review queue

How a claim moves

  1. SubmitWizard builds an RFC 8785 envelope for any tile and hashes it in your browser.
  2. GatekeepFive gates check envelope, bounding, census/timing, calibration/sensitivity, recovery limits.
  3. InspectAuditors interrogate curves, four-date imagery and the map before deciding.
  4. AnchorWallet-signed Sepolia transactions make reviews and challenges permanent.

Honest boundary: the browser verifies envelopes, method disclosure and anchored evidence. Pixel-level dNBR for a new tile is computed by the open CLI (izmir_dnbr.py pattern) and its outputs are hashed into the package — the UI never invents raster results.

Live Satellite Evidence & Sensitivity Lab

Interact directly with the ground-truth evidence

Live Telemetry Hook Open Full Workspace →

Traditional climate reporting presents a static burn hectare headline. CCEL allows you to independently wipe between satellite acquisitions, inspect the 4-date multi-temporal census, and drag the burn-severity threshold to expose hidden sensitivity and calibration biases.

Interactive Before/After Satellite Wipe Drag slider or move pointer across to wipe between 25 June Pre-Fire baseline and 5 July Contained Scar (9,726.2 ha)
Pre-Fire True Color (25 June 2025) Pre-Fire · 25 June 2025
Contained Burn Scar (5 July 2025) Contained · 5 July 2025 (9,726.2 ha)
1 · Pre-fire — 25 June 2025
S2B_35SMC_20250625_1_L2A · 0.02% cloud
Pre-fire true colour, 25 June 2025

Intact pine forest and maquis, four days before the 29 June 09:57 UTC ignition.

2 · Active fire — 30 June 2025
S2C_35SMC_20250630_0_L2A · NERO overpass
Active fire true colour, 30 June 2025

1,957.5 ha under active smoke / dark char (SCL 2 & 7). Fire B still spreading.

3 · Contained — 5 July 2025
S2B_35SMC_20250705_0_L2A · smoke-free
Contained dNBR burn map, 5 July 2025

Smoke-free perimeter. +1,917.6 ha (+24.6%) of post–30 June expansion revealed.

4 · Anniversary — 25 June 2026
S2C_35SMC_20260625_0_L2A · 0.015% cloud
One-year follow-up composite, 25 June 2026

1-year anniversary (25 June 2026): Mean NBR over burned scar shifted from −0.6205 to +0.1619 (herbaceous rebound, not replanting).

Interactive Threshold & Method Sensitivity

Drag the threshold slider to see how a single reported hectare number is unscientific without publishing the full curve and calibration offset.

5 July 2025 contained (calibrated) 30 June 2025 provisional (calibrated) 30 June uncalibrated raw DN

Across dNBR 0.15–0.44 the estimate spans 7,963.1 → 7,227.7 ha (735.4 ha). Omitting ESA Processing Baseline 05.xx additive offset (BOA_ADD_OFFSET = −1000) causes an artificial undercount of −1,703.6 ha (−23.6%). Publishing the curve — not a point — is the reproducibility requirement.

Core System Architecture & Verification Guarantees

A claim cannot outrun its evidence

4 Integrity Guarantees · Zero-Trust Architecture

Four deterministic verification guarantees executed directly in your browser and anchored on Ethereum Sepolia — replacing unaudited PDF claims with verifiable satellite telemetry.

Guarantee 1Anti-Cherry-Picking

Exhaustive Scene Census

Multi-catalog STAC pagination (284 scenes) flags omitted clearer or post-containment overpasses automatically.

284 scenes reconciled · 0 discrepancies
Guarantee 2Anti-Single-Point Bias

Method Sensitivity Disclosure

Mandates 6-tier USGS curves and ESA baseline calibration (BOA = −1000), eliminating hidden offset distortion.

6-tier USGS curve · 735.4 ha spread disclosed
Guarantee 3Permanent Audit Trail

Immutable Lineage & Timing

Disputes and supersessions stay permanently on Sepolia in an acyclic DAG. Retrospective rules are flagged POST_HOC.

Contract 0xb1ce…210f · 6 immutable txs
Guarantee 4Zero-Backend Trust

Pure Client-Side Proofs

Browser WebCrypto computes canonical JSON (RFC 8785) and Merkle roots (RFC 6962) with Python byte parity.

WebCrypto SHA-256 · RFC 8785 + RFC 6962
System Architecture & Telemetry Router

From Raw Satellite Telemetry to Cryptographic Settlement

Stage 1: Remote Sensing Ingestion

Every step of the verification pipeline is deterministic, client-verifiable, and reproducible. Click any architecture node below to inspect its data routing, mathematical formulas, and cryptographic invariants.

Stage 1 Ingestion
Copernicus Sentinel-2 & STAC Router

Exhaustive STAC pagination across AWS & Planetary Computer (284 scenes). HTTP Range streaming of 20m COGs.

B8A · B12 · SCL AWS S3 COGs
Stage 2 Raster Core
Deterministic dNBR & Calibration

Applies ESA Baseline 05.xx offset (BOA = −1000). Publishes full 6-tier USGS sensitivity curve.

BOA = −1000 6 USGS Tiers
Stage 3 WebCrypto
RFC 8785 & Merkle DAG Engine

Pure client-side canonicalization (JCS) and RFC 6962 binary Merkle tree with Python byte parity.

RFC 8785 JCS RFC 6962 Tree
Stage 4 Gatekeeper
Deterministic Quality Gatekeeper

Runs 5 automated gates in browser: Merkle integrity, bounding, STAC census timing, sensitivity, recovery scope.

5 Quality Gates Zero Backend
Stage 5 Settlement
Ethereum Sepolia Ledger

Anchors submission, watchdog disputes, adjudications (NEEDS_EVIDENCE), and immutable supersession DAG.

0xb1ce…210f POST_HOC Timing
Stage 1 // Earth Observation & Telemetry Stream

Copernicus Sentinel-2 L2A & Multi-Catalog STAC Router

Zero-Trust Telemetry
Architecture Role & Data Routing

Queries AWS Earth Search and Microsoft Planetary Computer STAC APIs with paginated exhaustion across the monitoring window. Streams only the required bounding-box pixel blocks of 20m Cloud-Optimized GeoTIFFs (B8A, B12, SCL, TCI) via HTTP Range requests without downloading gigabytes of unneeded spectral bands.

Telemetry Scope: 284 scenes reconciled across 2 independent STAC catalogs · 0 catalog discrepancies
Cryptographic Invariant & Enforcement
Standard: OGC STAC 1.0.0 + HTTP/1.1 Range RFC 9110
Invariant: Census Completeness: Cannot omit clearer or later overpasses to hide fire spread
Live Reference: MGRS Tile 35SMC · S2B_35SMC_20250705_0_L2A

Why it matters: Eliminates selective scene omission (cherry-picking dates with heavy smoke or before the full perimeter was contained).