JP2011091864A - 匿名電子投票システム及び匿名電子投票方法 - Google Patents

匿名電子投票システム及び匿名電子投票方法 Download PDF

Info

Publication number
JP2011091864A
JP2011091864A JP2011016531A JP2011016531A JP2011091864A JP 2011091864 A JP2011091864 A JP 2011091864A JP 2011016531 A JP2011016531 A JP 2011016531A JP 2011016531 A JP2011016531 A JP 2011016531A JP 2011091864 A JP2011091864 A JP 2011091864A
Authority
JP
Japan
Prior art keywords
voting
server
data
encrypted
voter
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.)
Granted
Application number
JP2011016531A
Other languages
English (en)
Other versions
JP5246276B2 (ja
Inventor
Kengo Mori
健吾 森
Kazue Sako
和恵 佐古
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2011016531A priority Critical patent/JP5246276B2/ja
Publication of JP2011091864A publication Critical patent/JP2011091864A/ja
Application granted granted Critical
Publication of JP5246276B2 publication Critical patent/JP5246276B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C13/00Voting apparatus

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Time Recorders, Dirve Recorders, Access Control (AREA)

Abstract

【課題】携帯電話などの記憶容量や処理能力の低い機器からの投票でも投票の秘密が守られ、また、全有権者に共通の公開鍵認証基盤が存在しない場合でも有権者認証が可能な匿名投票システムを提供する。
【解決手段】投票サーバ(200)は、平文と平文を暗号化した暗号化投票データとの組のリストを投票者端末(100)に送信し、投票者端末(100)は投票者の選んだ平文に対応する暗号化候補者名を暗号サーバ(400)に送信する。投票者端末(100)は、暗号サーバ(400)から受信した、暗号化候補者名を再度暗号化した暗号化投票データを投票サーバ(200)に送信する。暗号化投票データの復号には匿名復号システム(500)を用いる。投票者端末(100)は認証サーバ(300)に対して投票者の認証を行ない、また、暗号化投票データには認証サーバ(300)が共通の公開鍵認証基盤によるデジタル署名を付与する。
【選択図】図1

Description

本発明は、匿名電子投票システム及び方法に関し、更に詳しくは、多様なクライアント環境から利用可能な匿名電子投票システム及び匿名電子投票方法に関する。
匿名電子投票システムは、例えばネットワークなどを介して無記名の秘密投票を電子的に実現するシステムであり、従来の匿名電子投票システムの一例が、特許文献1や非特許文献1に記載されている。なお、以下の説明において、投票には、予め定められている候補者から選挙を行うための投票のみならず、自由記述を許すアンケートなども含まれるものとする。また、候補者や候補者名は、単に選挙における候補者や候補者名を指すものではなく、ある集合から投票者の意思によってある要素あるいは項目を選択する場合のその要素(項目)や要素(項目)名をも含むものである。
図28に示すように、従来の匿名電子投票システムは、窓口センタ901と複数の復号シャッフルセンタ902とからなる匿名復号システム900と、各投票者がアクセスすることとなる投票管理センタ(投票サーバ)910と、から構成されている。匿名復号システム900は、投票の秘密を守るために設けられており、投票者と暗号化投票データとの対応を秘匿して復号結果を出力するために用いられている。
上記構成を有する従来の匿名電子投票システムは、次のように動作する。
まず、窓口センタ901と復号シャッフルセンタ902は、投票用の暗号化鍵などのシステムの公開情報を生成して投票管理センタ910に送信し、投票管理センタ910は、各投票者にその公開情報を通知する。
投票期間が始まると各投票者は、公開情報に基づいて自分の投票内容を暗号化して暗号投票文を作成し、その暗号投票文に対して投票者のデジタル署名を生成し、暗号投票文とデジタル署名とを投票管理センタ910に送信する。その際、各投票者は、典型的には、自己のクライアント端末において暗号投票文やデジタル署名を作成し、各種のネットワークを介して自己のクライアント端末から投票管理センタ910に対して暗号投票文とデジタル署名とを投票管理センタ910に送信する。投票管理センタ910は、受信したデジタル署名を検証し、有権者名簿をもとに投票者の投票権を確認し、重複投票がないことを確認した後、受信した暗号投票文を受け付ける。
投票期間が終わると、投票管理センタ910は、投票の受け付けを終了し、投票開始から終了までに受け付けた暗号投票文のリストを匿名復号システム900の窓口センタ901に送付する。窓口センタ901は、復号シャッフルセンタ902を介して暗号投票文のリストを復号し、リストの順序を入れ替えることで平文の投票文のリストを得、平文の投票文のリストを投票管理センタ910に返送する。
投票管理センタ910は、窓口センタ901から受け取った平文の投票文のリストにより、投票結果の集計を行なう。
特開2002−237810号公報 特開2001−251289号公報 特開2002−344445号公報
佐古 和恵、外6名、"シャッフリングによる大規模電子投票システムの実現"、情報処理学会第62回全国大会、2001年3月
従来の匿名電子投票システムでは、投票者が使用するクライアント端末が携帯電話機のような記憶容量や処理能力の乏しい機器である場合には、投票の秘密が守られた投票が難しい、という問題点がある。その理由は、従来の匿名電子投票システムで投票者が行なう暗号化処理プログラムは、記憶容量や処理能力の乏しい機器には実装するのが難しく、一方、他の機器に投票内容を送って暗号化処理を行なうこととすると、暗号化処理を行なう機器には投票内容がわかってしまうからである。
また、従来の匿名電子投票システムでは、広く一般の人を有権者とするような投票(例えば公職選挙)において、有権者の認証が困難であり、非有権者の投票や重複投票を防止することが難しい、という問題点もある。その理由は、従来の匿名電子投票システムでは、有権者の認証に利用するデジタル署名において、すべての投票者が共通の公開鍵認証基盤に登録されていることを前提としているが、現在、一般にはそのような基盤が普及していないためである。
そこで本発明の第1の目的は、携帯電話機などの記憶容量や処理能力の小さい機器からも投票の秘密を守りつつ投票を行なえる電子投票システム及び匿名電子投票方法を提供することである。
本発明の第2の目的は、すべての有権者が共通の公開鍵認証基盤に登録されているような条件が整備されていない場合であっても、有権者認証の行なえる匿名電子投票システム及び匿名電子投票方法を提供することである。
本発明は、第1の視点において、候補者名と暗号化候補者名との組合わせをリストとして含むデータを受信して、選択された候補者の前記暗号化候補者名をネットワーク経由で送信する投票者端末と、
前記暗号化候補者名を受信し再度暗号化して暗号化投票データを作成し、該暗号化投票データを、前記暗号化候補者名を送信した当該投票者端末に前記ネットワーク経由で返信する少なくとも1つの暗号サーバと、
前記投票者端末から暗号化投票データを受信し、該受信した暗号化投票データの内で有効な暗号化投票データのリストを作成し、該作成したリストを前記ネットワーク経由で送信する投票サーバと、
前記投票サーバから受信した前記有効な暗号化投票データのリストを復号し、該リストの順序を入れ換えた平文の候補者名リストを前記ネットワーク経由で送信する復号サーバとを備え、
前記投票サーバは、前記復号サーバから前記平文の候補者名リストを受信し、該受信した候補者名リストに基づいて投票結果を集計することを特徴とする電子投票システムを提供する。
本発明の第1の視点に係る匿名電子投票システムの好ましい態様では、投票サーバは復号サーバ(匿名復号システム)と接続され、投票サーバには暗号化手段を備え、暗号化手段をもたない投票者端末は暗号サーバと接続されており、共通基盤署名生成手段をもたない投票者端末は認証サーバと接続される。暗号サーバには再暗号化手段を備え、認証サーバにはID連携手段と共通基盤署名生成手段を備える。
上記構成において、投票サーバは暗号化手段をもたない投票者端末に対しては平文の候補者名と暗号化された候補者名の組を送信し、暗号化手段をもたない投票者端末は、投票者の選んだ候補者名に対応する、暗号化された候補者名を、暗号サーバを介して再度暗号化してから投票サーバに送信し、投票サーバは、受信したすべての暗号データを匿名復号システムにより復号する。これにより、本発明の第1の目的を達成することができる。
また、共通基盤署名生成手段をもたない投票者端末は、認証サーバと通信を行なって組織内での個人認証を行ない、認証サーバは組織内に閉じた投票者IDをID連携手段により共通基盤におけるIDに変換し、このIDと投票データの組に認証サーバの共通基盤デジタル署名を付与して投票サーバに送信する。このように、既存の認証基盤を利用して個人認証を行なったことを認証サーバのデジタル署名により証明することで、本発明の第2の目的を達成することができる。
本発明は、第2の視点において、ネットワークに接続された投票者端末と、
公開情報から前記投票者端末毎に第1暗号化パラメータを生成する第1データ変換手段を有し、前記第1暗号パラメータを前記投票者端末に送信する第1の暗号サーバと、
前記公開情報から前記投票者端末毎に第2暗号化パラメータを生成する第2データ変換手段を有し、前記第2暗号化パラメータを前記投票者端末に送信する第2の暗号サーバと、
前記投票者端末から暗号化投票データを受信し、該受信した暗号化投票データの内で有効な暗号化投票データのリストを作成し、該作成したリストを前記ネットワーク経由で送信する投票サーバと、
前記投票サーバから受信した前記有効な暗号化投票データのリストを復号し、該リストの順序を入れ換えた平文の候補者名リストを生成し、前記ネットワーク経由で送信する復号サーバとを備え、
前記投票サーバは、前記復号サーバから前記平文の候補者名リストを受信し、該受信した候補者名リストに基づいて投票結果を集計し、
前記投票者端末は、投票内容を前記第1及び第2暗号化パラメータに基づいて暗号化して暗号化投票データを生成する暗号化手段を有し、該暗号化投票データを前記投票サーバに送信することを特徴とする匿名電子投票システムを提供する。
上記本発明の第2の視点に係る匿名電子投票システムの好ましい態様では、投票サーバが、第1の視点の匿名電子投票システムにおける暗号化手段にかえて第1の変換手段を備え、第1の視点の匿名電子投票システムにおける暗号サーバの再暗号化手段にかえて第2の変換手段を備え、投票者端末が暗号化手段(暗号データ作成手段)を備える。
上記好ましい態様の第2の視点に係る匿名電子投票システムでは、投票サーバは、第1の変換手段により投票内容の暗号化処理に必要な演算の一部を行なってその結果である暗号パラメータを投票者端末へ送信し、暗号サーバも同様に第2の変換手段により投票内容の暗号化処理に必要な演算の一部を行なってその結果である暗号パラメータを投票者端末へ送信し、投票者端末では投票内容とともに、投票サーバから受信した第1の変換結果と暗号サーバから受信した第2の変換結果とを暗号データ作成手段に入力して暗号化投票データを作成することで、本発明の第1の目的を達成することができる。
本発明の匿名電子投票システムは、記憶容量や処理能力の小さい機器からも電子投票を行なえる、という効果を有する。その理由は、暗号化処理のすべて、もしくは、暗号化処理のうちで計算量の多い変換処理を、投票者端末で行なう必要がないからである。
また本発明の匿名電子投票システムは、記憶容量や処理能力の小さい機器を使って電子投票を行なっても、投票の秘密を守ることができる、という効果を有する。その理由は、暗号化投票データの復号は復号サーバによって行なわれるため、すべての暗号化投票データが復号されても、どの投票者の暗号化投票データがどの平文に対応するかがわからないことと、投票内容の平文は投票サーバと暗号サーバの両方の処理により暗号化され、投票サーバや暗号サーバは、単独では投票された暗号化投票データを復号できないからである。
さらに本発明の好ましい態様のの匿名電子投票システムは、すべての有権者が共通の公開鍵認証基盤に登録されているような条件が整備されていなくても、不正投票を防止しつつ投票を行なえる、という効果を有する。その理由は、組織内に限られた認証手段しかもたない有権者を認証サーバが認証し、その投票データに認証サーバのデジタル署名を付与することで、認証サーバによる投票者の認証が行なわれているデータであることを確認できるからである。
本発明の第1の発明形態の匿名電子投票システムの構成を示すブロック図である。 第1の実施形態における初期設定の動作を示すフローチャートである。 第1の実施形態における投票者端末100の動作を示すフローチャートである。 第1の実施形態における投票者端末110の動作を示すフローチャートである。 第1の実施形態における投票者端末120の動作を示すフローチャートである。 第1の実施形態における投票者端末130の動作を示すフローチャートである。 第1の実施形態における投票者端末140の動作を示すフローチャートである。 第1の実施形態における投票者端末150の動作を示すフローチャートである。 第1の実施形態における投票サーバ200の動作を示すフローチャートである。 本発明の第2の実施形態の匿名電子投票システムの構成を示すブロック図である。 第2の実施形態における投票者端末100の動作を示すフローチャートである。 第2の実施形態における投票者端末110の動作を示すフローチャートである。 第2の実施形態における投票者端末140の動作を示すフローチャートである。 第2の実施形態における投票サーバ200の動作を示すフローチャートである。 本発明の第3の実施形態の匿名電子投票システムの構成を示すブロック図である。 第3の実施形態における投票者端末100の動作を示すフローチャートである。 第3の実施形態における投票者端末110の動作を示すフローチャートである。 第3の実施形態における投票者端末140の動作を示すフローチャートである。 第3の実施形態における暗号検証サーバ600の動作を示すフローチャートである。 本発明の第4の実施形態の構成を示すブロック図である。 第4の実施形態における投票者端末100の動作を示すフローチャートである。 第4の実施形態における投票者端末110の動作を示すフローチャートである。 第4の実施形態における投票者端末140の動作を示すフローチャートである。 本発明の第5の実施形態の構成を示すブロック図である。 第5の実施形態における投票者端末100の動作を示すフローチャートである。 第5の実施形態における投票者端末110の動作を示すフローチャートである。 第5の実施形態における投票者端末140の動作を示すフローチャートである。 従来の匿名電子投票システムの構成を示すブロック図である。
次に、本発明の好ましい実施の形態について、図面を参照して詳細に説明する。
《第1の実施形態》
図1は、本発明の第1の実施形態の匿名電子投票システムの構成を示している。この匿名電子投票システムは、それぞれ構成要素や処理能力などが異なっている投票者端末100,110,120,130,140,150と、投票センタ(投票サーバ)200と、認証サーバ300と、暗号サーバ400,410,440と、匿名復号システム500とから構成される。暗号サーバ400,410,440は、それぞれ、投票者端末100,110,140と接続している。後述する説明から明らかなように、投票者端末100,110,120,130,140,150からの投票センタ200への接続形態は多様であり、あるものは投票センタ200に直接接続し、別のものは認証サーバ300を介して投票センタ200に接続し、また別のものは、直接接続と認証サーバ300を介した接続とを併用している。ここでは簡単のため図示を省略するが、投票者端末100,110,120,130,140,150は、それぞれ、複数存在してもかまわない。また、投票者端末ひとつにつきひとつの暗号サーバが接続される構成としてもよいし、いくつかの投票者端末がひとつの暗号サーバと接続される構成としてもよい。また、暗号サーバと認証サーバとが同一のサーバ上で動作することも可能である。
まず、各投票者端末100,110,120,130,140,150の構成について説明する。
投票者端末100は、ディスプレイなどの表示装置101と、ボタンやキーボードなどの入力装置102と、機器側認証手段103とを備え、投票サーバ200、認証サーバ300、暗号サーバ400と通信回線などにより接続されている。
投票者端末110は、ディスプレイなどの表示装置111と、ボタンやキーボードなどの入力装置112と、組織内基盤署名生成手段113とを備え、投票サーバ200、認証サーバ300、暗号サーバ410と通信回線などにより接続されている。
投票者端末120は、ディスプレイなどの表示装置121と、ボタンやキーボードなどの入力装置122と、機器側認証手段123と、暗号化手段124とを備え、投票サーバ200、認証サーバ300と通信回線などにより接続されている。
投票者端末130は、ディスプレイなどの表示装置131と、ボタンやキーボードなどの入力装置132と、組織内基盤署名生成手段133と、暗号化手段134とを備え、投票サーバ200、認証サーバ300と通信回線などにより接続されている。
投票者端末140は、ディスプレイなどの表示装置141と、ボタンやキーボードなどの入力装置142と、共通基盤署名生成手段143とを備え、投票サーバ200、暗号サーバ440と通信回線などにより接続されている。
投票者端末150は、ディスプレイなどの表示装置151と、ボタンやキーボードなどの入力装置152と、共通基盤署名生成手段153と、暗号化手段154とを備え、投票サーバ200と通信回線などにより接続されている。
投票サーバ200は、有権者名簿データベース201と、共通基盤署名検証手段202と、暗号化手段203と、ハードディスクドライブなどの記録装置204とを備え、投票者端末100,110,120,130,140,150及び認証サーバ300と通信回線などにより接続されている。
認証サーバ300は、サーバ側認証手段301と、組織内基盤署名検証手段302と、共通基盤署名生成手段303と、ID連携手段304とを備えている。
暗号サーバ400,410,440は、それぞれ再暗号化手段401,411,441を備えている。
投票者端末100,120の機器側認証手段103,123は、認証サーバ300のサーバ側認証手段301と通信を行ない、投票者端末を操作している投票者の識別子がIDjであることの認証を受けるとともに、このサーバ側認証手段301と通信を行ない、投票者端末100,120を操作している投票者jの識別子IDjを認証サーバ300に通知する。
投票者端末120,130,140,150と投票サーバ200とにそれぞれ設けられた暗号化手段124,134,144,154,203は、暗号化公開鍵Yと平文投票データvを入力とし、Yによりvを暗号化した暗号化投票データE(v)を出力する。
暗号サーバ400,410,440の再暗号化手段401,411,441は、いずれも、暗号化公開鍵Yと暗号化投票データE(v)を入力とし、YによりE(v)を再度暗号化した暗号化投票データE’(v)を出力する。
投票者端末110,130の組織内署名生成手段113,133は、暗号化投票データE(vj)と投票者jの組織内識別子IIDjと署名用秘密鍵djとを入力とし、データ(E(vj),IIDj)に対する投票者jの組織内向けデジタル署名Sejを出力する。
認証サーバ300の組織内署名検証手段302は、暗号化投票データE(vj)と組織内識別子IIDjと組織内向けデジタル署名Sejと検証用公開鍵Pjとを入力とし、Sejがデータ(E(vj),IIDj)に対して署名用秘密鍵djにより正しく計算されたものかどうかを判定する。
投票者端末140,150の共通基盤署名生成手段143,153は、暗号化投票データE(vj)と投票者jの共通識別子CIDjと署名用秘密鍵djを入力とし、データ(E(vj),CIDj)に対する投票者jの共通基盤デジタル署名Sejを出力する。
認証サーバ300の共通基盤署名生成手段303は、暗号化投票データE(vj)と投票者jの共通識別子CIDjと、認証サーバの署名用秘密鍵dkを入力とし、データ(E(vj),CIDj)に対する認証サーバの共通基盤デジタル署名Sekを出力する。
投票センタ200の共通基盤署名検証手段202は、暗号化投票データE(vj)と共通識別子CIdjと共通基盤デジタル署名Sekを入力とし、Sekがデータ(E(vj),CIDj)に対して署名用秘密鍵dkにより正しく計算されたものかどうかを判定する。
認証サーバ300のID連携手段304には、組織内識別子IIDjと共通識別子CIDjとの対応関係が記録されており、組織内識別子IIDjが入力されると対応する共通識別子CIDjを出力する。
匿名復号システム500は、外部から入力された初期設定情報に従って暗号化公開鍵Yを生成して出力し、外部から暗号化投票データE(vj)のリストが入力されると、E(vj)のリストを復号し、順番をランダムに並びかえた平文投票データvjのリストと、入力されたE(vj)のリストと出力したvjのリストとの間に1対1の対応関係があることの証明データとを出力する。
投票者端末110,130の組織内署名生成手段113,133と、投票者端末140,150の共通基盤署名生成手段143,153と、認証サーバ300の共通基盤署名生成手段303は、いずれもデジタル署名を作成するものであり、これに対し認証サーバ300の組織内署名検証手段302と投票サーバ200の共通基盤署名検証手段202とは、デジタル署名の検証を行うものである。ここでのデジタル署名には、例えばRSA暗号などの公開鍵暗号を用いるデジタル署名を用いることができる。RSA暗号を用いる場合、署名者jのデータVに対する署名Sjvは、Vと署名者jの署名用秘密鍵djを用いて、
Sjv=V^dj mod n
により計算され、署名検証は、VとSjvと、djに対応する検証用公開鍵ejを用いて、
Sjv^ej=V mod n
が成り立てば合格となる。なお、^はべき乗を表わす記号であり,V^djはVをdj回べき乗した結果(すなわちVdj)を表わす。
ここで、dj,ej,nは、二つの素数p,qに対して、
n=p×q,
dj×ej=1 mod (p−1)×(q−1)
と表わされる整数であり、あらかじめ各署名者jごとに相異なる(dj,ej)の組を作成し、djは各署名者jが秘密に保持し、(n,ej)の組は署名者jの識別子IDjと関連づけて公開しておくようにする。署名検証においては、公開されているIDjと(n,ej)との対応関係を検索して(n,ej)を取得して署名検証の処理を行なう。djは署名生成用秘密鍵、(n,ej)は署名検証用公開鍵とよばれる。
組織内署名生成手段113,133及び組織内署名検証手段302においては、識別子IDjは例えば社員番号など、ある組織の内部でのみ公開・利用される組織内識別子であり、別々の組織に属する別の個人に割り振られた識別子が同じIDjになっている可能性もあり、また、有権者名簿に登録される有権者の識別子(有権者名など)との対応関係は公開されているとは限らない。IDjに対応する署名検証用公開鍵(n,ej)の組も同様に、組織の内部にのみ公開される場合もある。
一方、共通基盤署名生成手段143,153,303及び共通基盤署名検証手段202においては、署名者の識別子IDjと(n,ej)とは広く一般に公開され、別の個人に同じ識別子が割り振られることのない、共通識別子であり、有権者名簿データベース201には共通識別子を含む情報が記録される。
投票者端末100,120の機器側認証手段103,123と、認証サーバ300のサーバ側認証手段301は、個人認証を行うものである。ここでは、ID文字列とパスワードによる個人認証や、携帯電話の端末認証に基づいた個人認証などを用いることができる。
ID文字列とパスワードによる個人認証を行なう場合、認証サーバ300にはあらかじめ投票者の組織内識別子とパスワードの対応関係を記録しておく。機器側認証手段103,123は、入力装置102,122から入力された投票者の組織内識別子IIDjを認証サーバ300に送る。認証サーバ300は、サーバ側認証手段301により、受信したIIDjがあらかじめ記録された組織内識別子のリストに含まれることを確認し、乱数cを生成して投票者端末100,120へ返信する。機器側認証手段103,123は、入力装置102,122から入力されたパスワードpwと乱数cとをSHA1などのハッシュ関数に入力し、出力された値rを認証サーバ300に返信する。サーバ側認証手段301は、あらかじめ記録された組織内識別子とパスワードのリストをIIDjをキーとして検索し、IIDjに対応するpwを取得し、SHA1などのハッシュ関数にpwとcとを入力し、出力された値が投票者端末100,120から返信された値rと一致すれば、投票者端末100,120を操作している投票者をIIDjで示される投票者であると認める。
本実施形態において、投票者端末120,130,150及び投票サーバ200に設けられる暗号化手段123,133,153,203と、暗号サーバ400,410,440に設けられる再暗号化手段401,411,441と、匿名復号システム500については、例えば特許文献1に示された技術を用いることができる。
特許文献1に示された技術を用いる場合、匿名復号システム500は、投票センタ200からセキュリティパラメータ(pL,qL,t)とセッションIDが入力されると、(pL,qL,t)に従って公開情報(p,q,g)と秘密鍵Xを生成し、公開情報に公開鍵Yを加えた公開情報(p,q,g,Y)を出力して投票センタ200に返信する。ここで、p,qはエルガマル暗号のパラメータであり、ある整数kにより
p=k×q+1という関係にある素数である。gは、法pにおける位数qの部分群を生成する生成元である。また、pL,qLは、素数p,qの長さであり、tは、順番入れ替え処理が正しいことを証明するためにデータの生成時および検証時に使用する繰り返し回数である。セッションIDは処理対象を識別するための識別子である。ここで、処理対象は、例えば県知事選挙、市議会議員選挙などである。公開鍵Yは復号鍵Xに対して、
Y=g^X mod qの計算によって得られた値であり、復号鍵Xは無作為に選ばれたq未満の乱数である。
暗号化手段123,133,153,203は、公開情報(p,q,g,Y)と平文投票データviを入力とし、暗号化投票データE(vi)を出力する。E(vi)は(Gi,Vi)という組で表され、
(Gi,Vi)=(g^r mod p,vi×Y^r mod p)
の計算によって得られる。ここでrは、平文投票データviに対して無作為に選んだ乱数である。
なお本実施形態においては、このとき、正しくrを知って暗号化投票データを作成したことの証明を作成することができる。例えば、viの暗号化において乱数siを生成し、
αi=g^si
mod p,
ci=HASH(p,q,g,Y,Gi,Vi,αi),
ti=ci×ri+si mod p
により、乱数証明データαi、tiを生成する。この証明は、
ci=HASH(p,q,g,Gi,αi)を計算し、
g^ti×Gi^{−ci}=αi mod p
が成り立つかどうかを確認することで検証できる。ここで、HASH(p,q,g,Y,Gi,Vi,αi)はSHA1などのハッシュ関数にp,q,g,Y,Gi,Vi,αiを入力して得られる値である。
再暗号化手段401,411,441は、公開情報(p,q,g,Y)と暗号化投票データE(vi)=(Gi,Vi)を入力とし、暗号化投票データE’(vi)を出力する。E’(vi)は(G’i,V’i)という組で表され、
(G’i,V’i)=(Gi×g^s mod p,Vi×Y^s mod p)
の計算によって得られる。ここで、sは暗号化投票データE(vi)に対して無作為に選んだ乱数である。なお、
(G’i,V’i)=(Gi×g^s mod p,Vi×Y^s mod p)
=(g^{r+s} mod p,vi×Y^{r+s} mod p)
の等式が成り立っており、E(vi)に対する復号処理と同じ処理をE’(vi)に施すことで平文投票データviを得ることができる。つまり、E(vi)とE’(vi)とは復号処理に関しては同様に扱える。
投票センタ200がEi=(Gi,Vi)のリストと、セッションIDとを匿名復号システム500に入力すると、匿名復号システム500は、セッションIDにより特定された公開情報(p,q,g,Y)および復号鍵Xにより(Gi,Vi)のリストを復号し、順番をランダムに並びかえた平文投票データviのリストと、(Gi,Vi)のリストとviのリストとの間に1対1の対応関係があることの証明データとを投票センタ200に返信する。
p,q,g,Xの生成、(Gi,Vi)のリストの復号と順番の並べかえ、(Gi,Vi)のリストとviとの間に1対1の対応関係があることの証明とその検証方法については、特許文献1に記載の方法を用いる。
ここでは、特許文献1の技術を用いる場合の、主に各構成要素の入出力について説明した。なお、暗号データのリストを、復号後に出力されるデータリストとの間に1対1の対応関係があることを、具体的な対応関係そのものの情報は一切漏らさずに証明する技術は、特開2001−251289号公報(特許文献2)、特開2002−344445号公報(特許文献3)などにも示されており、これらの技術を用いて暗号化手段123,133,153,再暗号化手段401,411,441、匿名復号システム500を実現することも可能である。
次に、本実施形態の匿名電子投票システムの全体の動作について説明する。
図2には、この匿名電子投票システムでの初期設定の動作が記述されている。まず、投票サーバ200は、セキュリティパラメータ(pL,qL,t)とセッションIDとを匿名復号システム500に送信する(ステップA1)。匿名復号システム500は、(pL,qL,t)にしたがって公開情報(p,q,g,Y)を作成し(ステップA2)、投票サーバ200へ返信する(ステップA3)。投票サーバ200は、(p,q,g,Y)を記録装置204に記録する(ステップA4)。以上により、初期設定が終了する。
次に、図3〜図9を参照して、投票者端末100,110,120,130,140,150を使った投票の動作を説明する。ここで、図3〜図8は、それぞれ、投票者端末100,110,120,130,140,150での処理(及びそれらの投票者端末での処理に関連する投票サーバ、認証サーバ及び暗号サーバでの処理)を示している。また、図9は、投票受付け後から開票に相当する作業までの処理を説明している。
投票期間が始まると、有権者である投票者は、投票者端末100,110,120,130,140,150のいずれかにより投票サーバ200へアクセスする。このとき、投票者端末100,110,140からの投票では暗号投票情報要求を送信し(図3、図4、図7のステップA5−1)、投票者端末120,130,150からの投票では単なる投票情報要求を送信する(図5、図6、図8のステップA5−2)。投票サーバ200は、投票者端末100,110,140からの暗号投票情報要求を受信すると、その暗号化手段203により、すべての候補者名vjを公開情報(p,q,g,Y)で暗号化することによって(vj,E(vj))のリストを作成し(図3、図4、図7のステップA6)、公開情報(p,q,g,Y)と(vj,E(vj))のリストとを投票者端末100,110,140に返信する(図3、図4、図7のステップA7−1)。また、投票者端末120,130,150からの単なる投票情報要求を受信すると、投票サーバ200は、公開情報(p,q,g,Y)と平文の候補者名vjのリストとを投票者端末120,130,150に返信する(図5、図6、図8のステップA7−2)。
以下、投票データの送信までの処理を、投票者端末100,110,120,130,140,150ごとに別々に説明する。
投票者端末100は、図3に示すように、(p,q,g,Y)と(vj,E(vj))のリストとを受信すると、その表示装置101においてvjのリストを投票者に対して表示し、投票者は入力装置102によりvjのリストから候補者名viを選択して入力する(ステップA100−1)。そして投票者端末100は、viに対応するE(vi)と公開情報(p,q,g,Y)とを暗号サーバ400に送信する(ステップA100−2)。次に、暗号サーバ400は、受信したE(vi)と公開情報(p,q,g,Y)とを再暗号手段401に入力してE(vi)を再度暗号化したE’(vi)を計算し(ステップA100−3)、E’(vi)を投票者端末100に返信する(ステップA100−4)。次に、投票者端末100は、入力装置102により投票者の組織内識別子IIDiを取得し、機器側認証手段103により認証サーバ300に対して投票者iの組織内識別子IIDiの認証を行ない(ステップA100−5)、E’(vi)を認証サーバ300に送信する(ステップA100−6)。
認証サーバ300は、サーバ側認証手段301により確認した投票者の組織内識別子IIDiをID連携手段304に入力し、対応する共通識別子CIDiを得る(ステップA100−7)。次に、認証サーバ300では、共通基盤署名生成手段303に(E’(vi),CIDi)の組と認証サーバ300の署名用秘密鍵dkとが入力されて、(E’(vi),CIDi)に対する認証サーバ300の共通基盤署名Sekが生成される(ステップA100−8)。そして、認証サーバ300は、(Ei,CIDi)=(E’(vi),CIDi)とSekとを投票サーバ200に送信する(ステップA100−9)。
投票者端末110は、図4に示すように、(p,q,g,Y)と(vj,E(vj))のリストとを受信すると、その表示装置111においてvjのリストを投票者に対して表示し、投票者は入力装置112によりvjのリストから候補者名viを選択して入力する(図4のステップA110−1)。そして、投票者端末110は、viに対応するE(vi)と公開情報(p,q,g,Y)とを暗号サーバ410に送信する(図4のステップA110−2)。暗号サーバ410は、受信したE(vi)と公開情報(p,q,g,Y)とを再暗号手段411に入力してE(vi)を再度暗号化したE’(vi)を計算し(ステップA110−3)、E’(vi)を投票者端末110に返信する(ステップA110−4)。次に、投票者端末110は、組織内署名生成手段113に投票者iの組織内識別子IIDiと署名用秘密鍵diとE’(vi)とを入力し、(E’(vi),IIDi)に対する組織内向けデジタル署名Seiを計算し(ステップA110−5)、(E’(vi),IIDi)とSeiとを認証サーバ300に送信する(ステップA110−6)。
認証サーバ300は、その組織内署名検証手段302により、Seiが(E’(vi),IIDi)に対して署名用秘密鍵diにより正しく計算されたものかどうかを検証し(ステップA110−7)、合格であれば、ID連携手段304によってIIDiに対応する共通識別子CIDiを取得する(ステップA110−8)。次に、認証サーバ300は、共通基盤署名生成手段303にE’(vi)とCIDiと認証サーバ300の署名用秘密鍵dkとを入力して、(E’(vi),CIDi)に対する認証サーバ300の共通基盤デジタル署名Sekを出力し(ステップA110−9)、(Ei,CIDi)=(E’ (vi),CIDi)とSekとを投票サーバ200に送信する(ステップA110−10)。
投票者端末120は、図5に示すように、(p,q,g,Y)とvjのリストとを受信すると、その表示装置121においてvjのリストを投票者に対して表示し、投票者は入力装置122によりvjのリストから候補者名viを選択して入力する(ステップA120−1)。そして投票者端末120は、viと公開情報(p,q,g,Y)とを暗号化手段124に入力し、viをYにより暗号化したE(vi)を得る(ステップA120−2)。次に、投票者端末120は、機器側認証手段123により認証サーバ300に対して投票者iの組織内識別子IIDiの認証を行ない(ステップA120−3)、E(vi)を認証サーバ300に送信する(ステップA120−4)。
認証サーバ300は、サーバ側認証手段301により確認した投票者の組織内識別子IIDiをID連携手段304に入力し、対応する共通識別子CIDiを得る(ステップA120−5)。次に、認証サーバ300は、共通基盤署名生成手段303に(E(vi),CIDi)の組と認証サーバ300の署名用秘密鍵dkを入力して、(E(vi),CIDi)に対する共通基盤署名Sekを生成し(ステップA120−6)、(Ei,CIDi)=(E(vi),CIDi)とSekとを投票サーバ200に送信する(ステップA120−7)。
投票者端末130は、図6に示すように、(p,q,g,Y)とvjのリストとを受信すると、その表示装置131においてvjのリストを投票者に対して表示し、投票者は入力装置132によりvjのリストから候補者名viを選択して入力する(ステップA130−1)。そして投票者端末130は、viと公開情報(p,q,g,Y)とを暗号化手段134に入力し、viをYにより暗号化したE(vi)を得る(ステップA130−2)。次に投票者端末130は、組織内署名生成手段133に投票者iの組織内識別子IIDiと署名用秘密鍵diとE(vi)とを入力し、(E(vi),IIDi)に対する組織内向けデジタル署名Seiを計算し(ステップA130−3)、(E(vi),IIDi)とSeiとを認証サーバ300に送信する(ステップA130−4)。
認証サーバ300は、組織内署名検証手段302により、Seiが(E(vi),IIDi)に対して署名用秘密鍵diにより正しく計算されたものかどうか検証し(ステップA130−5)、合格であれば、ID連携手段304によりIIDiに対応する共通識別子CIDiを取得する(ステップA130−6)。次に認証サーバ300は、共通基盤署名生成手段303にE(vi)とCIDiと認証サーバ300の署名用秘密鍵dkとを入力して、(E(vi),CIDi)に対する認証サーバ300の共通基盤デジタル署名Sekを出力し(ステップA130−7)、(Ei,CIDi)=(E(vi),CIDi)とSekとを投票サーバ200に送信する(ステップA130−8)。
投票者端末140は、図7に示すように、(p,q,g,Y)と(vj,E(vj))のリストとを受信すると、その表示装置141においてvjのリストを投票者に対して表示し、投票者は入力装置142によりvjのリストから候補者名viを選択して入力する(ステップA140−1)。そして投票者端末140は、viに対応するE(vi)と公開情報(p,q,g,Y)とを暗号サーバ440に送信する(ステップA140−2)。次に暗号サーバ440は、受信したE(vi)と公開情報(p,q,g,Y)とを再暗号手段441に入力してE(vi)を再度暗号化したE’(vi)を計算し(ステップA140−3)、E’(vi)を投票者端末140に返信する(ステップA140−4)。次に投票者端末140は、共通基盤署名生成手段143に投票者iの共通基盤識別子CIDiと署名用秘密鍵diとE’(vi)とを入力し、(E’(vi),CIDi)に対する共通基盤デジタル署名Seiを計算し(ステップA140−5)、(Ei,CIDi)=(E’(vi),CIDi)とSeiとを投票サーバ200に送信する(ステップA140−6)。
投票者端末150は、図8に示すように、(p,q,g,Y)とvjのリストとを受信すると、表示装置151においてvjのリストを投票者に対して表示し、投票者は入力装置152によりvjのリストから候補者名viを選択し入力する(ステップA150−1)。そして投票者端末150は、viと公開情報(p,q,g,Y)とを暗号化手段154に入力してviをYにより暗号化したE(vi)を得る(ステップA150−2)。次に投票者端末150は、共通基盤署名生成手段153に投票者iの共通基盤識別子CIDiと署名用秘密鍵diとE(vi)とを入力し、(E(vi),CIDi)に対する共通基盤デジタル署名Seiを計算し(ステップA150−3)、(Ei,CIDi)=(E(vi),CIDi)とSeiとを投票サーバ200に送信する(ステップA150−4)。
以上が、投票データの送信までの処理である。つづいて、投票データの受付けと投票締切後の開票集計処理について、図9を用いて説明する。
投票サーバ200は、認証サーバ300から(Ei,CIDi)とSekとを受信すると、共通基盤署名検証手段202によりSekが(Ei,CIDi)に対する認証サーバ300の正しい署名であることを確認し(ステップA8−1)、有権者名簿データベース201を検索してCIDiが登録されていることとCIDiの投票をまだ受付けていないこととを確認し(ステップA9−1)、投票データ記録装置204に(Ei,CIDi)とSekとを記録するとともに、有権者名簿データベース201にCIDiが投票済みであることを記録する(ステップA10−1)。また、投票サーバ200は、投票者端末140,150から(Ei,CIDi)とSeiとを受信すると、共通基盤署名検証手段202によりSeiが(Ei,CIDi)に対する投票者iの正しい署名であることを確認し(ステップA8−2)、有権者名簿データベース201を検索してCIDiが登録されていることとCIDiの投票をまだ受付けていないこととを確認し(ステップA9−2)、投票データ記録装置204に(Ei,CIDi)とSekとを記録するとともに、有権者名簿データベース201にCIDiが投票済みであることを記録する(ステップA10−2)。
投票が締め切られた後、投票サーバ200は、投票データ記録装置204に記録したすべてのEiのリストと、ステップA2で匿名復号システム500へ送信したセッションIDとを匿名復号システム500へ送信する(ステップA11)。匿名復号システム500は、セッションIDで指定された公開情報(p,q,g,Y)と秘密鍵Xとに基づいてEiのリストを復号し、順番を無作為に並べかえた平文投票データvjのリストと、Eiのリストとvjのリストとの間に1対1の対応関係が存在することの証明データzと、を作成し(ステップA12)、投票サーバ200に対してvjのリストとzとを返信する(ステップA13)。投票サーバ200は、受信した平文投票データvjのリストにより投票の集計を行い、集計結果を発表する(ステップA14)。
次に、本実施形態の効果について説明する。
本実施形態では、投票サーバ200が投票者端末100,110,140に暗号化投票データを送り、投票者が選んだ暗号化投票データを暗号サーバ400,410,440によりさらに暗号化して投票サーバ200に送信するため、暗号手段を備えない投票者端末からでも、投票の秘密を守りつつ、投票を行なえる。また、投票者端末100,120に機器側認証手段103,123を備え、認証サーバ300にサーバ側認証手段301を備えることでデジタル署名に依らない認証を行ない、認証サーバ300の共通基盤デジタル署名を付与して投票サーバ200に暗号化投票データを送ることで、署名生成手段を備えない投票者端末からも投票を行なえる。また、投票者端末110,130に組織内基盤署名生成手段113,133を備え、認証サーバ300に組織内基盤署名検証手段302とID連携手段304を備えることで、組織内向けデジタル署名が付与された暗号化投票データを認証サーバ300で検証し、組織内識別子から共通基盤識別子への変換を行なったのち、認証サーバ300の共通基盤デジタル署名を付与して投票サーバ200へ送ることで、すべての投票者が共通の公開鍵認証基盤に登録されていなくとも、投票を行なえる。
なお、ここでは認証サーバ300はひとつだけとして説明したが、投票者によって異なる組織に所属している場合には、組織ごとに別の認証サーバを導入することで対応が可能である。
《第2の実施形態》
次に、本発明の第2の実施形態について図面を参照して説明する。図10に示した第2の実施形態の匿名電子投票システムは、図1に示された第1の実施形態の匿名電子投票システムにおいて、投票者端末100,110,140内にそれぞれ暗号データ作成手段104,114,144を設けるとともに、投票サーバ200の暗号化手段203に代えて第1の変換手段206と暗号化証明検証手段207とを設け、暗号サーバ400,410,440における再暗号化手段401,411,441に代えてそれぞれ第2の変換手段405,415,445を設け、さらに、変換検証手段701を備える変換検証サーバ700を加えたものである。
ここで第1の変換手段206は、公開情報を入力とし、第1の変換データ(第1暗号パラメータ)と第1の変換証明データとを出力するものである。
第2の変換手段405,415,445は、公開情報を入力とし、第2の変換データ(第2暗号パラメータ)と第2の変換証明データとを出力する。
暗号データ作成手段104,114,144は、公開情報、第1の変換データ、第1の変換証明データ、第2の変換データ、第2の変換証明データ及び平文の投票内容viを入力として、暗号化投票データE(vi)を出力するとともに、E(vi)を正しく生成したことを証明する暗号化証明を出力する。
暗号化証明検証手段207は、公開情報と暗号化投票データE(vi)と暗号化証明データとを入力とし、E(vi)が正しく生成されたものかどうかを検証する。
第1の変換手段206、第2の変換手段405,415,445、暗号データ作成手段104,114,144及び暗号化証明検証手段207は、匿名復号システム500に対して特許文献1に示された技術を用いる場合、以下のように動作する。
第1の変換手段206は、公開情報(p,q,g,Y)が入力されると、q未満の乱数rとdとを無作為に選び、第1の変換データ(Gr,Yr,r)として、
(Gr,Yr,r)=(g^r mod p,Y^r mod p,r)
を計算して出力し、第1の変換証明データ(Gd,d)として、
(Gd,d)=(g^d mod p,d)を計算して出力する。
第2の変換手段405,415,445は、公開情報(p,q,g,Y)が入力されると、q未満の乱数sを選び、第2の変換データ(Gs,Ys,s)として、
(Gs,Ys,s)=(g^s mod p,Y^s mod p,s)
を計算して出力し、第2の変換証明データ(Gu,u)として、
(Gu,u)=(g^u mod p,u)
を計算して出力する。ここで、uは無作為に選んだq未満の乱数である。
暗号データ作成手段は、第1の変換データ(Gr,Yr,r)、第1の変換証明データ(Gd,d)、第2の変換データ(Gs,Ys,s)、第2の変換証明データ(Gu,u)及び平文の投票内容viが入力されると、暗号化投票データE(vi)として、
E(vi)=(Gr×Gs mod p,vi×Yr×Ys mod p)
を計算する。さらに、
α=Gu×Gd mod p,
c=HASH(p,q,g,Y,Gi,Vi,α),
t=c×(r+s)+u+d mod q
を計算して暗号化証明データ(α,t)を計算し、暗号化投票データ(Gi,Vi)とともにこの暗号化証明データ(α,t)を出力する。
暗号化証明データによる証明は、暗号化証明検証手段207により
c=HASH(p,q,g,Y,Gi,Vi,α)
を計算し、
g^t×Gi^{−c}=α mod p
が成り立つかどうかを確認することで行う。
変換検証手段701は変換データ(Gr,Yr,r)と変換証明データ(Gd,d)とについて、公開情報(p,q,g,Y)から正しく作成されたものかどうかを検証する。匿名復号システム500に対して特許文献1に示された技術を用いる場合、変換検証手段701は公開情報(p,q,g,Y)と変換データ(Gr,Yr,r)と変換証明データ(Gd,d)とを入力とし、
Gr=G^r mod p,
Yr=Y^r mod p,
Gd=Y^d mod p
の等式がいずれも成り立てば合格と判定し、どれかひとつでも成り立たなければ不合格と判定する。
次に、本実施形態の匿名電子投票システムの動作について説明する。図11〜図13は、それぞれ、投票者端末100,110,140での処理(及びそれらの投票者端末での処理に関連する投票サーバ、認証サーバ及び暗号サーバでの処理)を示しており、図14は、投票受付け後から開票に相当する作業までの処理を説明している。なお、本実施形態での初期設定の動作は第1の実施の形態と同じであり、また、投票者端末120,130,150の動作も第1の実施の形態におけるものと同じであるから、これらの動作については記載を省略する。
以下、投票者端末100,110,140による投票サーバ200へのアクセスから投票データの送信までの処理を説明する。
投票者端末100,110,140は、投票情報要求と変換データ要求とを投票サーバ200へ送信する(図11、図12、図13のステップB5)。投票サーバ200は、変換データ要求を受信すると、その第1の変換手段206に公開情報(p,q,g,Y)を入力し、第1の変換データ(Gr,Yr,r)と第1の変換証明データ(Gd,d)とを作成し(図11、図12、図13ステップB6)、投票者端末100,110,140にこれら(p,q,g,Y),(Gr,Yr,r),(Gd,d)を返信する(図11、図12、図13のステップB7)。投票者端末100,110,140は、投票サーバ200から(p,q,g,Y),(Gr,Yr,r),(Gd,d)を受信すると、それぞれ暗号サーバ400,410,440に、(p,q,g,Y)と変換データ要求とを送信する(図11、図12、図13のステップB100−1、B110−1、B140−1)。暗号サーバ400,410,440は、公開情報(p,q,g,Y)と変換データ要求とを受信すると、それぞれその第2の変換手段405,415,445に公開情報(p,q,g,Y)を入力して第2の変換データ(Gs,Ys,s)と第2の変換証明データ(Gu,u)とを生成し(図11、図12、図13のステップB100−2、B110−2、B140−2)、投票者端末100,110,140に(Gs,Ys,s)と(Gu,u)とを返信する(図11、図12、図13のステップB100−3,B110−3,B140−3)。
以下、投票データの送信までの処理のうち第1の実施の形態と異なる部分を、投票者端末100,110,140ごとに別々に説明する。
投票者端末100は、図11に示すように、第1の変換データ(Gr,Yr,r)、第1の変換証明データ(Gd,d)、第2の変換データ(Gs,Ys,s)及び第2の変換証明データ(Gu,u)を受信すると、その暗号データ作成手段104に対して、投票者iが入力した投票内容viと、(Gr,Yr,r),(Gd,d),(Gs,Ys,s)及び(Gu,u)とを入力し、暗号化投票データE(vi)と暗号化証明データ(α,t)とを計算する(ステップB100−4)。そしてIIDiの認証ののちE(vi)と(α,t)とを認証サーバ300に送信する(ステップB100−6)。認証サーバ300は、(E(vi),(α,t),CIDi)に対する認証サーバ300の共通基盤デジタル署名Sekを作成し(ステップB100−8)、(E(vi),(α,t),CIDi)とSekとを投票サーバ200に送信する(ステップB100−9)。
投票者端末110は、図12に示すように、第1の変換データ(Gr,Yr,r)、第1の変換証明データ(Gd,d)、第2の変換データ(Gs,Ys,s)及び第2の変換証明データ(Gu,u)を受信すると、投票者iが入力した投票内容viと、(Gr,Yr,r),(Gd,d),(Gs,Ys,s)及び(Gu,u)とを暗号データ作成手段114に入力し、暗号化投票データE(vi)と暗号化証明データ(α,t)とを計算する(ステップB110−4)。そして、投票者端末110は、(E(vi),(α,t),IIDi)に対する組織内向けデジタル署名Seiを作成し(ステップB110−5)、(E(vi),(α,t),IIDi)とSeiとを認証サーバ300に送信する(ステップB110−6)。認証サーバ300は、Seiが(E(vi),(α,t),IIDi)に対するIIDiの正しい署名であることを確認し(ステップB110−7)、そのID連携手段304によりIIDiに対応する共通識別子CIDiを取得し(ステップA110−8)、(E(vi),(α,t),CIDi)に対する認証サーバ300の共通基盤デジタル署名Sekを作成し(ステップB110−9)、(Ei=E(vi),(α,t),CIDi)とSekとを投票サーバ200に送信する(ステップB110−10)。
投票者端末140は、図13に示すように、第1の変換データ(Gr,Yr,r)、第1の変換証明データ(Gd,d)、第2の変換データ(Gs,Ys,s)及び第2の変換証明データ(Gu,u)を受信すると、投票者iが入力した投票内容viと(Gr,Yr,r),(Gd,d),(Gs,Ys,s)及び(Gu,u)とを暗号データ作成手段144に入力し、暗号化投票データE(vi)と暗号化証明データ(α,t)とを計算する(ステップB140−4)。そして、(E(vi),(α,t),CIDi)に対する共通基盤デジタル署名Seiを作成し(ステップB140−5)、(Ei=E(vi),(α,t),CIDi)とSeiとを投票サーバ200に送信する(ステップB140−6)。
以上が投票データの送信までの処理である。続けて、投票データの受付け以降の処理について、図14を用いて、第1の実施の形態と異なる部分を説明する。
投票サーバ200は、認証サーバ300から(Ei,(α,t),CIDi)とSekとを受信すると、共通基盤署名検証手段202によりSekが(Ei,CIDi)に対する認証サーバ300の正しい署名であることを確認し(ステップB8−1)、暗号化証明検証手段207により、Eiが正しく作られたものであることを確認し(ステップB9−1)、有権者名簿データベース201を検索してCIDiが登録されていることとCIDiの投票をまだ受付けていないこととを確認し(ステップB10−1)、投票データ記録装置204に(Ei,(α,t),CIDi)とSekとを記録するとともに、有権者名簿データベース201にCIDiが投票済みであることを記録する(ステップB11−1)。また、投票サーバ200は、投票者端末140,150から(Ei,(α,t),CIDi)とSeiとを受信すると、共通基盤署名検証手段202によりSeiが(Ei,(α,t),CIDi)に対する投票者iの正しい署名であることを確認し(ステップB8−2)、暗号化証明検証手段207により、Eiが正しく作られたものであることを確認し(ステップB9−2)、有権者名簿データベース201を検索してCIDiが登録されていることとCIDiの投票をまだ受付けていないこととを確認し(ステップB10−2)、投票データ記録装置204に(Ei,CIDi)とSekとを記録するとともに、有権者名簿データベース201にCIDiが投票済みであることを記録する(ステップB11−2)。
なお、投票者端末100,110,140により投票を行なった投票者は、投票データの受け付けが終わった後、投票サーバから受信した公開情報(p,q,g,Y)と第1の変換データ(Gr,Yr,r)、第1の変換証明データ(Gd,d)とを変換検証サーバ700の変換証明手段701に入力し、第1の変換データ、第1の変換証明データが正しく公開情報(p,q,g,Y)から作成されたものかどうかを検証してもよい。また、暗号サーバ400,410,440から受信した第2の変換データ(Gs,Ys,s)、第2の変換証明データ(Gu,u)についても、同様に変換検証サーバ700の変換検証手段701により、公開情報(p,q,g,Y)から正しく作成されたものかどうかを検証してもよい。
投票締切り後の処理については、第1の実施の形態の場合と同じであるので、ここでは説明を省略する。
次に、本実施形態の効果について説明する。
本実施形態では、投票者端末100,110,140にそれぞれ暗号データ作成手段104,114,144を備え、投票サーバ200に第1の変換手段206を備え、暗号サーバ400,410,440にそれぞれ第2の変換手段405,415,445を備えることで、投票者端末100,110,140では複雑な演算を行なうことなく、暗号化投票データの作成が行なえる。また、暗号化投票データは第1の変換データと第2の変換データの両方をもとに計算されるため、投票サーバ200や暗号サーバ400,410,440は、単独では、投票者の暗号化投票データから平文の投票内容を知ることはできない。また、暗号データ作成手段104,114,144により生成される暗号化証明データは、投票者端末120,130,150の暗号化手段124,134,154が生成する暗号化証明データと同じ処理で検証が可能である。また、投票者端末100,110,140に暗号データ作成手段104,114,144を備えるため、投票内容となる候補者名などあらかじめ決められているような投票に限らず、投票者が自由に投票内容を決める自由記述による投票(やアンケート)などにも本実施形態は適用可能である。
また、投票サーバ200が送信する第1の変換データ、第1の変換証明データ、および、暗号サーバ400,410,440が送信する第2の変換データ、第2の変換証明データは、変換検証手段701を用いることで、公開情報(p,q,g,Y)から正しく作成されたものかどうかを確認できる。そのため、投票サーバ200や暗号サーバ400,410,440が不正な変換データ、変換証明データを投票者端末に送信して投票を妨害しようとした場合、その不正が発覚する。これにより、投票サーバ200、暗号サーバ400,410,440での不正行為を抑止することができる。
《第3の実施形態》
次に、本発明の第3の発明形態について図面を参照して説明する。図15に示した第3の実施形態の匿名電子投票システムは、図1に示された第1の実施形態の匿名電子投票システムにおいて、さらに暗号証明検証サーバ600を設けるとともに、投票サーバ200の暗号化手段203に代えて証明付き暗号化手段205を設け、暗号サーバ400,410,440の再暗号化手段401,411,441に代えてそれぞれ証明付き再暗号化手段402,412,442を設け、暗号証明検証サーバ600には暗号化証明検証手段601と再暗号化証明検証手段602とを設けたものである。
証明付き暗号化手段205は、暗号化公開鍵Yを含む公開情報と平文データvとを入力とし、Yによりvを暗号化したE(v)と、E(v)がYによりvを正しく暗号化したことを示す証明データwとを出力する。証明付き再暗号化手段402,412,442は、暗号化公開鍵Yを含む公開情報と暗号データE(v)とを入力とし、YによりE(v)を再度暗号化したE’(v)と、E’(v)がYによりE(v)を正しく再度暗号化したことを示す証明データw’とを出力する。
暗号化証明検証手段601は、暗号化公開鍵Yを含む公開情報と平文データvと暗号データE(v)と証明データwとを入力とし、E(v)がYによりvを正しく暗号化したものかどうかを検証する。再暗号化証明検証手段602は、暗号化公開鍵Yを含む公開情報と暗号データE(v)とE(v)を再度暗号化したE’ (v)と証明データw’とを入力とし、E’(v)がYによりE(v)を正しく暗号化したものかどうかを検証する。
特許文献1に示された技術を用いる場合、証明付き暗号化手段205は、公開情報(p,q,g,Y)と平文投票データviを入力とし、暗号化投票データE(vi)と証明データwとを出力する。E(vi)は(Gi,Vi)という組で表され、
(Gi,Vi)=(g^r mod p,vi×Y^r mod p)
の計算によって得られる。ここで、rは平文投票データviに対して無作為に選んだ乱数である。そして、証明データwとしてrが出力される。
証明付き再暗号化手段205は、公開情報(p,q,g,Y)と暗号化投票データE(vi)=(Gi,Vi)とを入力とし、暗号化投票データE’(vi)と証明データw’とを出力する。E’(vi)は(G’i,V’i)という組で表され、
(G’i,V’i)=(Gi^s mod p,Vi×Y^s mod p)
の計算によって得られる。ここで、sは平文投票データviに対して無作為に選んだ乱数である。そして、証明データw’としてsが出力される。
暗号化証明検証手段601は、viと(p,q,g,Y)とE(vi)=(Gi,Vi)とwとを入力とし、
Gi=g^w mod p,
Vi=vi×Y^w mod p
の等式が両方とも成り立てば証明を合格と判定し、どちらか一方でも等式が成り立たなければ証明を不正と判定する。
再暗号化証明検証手段602は、(Gi,Vi)と(p,q,g,Y)とE’(vi)=(G’i,V’i)とw’とを入力とし、
G’i=Gi^w’ mod p,
V’i=Vi×Y^w’ mod p
の等式が両方とも成り立てば証明を合格と判定とし、どちらか一方でも等式が成り立たなければ証明を不正と判定する。
次に、本実施形態の匿名電子投票システムの動作について説明する。図16〜図18は、それぞれ、投票者端末100,110,140での処理(及びそれらの投票者端末での処理に関連する投票サーバ、認証サーバ及び暗号サーバでの処理)を示しており、図19は、投票受付け後から開票に相当する作業までの処理を説明している。なお、本実施形態での初期設定の動作は第1の実施の形態と同じであり、また、投票者端末120,130,150の動作も第1の実施の形態におけるものと同じであるから、これらの動作については記載を省略する。
以下、投票者端末100,110,140による投票サーバ200へのアクセスから投票データの送信までの処理を説明する。
投票者端末100,110,140は、投票サーバ200に対し、暗号投票情報要求を送信する。投票サーバ200は、暗号投票情報要求を受信すると、証明付き暗号化手段205により、すべての候補者名vjについて、vjを公開情報(p,q,g,Y)で暗号化してE(vj)を作成し、そのE(vj)がvjを(p,q,g,Y)により正しく暗号化したものであることの証明データwjを作成し(図17、図18、図19のステップC6)、公開情報(p,q,g,Y)と(vj,E(vj),wj)のリストとを投票者端末100,110,140に返信する(図16、図17、図18のステップC7)。
また、暗号サーバ400,410,440は、投票者端末からE(vi)と公開情報(p,q,g,Y)とを受信すると、それぞれ証明付き再暗号手段402,412,442にE(vi)と(p,q,g,Y)を入力し、E(vi)を再度暗号化したE’(vi)とE(vi)から(p,q,g,Y)により正しく暗号化したことの証明データw’iとを作成し(図16、図17、図18のステップC100−1,C110−1,C140−1)、投票者端末100,110,140にE’(vi)とw’iとを返信する(図16、図17、図18のステップC100−2,C110−2,C140−2)。
以上が投票データの送信までの処理のうち、第1の実施形態と異なる部分である。
次に、図19のフローチャートを参照し、投票受付け後の投票者の処理について説明する。
投票者端末100,110,140により投票を行なった投票者は、投票データの受付けが終わった後、投票サーバ200から受信した公開情報(p,q,g,Y)と(vj,E(vj),wj)のリストと、暗号サーバから受信した(E’(vi),w’i)とE(vi)とを暗号証明検証サーバ600に送信する(ステップC15)。暗号証明検証サーバ600は、公開情報(p,q,g,Y)と(vj,E(vj),wj)のリストとを暗号化証明検証手段601に入力し、すべてのE(vj)がvjを(p,q,g,Y)により正しく暗号化されているかどうかを検証し(ステップC16)、さらに、(E’ (vi),E(vi),w’)を再暗号化検証手段602に入力し、E’(vi)がE(vi)を(p,q,g,Y)により正しく再度暗号化したものかどうか検証し(ステップC17)、検証結果を出力する(ステップC18)。
次に、本実施形態の効果について説明する。
本実施形態では、投票サーバ200に証明付き暗号化手段205を備え、投票者端末には(vj,E(vj),wj)のリストが送信され、暗号化証明検証手段601によりE(vj)がvjを(p,q,g,Y)により正しく暗号化されたものかどうかを確認できるため、投票サーバ200がvjを暗号化したものと偽って(vj,E(v’j),w)を投票者端末に送信した場合、その不正が発覚する。これにより、投票サーバ200での不正行為を抑止することができる。
また、暗号サーバ400,410,440にそれぞれ証明付き再暗号手段402,412,442を備え、投票者端末にはE’(vi),E(vi),w’が送信され、暗号化証明検証手段602によりE’(vi)がE(vi)を(p,q,g,Y)により正しく暗号化したものかどうかを確認できるため、暗号サーバがE(vi)を再度暗号化したものと偽ってE’(v),E(vi),w’を投票者端末に返信した場合、その不正が発覚する。これにより、暗号サーバ400,410,440での不正行為を抑止することができる。
なおここでは、暗号化証明検証手段601を別のサーバ(暗号証明検証サーバ600)に備え、投票終了後に検証を行なう構成を示したが、投票者端末内にその構成要素として暗号化証明検証手段を設け、投票中に検証を行なえるようにする構成も可能である。また、暗号化検証手段を構成要素として暗号サーバ内に設け、投票サーバの暗号証明の検証のみを投票中に行ない、暗号サーバの証明データの検証のみを投票後に行なう構成をとることも可能である。また、投票者端末に暗号化証明検証手段601と再暗号化証明検証手段602とを備え、投票中にすべての検証を行なう構成にしてもよい。
《第4の実施形態》
次に、本発明の第4の実施形態について図面を参照して説明する。第1の実施形態の匿名電子投票システムにおいて、1つの投票者端末が複数の暗号サーバを用いるようにすることによって、投票の秘密をさらに頑強(ロバスト)に守ることができるようになる。本実施形態は、1つの投票者端末に対応する暗号サーバの台数を増やしたものである。
図20に示した第4の実施形態の匿名電子投票システムは、図1に示された第1の実施形態の匿名投票システムにおいて、kを2以上の整数として、投票者端末100がk台の暗号サーバ400−1〜400−kと接続し、同様に投票者端末110,140がそれぞれ暗号サーバ410−1〜410−k、暗号サーバ440−1〜440−kと接続されるようにしたものである。各暗号サーバ400−1〜400−k,410−1〜410−k,440−1〜440−kには、それぞれ、再暗号化手段401−1〜401−k,411−1〜411−k,441−1〜441−kが備えられている。投票者端末100,110,120,130,140,150、投票サーバ200及び認証サーバ300の構成は、図1に示した第1の実施形態の場合と同じである。
次に、本実施形態の匿名電子投票システムの動作について説明する。図21〜図23は、それぞれ、投票者端末100,110,140での処理(及びそれらの投票者端末での処理に関連する投票サーバ、認証サーバ及び暗号サーバでの処理)を示している。なお、本実施形態での初期設定の動作は第1の実施の形態と同じであり、また、投票者端末120,130,150の動作も第1の実施の形態におけるものと同じであるから、これらの動作については記載を省略する。
以下、投票者端末100,110,140による投票サーバ200へのアクセスから投票データの送信までの処理を説明する。
投票者端末100,110,140は、投票サーバ200へ暗号投票情報要求を送信する(図21、図22、図23のステップA5−1)。投票サーバ200は、暗号投票情報要求を受信すると、その暗号化手段203により、すべての候補者名vjについて、vjを公開情報(p,q,g,Y)で暗号化してE(vj)を作成し(図21、図22、図23のステップA6)、公開情報(p,q,g,Y)と(vj,E(vj))のリストとを投票者端末100,110,140に返信する(図21、図22、図23のステップA7−1)。投票者端末100,110,140は、(p,q,g,Y)と(vj,E(vj))のリストとを受信すると、その表示装置101,111,141においてvjのリストを投票者に表示し、投票者は入力装置102,112,142によりvjのリストから候補者viを選択して入力する(図21、図22、図23のステップA100−1、A110−1、A140−1)。
そして、投票者端末100,110,140は、viに対応する暗号データE(vi)と公開情報(p,q,g,Y)とを1番目の暗号サーバ400−1,410−1,440−1に送信する(図21、図22、図23のステップD101−1,D111−1,D141−1)。暗号サーバ400−1,410−1,440−1は、受信した暗号データE(vi)と公開情報(p,q,g,Y)とを再暗号化手段401−1,410−1,440−1に入力してE(vi)を再度暗号化したE’1(vi)を計算し(図21、図22、図23のステップD101−2,D111−2,D141−2)、E’1(vi)を投票者端末100,110,140に返信する(図21、図22、図23のステップD101−3,D111−3,D141−3)。次に、投票者端末100,110,140は、1番目の暗号サーバ400−1,410−1,440−1から得たE’1(vi)を2番目の暗号サーバ400−2,410−2,440−2に対して送信することにより、E’1(vi)をもう一回暗号化させてE’2(vi)を得る。以下、このような処理をk個の暗号サーバ400−1〜400−k,410−1〜410−k,440−1〜440−kのすべてについて繰り返し、暗号データE’k(vi)を得る(図21、図22、図23のステップD10k−3,D11k−3,D14k−3)。暗号データE’k(vi)はE(vi)をk回にわたって再暗号化したデータに該当する。投票者端末100,110,140は、E’k(vi)を認証サーバ300や投票サーバ200へ送る暗号データE’(vi)とする(図21、図22、図23のステップD100−6,D110−5,D140−5)。以降の処理は、第1の実施形態における処理と同じである。
次に、本実施形態の効果について説明する。
本実施形態では、投票者端末100,110,140に、それぞれ、暗号サーバ400−1〜400−k、暗号サーバ410−1〜410−k、暗号サーバ440−1〜440−kが接続され、投票者端末100,110,140は、投票サーバ200から受信した暗号データE(vi)を合計k回にわたって再暗号化して得られるE’(vi)を投票サーバ200に送る。そのため、投票サーバとk個の暗号サーバとがすべて結託しない限り、E’(vi)から平文の投票内容viが判明することはなく、投票の秘密をより強く求めることができる。
なお、ここでは、投票者端末100,110,140に接続される暗号サーバの個数をいずれもk個としたが、同数である必要はなく、それぞれ別の数であってもよい。また、第1の実施形態と同じく、いくつかの投票者端末がいくつかの暗号サーバを共用することも可能である。
また、図15に示された第3の実施形態の場合と同様に、各暗号サーバには証明付き再暗号化手段を備え、暗号化の証明データを作成するようにしてもよい。
《第5の実施形態》
次に、本発明の第5の実施形態について図面を参照して説明する。第2の実施形態の匿名電子投票システムにおいて、1つの投票者端末が複数の暗号サーバを用いるようにすることによって、投票の秘密をさらに頑強(ロバスト)に守ることができるようになる。本実施形態は、1つの投票者端末に対応する暗号サーバの台数を増やしたものである。
図24に示した第5の実施形態の匿名電子投票システムは、図10に示された第2の実施形態の匿名投票システムにおいて、kを2以上の整数として、投票者端末100がk台の暗号サーバ400−1〜400−kと接続し、同様に投票者端末110,140がそれぞれ暗号サーバ410−1〜410−k、暗号サーバ440−1〜440−kと接続されるようにしたものである。各暗号サーバ400−1〜400−k,410−1〜410−k,440−1〜440−kには、それぞれ、第2の変換手段405−1〜405−k,415−1〜415−k,445−1〜445−kが備えられている。mは1≦m≦kである整数として、m番目の暗号サーバ400−m,410−m,440−mの第2の変換手段405−m,415−m,445−mは、第2の変換データ(Gsm,Ysm,sm)と第2の変換証明データ(Gum,um)を作成する。ここで、
(Gsm,Ysm,sm)=(g^sm mod p,Y^sm mod p,sm),
(Gum,um)=(g^um mod p,um)
である。
投票者端末100,110,140の暗号データ作成手段104,114,144は、投票サーバからの第1の変換データ(Gr,Yr,r)=(g^r mod p,Y^r mop p,r)及び第1の変換証明データ(Gd,d)=(g^r mod p,d)と、k個の暗号サーバからのk個の第2の変換データ(Gs1,Ys1,s1)〜(Gsk,Ysk,sk)及びk個の第2の変換証明データ(Gu1,u1)〜(Guk,uk)と、平文の投票内容viとが入力されると、下記式にしたがって、暗号化投票データE(vi)を計算する。
E(vi)=(Gi,Vi)
=(Gr×Gs1×Gs2×…×Gsk mod p,vi×Yr×Ys1×Ys2×…×Ysk mod p)
さらに、暗号データ作成手段104,114,144は、
a=Gu×Gd1×Gd2×…×Gdk mod p,
c=HASH(p,q,g,Y,Gi,Vi,a),
t=c×(r+s1+s2+…+sk)+u+d1+d2+…+dk mod q
を計算して、暗号化証明データ(a,t)を計算し、暗号化投票データ(Gi,Vi)とともに出力する。
この証明は、暗号化証明検証手段207により、
c=HASH(p,q,g,Y,Gi,Vi,a)
を計算して、
g^t×Gi^{−c}=a mod p
が成り立つかどうかを確認することで、検証できる。
なお、投票者端末120,130,150、投票サーバ200及び認証サーバ300の構成は、図10に示した第2の実施形態の場合と同じである。
次に、本実施形態の匿名電子投票システムの動作について説明する。図25〜図27は、それぞれ、投票者端末100,110,140での処理(及びそれらの投票者端末での処理に関連する投票サーバ、認証サーバ及び暗号サーバでの処理)を示している。なお、本実施形態での初期設定の動作は第2の実施の形態と同じであり、また、投票者端末120,130,150の動作も第2の実施の形態におけるものと同じであるから、これらの動作については記載を省略する。
以下、投票者端末100,110,140による投票サーバ200へのアクセスから投票データの送信までの処理を説明する。
投票者端末100,110,140は、投票サーバ200への変換データ要求を送信する(図25、図26、図27のステップB5)。投票サーバ200は、変換データ要求を受信すると、第1の変換手段206に公開情報(p,q,g,Y)を入力し、第1の変換データ(Gr,Yr,r)と第1の変換証明データ(Gd,d)とを作成し(図25、図26、図27のステップB6)、投票者端末100,110,140に、(p,q,g,Y),(Gr,Yr,r),(Gd,d)を返信する(図25、図26、図27のステップB7)。投票者端末100,110,140は、投票サーバ200から(p,q,g,Y),(Gr,Yr,r),(Gd,d)を受信すると、それぞれ、暗号サーバ400−1,410−1,440−1に(p,q,g,Y)と変換データ要求とを送信する(図25、図26、図27のステップE101−1,E111−1,E141−1)。暗号サーバ400−1,410−1,440−1は、公開情報(p,q,g,Y)と変換データ要求とを受信すると、それぞれ、第2の変換手段405−1,415−1,445−1に(p,q,g,Y)を入力して、第2の変換データ(Gs1,Ys1,s1)と第2の変換証明データ(Gu1,u1)とを生成し(図25、図26、図27のステップE101−2,E111−2,E141−2)、投票者端末100,110,140に、(Gs1,Ys1,s1)と(Gu1,u1)とを返信する(図25、図26、図27のステップE101−3,E111−3,E141−3)。次に、投票者端末100,110,140は、2番目の暗号サーバ400−1,410−1,440−1に対して同じ処理を繰り返し、以下同様にして、k個の暗号サーバ400−1〜400−k,410−1〜410−k,440−1〜440−kのすべてについて繰り返し、k個の第2の変換データ(Gs1,Ys1,s1)〜(Gsk,Ysk,sk)とk個の第2の変換証明データ(Gu1,u1)〜(Guk,uk)とを得る(図25、図26、図27のステップE10k−3,E11k−3,E14k−3まで)。
続いて投票者端末100,110,140は、投票者が入力したviと、第1の変換データ(Gr,Yr,r)、第1の変換証明データ(Gd,d)、k個の第2の変換データ(Gs1,Ys1,s1)〜(Gsk,Ysk,sk)及びk個の第2の変換証明データ(Gu1,u1)〜(Guk,uk)とを暗号データ作成手段104,114,144に入力し、暗号化投票データE(vi)と暗号化証明データ(a,t)とを計算する(図25、図26、図27のステップE100−4,E110−4,E140−4)。これ以降の処理は、第2の実施形態の場合と同様である。
次に、本実施形態の効果について説明する。
本実施形態では、投票者端末100,110,140に、それぞれ、暗号サーバ400−1〜400−k、暗号サーバ410−1〜410−k、暗号サーバ440−1〜440−kが接続され、投票者端末100,110,140は、投票サーバ200から受信した第1の変換データとk個の暗号サーバから受信したk個の第2の変換データにより暗号データE(vi)を作成し、この暗号データE(vi)を投票サーバ200に送る。そのため、投票サーバとk個の暗号サーバがすべて結託しない限り、E’(vi)から平文の投票内容viが判明することはなく、投票の秘密をより強く求めることができる。
なお、ここでは、投票者端末100,110,140に接続される暗号サーバの個数をいずれもk個としたが、同数である必要はなく、それぞれ別の数であってもよい。また、第2の実施形態と同じく、いくつかの投票者端末がいくつかの暗号サーバを共用することも可能である。
なお、投票サーバ200に第1の変換手段を備えない構成とし、k個の暗号サーバから受信した第2の変換データ、第2の変換証明データのみを用いて暗号化投票データE(vi)及び暗号化証明データ(α,t)を作成することとしてもよい。この場合、投票者端末100,110,140を含めすべての投票者端末は投票サーバ200に単なる投票情報要求を送信し、投票サーバ200はすべての投票者端末に対して公開情報(p,q,g,Y)と候補者情報を送信する。投票者端末100,110,140の暗号データ作成手段104,114,144は、k個の第2の変換データ(Gs1,Ys1,s1)〜(Gsk,Ysk,sk)及びk個の第2の変換証明データ(Gd1,d1)〜(Gdk,dk)により、下記のように暗号化投票データE(vi)、暗号化証明データ(α,t)を計算する。
E(vi)=(Gi,Vi)
=(Gs1×Gs2×…×Gsk mod p,vi×Ys1×Ys2×…Ysk mod p),
α=Gd1×Gd2×…Gdk mod p,
c=HASH(p,q,g,Y,Gi,Vi,α),
t=c×(s1+s2+…sk)+d1+d2…dk mod q
なお、投票サーバは、第1の変換データ、第1の変換証明データをあらかじめ計算しておくことも可能であるし、同様に、公開情報(p,q,g,Y)をあらかじめ暗号サーバに配布しておき、第2の変換データ、第2の変換証明データを事前に計算しておくようにすることも可能である。
以上、本発明の好ましい実施の形態について説明したが、上述した匿名電子投票システムを構成する投票者端末、投票サーバ、認証サーバ、暗号サーバ及び暗号証明検証サーバは、いずれも、それらの機能を実現するためのコンピュータプログラムを、サーバ用コンピュータやパーソナルコンピュータなどのコンピュータに読み込ませ、そのプログラムを実行させることによっても実現できる。こうしたコンピュータプログラムは、磁気テープやCD−ROMなどの記録媒体によって、あるいは、ネットワークを介してコンピュータに読み込まれる。言い換えれば、投票者端末、投票サーバ、認証サーバ、暗号サーバ及び暗号証明検証サーバにおけるそれぞれの構成要素は、いずれも、ソフトウェアによってもハードウェアによっても実現できるものである。
特に、投票者端末を実現するためのコンピュータとしては、データ処理能力とネットワーク接続機能とを有する携帯電話機や各種の携帯情報端末(PDA)などの、コンピュータとして見たときには比較的処理能力や記憶能力が小さいものを使用することができる。
本発明は、ネットワークなどを介した匿名電子投票システムという用途に適用できる。また、投票内容として自由記述を許すことにより、ネットワークなどを介した匿名電子アンケートシステムという用途に適用できる。
100 投票者端末
101 表示装置
102 入力装置
103 機器側認証手段
110 投票者端末
111 表示装置
112 入力装置
113 組織内基盤署名生成手段
120 投票者端末
121 表示装置
122 入力装置
123 機器側認証手段
124 暗号化手段
130 投票者端末
131 表示装置
132 入力装置
133 組織内基盤署名生成手段
134 暗号化手段
140 投票者端末
141 表示装置
142 入力装置
143 共通基盤署名生成手段
150 投票者端末
151 表示装置
152 入力装置
153 共通基盤署名生成手段
154 暗号化手段
200 投票サーバ
201 有権者名簿データベース
202 共通基盤署名検証手段
203 暗号化手段
204 記録装置
300 認証サーバ
301 サーバ側認証手段
302 組織内基盤署名検証手段
303 共通基盤署名生成手段
304 ID連携手段
400 暗号サーバ
401 再暗号化手段
410 暗号サーバ
411 再暗号化手段
440 暗号サーバ
441 再暗号化手段
500 匿名復号システム

Claims (9)

  1. ネットワークに接続された投票者端末(100,110,140)と、
    公開情報から前記投票者端末(100,110,140)毎に第1暗号化パラメータを生成する第1データ変換手段(206)を有し、前記第1暗号パラメータを前記投票者端末(100,110,140)に送信する第1の暗号サーバ(200)と、
    前記公開情報から前記投票者端末(100,110,140)毎に第2暗号化パラメータを生成する第2データ変換手段(405,415,445)を有し、前記第2暗号化パラメータを前記投票者端末(100,110,140)に送信する第2の暗号サーバ(400,410,440)と、
    前記投票者端末(100,110,140)から暗号化投票データを受信し、該受信した暗号化投票データの内で有効な暗号化投票データのリストを作成し、該作成したリストを前記ネットワーク経由で送信する投票サーバ(200)と、
    前記投票サーバ(200)から受信した前記有効な暗号化投票データのリストを復号し、該リストの順序を入れ換えた平文の候補者名リストを生成し、前記ネットワーク経由で送信する復号サーバ(500)とを備え、
    前記投票サーバ(200)は、前記復号サーバ(500)から前記平文の候補者名リストを受信し、該受信した候補者名リストに基づいて投票結果を集計し、
    前記投票者端末(100,110,140)は、投票内容を前記第1及び第2暗号化パラメータに基づいて暗号化して暗号化投票データを生成する暗号化手段(104,114,144)を有し、該暗号化投票データを前記投票サーバ(200)に送信することを特徴とする匿名電子投票システム。
  2. 前記第1の暗号サーバ(200)と前記投票サーバ(200)とが同一のサーバ上で作動する、請求項1に記載の匿名電子投票システム。
  3. 前記投票者端末(100,110,140)は、前記暗号化投票データに加えて、暗号化証明データを作成して前記投票サーバ(200)に送信し、
    前記投票サーバ(200)は、少なくとも前記暗号化証明データを検証して正当性を検証した後に、対応する暗号化投票データを前記有効な暗号化投票データとして認める、請求項1又は2に記載の匿名電子投票システム。
  4. 投票者名簿に含まれる投票者又は投票者端末の識別情報をリストとして記憶する記憶装置を有し、前記投票者端末(100)から前記暗号化投票データ及び識別情報を受信し、前記記憶装置に記憶された識別情報に基づいて前記暗号化投票データを認証する認証サーバ(300)を更に備え、前記投票サーバ(200)は、少なくとも前記認証サーバ(300)により認証情報が付加された暗号化投票データを前記有効な暗号化投票データとして認める、請求項1〜3の何れか一に記載の匿名電子投票システム。
  5. 認証サーバ(300)を更に備えており、
    前記投票者端末(110)は、前記暗号化投票データと、組織内識別情報と、秘密鍵とに基づいて、組織内デジタル署名を生成する組織内署名生成手段(113)を有し、
    前記認証サーバ(300)は、前記投票者端末(110)から前記暗号化投票データと、組織内識別情報と、組織内デジタル署名とを受信し、公開鍵に基づいて前記組織内デジタル署名を認証し、
    前記投票サーバ(200)は、少なくとも前記認証サーバ(300)により認証情報が付加された暗号化投票データを前記有効な暗号化投票データとして認める、請求項1〜3の何れか一に記載の匿名電子投票システム。
  6. 第1の暗号サーバ(200)で、公開情報から前記投票者端末(100,110,140)毎に第1暗号化パラメータを生成し、該第1暗号パラメータを投票者端末(100,110,140)に送信する段階と、
    第2の暗号サーバ(400,410,440)で、前記公開情報から前記投票者端末(100,110,140)毎に第2暗号化パラメータを生成し、該第2暗号化パラメータを前記投票者端末(100,110,140)に送信する段階と、
    前記投票者端末(100,110,140)で、投票者の投票内容を前記第1及び第2暗号化パラメータに基づいて暗号化して暗号化投票データを生成し、該暗号化投票データを投票サーバ(200)に送信する段階と、
    投票サーバ(200)で、受信した暗号化投票データの内で有効な暗号化投票データのリストを作成し、該作成したリストを前記ネットワーク経由で送信する段階と、
    復号サーバ(500)で、前記投票サーバ(200)から受信した前記有効な暗号化投票データのリストを復号し、該リストの順序を入れ換えた平文の候補者名リストを作成して、前記ネットワーク経由で送信する段階と、
    前記投票サーバ(200)で、前記平文の候補者名リストを受信し、該受信した候補者名リストに基づいて投票結果を集計する段階とを備えることを特徴とする匿名電子投票方法。
  7. 前記暗号化投票データを作成する段階が、前記暗号化投票データの正当性を証明する暗号化証明データを作成し、
    前記投票サーバ(200)で、少なくとも前記暗号化証明データを検証して正当性を検証した後に、対応する暗号化投票データを前記有効な暗号化投票データとして認める段階を更に備える、請求項6に記載の匿名電子投票方法。
  8. 認証サーバ(300)で、前記投票者端末(100)から前記暗号化投票データ及び識別情報を受信し、記憶装置に記憶された識別情報に基づいて前記暗号化投票データを認証する段階と、前記投票サーバ(200)で、少なくとも前記認証情報が付加された暗号化投票データを前記有効な暗号化投票データとして認める段階とを更に備える、請求項6に記載の匿名電子投票方法。
  9. 前記投票者端末(110)で、前記暗号化投票データと、組織内識別情報と、秘密鍵とに基づいて、組織内デジタル署名を生成する段階と、
    前記認証サーバ(300)で、前記投票者端末(110)から前記暗号化投票データと、組織内識別情報と、組織内デジタル署名とを受信し、公開鍵に基づいて前記組織内デジタル署名を認証する段階と、
    前記投票サーバ(200)で、少なくとも前記認証情報が付加された暗号化投票データを前記有効な暗号化投票データとして認める段階とを更に備える、請求項6に記載の匿名電子投票方法。
JP2011016531A 2004-01-26 2011-01-28 匿名電子投票システム及び匿名電子投票方法 Expired - Fee Related JP5246276B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011016531A JP5246276B2 (ja) 2004-01-26 2011-01-28 匿名電子投票システム及び匿名電子投票方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2004016894 2004-01-26
JP2004016894 2004-01-26
JP2011016531A JP5246276B2 (ja) 2004-01-26 2011-01-28 匿名電子投票システム及び匿名電子投票方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2005517238A Division JP4715518B2 (ja) 2004-01-26 2005-01-18 匿名電子投票システム及び匿名電子投票方法

Publications (2)

Publication Number Publication Date
JP2011091864A true JP2011091864A (ja) 2011-05-06
JP5246276B2 JP5246276B2 (ja) 2013-07-24

Family

ID=34805512

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2005517238A Expired - Fee Related JP4715518B2 (ja) 2004-01-26 2005-01-18 匿名電子投票システム及び匿名電子投票方法
JP2011016531A Expired - Fee Related JP5246276B2 (ja) 2004-01-26 2011-01-28 匿名電子投票システム及び匿名電子投票方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2005517238A Expired - Fee Related JP4715518B2 (ja) 2004-01-26 2005-01-18 匿名電子投票システム及び匿名電子投票方法

Country Status (4)

Country Link
US (1) US7694880B2 (ja)
EP (1) EP1710949A4 (ja)
JP (2) JP4715518B2 (ja)
WO (1) WO2005071878A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200008413A (ko) * 2018-07-16 2020-01-28 한양대학교 산학협력단 비밀 선거가 보장된 블록 체인 기반의 전자 투표를 수행하는 단말 장치 및 서버와, 전자 투표 방법

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2326175T3 (es) * 2004-06-30 2009-10-02 France Telecom Procedimiento y sistema de votacion electronica en red de alta seguridad.
US7533813B2 (en) * 2005-04-21 2009-05-19 Iml Limited Wireless voting method
JP4771053B2 (ja) * 2005-05-27 2011-09-14 日本電気株式会社 統合シャッフル正当性証明装置、証明統合装置、統合シャッフル正当性検証装置及びミックスネットシステム
CA2671269A1 (en) * 2009-07-08 2011-01-08 Ky M. Vu An anti-rigging voting system and its software design
US8090351B2 (en) * 2009-09-01 2012-01-03 Elliot Klein Geographical location authentication method
US8983074B2 (en) 2009-12-22 2015-03-17 Quad, Inc. Input content data managing system and method of managing input content data
JP4835886B2 (ja) * 2009-12-22 2011-12-14 クオード株式会社 電子投票システム
CN103593899B (zh) * 2013-11-01 2016-05-18 华侨大学 基于蓝牙的匿名团体投票方法
US9824520B2 (en) * 2015-01-21 2017-11-21 Cesar Ramon Juan CORREA PARKER Method and system of electronic voting implemented in a portable device
CN109636997B (zh) * 2018-12-10 2021-07-13 顾文菲 一种使用移动智能终端的匿名投票表决方法
CN110533822A (zh) * 2019-07-30 2019-12-03 湖南正宇软件技术开发有限公司 一种会议表决方法和系统
CN111800325A (zh) * 2020-07-30 2020-10-20 北京共识数信科技有限公司 一种服务器与加密机分离的环形结构的匿名投票方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02151892A (ja) * 1988-12-05 1990-06-11 Matsushita Electric Ind Co Ltd べき乗剰余演算装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6169789B1 (en) * 1996-12-16 2001-01-02 Sanjay K. Rao Intelligent keyboard system
AUPP971499A0 (en) 1999-04-12 1999-05-06 Opentec Pty. Limited On-line electoral system
JP2001243395A (ja) 2000-02-28 2001-09-07 Ntt Advanced Technology Corp 投票所方式による電子投票システム
JP4181724B2 (ja) 2000-03-03 2008-11-19 日本電気株式会社 証明付再暗号シャッフル方法と装置、再暗号シャッフル検証方法と装置、入力文列生成方法と装置及び記録媒体
JP3788246B2 (ja) 2001-02-13 2006-06-21 日本電気株式会社 匿名復号システム及び匿名復号方法
JP3901471B2 (ja) 2001-05-18 2007-04-04 日本電気株式会社 証明付シャッフル復号システムと証明付シャッフル復号方法、シャッフル復号検証方法
US7306148B1 (en) * 2001-07-26 2007-12-11 Populex Corp. Advanced voting system and method
US6892944B2 (en) * 2001-10-01 2005-05-17 Amerasia International Technology, Inc. Electronic voting apparatus and method for optically scanned ballot
US7395964B2 (en) * 2005-09-06 2008-07-08 International Business Machines Corporation Secure voting system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02151892A (ja) * 1988-12-05 1990-06-11 Matsushita Electric Ind Co Ltd べき乗剰余演算装置

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
CSNG200300174015; 中里純二,菊池浩明,中西祥八郎: '"秘密カウンタによる電子投票システム"' マルチメディア通信と分散処理ワークショップ論文集 Vol.2001,No.13, 20011024, p.115-119, 社団法人情報処理学会 *
CSNG200301570012; 佐古和恵,古川潤,森健吾,尾花賢,滝沢政明,笹村直樹,宮内宏: '"シャッフリングによる大規模電子投票システムの実現"' 情報処理 第42巻,第9号, 20010915, p.51-56, 社団法人情報処理学会 *
CSNJ200810058088; 古川潤,佐古和恵,森健吾,尾花賢,瀧澤政明,笹村直樹,宮内宏: '"シャッフリングによる高速な大規模電子投票システムの実現"' 第63回(平成13年後期)全国大会講演論文集(1) 3M-4, 20010926, p.1-177〜1-178, 社団法人情報処理学会 *
JPN6010068186; 森健吾,佐古和恵,瀧澤政明,笹村直樹: '"シャッフルを用いた電子投票システムの実行"' 平成14年電気学会 電子・情報システム部門大会 講演論文集 OS4-4, 20020902, p.421-424 *
JPN6010068188; 中里純二,菊池浩明,中西祥八郎: '"秘密カウンタによる電子投票システム"' マルチメディア通信と分散処理ワークショップ論文集 Vol.2001,No.13, 20011024, p.115-119, 社団法人情報処理学会 *
JPN6012065576; 佐古和恵,古川潤,森健吾,尾花賢,滝沢政明,笹村直樹,宮内宏: '"シャッフリングによる大規模電子投票システムの実現"' 情報処理 第42巻,第9号, 20010915, p.51-56, 社団法人情報処理学会 *
JPN6012065578; 古川潤,佐古和恵,森健吾,尾花賢,瀧澤政明,笹村直樹,宮内宏: '"シャッフリングによる高速な大規模電子投票システムの実現"' 第63回(平成13年後期)全国大会講演論文集(1) 3M-4, 20010926, p.1-177〜1-178, 社団法人情報処理学会 *
JPN7010003902; 森健吾,佐古和恵,古川潤,寺西勇,瀧澤政明,笹村直樹: '"携帯投票も可能な高速電子投票システムの実装"' 2004年暗号と情報セキュリティシンポジウム(SCIS2004)予稿集CD-ROM 3C2 電子投票, 20040127, 3C2-2 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200008413A (ko) * 2018-07-16 2020-01-28 한양대학교 산학협력단 비밀 선거가 보장된 블록 체인 기반의 전자 투표를 수행하는 단말 장치 및 서버와, 전자 투표 방법

Also Published As

Publication number Publication date
US20070185761A1 (en) 2007-08-09
EP1710949A4 (en) 2010-04-21
JP5246276B2 (ja) 2013-07-24
JPWO2005071878A1 (ja) 2007-12-27
JP4715518B2 (ja) 2011-07-06
US7694880B2 (en) 2010-04-13
EP1710949A1 (en) 2006-10-11
WO2005071878A1 (ja) 2005-08-04

Similar Documents

Publication Publication Date Title
JP5246276B2 (ja) 匿名電子投票システム及び匿名電子投票方法
Adida et al. Electing a university president using open-audit voting: Analysis of real-world use of Helios
JP4818264B2 (ja) リスト署名を生成する方法及びシステム
Demirel et al. Improving Helios with Everlasting Privacy Towards the Public.
RU2003111977A (ru) Способы аутентификации потенциальных членов, приглашенных присоединиться к группе
JP2005223924A (ja) ユニバーサルパーベイシブトランザクションフレームワークのためのオピニオン登録アプリケーション
Qureshi et al. SeVEP: Secure and verifiable electronic polling system
JP2008131058A (ja) 属性認証システム、同システムにおけるユーザの行動履歴検索方法およびプログラム
EP2509050A2 (en) Method for verifying the correct registration of an item of information
JP5324813B2 (ja) 鍵生成装置、証明書生成装置、サービス提供システム、鍵生成方法、証明書生成方法、サービス提供方法およびプログラム
Backes et al. Using mobile device communication to strengthen e-voting protocols
EP1361693B1 (en) Handle deciphering system and handle deciphering method, and program
Sujithra et al. ID based adaptive-key signcryption for data security in cloud environment
JP2773737B2 (ja) 集計結果分析システム
Rodríguez-Henríquez et al. Yet another improvement over the Mu–Varadharajan e-voting protocol
Malina et al. Secure electronic voting based on group signatures
KR20200085204A (ko) 증명 가능한 전자투표시스템
JP2004192029A (ja) 電子投票システム、投票データ生成サーバ、端末装置、及び、集計サーバ、ならびに、コンピュータプログラム
JP2004013606A (ja) 電子投票方法及びシステム及び投票者装置及び管理者装置及び集計者装置及び電子投票プログラム及び電子投票プログラムを格納した記憶媒体
JP4198509B2 (ja) 相互認証方法
CN112422294A (zh) 基于环签名的匿名投票方法及装置、电子设备、存储介质
JPH10171349A (ja) 暗号通信装置
Avetisyan Electronic voting system essentials and problems
KR20160104603A (ko) 인증서버 없이 공개키를 인증하는 방법 및 장치
JP2009017437A (ja) 暗号化方法、電子申請システム、及び鍵セット生成装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121218

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130215

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: 20130312

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130325

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: 20160419

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees