JP3910529B2 - Electronic voting system - Google Patents

Electronic voting system Download PDF

Info

Publication number
JP3910529B2
JP3910529B2 JP2002355415A JP2002355415A JP3910529B2 JP 3910529 B2 JP3910529 B2 JP 3910529B2 JP 2002355415 A JP2002355415 A JP 2002355415A JP 2002355415 A JP2002355415 A JP 2002355415A JP 3910529 B2 JP3910529 B2 JP 3910529B2
Authority
JP
Japan
Prior art keywords
voting
share
server
data
voting data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002355415A
Other languages
Japanese (ja)
Other versions
JP2004192029A (en
Inventor
真一郎 松尾
わかは 尾形
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Data Corp
Original Assignee
NTT Data Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Data Corp filed Critical NTT Data Corp
Priority to JP2002355415A priority Critical patent/JP3910529B2/en
Publication of JP2004192029A publication Critical patent/JP2004192029A/en
Application granted granted Critical
Publication of JP3910529B2 publication Critical patent/JP3910529B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
この発明は、投票及び開票作業を行う電子投票システムに関する。
【0002】
【従来の技術】
近年、インターネットの普及により、暗号プロトコルを使用した電子投票サービスが提供されつつある。既存の電子投票の方式の多くは、信任投票のような形態の投票、すなわち、「Yes」か「No」かのいずれか一票を投じる形態を扱っている。また、複数の候補から1つだけを選択する投票には、この方式を拡張することにより実現されている。
非特許文献1には、準同型性に基づく電子投票方式が、また、非特許文献2には、準同型性に基づく分割不可能な複数票電子投票方式について記載されている。
なお、準同型性とは、秘密情報s1をn個のシェア{S1,1, S1,2,...., S1,n}に、秘密情報s2をn個のシェア{S2,1, S2,2,...., S2,n}に分散し、i番目のプレーヤーがS1,i及びS2,iを受け取る場合、秘密情報s1とs2の和であるs1+s2は、各プレーヤーの持つS1,i+S2,iを合わせた{S1,1+S2,1, S1,2+S2,2,...., S1,n+S2,n}から復元することができる性質をいう。
非特許文献3には、シャッフリングに基づく電子投票方式が記載されている。これは、Mixサーバが投票者から暗号化された投票内容を受信すると、この暗号化された投票内容の置換と再暗号化を行って次のMixサーバへ送信し、投票内容の置換と再暗号化を複数のMixサーバにより繰り返すことで最終結果を復号する方式である。
また、非特許文献4には、ブラインド署名に基づく電子投票方式が記載されている。これは、暗号化した投票内容に選挙管理人がブラインド署名を付加し、集計サーバは、投票者からこのブラインド署名が付された暗号化した投票内容に基づき集計を行う方式である。
【0003】
【非特許文献1】
サコ、キリアン(Sako, K. and Kilian, J.),「部分的にコンパチブルな準同型性を使用したセキュアな投票方式(Secure Voting Using Partially Compatible Homomorphisms)」,アドバンス・イン・クリプトロジー:クリプト’94(Advances in Cryptology: Crypto'94),ドイツ,シュプリンガー・フェアラーク(Springer-Verlag),1994年8月,LNCS839,p.411−424
【非特許文献2】
税所哲郎、他4名,「準同型性を利用した1人複数投票可能な電子投票方式」,コンピュータセキュリティシンポジウム2002論文集,社団法人情報処理学会,平成14年10月30日,情報処理学会シンポジウムシリーズ Vol.2002,No.16,p.467−472
【非特許文献3】
サコ、キリアン(Sako, K. and Kilian, J.),「レシートフリーなミックスタイプ投票方式(Receipt-Free Mix-type Voting Scheme)」,アドバンス・イン・クリプトロジー:ユーロクリプト’95(Advances in Cryptology: EuroCrypt'95),ドイツ,シュプリンガー・フェアラーク(Springer-Verlag),1995年,LNCS921,p.393−403
【非特許文献4】
藤岡淳、他2名,「電子投票方式」,NTT R&D,日本電信電話株式会社,1995年10月,Vol.44,No.10,p.244−251
【0004】
【発明が解決しようとする課題】
一般的な選挙のように、投票者1人が1票を投じる形態のほかに、各投票者がそれぞれ異なる票数を持つ場合がある。また、この各投票者のそれぞれの異なる数の票を、複数の選択肢に任意に分配して投票を行うケースも存在する。
しかし、非特許文献1に記載されるような準同型性を用いた電子投票方式により上述した投票を行う場合、投票者が持ち票数分だけゼロ知識証明を実行しなければならない。これは、効率が悪く、現実的ではないという問題がある。なお、ゼロ知識証明とは、一般に、証明者と検証者の間で何度かやりとりして、証明者が保持している秘密の情報について、証明者がその知識を知っていることを検証者に対して確率的に証明する方法である。
また、非特許文献2に記載される準同型性に基づく分割不可能な電子投票方式では、投票内容の秘匿性を保ちながら、複数票の分割投票を行うことは原理的に不可能である。
また、非特許文献3及び4に記載されるような方式を適用した場合、投票データに票の分割パターンを含めると、持ち票数との照合により匿名性が失われるという問題がある。また、Yes−Noの票を持ち票数分投票すると、匿名性は確保できるが、匿名通信路の入出力が投票総数となるため、効率が悪く現実的ではないという問題がある。
【0005】
この発明は、上記のような事情を考慮してなされたもので、その目的は、各投票者の投票内容を秘匿し、さらに、不正な投票を防ぎながら、各投票者が持つ票を複数の選択肢に任意に分割して投票することができる効率的な電子投票システムを提供することにある。
【0006】
【課題を解決するための手段】
この発明は、上記の課題を解決すべくなされたもので、請求項1に記載の発明は、投票者の端末装置と、前記投票者が投票を行うための投票データを生成する投票データ生成サーバと、投票を集計する複数の集計サーバとをネットワークを介して接続してなる電子投票システムであって、前記投票データ生成サーバは、各投票者の持ち票を各選択肢に割り当てた全ての投票パターンそれぞれについて、各集計サーバに対応する秘密分散された投票データのシェアを生成し、生成した投票データのシェアそれぞれを、対応する各集計サーバの鍵により暗号化して、当該各投票者の前記端末装置へ送信する投票データ生成手段を備え、前記端末装置は、前記投票データ生成サーバから、全ての投票パターンについて、各集計サーバに対応する秘密分散された投票データのシェアの暗号文を受信し、この投票データのシェアの暗号文中から投票者が投票するパターンに応じた投票データのシェアの暗号文を、対応する各集計サーバへ送信する投票手段を備え、前記集計サーバは、投票数をカウントするための秘密分散されたカウンタと、前記端末装置から投票データのシェアの暗号文を受信し、前記秘密分散されたカウンタを、この暗号文を復号して得た投票データのシェアを加算した値に更新するカウンタ加算手段と、各集計サーバが保有する前記秘密分散されたカウンタを基に投票総数を復号する投票結果算出手段とを備える、ことを特徴とする電子投票システムである。
【0007】
請求項2に記載の発明は、請求項1に記載の電子投票システムであって、さらに、前記集計サーバへ投票データの正当性を確認するための情報を保持する公開掲示板サーバとネットワークを介して接続され、前記投票データ生成手段は、前記投票データのシェアから生成した正当性確認データを、投票パターンを秘匿して前記公開掲示板サーバへ送信し、
前記公開掲示板サーバは、投票パターンを秘匿した正当性確認データを受信し、内部に記憶するシェア記憶手段を備え、前記カウンタ加算手段は、正当性確認データを前記公開掲示板サーバから読み出し、この正当性確認データを基に前記投票データのシェアが正当であると判断した場合に、前記秘密分散されたカウンタを、当該投票データのシェアを加算した値に更新する、ことを特徴とする。
【0008】
請求項3に記載の発明は、請求項2に記載の電子投票システムであって、前記投票データ生成手段は、前記投票データのシェアの平文を前記端末装置へ送信し、前記投票手段は、前記投票データ生成サーバから前記投票データのシェアの平文を受信し、この投票データのシェアの平文と、前記公開掲示板サーバから読み出した正当性確認データとを基に、前記投票データのシェアの暗号文が正当であると判断した場合に、投票者が投票するパターンに応じた投票データのシェアの暗号文を対応する各集計サーバへ送信する、ことを特徴とする。
【0015】
【発明の実施の形態】
以下、図面を参照し、この発明の実施の形態について説明する。
なお、便宜上、
【数1】

Figure 0003910529
をXy zのように記述する。
【0016】
1. システムモデル
図1は、この発明の一実施の形態による電子投票システムの構成を示すブロック図である。
本電子投票システムには、n人の投票者V1〜Vn(以下、「投票者V」と記述)が存在する。i番目(1≦i≦n)の投票者Vを投票者Vi、投票者Viの持つ票数をxi(以下、「持ち票数xi」と記述)、投票者ViがYesに投じる票数をv(i) Y(以下、「Yes票数v(i) Y」と記述)、Noに投じる票数をv(i) N(以下、「No票数v(i) N」と記述)とする。このとき、
【数2】
Figure 0003910529
かつ
【数3】
Figure 0003910529
が成り立つ。
そして、m台の集計サーバS1〜Sm(以下、「集計サーバS」と記述)は、投票者V1〜Vnが各々保有する端末装置T1〜Tn(以下、「端末装置T」と記述)から受信した投票データを基に、
【数4】
Figure 0003910529
(以下、「Yesの総票数Σiv(i) Y 」と記述)及び
【数5】
Figure 0003910529
(以下、「Noの総票数Σiv(i) N」と記述)を求める。
【0017】
ここで、以下の健全性、完全性及びプライバシの条件を満たすとき、この電子投票システムで行われる電子投票はセキュアであるという。
(1)健全性
いかなる投票者V(端末装置T)も、各々の持ち票数x1〜xn(以下、「持ち票数x」と記述)を超える投票はできない。すなわち、以下が成り立つ。
【数6】
Figure 0003910529
また、上記が成立しているときに、(v(i) Y,v(i) N)は有効であるという。
(2)完全性
(1)に記載の健全性を満たす全ての投票に対して、集計サーバSは、Yesの総票数Σiv(i) Y及びNoの総票数Σiv(i) Nを正しく出力する。
(3)プライバシ
集計サーバSと端末装置T(投票者V)は、Yesの総票数Σiv(i) Y及びNoの総票数Σiv(i) N以外のいかなる情報も得ない。ただし、各投票者Vのそれぞれの持ち票数xと、各投票者Vが投票に参加したかどうかは公開されても良い。
【0018】
本実施の形態による電子投票システムにおいては、各投票のプライバシを確保するために、線形性を持った秘密分散を利用して集計機能をm台の集計サーバSへ分散させる。投票者Vの保有する端末装置Tは、各選択肢に投じる票数を示す投票データを秘密分散したシェア、すなわち、Yes票数v(i) Y及びNo票数v(i) N(1≦i≦n)のシェアを各集計サーバSに送信する。各集計サーバSは、自身が端末装置Tから受信した投票データのシェアの総和を計算し、最終的に各集計サーバSの保有する投票データのシェアの総和から総投票数を復元する。
【0019】
2.構成
投票データ生成サーバSRは、専用線やブロードバンド回線によりインターネットなどのネットワークNと接続され、公開掲示板サーバB及び端末装置Tと通信する機能を有する。ただし、端末装置Tとは、暗号化された通信プロトコルを使用するなどしてセキュアに接続される。
投票データ生成サーバSRは、全てのi(1≦i≦n)に対する(投票者Vi,持ち票数xi)のペアを内部に記憶している。そして、全ての投票者Vについて、各集計サーバSに対応する秘密分散された投票データのシェアを投票パターン毎に生成する機能と、平文の投票データのシェア及び電子署名された投票データのシェアの暗号文を端末装置Tへ送信する機能を有する。なお、投票パターンとは、各選択肢に持ち票数をどのように配分するかのパターンを示す。また、端末装置T及び集計サーバSが投票の正当性の検証を行うための正当性確認データ、すなわち、投票データのシェアを基にしたハッシュ値を生成し、さらに生成したハッシュ値をシャッフルし投票パターンを秘匿して公開掲示板サーバBへ書き込む機能を有する。
【0020】
公開掲示板サーバBは、専用線やブロードバンド回線によりネットワークNと接続され、投票データ生成サーバSR、端末装置T及び集計サーバSと通信する機能を有する。また、公開掲示板サーバBは、投票データ生成サーバSRから投票パターンを秘匿した正当性確認データ、すなわち、全ての可能な投票データのシェアを基に生成され、かつ、シャッフルされたハッシュ値を受信し、内部に記憶する機能を有する。
【0021】
端末装置Tは、各投票者Vが保有するパーソナルコンピュータであり、専用線やブロードバンド回線によりネットワークNと接続され、投票データ生成サーバSR、公開掲示板サーバB及び集計サーバSと通信する機能を有する。ただし、投票データ生成サーバSRとは、暗号化された通信プロトコルを使用するなどしてセキュアに接続される。
端末装置Tは、投票データ生成サーバSRから、平文の投票データのシェアと、電子署名された投票データのシェアの暗号文を受信し、内部に記憶する機能を有する。また、平文の投票データのシェアからハッシュ値を生成するとともに、公開掲示板サーバB内のシャッフルされたハッシュ値(正当性確認データ)を読み出して比較し、投票データ生成サーバSRから受信した投票データのシェア及び公開掲示板サーバB内のシャッフルされたハッシュ値(正当性確認データ)の正当性を確認する機能を有する。さらに、平文の投票データのシェアから投票データを復号し、投票データの正当性を確認する機能を有する。加えて、平文の投票データのシェアを暗号化し、投票データ生成サーバSRから受信した投票データのシェアが正しく暗号化されているかどうかを確認する機能を有する。そして、投票者Vがキーボードやマウス、ボタンなどから入力した投票パターンを示す情報を受け、この入力された投票パターンに対応する電子署名された投票データのシェアの暗号文を内部から読み出し、各集計サーバSへ送信する機能を有する。
【0022】
集計サーバSは、専用線やブロードバンド回線によりネットワークNと接続され、公開掲示板サーバB及び端末装置Tと通信する機能を有する。
各集計サーバSは、共同でYes用のカウンタCY(以下、「YesカウンタCY」と記述)及びNo用のカウンタCN(以下、「NoカウンタCN」と記述)を求めるため、カウンタのシェアを内部に記憶する。これらのカウンタのシェアは、m台中t台の集計サーバSが不正な場合でも集計結果を正しく復元可能な、Shamirの(t+1,m)分散法により分散されている(但し、m>3t+1)。
さらに、端末装置Tから受信した、電子署名された投票データのシェアの暗号文に付された電子署名をチェックする機能と、この投票データのシェアを復号してハッシュ値を生成し、公開掲示板サーバB内のシャッフルされたハッシュ値(正当性確認データ)を読み出して比較することにより、投票データのシェアの正当性を確認する機能を有する。また、各集計サーバSは、すでに投票を終えた投票者Vの識別子からなるリストL1〜Lm(以下、「既投票者リストL」と記述)を内部に記憶し、投票者Vが既に投票を行っているか否かを判断する機能を有する。そして、正当性が確認された投票データのシェアをカウンタのシェアに加算する機能と、各集計サーバSが保有するカウンタのシェアを合わせてカウンタを復元する機能を有する。
【0023】
3. 電子投票システムの動作手順
3.1 電子投票の手順の概要
図2は、本実施の形態による電子投票の手順の概要を示す図である。投票手順は、準備フェーズ、投票フェーズ及び集計フェーズの3フェーズからなる。
(1)準備フェーズ
投票データ生成サーバSRは、各投票者Vが投票可能な全投票パターン毎の投票データのシェアを生成する。そして、不正投票を検出するための正当性確認データとして、この投票データのシェアからハッシュ値を算出し、さらに、投票パターンを認識できないように算出したハッシュ値をシャッフルして公開掲示板サーバBへ書き込む(ステップS11)。その後、投票データ生成サーバSRは、全投票パターンの平文の投票データのシェア及び電子署名された投票データのシェアの暗号文を各端末装置Tへ送信する(ステップS12)。端末装置Tは、公開掲示板サーバBを参照し、投票パターンのシャッフルが正しくなされていること、そして、投票データが正しく生成されていることをチェックする(ステップS13)。
(2)投票フェーズ
各投票者Vが投票を行う投票パターンを選択すると、端末装置Tは、全ての集計サーバSへ選択した投票パターンに対応した電子署名された投票データのシェアの暗号文を送信する(ステップS21)。集計サーバSは、二重投票がないことを確認するとともに、受信した投票データのシェアが正しいことを公開掲示板サーバBによりチェックする(ステップS22)。このチェックが正しく終了した場合のみ、集計サーバSは、それぞれが保有するYesカウンタCYのシェア及びNoカウンタCNのシェアを更新する。
(3)集計フェーズ
全ての集計サーバSは、秘密分散の復元プロトコルを使用し、YesカウンタCY(Yesの総票数Σiv(i) Y)及びNoカウンタCN(Noの総票数Σiv(i) N)を復元する(ステップS31)。
【0024】
なお、本電子投票システムにおいては、以下を仮定する。
・投票データ生成サーバSRは投票データのシェアを生成する準備フェーズのみ動作し、一度端末装置Tからの投票が始まると一切の動作を行わない。
・投票データ生成サーバSRは、任意の集計サーバSや端末装置Tとは結託しない。
・任意の装置から公開掲示板サーバBの内容を参照できるが、公開掲示板サーバB内の情報の追加・変更は、投票データ生成サーバSRのみが可能である。
・投票データ生成サーバSRは、一度公開掲示板サーバBへ全ての情報を入力した後は、公開掲示板サーバB内の情報を一切変更しない。
各フェーズの詳細手順を以下に示す。
【0025】
3.2 準備フェーズ
(1) 図3は、カウンタ及び既投票者リストの初期化の手順を示す図である。まず、集計サーバSは、各々が内部に記憶しているカウンタのシェアの初期化を行う。すなわち、集計サーバSj(1≦j≦m)は、各々
YesカウンタCYのシェアCY,j = 0
及び
NoカウンタCNのシェアCN,j = 0
を実行する。
次に、集計サーバSj(1≦j≦m)は、各々が内部に記憶している既投票者リストLjに空集合を書き込む。
【0026】
(2) 図4は、投票データの生成の方式を示す図である。投票データ生成サーバSRは、全ての投票者Vに対して、秘密分散された投票パターン毎の投票データのシェアを生成する。すなわち、投票者Vi(1≦i≦n)の持ち票数xiの範囲内のYesの票数k(0≦k≦xi)及びNoの票数(xi−k)を、各集計サーバSj(1≦j≦m)に秘密分散するためのシェアを生成し、
【数7】
Figure 0003910529
(以下、「Yes票数のシェアs(i,k) Y,j」と記述)及び
【数8】
Figure 0003910529
(以下、「No票数のシェアs(i,k) N,j」と記述)を得る。図においては、i番目の投票者Viの投票パターン(Yesの票数k,Noの票数(xi−k))=(0,xi),・・・,(xi,0)に対して、集計サーバS1に送信すべき
【数9】
Figure 0003910529
が、集計サーバSjに送信すべき
【数10】
Figure 0003910529
が、集計サーバSmに送信すべき
【数11】
Figure 0003910529
が生成されることを示している。
【0027】
次に、投票データ生成サーバSRは、全てのYes票数のシェアs(i,k) Y,j及びNo票数のシェアs(i,k) N,jを、RSA(Rivest-Shamir-Adleman)暗号等により、対応する各集計サーバSの公開鍵を用いて暗号化する。すなわち、投票データ生成サーバSRは、
【数12】
Figure 0003910529
(「‖」は結合を表す)を基に、
【数13】
Figure 0003910529
を、各i(1≦i≦n),k(0≦k≦xi),j(1≦j≦m)について算出する。ただし、PkSjは、j番目の集計サーバSjの公開鍵であり、Enc<Pk>(w)は、平文wを公開鍵Pkにより暗号化した結果の暗号文を示す。
続いて、投票データ生成サーバSRは、自身の秘密鍵SkSRを用いて、各投票パターン毎の電子署名を作成する。すなわち、
【数14】
Figure 0003910529
を、各i(1≦i≦n),k(0≦k≦xi)について計算する。なお、Sig<Sk>(w)は、秘密鍵Skを利用して作成したwの電子署名を表す。
【0028】
(3) 図5は、公開掲示板サーバBへのハッシュ値の書込みの方式を示す図である。投票データ生成サーバSRは、各i(1≦i≦n)について、以下のようにYes票数及びNo票数のシェアの結合s(i,k) jのハッシュ値を算出する。
【数15】
Figure 0003910529
ここで、「H」は衝突困難な一方向性ハッシュ関数とする。さらに、投票データ生成サーバSRは、ランダム置換πを選ぶ。そして、各j(1≦j≦m)について
【数16】
Figure 0003910529
を、選択したπを用いてシャッフルし、
【数17】
Figure 0003910529
を得る。投票データ生成サーバSRは、シャッフルした投票データのシェアのハッシュ値の集合H(s(i) j)(1≦i≦n,1≦j≦m)を公開掲示板サーバBへ送信する。公開掲示板サーバBは、シャッフルした投票データのシェアのハッシュ値の集合H(s(i) j)(1≦i≦n,1≦j≦m)を受信し、内部に記憶する。
【0029】
(4) 図6は、投票データの配信の方式を示す図である。投票データ生成サーバSRは、各端末装置Ti(1≦i≦n)へ
平文のYes票数及びNo票数のシェアの結合の組(s(i,k) 1,・・・,s(i,k) m)(0≦k≦xi
及び、
投票パターン毎に電子署名Sig(i,k)を付した投票データのシェアの暗号文の組(ES(i,k) 1,・・・,ES(i,k) m)(0≦k≦xi
を送信する。
各端末装置Ti(1≦i≦n)は、平文のYes票数及びNo票数のシェアの結合の組(s(i,k) 1,・・・,s(i,k) m)から、全てのk(0≦k≦xi),j(1≦j≦m)について、投票データのシェアのハッシュ値h(i,k) jを(数15)と同様の方法により算出する。そして、公開掲示板サーバBに記録されている自身のiに対応したシャッフルした投票データのシェアのハッシュ値の集合HS(i) jを読み出し、これが、算出した投票データのシェアのハッシュ値h(i,k) jの集合と等価であり、かつ、投票パターンがシャッフルされた内容であることを確認する。
次に、各端末装置Ti(1≦i≦n)は、Yes票数のシェア(s(i,k) Y,1,・・・,s(i,k) Y,m)とNo票数のシェア(s(i,k) N,1,・・・,s(i,k) N,m)(0≦k≦xi)を復元し、それぞれがYesの票数kとNoの票数(xi−k)のシェアであることを確認する。
さらに、各端末装置Ti(1≦i≦n)は、(数13)と同様の方法により、Yes票数及びNo票数のシェアの結合s(i,k) jを集計サーバSjの公開鍵PkSjで暗号化した暗号文ES(i,k) jを算出し、投票データ生成サーバSRから受信した暗号文ES(i,k) jと一致するかを全てのk(0≦k≦xi),j(1≦j≦m)について検証する。
【数18】
Figure 0003910529
なお、
【数19】
Figure 0003910529
は、右辺と左辺が等しいか否かの検証を行うことを意味する。
【0030】
3.3 投票フェーズ
本節においては、i番目の端末装置Tiを用いて動作を説明するが、各端末装置T1〜Tnにおいても同様に動作する。
(1) 図7は、投票者からの投票の方式を示す図である。端末装置Tiは、投票者Viから投票パターンの選択の入力を受ける。このとき、投票者Viの選択した投票パターンがYes票数v(i) Yであるとすると、各端末装置Ti(1≦i≦n)は、Yesの票数k=Yes票数v(i) Yである電子署名付きの投票データのシェアの暗号文の組を全集計サーバSへ送信する。具体的には、端末装置Tは、Yesの票数k=Yes票数v(i) Yに対応した投票データの暗号文の組(ES(i,k) 1,・・・,ES(i,k) m)に電子署名Sig(i,k)を付した投票データを全ての集計サーバSへ送信する。また、端末装置Tiは、この投票データと併せて、投票者Viの識別子を送信する。
各集計サーバSj(1≦j≦m)は、自身の記憶する既投票者リストLjに端末装置Tiから受信した投票者Viの識別子がすでに登録されているか否かをチェックする。もし、既投票者リストLjに投票者Viが既に登録されていたと判断した場合、当該受信データを破棄する。
既投票者リストLjに投票者Viが登録されていないことを確認すると、続いて、各集計サーバSj(1≦j≦m)は、電子署名Sig(i,k)の検証を行う。もし、電子署名Sig(i,k)が正当ではないと判断した場合、当該受信データを破棄する。
各集計サーバSj(1≦j≦m)は、電子署名Sig(i,k)が正しいと判断した場合、投票データの暗号文ES(i,k) jを自身の秘密鍵SkSjを利用して復号し、平文のYes票数及びNo票数のシェアの結合s(i,k) j(k=v(i) Y)を得る。
【数20】
Figure 0003910529
なお、Dec<Sk>(c)は、暗号文cを秘密鍵Skを用いて復号した結果得られる平文を示す。そして、各集計サーバSjは、公開掲示板サーバBからシャッフルした投票データのシェアのハッシュ値の集合HS(i) jを取得し、復号した平文のYes票数及びNo票数のシェアの結合s(i,k) j(k=v(i) Y)のハッシュ値H(s(i,k) j)が含まれていることをチェックする。
【数21】
Figure 0003910529
上記全てのチェックが完了した場合に、各集計サーバSj(1≦j≦m)は、投票者Viの識別符号を自身の既投票者リストLjに追加し、内部に記憶する。
【0031】
(2) 図8は、カウンタの加算の方式を示す図である。各集計サーバSj(1≦j≦m)は、以下のように、自身が内部に記憶しているYesカウンタCYのシェアCY,jに復号されたYes票数のシェアs(i,k) Y,j(k=v(i) Y)を、NoカウンタCNのシェアCN,jに復号されたNo票数のシェアs(i,k) N,j(k=v(i) Y)を加算し、更新する。
【数22】
Figure 0003910529
【0032】
3.4 集計フェーズ
図9は、投票数の集計の方式を示す図である。集計フェーズにおいて、各集計サーバSj(1≦j≦m)が内部に記憶しているYesカウンタCYのシェアCY,j及びNoカウンタCNのシェアCN,jを基に、YesカウンタCY(=Yesの総票数Σiv(i) Y)及びNoカウンタCN(=Noの総票数Σiv(i) N)を復元する。YesカウンタCY及びNoカウンタCNは、(t+1,m)分散法により分散されているため、t台以下の集計サーバSに誤りや不正があった場合であっても、YesカウンタCY及びNoカウンタCNは正しく復元することが可能である。
【0033】
3.5 効果
(1)健全性
投票権のない投票者が投票データを集計サーバSに送信した場合、公開掲示板サーバBに存在する(投票者Vi,シャッフルした投票データのシェアのハッシュ値の集合HS(i) j)のペアの検索によって、この投票を棄却することができる。また、投票データ生成サーバSRによって作られた投票データのシェアは、各集計サーバSに対応して暗号化され、有効なYes票数v(i) Yについてまとめた上で電子署名が付されているため、投票データのシェアの正当性を確認することができる。また、シェアの各ペアは、
【数23】
Figure 0003910529
を満たしており、各投票者Vは、
【数24】
Figure 0003910529
となる不正な投票を行うことができない。
また、各集計サーバS内の既投票者リストLにより投票者Vの二重投票をチェックし、破棄することができる。
【0034】
(2)完全性
集計サーバSのカウンタは、(t+1,m)分散法により分散されており、0に初期設定される。そして、投票内容は秘密分散を用いて複数台の集計サーバSへ分散される。従って、m台中t台の集計サーバSに不具合や不正があっても、秘密分散の復元と誤り訂正プロトコルにより、正しいカウンタ値(総票数)が復元される。
【0035】
(3)プライバシ
集計サーバSのカウンタは、(t+1,m)分散法により分散されているため、t台以下の集計サーバSの結託では、カウンタ値(総票数)を知ることはできない。
また、公開掲示板サーバBが公開するシャッフルした投票データのシェアのハッシュ値の集合HS(i) jは、投票データ生成サーバSRによりシャッフルされて投票パターンが秘匿されている。そのため、集計サーバSは、端末装置Tから受信した暗号文ES(i,k) jと公開掲示板サーバB内のシャッフルした投票データのシェアのハッシュ値の集合HS(i) jからYes票数v(i) Yを知ることはできない。
また、端末装置Tと投票データ生成サーバSRとの間の通信路がセキュアであるため、他の投票者の投票データを知ることはできない。また、他の端末装置Tから送信された暗号文ES(i,k) jと公開掲示板サーバB内のシャッフルした投票データのシェアのハッシュ値の集合HS(i) jから他の投票者のYes票数v(i) Yを知ることはできない。
【0036】
4.一般化と他の形態への応用
4.1 一般化
上記電子投票システムは、Yes−Noのような2つの選択肢だけではなく、3以上の選択肢を持つ一般的な分割可能な投票に拡張することが可能である。ここでは、投票者Vi(1≦i≦n)が存在するとき、i番目の投票者Viが持ち票xiを持ち、選択肢A1,…,Auへ全ての持ち票xiを分配して投票する場合を想定する。このとき、投票者Viは、
【数25】
Figure 0003910529
及び
【数26】
Figure 0003910529
を満たす投票を行う。
このような投票を実現するため、各集計サーバS1〜Smは、u個のカウンタのシェアを持つ。そして、準備フェーズにおいて投票データ生成サーバSRは、3章に記載したYes票数のシェアs(i,k) Y,j及びNo票数のシェアs(i,k) N,jの代わりに、
k1+…+ku=xi
かつ
0≦k1,…,ku≦xi
を満たすような投票数のシェア
【数27】
Figure 0003910529
を全てのj(1≦j≦m),k1,... ,kuに対して生成する。この点を除き、3章に示す電子投票システムの動作手順と同様に構成可能である。すなわち、本節に示す一般化された電子投票システムの動作手順においては、投票データ生成サーバSRは、各投票者Vに対して、
【数28】
Figure 0003910529
のシェアを作成する。
【0037】
4.2 部分的棄権が可能な投票
棄権票が存在する場合、
【数29】
Figure 0003910529
となる投票も有効である。この場合、持ち票xiを持つi番目の投票者Vi(1≦i≦n)は、Yesにv(i) Y票、Noにv(i) N票、棄権にv(i) A(=xi−v(i) Y−v(i) N)票を投票する。各集計サーバSは、YesカウンタCY、NoカウンタCN、棄権票カウンタCAの各々に対応して、秘密分散したYesカウンタCYのシェアCY,j、秘密分散したNoカウンタCNのシェアCN,j、秘密分散した棄権票カウンタCAのシェアCA,j(1≦j≦m)を内部に記憶する。そして、投票データ生成サーバSRは、以下の投票データのシェアを生成する。
【数30】
Figure 0003910529
その他の動作については、3章に示す電子投票システムの動作手順と同様である。
【0038】
4.3 分割不可な複数投票
分割不可能な複数電子投票においては、投票者Vが、持ち票xを全てYesあるいはNoに割り当て、投票する。すなわち、
【数31】
Figure 0003910529
または
【数32】
Figure 0003910529
となる投票を行う。このとき、投票データ生成サーバSRは、
(xi,0)及び(0,xi
のシェアを作成し、各端末装置Tへ送信する。
その他の動作については、3章に示す電子投票システムの動作手順と同様である。
【0039】
4.4 多候補者選挙
多候補者選挙は、投票者が、u個の候補の中から1つの候補のみを選択する方式である。この場合、各集計サーバSは、u番目の候補を選択したときのカウンタの分散である分散カウンタC1,j,...,Cu,j(1≦j≦m)を保有する。そして、投票データ生成サーバSRは、1つだけが「1」で残りが全て「0」となるような、以下の投票データのシェアを生成し、端末装置Tへ送信する。
(1,0,0,...,0),(0,1,0,...,0),...,(0,0,0,...,1)
その他の動作については、3章に示す電子投票システムの動作手順と同様である。
【0040】
5.その他
上記実施の形態によれば、健全性、完全性、プライバシを保持しながら、各投票者が持つ票を複数の選択肢に任意に分割して投票することができる電子投票を実現することができる。また、ゼロ知識証明などを使用せず、負荷を抑えた電子投票システムを提供することが可能となる。また、部分的な棄権、分割不可の複数投票、あるいは、多候補者選挙を行うことができる。
【0041】
なお、上述の投票データ生成サーバSR、公開掲示板サーバB、端末装置T、及び、集計サーバSは、内部にコンピュータシステムを有している。そして、上述した動作の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータシステムが読み出して実行することによって、上記処理が行われる。ここでいうコンピュータシステムとは、OSや周辺機器等のハードウェアを含むものである。
【0042】
また、「コンピュータ読み取り可能な記録媒体」とは、ROMの他に、磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のシステムやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
【0043】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【0044】
【発明の効果】
この発明によれば、各投票者の投票内容を秘匿しながら、さらに、不正な投票を防ぎながら、各投票者が持つ票を複数の選択肢に任意に分割して投票することができる効率的な電子投票システムを提供することができる。さらに、部分的な棄権、分割不可の複数投票、あるいは、多候補者選挙を行うことができる。
【図面の簡単な説明】
【図1】 この発明の一実施の形態による電子投票システムの構成を示すブロック図である。
【図2】 同実施の形態による電子投票の手順の概要を示す図である。
【図3】 同実施の形態によるカウンタ及び既投票者リストの初期化の手順を示す図である。
【図4】 同実施の形態による投票データの生成の方式を示す図である。
【図5】 同実施の形態による公開掲示板サーバへのハッシュ値の書込みの方式を示す図である。
【図6】 同実施の形態による投票データの配信の方式を示す図である。
【図7】 同実施の形態による投票者からの投票の方式を示す図である。
【図8】 同実施の形態によるカウンタの加算の方式を示す図である。
【図9】 同実施の形態による投票数の集計の方式を示す図である。
【符号の説明】
…投票データ生成サーバ
B…公開掲示板サーバ
T、T1、T2、Ti、Tn…端末装置
1、S2、Sj、Sm…集計サーバ[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an electronic voting system that performs voting and counting work.
[0002]
[Prior art]
In recent years, with the spread of the Internet, an electronic voting service using an encryption protocol is being provided. Many of the existing electronic voting methods deal with a form of vote like a confidence vote, that is, a form where one of “Yes” and “No” is cast. Further, voting for selecting only one from a plurality of candidates is realized by extending this method.
Non-Patent Document 1 describes an electronic voting system based on homomorphism, and Non-Patent Document 2 describes an indivisible multi-vote electronic voting system based on homomorphism.
Homomorphism means confidential information s1N shares {S1,1, S1,2, ...., S1, n} In the confidential information2N shares {S2,1, S2,2, ...., S2, n} And the i-th player is S1, iAnd S2, iIf you receive the confidential information1And s2Is the sum of1+ s2S that each player has1, i+ S2, i{S1,1+ S2,1, S1,2+ S2,2, ...., S1, n+ S2, n} Is a property that can be restored from.
Non-Patent Document 3 describes an electronic voting method based on shuffling. This is because, when the Mix server receives the encrypted vote contents from the voter, the encrypted vote contents are replaced and re-encrypted and transmitted to the next Mix server, and the vote contents are replaced and re-encrypted. This is a method of decoding the final result by repeating the conversion by a plurality of Mix servers.
Non-Patent Document 4 describes an electronic voting method based on a blind signature. In this method, the election manager adds a blind signature to the encrypted voting content, and the counting server performs counting based on the encrypted voting content to which the blind signature is attached by the voter.
[0003]
[Non-Patent Document 1]
Sako, K. and Kilian, J., “Secure Voting Using Partially Compatible Homomorphisms”, Advanced in Cryptology: Crypt ' 94 (Advances in Cryptology: Crypto'94), Germany, Springer-Verlag, August 1994, LNCS 839, p. 411-424
[Non-Patent Document 2]
Tetsuro Tax Office, 4 others, "Electronic voting method that can vote multiple times using homomorphism", Proceedings of Computer Security Symposium 2002, Information Processing Society of Japan, October 30, 2002, Information Processing Society of Japan Symposium Series Vol. 2002, no. 16, p. 467-472
[Non-Patent Document 3]
Sako, K. and Kilian, J. “Receipt-Free Mix-type Voting Scheme”, Advance in Cryptology: Eurocrypt '95 (Advances in Cryptology : EuroCrypt '95), Springer-Verlag, Germany, 1995, LNCS 921, p. 393-403
[Non-Patent Document 4]
Satoshi Fujioka and two others, "Electronic Voting Method", NTT R & D, Nippon Telegraph and Telephone Corporation, October 1995, Vol. 44, no. 10, p. 244-251
[0004]
[Problems to be solved by the invention]
  In addition to the form where one voter casts one vote as in a general election,eachEach voter may have a different number of votes. There is also a case where a vote is performed by arbitrarily distributing a different number of votes of each voter to a plurality of options.
  However, when the above-described voting is performed by an electronic voting method using homomorphism as described in Non-Patent Document 1, the voter must execute zero knowledge proof for the number of votes. This has the problem that it is inefficient and impractical. Zero-knowledge proof generally means that the verifier knows the knowledge of secret information held by the prover after several exchanges between the prover and the verifier. Probabilistic proof for.
  In addition, in the electronic voting method that cannot be divided based on the homomorphism described in Non-Patent Document 2, it is impossible in principle to divide a plurality of votes while keeping the voting contents confidential.
  In addition, when the methods described in Non-Patent Documents 3 and 4 are applied, there is a problem that anonymity is lost due to collation with the number of votes if the vote division pattern is included in the vote data. In addition, anonymity can be ensured by voting the Yes-No vote for the number of votes, but there is a problem that the input / output of the anonymous communication path becomes the total number of votes, which is inefficient and impractical.
[0005]
The present invention has been made in consideration of the circumstances as described above, and its purpose is to conceal the contents of each voter's vote, and to prevent illegal votes while holding multiple votes for each voter. An object of the present invention is to provide an efficient electronic voting system capable of voting by arbitrarily dividing options.
[0006]
[Means for Solving the Problems]
  The present invention has been made to solve the above-described problems. The invention according to claim 1 is a voter terminal device and a vote data generation server for generating vote data for the voter to vote. And an electronic voting system in which a plurality of counting servers for counting votes are connected via a network, wherein the voting data generation server includes:For each voting pattern that assigns each voter's vote to each option,Generate a share of secret-distributed voting data corresponding to each aggregation server,Corresponding to each share of the generated voting dataEncrypted with the key of each aggregation server, Each voter ’sVoting data generation means for transmitting to the terminal device, the terminal device from the voting data generation server,For all voting patternsThe ciphertext of the share of the voting data that is secretly distributed corresponding to each aggregation server is received, and the ciphertext of the share of the voting data corresponding to the pattern that the voter votes from among the ciphertext of the share of the voting data corresponds. Voting means for transmitting to each aggregation server, wherein the aggregation server is a secret-distributed counter for counting the number of votes.And, Receiving the ciphertext of the share of the voting data from the terminal device,The secret-distributed counter,Add share of voting data obtained by decrypting this ciphertextUpdate to the specified valueCounter adding means to perform the above andSecret sharingCounTAn electronic voting system comprising: voting result calculation means for decoding the total number of votes based on the above.
[0007]
  A second aspect of the present invention is the electronic voting system according to the first aspect, further comprising a public bulletin board server that holds information for confirming the validity of the voting data to the tabulation server and a network. Connected, and the voting data generation means transmits the validity confirmation data generated from the share of the voting data to the public bulletin board server while concealing the voting pattern,
  The public bulletin board server includes a share storage unit that receives and stores the validity confirmation data in which the voting pattern is concealed, and the counter addition unit reads out the validity confirmation data from the public bulletin board server. When it is determined that the share of the voting data is valid based on the confirmation data,Secret sharingcounterShare the voting dataAdditionUpdate to the specified valueIt is characterized by.
[0008]
The invention according to claim 3 is the electronic voting system according to claim 2, wherein the voting data generation means transmits a plaintext of the share of the voting data to the terminal device, and the voting means A plaintext of the share of the voting data is received from the voting data generation server, and based on the plaintext of the share of the voting data and the validity confirmation data read from the public bulletin board server, the ciphertext of the share of the voting data is When it is determined to be valid, a ciphertext of share of voting data corresponding to a pattern voted by a voter is transmitted to each corresponding aggregation server.
[0015]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below with reference to the drawings.
For convenience,
[Expression 1]
Figure 0003910529
Xy zWrite like this.
[0016]
1. System model
FIG. 1 is a block diagram showing a configuration of an electronic voting system according to an embodiment of the present invention.
The electronic voting system includes n voters V1~ Vn(Hereinafter referred to as “voter V”). i-th (1 ≦ i ≦ n) voter Vi, Voter ViX is the number of votesi(Hereafter, “Number of votes xi”), Voter ViV is the number of votes(i) Y(Hereafter, “Yes vote v(i) Y”), And the number of votes cast in No(i) N(Hereafter, “No votes v(i) N”). At this time,
[Expression 2]
Figure 0003910529
And
[Equation 3]
Figure 0003910529
Holds.
And m aggregation servers S1~ Sm(Hereinafter referred to as “aggregation server S”) is the voter V1~ VnEach terminal device T1~ Tn(Hereinafter referred to as “terminal device T”) based on the voting data received from
[Expression 4]
Figure 0003910529
(Hereafter, “Yes total vote Σiv(i) Y "”) And
[Equation 5]
Figure 0003910529
(Hereafter, “No total votes Σiv(i) N”).
[0017]
Here, when the following conditions of soundness, integrity and privacy are satisfied, the electronic voting performed by this electronic voting system is said to be secure.
(1) Soundness
Any voter V (terminal device T) has its own number of votes x1~ XnVoting exceeding (hereinafter referred to as “the number of votes x”) is not allowed. That is, the following holds.
[Formula 6]
Figure 0003910529
When the above is true, (v(i) Y, V(i) N) Is effective.
(2) Completeness
For all votes that satisfy the soundness described in (1), the aggregation server S determines the total number of votes Σ of Yes.iv(i) YAnd the total number of votes for Noiv(i) NIs output correctly.
(3) Privacy
Aggregation server S and terminal device T (voter V) have the total number of votes Σiv(i) YAnd the total number of votes for Noiv(i) NNo other information is available. However, the number of votes x of each voter V and whether each voter V participated in the voting may be disclosed.
[0018]
In the electronic voting system according to the present embodiment, in order to ensure the privacy of each vote, the aggregation function is distributed to m aggregation servers S by using secret sharing with linearity. The terminal device T possessed by the voter V shares the voting data indicating the number of votes cast for each option secretly, that is, the number of Yes votes v(i) YAnd number of votes v(i) NThe share of (1 ≦ i ≦ n) is transmitted to each aggregation server S. Each tabulation server S calculates the sum of the share of voting data received from the terminal device T, and finally restores the total number of votes from the sum of the share of voting data held by each tabulation server S.
[0019]
2. Constitution
Voting data generation server SRIs connected to a network N such as the Internet through a dedicated line or a broadband line, and has a function of communicating with the public bulletin board server B and the terminal device T. However, the terminal device T is securely connected by using an encrypted communication protocol.
Voting data generation server SRIs (voter V for all i (1 ≦ i ≦ n)i, Number of votes xi) Is stored internally. And for all the voters V, a function for generating a share of secret voting data corresponding to each totaling server S for each voting pattern, a share of plain text voting data, and a share of electronically signed voting data It has a function of transmitting a ciphertext to the terminal device T. The voting pattern indicates a pattern for how the number of votes is distributed to each option. In addition, the terminal device T and the aggregation server S generate validity check data for verifying the validity of the vote, that is, a hash value based on the share of the vote data, and further shuffle the generated hash value and vote It has a function of concealing the pattern and writing to the public bulletin board server B.
[0020]
The public bulletin board server B is connected to the network N by a dedicated line or a broadband line, and the voting data generation server SRAnd a function of communicating with the terminal device T and the aggregation server S. Also, the public bulletin board server B is connected to the voting data generation server S.R2 has a function to receive and store the shuffled hash value generated based on the validity verification data in which the voting pattern is concealed, that is, the share of all possible voting data.
[0021]
The terminal device T is a personal computer owned by each voter V, and is connected to the network N by a dedicated line or a broadband line, and the voting data generation server SRAnd a function of communicating with the public bulletin board server B and the summary server S. However, the voting data generation server SRIs securely connected, for example, using an encrypted communication protocol.
The terminal device T includes a voting data generation server SRFrom the above, it has a function of receiving the plaintext voting data share and the ciphertext of the electronically signed voting data share and storing them inside. In addition, a hash value is generated from the share of plain text voting data, and the shuffled hash value (validity confirmation data) in the public bulletin board server B is read and compared, and the voting data generation server SRAnd the validity of the shuffled hash value (validity confirmation data) in the public bulletin board server B is confirmed. Furthermore, it has a function of decrypting the voting data from the plaintext voting data share and confirming the validity of the voting data. In addition, the plaintext voting data share is encrypted and the voting data generation server SRHas a function of confirming whether the share of the voting data received from is correctly encrypted. The voter V receives information indicating the voting pattern input from the keyboard, mouse, button, etc., reads the ciphertext of the share of the electronically signed voting data corresponding to the input voting pattern from the inside, and calculates each total It has a function to transmit to the server S.
[0022]
The aggregation server S is connected to the network N via a dedicated line or a broadband line, and has a function of communicating with the public bulletin board server B and the terminal device T.
Each tally server S jointly counters C for YesY(Hereafter, “Yes Counter CY”) And No counter CN(Hereafter, “No counter CNThe counter share is stored internally. The shares of these counters are distributed by Shamir's (t + 1, m) distribution method (where m> 3t + 1), which can correctly restore the aggregation results even when t out of the m aggregation servers S are unauthorized.
Furthermore, the function of checking the electronic signature attached to the ciphertext of the share of the voting data that has been electronically signed received from the terminal device T, and the hash value is generated by decrypting the share of the voting data, and the public bulletin board server It has a function of confirming the validity of the share of voting data by reading and comparing the shuffled hash values (validity confirmation data) in B. Each tabulation server S has a list L that includes the identifiers of the voters V who have already voted.1~ Lm(Hereinafter referred to as “already-listed voter list L”) is stored therein and has a function of determining whether or not the voter V has already voted. And it has a function which adds the share of the vote data by which the legitimacy was confirmed to the share of a counter, and a function which restores a counter combining the share of the counter which each totaling server S holds.
[0023]
3. Operation procedure of electronic voting system
3.1 Overview of electronic voting procedures
FIG. 2 is a diagram showing an outline of the procedure of electronic voting according to the present embodiment. The voting procedure consists of three phases: a preparation phase, a voting phase, and a counting phase.
(1) Preparation phase
Voting data generation server SRGenerates a share of voting data for every voting pattern that each voter V can vote. Then, a hash value is calculated from the share of the voting data as correctness confirmation data for detecting an illegal vote, and the calculated hash value is shuffled so that the voting pattern cannot be recognized and written to the public bulletin board server B. (Step S11). Thereafter, the voting data generation server SRTransmits to each terminal device T the ciphertext of the share of the plain voting data of all voting patterns and the share of the voting data that has been digitally signed (step S12). The terminal device T refers to the public bulletin board server B and checks that the voting pattern is correctly shuffled and that the voting data is correctly generated (step S13).
(2) Voting phase
When each voter V selects a voting pattern for voting, the terminal device T transmits a ciphertext of the share of the voting data digitally signed corresponding to the selected voting pattern to all the aggregation servers S (step S21). . The aggregation server S confirms that there is no double voting and checks the public bulletin board server B that the share of the received voting data is correct (step S22). Only when this check is completed correctly, the aggregation server S can determine whether each counter YesYShare and No counter CNUpdate your share.
(3) Counting phase
All the aggregation servers S use the secret sharing restoration protocol, and the Yes counter CY(Yes total vote Σiv(i) Y) And No counter CN(No total votes Σiv(i) N) Is restored (step S31).
[0024]
In the electronic voting system, the following is assumed.
・ Voting data generation server SROperates only in the preparation phase for generating a share of voting data, and does not perform any operation once the voting from the terminal device T is started.
・ Voting data generation server SRDoes not collaborate with any counting server S or terminal device T.
The contents of the public bulletin board server B can be referred from any device, but the addition / change of information in the public bulletin board server B is performed by the voting data generation server SROnly possible.
・ Voting data generation server SROnce all information is input to the public bulletin board server B, the information in the public bulletin board server B is not changed at all.
The detailed procedure for each phase is shown below.
[0025]
3.2 Preparation phase
(1) FIG. 3 is a diagram illustrating a procedure for initializing a counter and a voter list. First, the aggregation server S initializes the shares of the counters stored therein. That is, the aggregation server Sj(1 ≦ j ≦ m)
Yes counter CYShare CY, j = 0
as well as
No counter CNShare CN, j = 0
Execute.
Next, the aggregation server Sj(1 ≦ j ≦ m) is the already voted voter list LjWrite an empty set to.
[0026]
(2) FIG. 4 is a diagram showing a voting data generation method. Voting data generation server SRGenerates a share of the voting data for each voter pattern secretly distributed to all the voters V. That is, voter ViNumber of votes x (1 ≤ i ≤ n)iThe number of votes of Yes in the range of k (0 ≦ k ≦ xi) And No votes (xi-K) for each aggregation server SjGenerate a share for secret sharing in (1 ≦ j ≦ m)
[Expression 7]
Figure 0003910529
(Hereafter, “Share of the number of Yes votes”(i, k) Y, j”) And
[Equation 8]
Figure 0003910529
(Hereafter, “No share of votes”(i, k) N, j”). In the figure, the i-th voter ViVoting pattern (Yes vote number k, No vote number (xi-K)) = (0, xi), ..., (xi, 0) for aggregation server S1Should be sent to
[Equation 9]
Figure 0003910529
Is the summary server SjShould be sent to
[Expression 10]
Figure 0003910529
Is the summary server SmShould be sent to
## EQU11 ##
Figure 0003910529
Is generated.
[0027]
Next, the voting data generation server SRIs the share of all Yes votes(i, k) Y, jAnd No. share of votes(i, k) N, jIs encrypted using the public key of each corresponding aggregation server S by RSA (Rivest-Shamir-Adleman) encryption or the like. That is, the voting data generation server SRIs
[Expression 12]
Figure 0003910529
("‖" Represents a bond)
[Formula 13]
Figure 0003910529
For each i (1 ≤ i ≤ n), k (0 ≤ k ≤ xi), J (1 ≦ j ≦ m). However, PkSjIs the jth aggregation server SjEnc <Pk> (w) indicates a ciphertext obtained as a result of encrypting plaintext w with the public key Pk.
Subsequently, the voting data generation server SROwn secret key SkSRIs used to create an electronic signature for each voting pattern. That is,
[Expression 14]
Figure 0003910529
For each i (1 ≤ i ≤ n), k (0 ≤ k ≤ xi) Sig <Sk> (w) represents the electronic signature of w created using the secret key Sk.
[0028]
(3) FIG. 5 is a diagram showing a method of writing a hash value to the public bulletin board server B. Voting data generation server SRFor each i (1 ≤ i ≤ n), the combination of the shares of the number of Yes votes and the number of No votes is as follows:(i, k) jCalculate the hash value of.
[Expression 15]
Figure 0003910529
Here, “H” is a one-way hash function that is difficult to collide. Further, the voting data generation server SRChoose a random permutation π. And for each j (1 ≦ j ≦ m)
[Expression 16]
Figure 0003910529
Is shuffled with the selected π,
[Expression 17]
Figure 0003910529
Get. Voting data generation server SRIs a set of hash values H (s(i) j) (1 ≦ i ≦ n, 1 ≦ j ≦ m) is transmitted to the public bulletin board server B. Public bulletin board server B collects a set of hash values H (s(i) j) (1 ≦ i ≦ n, 1 ≦ j ≦ m) is received and stored internally.
[0029]
(4) FIG. 6 is a diagram showing a voting data distribution method. Voting data generation server SREach terminal device Ti(1 ≦ i ≦ n)
Combined set of shares of plaintext Yes and No votes (s(i, k) 1, ..., s(i, k) m) (0 ≦ k ≦ xi)
as well as,
Electronic signature Sig for each voting pattern(i, k)A set of ciphertexts for share of voting data (ES(i, k) 1, ..., ES(i, k) m) (0 ≦ k ≦ xi)
Send.
Each terminal device Ti(1 ≤ i ≤ n) is the combination of shares of plain text Yes and No votes (s(i, k) 1, ..., s(i, k) m) To all k (0 ≦ k ≦ xi), J (1 ≦ j ≦ m), the hash value h of the share of voting data(i, k) jIs calculated by the same method as in (Expression 15). Then, a set of hash values HS of shuffled voting data shares corresponding to own i recorded in the public bulletin board server B(i) jThis is the hash value h of the share of the calculated voting data(i, k) jAnd that the voting pattern is shuffled content.
Next, each terminal device Ti(1 ≦ i ≦ n) is the share of the number of Yes votes (s(i, k) Y, 1, ..., s(i, k) Y, m) And No. share (s)(i, k) N, 1, ..., s(i, k) N, m) (0 ≦ k ≦ xi), Each with Yes votes k and No votes (xiConfirm that the share is -k).
Furthermore, each terminal device Ti(1 ≦ i ≦ n) is the combination of the shares of the number of Yes votes and the number of No votes in the same manner as in (Equation 13).(i, k) jTally server SjPublic key of PkSjCiphertext ES encrypted with(i, k) jTo calculate the voting data generation server SRCiphertext ES received from(i, k) jMatch all k (0 ≦ k ≦ xi), J (1 ≦ j ≦ m).
[Expression 18]
Figure 0003910529
In addition,
[Equation 19]
Figure 0003910529
Means to verify whether the right side and the left side are equal.
[0030]
3.3 Voting phase
In this section, the i-th terminal device TiThe operation will be described using each terminal device T.1~ TnThe same operation is performed in
(1) FIG. 7 is a diagram showing a voting system from voters. Terminal device TiVoter ViReceives an input for selecting a voting pattern. At this time, voter ViThe selected voting pattern is yes(i) Y, Each terminal device Ti(1 ≦ i ≦ n) is the number of votes of Yes k = number of votes of Yes(i) YA set of ciphertexts sharing the voting data with an electronic signature is transmitted to all the aggregation servers S. Specifically, the terminal device T determines that the number of votes for Yes k = the number of votes for Yes v(i) YA set of ciphertexts of voting data corresponding to(i, k) 1, ..., ES(i, k) m) Electronic signature Sig(i, k)The voting data attached with is transmitted to all the aggregation servers S. Also, the terminal device TiTogether with this voting data,iSend the identifier.
Each aggregation server Sj(1 ≦ j ≦ m) is the already voted vote list LjTerminal device TiVoter V received fromiIt is checked whether the identifier of is already registered. If voter list LjVoter ViIf it is determined that has already been registered, the received data is discarded.
Voter list LjVoter ViIf it is confirmed that is not registered, then each aggregation server Sj(1 ≦ j ≦ m) is the electronic signature Sig(i, k)Perform verification. If electronic signature Sig(i, k)If it is determined that is not valid, the received data is discarded.
Each aggregation server Sj(1 ≦ j ≦ m) is the electronic signature Sig(i, k)Voted data ciphertext ES(i, k) jOwn secret key SkSjDecryption using, combining the shares of plain text Yes and No votes(i, k) j(K = v(i) Y)
[Expression 20]
Figure 0003910529
Note that Dec <Sk> (c) indicates a plaintext obtained as a result of decrypting the ciphertext c using the secret key Sk. And each total server SjIs a set HS of hash values of shares of voting data shuffled from the public bulletin board server B(i) jCombines the shares of Yes and No votes in plaintext(i, k) j(K = v(i) Y) Hash value H (s(i, k) j) Is included.
[Expression 21]
Figure 0003910529
When all the above checks are completed, each aggregation server Sj(1 ≦ j ≦ m) is the voter ViThe identification code of the own voter list LjAdd to and store inside.
[0031]
(2) FIG. 8 is a diagram showing a counter addition method. Each aggregation server Sj(1 ≦ j ≦ m) is the Yes counter C stored in itself as follows:YShare CY, jShares of number of Yes votes decrypted in(i, k) Y, j(K = v(i) Y), No counter CNShare CN, jShares of the number of No votes decrypted in(i, k) N, j(K = v(i) Y) Is added and updated.
[Expression 22]
Figure 0003910529
[0032]
3.4 Aggregation phase
FIG. 9 is a diagram showing a method of counting the number of votes. In the counting phase, each counting server SjYes counter C stored in (1 ≦ j ≦ m)YShare CY, jAnd No counter CNShare CN, jBased on the Yes counter CY(= Yes total vote number Σiv(i) Y) And No counter CN(= No total vote Σiv(i) N). Yes counter CYAnd No counter CNIs distributed by the (t + 1, m) distribution method, so even if there are errors or frauds in t or fewer tally servers S, the Yes counter CYAnd No counter CNCan be restored correctly.
[0033]
3.5 Effect
(1) Soundness
When a voter without voting rights transmits voting data to the aggregation server S, it exists in the public bulletin board server B (voter Vi, Set HS of shuffled voting data shares(i) j) Can be rejected by searching for pairs. Also, the voting data generation server SRThe share of the voting data created by is encrypted corresponding to each aggregation server S, and the number of valid Yes votes v(i) YSince the electronic signature is attached after summarizing, the validity of the share of the voting data can be confirmed. Each pair of shares
[Expression 23]
Figure 0003910529
And each voter V
[Expression 24]
Figure 0003910529
I cannot make an illegal vote.
In addition, the double vote of the voter V can be checked and discarded by the already voted vote list L in each aggregation server S.
[0034]
(2) Completeness
The counters of the aggregation server S are distributed by the (t + 1, m) distribution method and are initialized to 0. The contents of the vote are distributed to a plurality of aggregation servers S using secret sharing. Therefore, even if t out of the m total servers S are defective or illegal, the correct counter value (total number of votes) is restored by the restoration of secret sharing and the error correction protocol.
[0035]
(3) Privacy
Since the counters of the aggregation server S are distributed by the (t + 1, m) distribution method, the counter value (the total number of votes) cannot be known by collusion of t or less aggregation servers S.
Also, a set HS of hash values of shares of shuffled voting data published by the public bulletin board server B(i) jIs the voting data generation server SRIs shuffled and the voting pattern is kept secret. Therefore, the aggregation server S receives the ciphertext ES received from the terminal device T.(i, k) jAnd hash value set HS of the share of shuffled voting data in the public bulletin board server B(i) jTo Yes votes v(i) YI can't know.
Further, the terminal device T and the voting data generation server SRSince the communication path between the two voters is secure, it is not possible to know the vote data of other voters. In addition, the ciphertext ES transmitted from another terminal device T(i, k) jAnd hash value set HS of the share of shuffled voting data in the public bulletin board server B(i) jYes vote for other voters(i) YI can't know.
[0036]
4). Generalization and application to other forms
4.1 Generalization
The above electronic voting system can be extended to not only two options such as Yes-No but also a general divisible vote having three or more options. Here, voter ViWhen (1 ≦ i ≦ n) exists, the i-th voter ViVoting xiWith choice A1, ..., AuTo all votes xiIs assumed to be distributed and voted. At this time, voter ViIs
[Expression 25]
Figure 0003910529
as well as
[Equation 26]
Figure 0003910529
Vote to satisfy.
In order to realize such voting, each aggregation server S1~ SmHas a share of u counters. In the preparation phase, the voting data generation server SRThe share of the number of Yes votes described in Chapter 3(i, k) Y, jAnd No. share of votes(i, k) N, jInstead of,
k1+ ... + ku= Xi
And
0 ≦ k1, ..., ku≦ xi
Share of votes to satisfy
[Expression 27]
Figure 0003910529
To all j (1 ≤ j ≤ m), k1, ..., kuGenerate for. Except for this point, it can be configured in the same manner as the operation procedure of the electronic voting system shown in Chapter 3. That is, in the operation procedure of the generalized electronic voting system shown in this section, the voting data generation server SRFor each voter V
[Expression 28]
Figure 0003910529
Create a share of
[0037]
4.2 Voting with partial abstention
If an abstention vote exists,
[Expression 29]
Figure 0003910529
The vote becomes effective. In this case, vote xiI-th voter Vi(1 ≦ i ≦ n)(i) YVote, No to v(i) NVote, abstention(i) A(= Xi−v(i) Y−v(i) N) Vote the vote. Each tally server S has a Yes counter CY, No counter CNAbstention counter CACorresponding to each of the secret counter Yes counter CYShare CY, j, Secret counter No. CNShare CN, j, Secret abstention counter CAShare CA, j(1 ≦ j ≦ m) is stored internally. And the voting data generation server SRGenerates a share of the following voting data:
[30]
Figure 0003910529
Other operations are the same as the operation procedure of the electronic voting system shown in Chapter 3.
[0038]
4.3 Multiple votes that cannot be divided
In the multiple electronic voting that cannot be divided, the voter V assigns all votes x to Yes or No and votes. That is,
[31]
Figure 0003910529
Or
[Expression 32]
Figure 0003910529
To vote. At this time, the voting data generation server SRIs
(Xi, 0) and (0, xi)
Is generated and transmitted to each terminal device T.
Other operations are the same as the operation procedure of the electronic voting system shown in Chapter 3.
[0039]
4.4 Multi-candidate election
In the multi-candidate election, a voter selects only one candidate from u candidates. In this case, each aggregation server S uses a distribution counter C that is a distribution of counters when the u th candidate is selected.1, j,. . . , Cu, j(1 ≦ j ≦ m). And the voting data generation server SRGenerates a share of the following voting data such that only one is “1” and the rest are all “0”, and transmits the share to the terminal device T.
(1,0,0, ..., 0), (0,1,0, ..., 0),. . . , (0,0,0, ..., 1)
Other operations are the same as the operation procedure of the electronic voting system shown in Chapter 3.
[0040]
5. Other
According to the above-described embodiment, it is possible to realize an electronic voting capable of voting by arbitrarily dividing a vote held by each voter into a plurality of options while maintaining soundness, integrity, and privacy. In addition, it is possible to provide an electronic voting system with reduced load without using zero knowledge proof. In addition, partial abstentions, multiple votes that cannot be divided, or multi-candidate elections can be held.
[0041]
The voting data generation server S described aboveRThe public bulletin board server B, the terminal device T, and the tabulation server S have a computer system therein. The above-described operation process is stored in a computer-readable recording medium in the form of a program, and the computer system reads and executes this program to perform the above processing. The computer system here includes an OS and hardware such as peripheral devices.
[0042]
In addition to ROM, “computer-readable recording medium” refers to a portable medium such as a magnetic disk, a magneto-optical disk, a CD-ROM, a DVD-ROM, or a storage device such as a hard disk built in a computer system. That means. Furthermore, the “computer-readable recording medium” refers to a volatile memory (RAM) inside a computer system that becomes a client or a system when a program is transmitted via a network such as the Internet or a communication line such as a telephone line. In addition, those holding programs for a certain period of time are also included.
[0043]
The program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium. Here, the “transmission medium” for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line.
The program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, and what is called a difference file (difference program) may be sufficient.
[0044]
【The invention's effect】
According to the present invention, it is possible to efficiently divide a vote held by each voter into a plurality of options and to vote while concealing the vote contents of each voter and further preventing illegal voting. An electronic voting system can be provided. In addition, partial abstentions, multiple votes that cannot be divided, or multi-candidate elections can be held.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of an electronic voting system according to an embodiment of the present invention.
FIG. 2 is a diagram showing an outline of a procedure for electronic voting according to the embodiment;
FIG. 3 is a diagram showing a procedure for initializing a counter and a voter list according to the embodiment;
FIG. 4 is a diagram showing a voting data generation method according to the embodiment;
FIG. 5 is a diagram showing a method of writing a hash value to a public bulletin board server according to the embodiment.
FIG. 6 is a diagram showing a voting data distribution method according to the embodiment;
FIG. 7 is a diagram showing a voting method from a voter according to the embodiment;
FIG. 8 is a diagram showing a counter addition method according to the embodiment;
FIG. 9 is a diagram showing a vote counting method according to the embodiment;
[Explanation of symbols]
SR… Voting data generation server
B ... Public bulletin board server
T, T1, T2, Ti, Tn... Terminal equipment
S1, S2, Sj, Sm... Aggregation server

Claims (3)

投票者の端末装置と、前記投票者が投票を行うための投票データを生成する投票データ生成サーバと、投票を集計する複数の集計サーバとをネットワークを介して接続してなる電子投票システムであって、
前記投票データ生成サーバは、
各投票者の持ち票を各選択肢に割り当てた全ての投票パターンそれぞれについて、各集計サーバに対応する秘密分散された投票データのシェアを生成し、生成した投票データのシェアそれぞれを、対応する各集計サーバの鍵により暗号化して、当該各投票者の前記端末装置へ送信する投票データ生成手段を備え、
前記端末装置は、
前記投票データ生成サーバから、全ての投票パターンについて、各集計サーバに対応する秘密分散された投票データのシェアの暗号文を受信し、この投票データのシェアの暗号文中から投票者が投票するパターンに応じた投票データのシェアの暗号文を、対応する各集計サーバへ送信する投票手段を備え、
前記集計サーバは、
投票数をカウントするための秘密分散されたカウンタと
前記端末装置から投票データのシェアの暗号文を受信し、前記秘密分散されたカウンタを、この暗号文を復号して得た投票データのシェアを加算した値に更新するカウンタ加算手段と、
各集計サーバが保有する前記秘密分散されたカウンタを基に投票総数を復号する投票結果算出手段とを備える、
ことを特徴とする電子投票システム。
An electronic voting system in which a terminal device of a voter, a vote data generation server that generates vote data for the voter to vote, and a plurality of counting servers that count votes are connected via a network. And
The voting data generation server
For each voting pattern in which each voter's vote is assigned to each option, a share of secret voting data corresponding to each aggregation server is generated , and each share of the generated voting data is corresponding to each aggregation Voting data generating means for encrypting with a server key and transmitting to the terminal device of each voter ,
The terminal device
From the voting data generation server, for all the voting patterns, the secret-distributed voting data share ciphertext corresponding to each aggregation server is received, and the voter votes from the ciphertext of the voting data share. A voting means for transmitting the ciphertext of the share of the corresponding voting data to each corresponding aggregation server,
The aggregation server is
And a counter that has been secret sharing for counting the number of votes,
Counter addition means for receiving a ciphertext of share of voting data from the terminal device, and updating the secret-distributed counter to a value obtained by adding a share of voting data obtained by decrypting the ciphertext;
Wherein and a voting result calculating means for decoding the votes based on the secret distributed counter each accounting server's,
An electronic voting system characterized by that.
さらに、前記集計サーバへ投票データの正当性を確認するための情報を保持する公開掲示板サーバとネットワークを介して接続され、
前記投票データ生成手段は、前記投票データのシェアから生成した正当性確認データを、投票パターンを秘匿して前記公開掲示板サーバへ送信し、
前記公開掲示板サーバは、投票パターンを秘匿した正当性確認データを受信し、内部に記憶するシェア記憶手段を備え、
前記カウンタ加算手段は、正当性確認データを前記公開掲示板サーバから読み出し、この正当性確認データを基に前記投票データのシェアが正当であると判断した場合に、前記秘密分散されたカウンタを、当該投票データのシェアを加算した値に更新する、
ことを特徴とする請求項1に記載の電子投票システム。
Furthermore, connected to a public bulletin board server holding information for confirming the validity of the voting data to the aggregation server via a network,
The voting data generation means transmits the validity confirmation data generated from the share of the voting data to the public bulletin board server while concealing the voting pattern,
The public bulletin board server is provided with share storage means for receiving the validity confirmation data concealing the voting pattern and storing it inside,
Said counter adding means reads the validation data from the public bulletin board server, when the share of the voting data based on the validation data is found valid, the are secret sharing counter, the Update the vote data share to the added value ,
The electronic voting system according to claim 1.
前記投票データ生成手段は、前記投票データのシェアの平文を前記端末装置へ送信し、
前記投票手段は、前記投票データ生成サーバから前記投票データのシェアの平文を受信し、この投票データのシェアの平文と、前記公開掲示板サーバから読み出した正当性確認データとを基に、前記投票データのシェアの暗号文が正当であると判断した場合に、投票者が投票するパターンに応じた投票データのシェアの暗号文を対応する各集計サーバへ送信する、
ことを特徴とする請求項2に記載の電子投票システム。
The voting data generation means transmits a plaintext of the share of the voting data to the terminal device,
The voting means receives the plaintext of the share of the voting data from the voting data generation server, and based on the plaintext of the share of the voting data and the validity confirmation data read from the public bulletin board server, the voting data When it is determined that the ciphertext of the share is valid, the ciphertext of the share of the voting data corresponding to the pattern that the voter votes is sent to each corresponding aggregation server.
The electronic voting system according to claim 2.
JP2002355415A 2002-12-06 2002-12-06 Electronic voting system Expired - Fee Related JP3910529B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002355415A JP3910529B2 (en) 2002-12-06 2002-12-06 Electronic voting system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002355415A JP3910529B2 (en) 2002-12-06 2002-12-06 Electronic voting system

Publications (2)

Publication Number Publication Date
JP2004192029A JP2004192029A (en) 2004-07-08
JP3910529B2 true JP3910529B2 (en) 2007-04-25

Family

ID=32756125

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002355415A Expired - Fee Related JP3910529B2 (en) 2002-12-06 2002-12-06 Electronic voting system

Country Status (1)

Country Link
JP (1) JP3910529B2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4547233B2 (en) * 2004-10-27 2010-09-22 日本電信電話株式会社 Communication system, communication method and program thereof
JP4771053B2 (en) * 2005-05-27 2011-09-14 日本電気株式会社 Integrated shuffle validity proving device, proof integrating device, integrated shuffle validity verifying device, and mixed net system
JP4630144B2 (en) * 2005-07-07 2011-02-09 日本電信電話株式会社 Electronic voting apparatus, voting apparatus, electronic voting system, electronic voting method and program
KR20200108343A (en) * 2018-01-16 2020-09-17 엔체인 홀딩스 리미티드 Computer-implemented method and system for obtaining digitally signed data
CN110929547B (en) * 2018-09-19 2024-02-09 上海仪电(集团)有限公司中央研究院 Picture type meter reading method, device and system based on artificial intelligence
JPWO2022195860A1 (en) * 2021-03-19 2022-09-22
WO2023053339A1 (en) * 2021-09-30 2023-04-06 日本電気株式会社 Electronic voting system, electronic voting method, and electronic voting program

Also Published As

Publication number Publication date
JP2004192029A (en) 2004-07-08

Similar Documents

Publication Publication Date Title
US20230216669A1 (en) Systems and methods for communication, storage and processing of data provided by an entity over a blockchain network
US7260552B2 (en) Secure remote electronic voting system and cryptographic protocols and computer programs employed
Joaquim et al. REVS–a robust electronic voting system
Chow et al. Robust Receipt-Free Election System with Ballot Secrecy and Verifiability.
Fouard et al. Survey on electronic voting schemes
WO2001020562A2 (en) Multiway election method and apparatus
EP1361693B1 (en) Handle deciphering system and handle deciphering method, and program
JP3910529B2 (en) Electronic voting system
Zwierko et al. A light-weight e-voting system with distributed trust
Fan et al. An efficient multi-receipt mechanism for uncoercible anonymous electronic voting
Cetinkaya et al. Pseudo-voter identity (pvid) scheme for e-voting protocols
Li et al. AvecVoting: Anonymous and verifiable E-voting with untrustworthy counters on blockchain
Cetinkaya et al. A practical verifiable e-voting protocol for large scale elections over a network
Akinyokun et al. Receipt-Free, Universally and Individually Verifiable Poll Attendance
Cetinkaya et al. A practical privacy preserving e-voting protocol using dynamic ballots
Wang et al. WeVoting: Blockchain-based Weighted E-Voting with Voter Anonymity and Usability
Saini et al. An Analytical study of E-voting System.
Vangujar et al. A Novel Approach to e-Voting with Group Identity Based Identification and Homomorphic Encryption
Dall'Olio et al. Voting with Designated Verifier Signature-Like Protocol.
Sun et al. A Privacy-Preserving E-voting Scheme with Verifiable Format
Al-Saidi et al. A Secure Electronic Voting Scheme Based on EVOX-MA and REVS-E Voting Blind Signature Protocols
Wang et al. A secure voter-resolved approval voting protocol over internet
Sun et al. A Privacy Preserving and Format-Checkable E-voting Scheme
Huarte et al. A new fully auditable proposal for an Internet voting system with secure individual verification and complaining capabilities
Røsland Remote Electronic Voting

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060228

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060424

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060530

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060712

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060803

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060829

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061024

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070116

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070124

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100202

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110202

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120202

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120202

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130202

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140202

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees