検証可能な電子投票



最近では、ハブに電子投票専用の3つの投稿がありました。
FIDO / FTN分散投票システム
電子秘密投票について
オープンな電子投票(反対の証拠)
しかし、各投票者が結果を確認できる秘密の電子投票を提供する完全なソリューションは見つかりませんでした。

そのような解決策があるように思えます。


挑戦する

電子投票は、次の条件を満たす必要があります。


この問題を解決するための重要な技術は、 ブラインド署名です -暗号化されたメッセージの本文を解読せずに署名する方法です。

投票手順

  1. 投票者はキーペアを生成し、自分の公開キーをCECに登録します。 登録の結果に応じて、有権者の住所のリストが公開されます。 このようなもの:

    すでにこの段階で、誰もが彼がリストに載っていること、別の146人が彼のアパートに登録されていないこと、そして近所では新しい小地区が一晩成長していないことを確認できます。
  2. 投票者は次の形式の投票を生成します。

    次に、彼は投票を暗号化し(キーは任意)、自分の秘密キーで署名し、CECに送信します
  3. CECは署名を検証します。 この署名が有権者リストにあることを確認した後、彼はブラインド署名で投票用紙に署名し 、それを投票者に送信します。 その後、公開投票者リストのCECは投票カウンターをインクリメントします。

    ここで、投票者は、彼らが数えられることを確認できます。
  4. 投票者は投票を解読し、CECの署名を検証し、CEC投票により解読され署名されたものをCECに送り返します。
  5. CECは投票を受け取り、その署名の有効性を検証し、暗号化し、すぐにパブリックドメインにいくつかの[投票の乱数(ポイント2から)、暗号化された投票]を入れます。 投票はCECによって暗号化され、暗号化キーは投票が終了するまで秘密にされます。
  6. 投票が終了すると、投票の暗号の鍵が公開されます。


その結果、何が得られますか?

一般的なアクセスには次のものがあります。

CECのどの段階も、他の誰も投票者と彼の声を一致させることはできません。 投票プロセス中に、パブリックリストの変更を追跡して、変更の疑わしいダイナミクスを特定できます。 各投票者は、自分の投票が正しくカウントされているかどうかを確認できます。 誰でも独立して投票結果を計算できます。 自宅の登録を識別することができます。 チュロフは泣き、テーブルの下に隠れます。

何が機能すると思いますか?

更新:
ご意見ありがとうございます!

mihaildはアイテムをより明確にペイントしました。
1.投票者はCECにキーIzbPub1と彼の住所を送信します。
2.投票者は投票(乱数+投票)を行い、キーIzb2で暗号化し、キーIzbPriv1で署名し、CECに送信します。
3. CECは、キーIzubPub1で署名を検証し、キーCycPriv1で暗号化された投票に盲目的に署名し、結果を投票者に送り返します。
4. CECは、対応するアドレスから投票を受け取ったことに注意します。
5.投票者は、暗号化された署名済み投票とIzb2キーを使用して、Cypriv1キーで署名された暗号化されていない投票を受け取ります。
6.投票者は、署名された暗号化されていない投票をCECに送り返します。
7. CECは、CycPub1キーを使用して署名を検証します。
8. CECはペア(番号、投票、暗号化されたCube Pub2)を公開し、投票者の投票を考慮します。
9.選挙の終わりに、CECはCivPriv2を公開します。

vics001署名操作の可換性とマスキング要素がいくつかの偽のニュースレターの作成につながる可能性があるという事実に注意を引きました。
終了-2番目の段階で、前の部分のハッシュがセキュリティ情報に追加され、マスキングファクターの選択が非現実的になります。

edhellは正しく指摘しました-最初の段落では、登録がパスポートでオフラインであることを示しませんでした。 これは、将来投票できるようにする1回限りの手続きであり、パスポートや居住許可の変更と組み合わせることができます。

Source: https://habr.com/ru/post/J156423/


All Articles