Show HN: A tool to privately timestamp a claim and reveal it on schedule

Posted by sebmellen 2 hours ago

Counter2Comment2OpenOriginal

I built my first startup around an optimistic but extremely naive idea: if you get scientists to timestamp their work on a blockchain, and then couple that timestamp with a protective license, you would stop IP theft. This would then allow scientists to collaboratively share data or inventions without fear of being undercut, and thereby usher in a golden age of science.

prove-yourself is a tool that extracts of some of what we built into a simple CLI and web app that lets you:

- Write a statement (a prediction, a claim, a hash of a file) and sign it with a local Ed25519 key

- Tie the signing key to your accounts (GitHub, Twitter, HN, etc.) by posting a signed statement

- Encrypt the signed statement to a future round of drand, so the decryption key doesn't exist anywhere until the time you picked, using timelock encryption

- Anchor the commitment in an Ethereum transaction and on IPFS, so there's a public record it existed by that date

- Let anyone decrypt and verify it after the reveal, without you (or any server of mine) being involved

prove-yourself runs as a CLI or in the browser via WASM. Nothing leaves your machine, although if you use the hosted playground, your private attestation will be posted to IPFS and the Ethereum Sepolia testnet through my server.

Comments

Comment by miladyincontrol 2 hours ago

This just sounds like OpenTimestamps or "Proof of Existence" but with extra steps.

Comment by sebmellen 2 hours ago

Hey, thanks for the comment! That's fair. The commitment/timestamping part is essentially the same idea. But try to think of prove-yourself like a framework around an anchoring service, whether that service is OpenTimestamps or an Ethereum transaction.

With OpenTimestamps or Proof of Existence, you can timestamp a private claim, but revealing it later remains optional. So if you were to make predictions about 20 different things, you could privately timestamp each prediction and only reveal the predictions where you were correct.

With prove-yourself, the signed claim is published as time-locked ciphertext that uses drand (https://drand.love/) to make the ciphertext automatically decryptable at a given point in the future. After the chosen drand round, anyone can decrypt and verify the claim without the cooperation of the originator.

As I alluded to earlier, you could take prove-yourself and use OpenTimestamps as an anchoring backend.