Atomic Frontier
Campaign 01Idaho for the Nuclear Lifecycle Innovation CampusDecision pending · Five states remain
How We Count

Check us.
Don’t trust us.

This petition goes to the U.S. Department of Energy. A signature roll is only worth something if it can survive being examined, so here is exactly how it is built, including the parts we can’t claim.

54
Confirmed signatures, the only number we publish
87
Submitted, including those never confirmed
8 / 44
Counties represented
A signature doesn’t count until you click a link in your email

Anyone can type someone else’s name into a form. Idaho’s voter rolls are public, so a person wanting to discredit this could submit hundreds of real names without consent, then tip off a reporter.

That’s why a signature does not exist, is not counted, and never appears publicly until someone clicks a confirmation link sent to their own inbox. It is the single most important control here, and it is why the public number is always lower than the number of submissions.

The public count only ever shows confirmed signatures

Both numbers are above, side by side, permanently. A planted or abandoned entry can never reach the figure anyone screenshots.

One person, one signature, including the clever versions

Email addresses are reduced to a canonical form before being checked, so you+1@gmail.com, you+2@gmail.com and y.o.u@gmail.com are all recognised as the same person. Without that, email confirmation alone wouldn’t stop anyone signing fifty times from one inbox.

The roll is append-only, and published daily as a fingerprint

The obvious question about any petition is whether the people running it added names later. Signatures are stored append-only, and each day the confirmed set is hashed together with the previous day’s hash and published.

That makes the roll tamper-evident: anyone can verify afterwards that the list delivered contains exactly the signatures that existed on each earlier day, in order, with nothing inserted.

Here is the chain so far. Each day’s hash covers that day’s confirmations and the previous day’s hash, so altering anything in the past changes every hash after it.

Day (UTC)
Confirmed
SHA-256
2026-09-08
0
737b496b019ed36b5e9e8afc5e2573831abcc5a564bd418ce4ff407b55627fcd
2026-09-07
0
61c8915f7be6bad45ed79ff54edc856888135574ed8bb42caf0423b4d615876e
2026-09-06
0
cbbcc49e0ca296ff80084bab93170d45285946afd9581019bd0b4397d957c4d6
2026-09-05
1
1bfbd9bbb1890d4dfbe696f78d982a08fb4df2f1a71308939e4902f4147a73c9
2026-09-04
0
4faa1c0a124e851888393a673da3e4a14550213afca6f416911d644501c3e476
2026-09-03
5
741d820f60a83651b3178a0aa67419af8047c7ba2736b6f332263344de79b35d
2026-09-02
1
97fe9c83d6bc83d1189646271bc1b1453542b863fe87fc2e4c5a0fc1dc80bf18
2026-09-01
6
ae3d162ad05b919fdc24f7efbd4bf61a2d3917da8c7b7a4c2dd250e13b8a2855
2026-08-31
1
d86e9a5daa3ae5bdc3f4fabb5fa9c6f8c3949b83e8182c40507684cbd987dfac
2026-08-30
0
896e2a6990b4ce58c159f7760ba7104473ac86c1343ace839efab5c216113df9
2026-08-29
0
29c81e2ad9566bc7e38e98d2e8034e8429171c55503ab408ea43d847c589f5c8
2026-08-28
1
ecfdd9fe43fbc4b56f98de36150b64885ec2c71cafa9c3afa7fb2e68cb91823c
2026-08-27
0
426216798db515d03c3ba815616b2312ffa74c0c1c0d9280a5293025559a37ca
2026-08-26
5
d759ededf5ad3216eb8d2bc4e22f75a810841c2df0508dbe378f940bc074cf27
2026-08-25
7
3109757790ff3e060c2a22dee3c125cf023bf35e1de6585cdf8fb40e22faa166
2026-08-24
3
ca4156039dabd68cb571a48a125b1b44fa9efbf6a404913e2a4db0e64fee56d0
2026-08-23
0
8bb85e73652b0380daa56bfaefae7bec9100a3101bd4b6925cf2b50df49642e8
2026-08-22
0
42dbceac09104d17f121503abe3dabb4e1a6dfa506f4df16cc1b7bb8531209de
2026-08-21
0
aebe6329b5192931c1ffcc58a34beb3dc999e7605bcfb28266b5f932255bc387
2026-08-20
4
320563dfb72027bbfc59053068403b05bb5e4e8c4d521adae2ec8123c6713ac9
2026-08-19
5
c8a82bcb15cf8df8115f43cfc671cfa2fab519fd7dd4ab0dcb1899f5dfad88e5
2026-08-18
10
fefbca43831191b56184aab06da155c3c1e510d3baeac42571054c66680cf59a
2026-08-17
3
bed86570f6ba51f347237fd07749c5fba0bfacbd84a58d649dda4ba99bc72ed8
2026-08-16
2
8ba670c5beaf1c5e31afccf614c1560090d81f6b16cb5875add33df9719c9949

Built automatically at 07:10 UTC each day, inside the database. Not by a person, and not by anything we could forget to run. Days with no confirmations still get a link, so a gap in the chain is itself evidence.

What we check, and what we deliberately don’t

Every submission passes an invisible bot check, a hidden field no person can see, a minimum time-on-form, and rate limits. IP addresses are stored only as a one-way cryptographic hash, never in readable form.

We do not require a phone number, a driver’s licence, or a street address. A petition that demands identity papers collects fewer signatures and deserves to.

What we do not claim

This is the part most campaigns leave out. We ask for a ZIP code and check it against the county you select, which catches typos and careless fabrication. It is not proof of residency. Anyone anywhere can look up a valid Idaho ZIP.

So we will never describe these as “verified Idaho residents.” What we can say is precisely this: each signer confirmed an email address and provided an Idaho ZIP code consistent with the county they selected. If we later match the roll against Idaho’s public voter file, we’ll publish that number separately and say exactly what it means.

Signatures from outside Idaho are welcome, and are counted separately. The number on the front page is Idaho residents only.

Found a problem with any of this? Tell us. A page about being checkable should be the easiest one to correct.