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.
Reclaim
external proof
≠
not natively
verifiable
Compact
Midnight circuit
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.