Huntstamp Solana devnet

Prove you found it first.

Bounty programs pay the earliest complete report. Every hunter has been told their finding was a duplicate, and none of them could prove otherwise. Huntstamp writes the fingerprint of a finding on chain before you file it, so the timestamp belongs to you rather than to the inbox that received it.

Live record

One finding, claimed on Wednesday and published on Thursday

Not a mockup. This is finding F-03 from a real bug bounty report — a settled prediction market showing a settlement date a week in the future — hashed and claimed on Solana devnet, then revealed the next day once the report went public. The 81,641 seconds between the two is elapsed time, not a demo loop.

Claim record confirmed
sha-256
ec5f4f9f4d7c385000e1a0d3b83e04b180926dbdc3f5f4f1e47544efefeb2e77
claim pda
CCo9veeEAyfuBPX3JDQvXrdgv1Mh6KrEEoVsmADZLLGy
hunter
35z7X59rtyts557Up1RAwpyYN7x2cFqcDc7RjPuNxFzr
slot
492437881
claimed at
2026-09-03T09:41:50Z
revealed at
2026-09-04T08:22:31Z — 81,641 s later
uri
https://huntstamp-findings.vercel.app
stamp tx
3gjdiQUkz5XiY9P1eKuoS3xx2GaKH4p7AHCfr7MjK73wRotWLyQPcyNd7kAbj5Nup1ddR9b6d2aN6rUaLYKS5wSW
reveal tx
5XM4MF387JYFVgjDoz4LNW4MV3w2zLmHjPAoMNU2N36CHDs1rw5SFVEVyvJd57i2UsX3LvqbnKJru1prDWGppshG
program
GQHsKDFMjTa8YJ21yKRQdQELw9zbuDT32LDUgkN5c99D

Mechanism

Commit, file, reveal

01

Commit

Hash the finding locally. Only the digest goes on chain, so nothing about the vulnerability is disclosed by the act of claiming it.

02

File

Submit to the bounty programme as you always would. Huntstamp sits beside that process rather than replacing it.

03

Reveal

When the report is public, attach it to the claim — the step shown in the record above. Anyone can hash the text, derive the address, and read both timestamps.

The guarantee

One digest, one claim, settled by the runtime

The claim account's address is derived from the digest itself. That single design choice is the whole product: a given finding maps to exactly one address, and an address can only be created once. The second hunter to send the same digest does not lose an argument — their transaction never lands.

$ node scripts/force-duplicate.js "<the same finding>"
claim PDA : CCo9veeEAyfuBPX3JDQvXrdgv1Mh6KrEEoVsmADZLLGy
REFUSED BY THE PROGRAM
Transaction simulation failed: Error processing Instruction 0:
custom program error: 0x0
  Allocate: account CCo9veeEAyfuBPX3JDQvXrdgv1Mh6KrEEoVsmADZLLGy already in use
  Program 11111111111111111111111111111111 failed: custom program error: 0x0

Scope

What this does not claim to do

It proves when, not who found it independently

A stamp shows that a particular string existed at a particular slot, held by a particular key. It cannot show that the hunter reasoned their way to it rather than overhearing it. Priority is evidence in a duplicate dispute, not a verdict.

It also cannot stop someone stamping a finding they have not yet written up, or stamping many speculative variants. A programme that adopted this would want a stake attached to a claim — that is the obvious next piece of work, and it is not built.

Devnet only. The program is deployed and the transactions above are real, but nothing here has been audited and no mainnet deployment exists.