01

A real-world input problem

The contract never saw the request.

So why should it trust the result?

browser untrusted
02

HTTPS solves transport

Secure connection.

  • Server authenticated
  • Response encrypted
  • Transit integrity

But the contract has

zero evidence.
Browserclient-controlled
HTTPSsecure transport
Reclaimnot reached
2 of 3not reached
Midnightnot reached
03

The browser is not a trust boundary

A genuine response and an invented value can look identical.

The problem is provenance, not transport.

04

zkFetch + self-hosted Reclaim attestor

Make the interaction verifiable.

GET strava.com real HTTPS request
Reclaim witnesses the TLS interaction
PROOF server + response independently verifiable
Browserrequest
HTTPSauthenticated
Reclaimproof artifacts
2 of 3next
Midnightlater
05

The compatibility gap

Two proof systems.
No native verifier.

We need a translation layer.

06

The verification bridge

Verify once per notary.
Sign one typed assertion.

RECLAIM ARTIFACT captured Strava response proof · host · required fields
N1verifysign
N2verifysign
N3verifysign
ASSERTION v1 distance · moving_time
timestamp · nonce
Today: notaries temporarily see the captured response. Next: Reclaim redaction reveals only required fields.
07

Compact-compatible signatures

Two signatures cross the boundary.

N1valid
N2valid
N3optional
≥ 2 Jubjub-Schnorr exact Compact encoding
accepted
1 compromised signer cannot forge 2 colluding signers can forge
08

Checkpoint

What we have now

Real HTTPS responsethe browser made the request
Reclaim-verifiedthe interaction is independently checkable
Threshold-signedat least two notaries agree
Ready for Compactno workout on-chain yet
09

What Midnight adds

A private, replay-resistant credential.

01Threshold≥2 registered signatures
02Freshnesstimestamp window
03Nullifierno replay
04Holder bindingpseudonymous ownership
05Commitmentraw response stays off-ledger
Publiccommitment · nullifier · timestamp · disclosed result
Privateassertion · workout values · holder secret
10

WitnessFitness

Authenticated web data.
Private contract logic.

Wagersealed until settlement
Badgeprove a threshold, hide the metric
Streakprove continuity, hide the dates
Browser
HTTPS
Reclaim
2 of 3
Midnight

Now let us show the complete path with a real Strava workout.