Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

はじめに

最終更新: 2026-10-12

投票結果に「B は 20 票」と表示されたとします。その数字を見ただけでは、自分が B に入れた一票が数えられたかは分かりません。集計する側が票を抜いたり、表示する数字を書き換えたりしても、結果の画面は作れてしまいます。

STARK Ballot Simulator は、この疑問を実際に確かめるための投票デモです。投票するとレシートを受け取り、掲示板に載った自分の票を確認し、集計に使われたことと計算の正しさを検証します。意図的に票を抜く、集計表示を変えるといった操作も試せるので、「何を変えると、どの証拠が食い違うか」を観察できます。

説明の中心に置くのは、A〜E の選択肢から B に投票した一人です。この一票と 63 票のボット投票を合わせた、64 票の小さな選挙を追います。暗号の用語は、それが必要になる場面で説明します。

実際の選挙に使うシステムとしては設計していません。たとえば、このデモでは集計するサーバーに投票先と乱数を送ります。公開される証拠から投票先を隠す仕組みはありますが、運営者に対しても秘密投票を実現しているわけではありません。

公開状態

実装は 公開ソースリポジトリ で確認できます。検証画面から取得した bundle.zip と、そのリリースに対応するソースを使えば、手元のコンピューターでも証明と公開データを照合できます。

まずは 投票して、結果を確かめる ところから始めましょう。結果を受け取ることと、その結果を信用できる根拠を得ることの違いが、画面を通して見えてきます。