はじめに
最終更新: 2026-10-12
投票結果に「B は 20 票」と表示されたとします。その数字を見ただけでは、自分が B に入れた一票が数えられたかは分かりません。集計する側が票を抜いたり、表示する数字を書き換えたりしても、結果の画面は作れてしまいます。
STARK Ballot Simulator は、この疑問を実際に確かめるための投票デモです。投票するとレシートを受け取り、掲示板に載った自分の票を確認し、集計に使われたことと計算の正しさを検証します。意図的に票を抜く、集計表示を変えるといった操作も試せるので、「何を変えると、どの証拠が食い違うか」を観察できます。
説明の中心に置くのは、A〜E の選択肢から B に投票した一人です。この一票と 63 票のボット投票を合わせた、64 票の小さな選挙を追います。暗号の用語は、それが必要になる場面で説明します。
実際の選挙に使うシステムとしては設計していません。たとえば、このデモでは集計するサーバーに投票先と乱数を送ります。公開される証拠から投票先を隠す仕組みはありますが、運営者に対しても秘密投票を実現しているわけではありません。
公開状態
実装は 公開ソースリポジトリ で確認できます。検証画面から取得した bundle.zip と、そのリリースに対応するソースを使えば、手元のコンピューターでも証明と公開データを照合できます。
まずは 投票して、結果を確かめる ところから始めましょう。結果を受け取ることと、その結果を信用できる根拠を得ることの違いが、画面を通して見えてきます。