Check the election yourself
No account, no permission, no trust required, the check runs from the published files alone, in your browser. Nothing you load here is sent anywhere; this page makes no network request except, if you press the button, to fetch the reference files from this same site.
This verifies a clubvote transcript: a sixty-member allotment society electing its treasurer with anonymous, sealed ballots. The verifier below re-does every check from scratch, the record's hashes and witness signatures, every ballot's membership and validity proofs, the count itself, and finally whether this history matches the copy the world saw. If a single number were altered anywhere, a check turns red and says where.
proto/out/, or the folder itself)
, or .
Find your own ballot
Voters hold a secret their device generated at enrolment. From it, this page recomputes your ballot's linking tag for this decision and looks it up in the public box, so you can see your vote was recorded, without the record ever naming you. The secret stays in this page; nothing is transmitted.
This demo election is deliberately reproducible, so every "secret" is public, that is a declared property of the demo, not of the design. Try or . In a real election only you would know yours, and this lookup would name nobody.
Hand in a ballot, watch the count move
Cast a ballot on the casting page, then drop the
downloaded ballot-….json here. This page judges it exactly as it judges the
box, membership, tag, validity, applies the re-vote rule, adds it to the sealed sum,
and unseals the new total, in your browser. This is the committee's collect step
replayed for you; a parity test in CI holds it to the Python judge's verdicts.
Unsealing here is possible only because this demo publishes every secret, the trustees' included. In a real election this page could judge your ballot but never count it, that takes two of the three trustees, each on their own machine, which is the point. Nothing you drop here changes the published record.