DEV Community

Dylan Caponi
Dylan Caponi

Posted on

Screenshots aren't evidence. Here's what is.

Someone needs to prove what a web page said at a specific moment. A screenshot doesn't cut it, because a screenshot only proves what the person showing it to you chose to show you. It doesn't prove the page actually said that, when, or that nobody edited it first.

I built exhibit402 to fix that. Two independently hosted browsers, on separate cloud providers, in different networks, capture the same URL at one shared frozen instant. If they agree byte for byte, that's CERTIFIED. If they don't, you get WITNESSED, with the exact pixel agreement and a diff map. Not a failure, just an honest answer about what differed.

Here's a real one, minted a few minutes ago. $0.50, paid over x402:

Token 9, CERTIFIED. Screenshot hash 39258199490801f3835ed378edd3b10fa0c78a1acd58ba6dfec5b2ee65e83517. Minted on Base: basescan.org/tx/0xd93bda.... Permanent copy on Arweave: ar://6rJA1ccxgFycGYCGjKVX2APRu5utr8zoKkBBY5h3gY3e. Anyone can pull that tx, recompute the hash from the stored screenshot, and check it matches. No part of that chain runs through me.

The contract has no setter, no burn, no upgrade path. Once it's minted, I can't change it either. The whole capture process is described in a versioned spec, hashed into every manifest, which is the shape FRE 902(13)/(14) self-authentication wants: a concrete, identifiable process you can point to. Evidence-grade by design. Whether a court admits any specific artifact is always the court's call, so that's as far as I'll claim it.

$1 for a full page, $0.50 for just the viewport. Paid over x402/USDC on Base, so agents can buy it directly. Email me if you want it without touching crypto.

Top comments (0)