(57)【要約】【課題】投票者自身が行っている票の正当性証明の作成をセンタ側に委譲してセンタ側で行うようにした電子投票システムの提供。【解決手段】ディフィー・ヘルマン鍵交換のテクニックを用いて，票の正当性証明の作成を投票者からセンタ側に委譲する。また，センタ側で作成した票の正当性証明が正当に作成されたものであるかどうかを検証する。【選択図】図１
2006279716.tif 000002
【特許請求の範囲】
【請求項１】
投票者によって暗号化した投票データが1または0であることを証明する票の正当性証明の作成をセンタ側に委譲する手段を備えたことを特徴とする電子投票システム。
【請求項２】
投票者がセンタ側の公開鍵を用いて投票データを暗号化し，センタ側に委譲するための情報データを入れて票を作成することを特徴とする請求項１記載の電子投票システム。
【請求項３】
投票者端末，集計者端末，及び開票者端末の各々の電子署名の鍵ペアと前記開票者端末の準同型系公開鍵暗号方式の鍵ペアとを生成する準備手段と，前記投票者端末が自ら投票データを暗号化する投票作成手段と，前記投票者端末が作成した暗号化投票データを前記集計者端末に送信し，かつその暗号化投票データが1または0であることを証明する票の正当性証明の作成をセンタ側に委譲する投票・委譲手段と，前記集計者端末が前記投票者端末から送信される暗号化投票データを集計する集計手段と，前記集計者端末が集計した暗号化投票データの集計値を前記開票者端末が復号化し，投票データの集計値の平文を得る開票手段と，を備えたことを特徴とする請求項１記載の電子投票システム。
【請求項４】
投票者端末，集計者端末，及び開票者端末の各々が電子署名の鍵ペアを生成し，かつ前記開票者端末が準同型系公開鍵暗号方式の鍵ペアを生成す準備フェーズと，前記投票者端末が前記開票者端末の公開鍵を用いて投票データを暗号化し，センタ側に委譲するための前記投票者端末の情報データを入れて票を作成する投票作成フェーズと，前記投票者端末が作成した暗号化投票データの1または0であることを証明する票の正当性証明の作成をセンタ側に委譲するための前記投票者端末と前記集計者端末の情報データを生成し，これらの情報データと前記投票者端末の暗号化投票データを用いて前記集計者端末に送信する投票・委譲フェーズと，前記集計者端末が前記投票者端末からの暗号化投票データを受信し，その暗号化投票データを集計する集計フェーズと，前記集計者端末が集計した暗号化投票データの集計値を前記開票者端末が復号化し，投票データの集計値の平文を得る開票フェーズと，を備えたことを特徴とする請求項１記載の電子投票システム。
【請求項５】
投票者によって暗号化した投票データが1または0であることを証明する票の正当性証明の作成をセンタ側に委譲することを特徴とする電子投票方法。
【請求項６】
投票者がセンタ側の公開鍵を用いて投票データを暗号化し，センタ側に委譲するための情報データを入れて票を作成することを特徴とする請求項５記載の電子投票方法。
【請求項７】
投票者端末，集計者端末，及び開票者端末の各々の電子署名の鍵ペアと前記開票者端末の準同型系公開鍵暗号方式の鍵ペアを生成するステップと，前記投票者端末が自ら投票データを暗号化するステップと，前記投票者端末が作成した暗号化投票データを前記集計者端末に送信し，かつその暗号化投票データが1または0であることを証明する票の正当性証明の作成をセンタ側に委譲するステップと，前記集計者端末が前記投票者端末から送信される暗号化投票データを集計するステップと，前記集計者端末が集計した暗号化投票データの集計値を前記開票者端末が復号化し，投票データの集計値の平文を得るステップと，を有することを特徴とする請求項５記載の電子投票方法。
【請求項８】
投票者端末，集計者端末，及び開票者端末の各々が電子署名の鍵ペアを生成し，かつ前記開票者端末が準同型系公開鍵暗号方式の鍵ペアを生成するステップと，前記投票者端末が前記開票者端末の公開鍵を用いて投票データを暗号化し，センタ側に委譲するための前記投票者端末の情報データを入れて票を作成するステップと，前記投票者端末が作成した暗号化投票データの1または0であることを証明する票の正当性証明の作成をセンタ側に委譲するための前記投票者端末と前記集計者端末の情報データを生成し，これらの情報データと前記投票者端末の暗号化投票データを用いて前記集計者端末に送信するステップと，前記集計者端末が前記投票者端末からの暗号化投票データを受信し，その暗号化投票データを集計するステップと，前記集計者端末が集計した暗号化投票データの集計値を前記開票者端末が復号化し，投票データの集計値の平文を得るステップと，を有することを特徴とする請求項５記載の電子投票方法。
【請求項９】
投票を行う複数の投票者端末と，投票者端末から暗号化投票データを収集し，収集した暗号化投票データを集計する集計者端末と，投票データの集計結果を開票する開票者端末とを通信回線を介して接続した電子投票システムであって，
投票者端末は，
前記開票者端末が指定した公開鍵で準同型系公開鍵暗号方式により，投票データを暗号化して暗号化投票データを生成する暗号化手段と，
投票確認データ生成に必要な投票者端末の公開情報データを生成する公開情報データ生成手段と，
集計者端末によって公開された投票確認データとコミットメントデータを検証する投票確認データ検証手段とを備え，
集計者端末は，
投票者端末から受信した暗号化投票データを電子署名により，投票者の有権性を検証する有権性検証手段と，
票の正当性確認依頼のために開票者端末に投票者端末の暗号化投票データを送信する票の正当性確認依頼手段と，
開票者端末から投票データが1また0であることの証明を受信したことを確認し，暗号化投票データと投票者端末の公開情報データ，集計者端末の秘密情報データを用いて，投票確認データとコミットメントデータを生成し，そのデータを公開掲示板に掲示する投票確認データ掲示手段と，
投票締め切り後の公開掲示板に掲示している複数の投票確認データの積を生成し，その積のデータを公開掲示板に掲示する投票確認データの積生成手段と，
投票締め切り後の各投票者端末から受信した複数の各投票者端末の公開情報データの積を生成し，その生成した積を集計者端末の秘密情報データでべき乗し，さらに公開掲示板に掲示している投票確認データの積を，べき乗で生成した公開情報データの積で除算した集計値データを，その正しく集計したことの証明とともに公開掲示板に掲示する集計情報データ生成手段と備え，
開票者端末は，
集計者端末から票の正当性確認依頼を受けて，投票者端末の暗号化投票データを受信し，開票者端末の秘密鍵を用いて復号化し，その復号化した投票データが1または0であることを確認する正当性確認手段と，
正当性確認手段により，投票データが1または0であることを確認して，その投票データが1または0であることの証明を生成し，その証明を集計者端末に送信する票の正当性証明生成手段と，
公開掲示板に掲示している集計値データを開票者端末の秘密鍵で復号化し，集計結果データを生成する復号化手段と，
集計結果データが正しく復号化したことの証明を生成する復号処理正当性証明生成手段と
を備えることを特徴とする請求項1記載の電子投票システム。
【請求項１０】
投票を行う複数の投票者端末と，投票者端末から暗号化投票データを収集し，収集した暗号化投票データを集計する集計者端末と，投票データの集計結果を開票する開票者端末とを通信回線を介して接続した電子投票方法であって，
投票者端末が，開票者端末が指定した公開鍵で準同型系公開鍵暗号方式により，投票データを暗号化して暗号化投票データを生成するステップと，
投票者端末が，投票確認データ生成に必要な投票者端末の公開情報データを生成するステップと，
投票者端末が，暗号化投票データと，公開情報データを集計者端末に秘密裏に送信するステップと，
集計者端末が，投票者端末から受信した暗号化投票データと公開情報データを用いて，電子署名により，投票者の有権性を検証するステップと，
集計者端末が，票の正当性確認依頼のために投票者端末の暗号化投票データを開票者端末に秘密裏に送信するステップと，
開票者端末が，集計者端末から暗号化投票データを受信し，開票者端末の秘密鍵を用いて復号化し，その復号化した投票データが1または0であることを確認するステップと，
開票者端末が，投票データが1または0であることを確認し，その投票データが1または0であることの証明を生成するステップと，
開票者端末が，投票データが1または0であることの証明を集計者端末に秘密裏に送信するステップと，
集計者端末が，開票者端末から受信した投票データが１または０であることの証明を確認し，暗号化投票データと投票者端末の公開情報データ，集計者端末の秘密情報データを用いて，投票確認データとコミットメントデータを生成するステップと，
集計者端末が，投票確認データとコミットメントデータを公開掲示板に掲示するステップと，
投票者端末が，公開掲示板に掲示している投票確認データとコミットメントデータを検証するステップと，
集計者端末が，投票締め切り後の公開掲示板に掲示している複数の投票確認データの積を生成し，投票確認データの積を公開掲示板に掲示するステップと，
集計者端末が，投票締め切り後の各投票者端末から受信した複数の各投票者端末の公開情報データの積を生成し，その生成した公開情報データの積を集計者端末の秘密情報データでべき乗し，さらに公開掲示板に掲示している投票確認データの積を，べき乗で生成した公開情報データの積で除算した集計値データを生成するステップと，
集計者端末が，正しく集計したことの証明を生成するステップと，
集計者端末が，集計値データと，その正しく集計したことの証明とともに公開掲示板に掲示するステップと，
開票者端末が，公開掲示板に掲示している集計値データを開票者端末の秘密鍵で復号化し，集計結果データを生成するステップと，
開票者端末が，集計結果データが正しく復号化したことの証明を生成するステップと，
開票者端末が，集計結果データと，正しく復号化したことの証明を公開掲示板に掲示するステップと
を備えることを特徴とする請求項５記載の電子投票方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は電子投票システムに関する。
【背景技術】
【０００２】
近年，電子投票システムを実現する多様な投票プロトコルが考案されている。例えば，山口らによって考案された2センタ方式投票プロトコル(非特許文献１)がある。この投票プロトコルは投票者，開票センタ，集計センタの３つのエンティティで構成され，投票者は開票センタの準同型系公開鍵暗号方式と集計センタのRSA公開鍵暗号方式を用いて投票内容を二重暗号化している。それによって，集計センタが投票者の投じた投票内容を知ることなく，投票の暗号文をそのまま集計し，その集計した投票の集計値の暗号文を開票センタが復号化して平文の投票の集計値を得る。また，投票者の投じた投票内容が1(Yes)または0(No)であることを証明する票の正当性証明を検証して行うことにより，投票者のプライバシを保証し，正当な投票を行っている。
【０００３】
上述した2センタ方式投票プロトコルにおいては，投票内容が1または0であることを証明する票の正当性証明の作成は投票者自身が行う必要がある。その結果，投票者が票の作成を行う段階で，投票内容の暗号化のみでなく，票の正当性証明の作成も行わなければならない。
【０００４】
【非特許文献１】H．Yamaguchi, A． Kitazawa, H．Doi, K．Kurosawa and S．Tsujii． "An Electronic Voting Protocol Preserving Voter's Privacy", IEICE TRANSACTION on Information and System． Vol． E86-D, No．9, pp.1868-1878, 2003
【発明の開示】
【発明が解決しようとする課題】
【０００５】
それ故に本発明の課題は，投票者自身が行っている票の正当性証明の作成をセンタ側に委譲してセンタ側で行うようにした電子投票システム及び電子投票方法を提供することにある。
【課題を解決するための手段】
【０００６】
本発明においては，ディフィー・ヘルマン鍵交換(W. Diffie, M. Hellman. "New Directions in Cryptography", IEEE Trans. on Information Theory, IT-22, 6, pp.644-654, 1976)のテクニックを用いて，票の正当性証明の作成を投票者からセンタ側に委譲する。また，センタ側で作成した票の正当性証明が正当に作成されたものであるかどうかを検証する。
【０００７】
本発明によれば，投票者によって暗号化した投票データが1または0であることを証明する票の正当性証明の作成をセンタ側に委譲する手段を備えたことを特徴とする電子投票システムが得られる。
【０００８】
上記電子投票システムにおいて, 投票者がセンタ側の公開鍵を用いて投票データを暗号化し，センタ側に委譲するための情報データを入れて票を作成するようにしてもよい。
【０００９】
上記電子投票システムにおいて,投票者端末，集計者端末，及び開票者端末の各々の電子署名の鍵ペアと前記開票者端末の準同型系公開鍵暗号方式の鍵ペアとを生成する準備手段と，前記投票者端末が自ら投票データを暗号化する投票作成手段と，前記投票者端末が作成した暗号化投票データを前記集計者端末に送信し，かつその暗号化投票データが1または0であることを証明する票の正当性証明の作成をセンタ側に委譲する投票・委譲手段と，前記集計者端末が前記投票者端末から送信される暗号化投票データを集計する集計手段と，前記集計者端末が集計した暗号化投票データの集計値を前記開票者端末が復号化し，投票データの集計値の平文を得る開票手段とを備えてもよい。
【００１０】
上記電子投票システムにおいて, 投票者端末，集計者端末，及び開票者端末の各々が電子署名の鍵ペアを生成し，かつ前記開票者端末が準同型系公開鍵暗号方式の鍵ペアを生成す準備フェーズと，前記投票者端末が前記開票者端末の公開鍵を用いて投票データを暗号化し，センタ側に委譲するための前記投票者端末の情報データを入れて票を作成する投票作成フェーズと，前記投票者端末が作成した暗号化投票データの1または0であることを証明する票の正当性証明の作成をセンタ側に委譲するための前記投票者端末と前記集計者端末の情報データを生成し，これらの情報データと前記投票者端末の暗号化投票データを用いて前記集計者端末に送信する投票・委譲フェーズと，前記集計者端末が前記投票者端末からの暗号化投票データを受信し，その暗号化投票データを集計する集計フェーズと，前記集計者端末が集計した暗号化投票データの集計値を前記開票者端末が復号化し，投票データの集計値の平文を得る開票フェーズとを備えてもよい。
【００１１】
また本発明によれば，投票者によって暗号化した投票データが1または0であることを証明する票の正当性証明の作成をセンタ側に委譲することを特徴とする電子投票方法が得られる。
【００１２】
上記電子投票方法において,投票者がセンタ側の公開鍵を用いて投票データを暗号化し，センタ側に委譲するための情報データを入れて票を作成してもよい。
【００１３】
上記電子投票方法において, 投票者端末，集計者端末，及び開票者端末の各々の電子署名の鍵ペアと前記開票者端末の準同型系公開鍵暗号方式の鍵ペアを生成するステップと，前記投票者端末が自ら投票データを暗号化するステップと，前記投票者端末が作成した暗号化投票データを前記集計者端末に送信し，かつその暗号化投票データが1または0であることを証明する票の正当性証明の作成をセンタ側に委譲するステップと，前記集計者端末が前記投票者端末から送信される暗号化投票データを集計するステップと，前記集計者端末が集計した暗号化投票データの集計値を前記開票者端末が復号化し，投票データの集計値の平文を得るステップとを有してもよい。
【００１４】
上記電子投票方法において,投票者端末，集計者端末，及び開票者端末の各々が電子署名の鍵ペアを生成し，かつ前記開票者端末が準同型系公開鍵暗号方式の鍵ペアを生成するステップと，前記投票者端末が前記開票者端末の公開鍵を用いて投票データを暗号化し，センタ側に委譲するための前記投票者端末の情報データを入れて票を作成するステップと，前記投票者端末が作成した暗号化投票データの1または0であることを証明する票の正当性証明の作成をセンタ側に委譲するための前記投票者端末と前記集計者端末の情報データを生成し，これらの情報データと前記投票者端末の暗号化投票データを用いて前記集計者端末に送信するステップと，前記集計者端末が前記投票者端末からの暗号化投票データを受信し，その暗号化投票データを集計するステップと，前記集計者端末が集計した暗号化投票データの集計値を前記開票者端末が復号化し，投票データの集計値の平文を得るステップとを有してもよい。
【００１５】
上記電子投票システムにおいて,投票を行う複数の投票者端末と，投票者端末から暗号化投票データを収集し，収集した暗号化投票データを集計する集計者端末と，投票データの集計結果を開票する開票者端末とを通信回線を介して接続した電子投票システムであって，投票者端末は，前記開票者端末が指定した公開鍵で準同型系公開鍵暗号方式により，投票データを暗号化して暗号化投票データを生成する暗号化手段と，投票確認データ生成に必要な投票者端末の公開情報データを生成する公開情報データ生成手段と，集計者端末によって公開された投票確認データとコミットメントデータを検証する投票確認データ検証手段とを備え，集計者端末は，投票者端末から受信した暗号化投票データを電子署名により，投票者の有権性を検証する有権性検証手段と，票の正当性確認依頼のために開票者端末に投票者端末の暗号化投票データを送信する票の正当性確認依頼手段と，開票者端末から投票データが1また0であることの証明を受信したことを確認し，暗号化投票データと投票者端末の公開情報データ，集計者端末の秘密情報データを用いて，投票確認データとコミットメントデータを生成し，そのデータを公開掲示板に掲示する投票確認データ掲示手段と，投票締め切り後の公開掲示板に掲示している複数の投票確認データの積を生成し，その積のデータを公開掲示板に掲示する投票確認データの積生成手段と，投票締め切り後の各投票者端末から受信した複数の各投票者端末の公開情報データの積を生成し，その生成した積を集計者端末の秘密情報データでべき乗し，さらに公開掲示板に掲示している投票確認データの積を，べき乗で生成した公開情報データの積で除算した集計値データを，その正しく集計したことの証明とともに公開掲示板に掲示する集計情報データ生成手段と備え，開票者端末は，集計者端末から票の正当性確認依頼を受けて，投票者端末の暗号化投票データを受信し，開票者端末の秘密鍵を用いて復号化し，その復号化した投票データが1または0であることを確認する正当性確認手段と，正当性確認手段により，投票データが1または0であることを確認して，その投票データが1または0であることの証明を生成し，その証明を集計者端末に送信する票の正当性証明生成手段と，公開掲示板に掲示している集計値データを開票者端末の秘密鍵で復号化し，集計結果データを生成する復号化手段と，集計結果データが正しく復号化したことの証明を生成する復号処理正当性証明生成手段とを備えてもよい。
【００１６】
上記電子投票方法において,投票を行う複数の投票者端末と，投票者端末から暗号化投票データを収集し，収集した暗号化投票データを集計する集計者端末と，投票データの集計結果を開票する開票者端末とを通信回線を介して接続した電子投票方法であって，投票者端末が，開票者端末が指定した公開鍵で準同型系公開鍵暗号方式により，投票データを暗号化して暗号化投票データを生成するステップと，投票者端末が，投票確認データ生成に必要な投票者端末の公開情報データを生成するステップと，投票者端末が，暗号化投票データと，公開情報データを集計者端末に秘密裏に送信するステップと，集計者端末が，投票者端末から受信した暗号化投票データと公開情報データを用いて，電子署名により，投票者の有権性を検証するステップと，集計者端末が，票の正当性確認依頼のために投票者端末の暗号化投票データを開票者端末に秘密裏に送信するステップと，開票者端末が，集計者端末から暗号化投票データを受信し，開票者端末の秘密鍵を用いて復号化し，その復号化した投票データが1または0であることを確認するステップと，開票者端末が，投票データが1または0であることを確認し，その投票データが1または0であることの証明を生成するステップと，開票者端末が，投票データが1または0であることの証明を集計者端末に秘密裏に送信するステップと，集計者端末が，開票者端末から受信した投票データが１または０であることの証明を確認し，暗号化投票データと投票者端末の公開情報データ，集計者端末の秘密情報データを用いて，投票確認データとコミットメントデータを生成するステップと，集計者端末が，投票確認データとコミットメントデータを公開掲示板に掲示するステップと，投票者端末が，公開掲示板に掲示している投票確認データとコミットメントデータを検証するステップと，集計者端末が，投票締め切り後の公開掲示板に掲示している複数の投票確認データの積を生成し，投票確認データの積を公開掲示板に掲示するステップと，集計者端末が，投票締め切り後の各投票者端末から受信した複数の各投票者端末の公開情報データの積を生成し，その生成した公開情報データの積を集計者端末の秘密情報データでべき乗し，さらに公開掲示板に掲示している投票確認データの積を，べき乗で生成した公開情報データの積で除算した集計値データを生成するステップと，集計者端末が，正しく集計したことの証明を生成するステップと，集計者端末が，集計値データと，その正しく集計したことの証明とともに公開掲示板に掲示するステップと，開票者端末が，公開掲示板に掲示している集計値データを開票者端末の秘密鍵で復号化し，集計結果データを生成するステップと，開票者端末が，集計結果データが正しく復号化したことの証明を生成するステップと，開票者端末が，集計結果データと，正しく復号化したことの証明を公開掲示板に掲示するステップとを備えてもよい。
【発明の効果】
【００１７】
本発明によると，投票者が投じた票の正当性証明の作成をセンタ側に委譲することにより，投票者が行う票の作成コストを軽減できる。さらに，投票者がセンタ側で作成した票の正当性証明の存在を確認することができる。
【発明を実施するための最良の形態】
【００１８】
図１に示すシステムモデルは，投票を行う複数の投票者端末（一つのみ図示した）１，投票者端末から投票データを収集し，収集した投票データを集計する集計者端末２，及び投票データの集計結果を開票する開票者端末３を含んでいる。投票者端末１，集計者端末２，及び開票者端末３は，通信回線を介して接続される。ここで，投票者端末１は投票者viに割り当てられ，集計者端末２は集計センタCに割り当てられ，開票者端末３は開票センタOに割り当てられる。なお，図１において，IDiは投票者viの認証番号，Viは投票内容を暗号化した票，Xiは投票者viの公開情報データ，Yは集計センタCの公開情報データ，σはViに対する票の正当性証明，xは集計センタCの秘密情報データ，rは投票者viの秘密情報データ，Gは剰余類群の生成元(共通パラメータ)，Ciはコミットメントデータである。
【００１９】
図１のシステムモデルにおいて，投票者vi，集計センタC，及び開票センタOの各々が任意の電子署名の鍵ペアを生成する。また，開票センタOは任意の準同型系公開鍵暗号方式の鍵ペアを生成する。これらの鍵ペアを生成するとき、投票者端末１，集計者端末２，及び開票者端末３の各々は準備手段として働く。
【００２０】
次に，投票者viが自ら投票文を暗号化する。このとき投票者端末１は投票作成手段として働く。投票者viは，作成した投票の暗号文を集計センタCに送信し，かつその投票の暗号文が1または0であることを証明する票の正当性証明の作成をセンタ側に委譲する。このとき投票者端末１は投票・委譲手段として働く。
【００２１】
集計センタCは投票者viから送信される投票の暗号文を集計する。このとき集計者端末２は集計手段として働く。
【００２２】
集計センタCが集計した投票の集計値の暗号文を開票センタOが復号化し，投票の集計値の平文を得る。このとき開票者端末３は開票手段として働く。
【実施例１】
【００２３】
以下，実施例を用いて説明する。エンティティは，投票者端末１，集計者端末２，及び開票者端末３をそれぞれ割り当てられた投票者vi ，集計センタC，及び開票センタOの3つである。ここでは集計センタC及び開票センタOを纏めてセンタ側と呼ぶ。
【００２４】
図１のシステムモデルは，以下に順次説明する準備，投票作成，投票・委譲，集計，開票の5つのフェーズで行われる。
【００２５】
1．準備フェーズ
1-1．投票者viは電子署名のRSA署名の秘密鍵dvi,pvi,qviと公開鍵evi,Nviの鍵ペアを生成する。秘密鍵は秘密に保持し，公開鍵は公開鍵簿に登録する。
【００２６】
1-2．集計センタCは電子署名のRSA署名の秘密鍵dC,pC,qCと公開鍵eC,NCの鍵ペアを生成する。秘密鍵は秘密に保持し，公開鍵は公開鍵簿に登録する。コミットメント生成に必要な共通パラメータp,Gを生成する。
【００２７】
1-3．開票センタOは電子署名のRSA署名の秘密鍵dO,pO,qOと公開鍵eO,NOの鍵ペアを生成し，準同型系公開鍵暗号方式のOU関数の秘密鍵p2,q2と公開鍵N2,g2の鍵ペアを生成する。秘密鍵は秘密に保持し，公開鍵は公開鍵簿に登録する。
【００２８】
2．投票作成フェーズ
2-1．投票者viは票
mi ∈ {0,1}
を選択し，乱数
ri ∈ ZN2
を生成し，開票センタOの準同型系公開鍵暗号方式のOU関数の公開鍵N2,g2を用いて暗号化投票データ
Vi = g2^{mi + N2 * ri} mod N2
を生成する。
【００２９】
2-2．投票者viは秘密情報データ
rvi ∈ ZN2
生成し，公開情報データ
Xi = g2^rvi mod N2
を生成する。次に，署名生成のために安全なハッシュ関数h()でハッシュ値
Hi = h(Vi,MSGvi,Xi)
を生成し，投票者の署名
Sigvi = Hi^dvi mod Nvi
を生成し，票(IDvi,Vi,MSGvi,Xi,Sigvi)を集計センタCに秘密裏に送信する。なお，IDviは投票者viの認証番号，MSGviは投票者viの個人情報で有権性検証のために選挙人名簿データベースに登録している。
【００３０】
3．投票・委譲フェーズ
3-1．集計センタCは投票者viから票(IDvi,Vi,MSGvi,Xi,Sigvi)を受信し，投票者viの署名Sigviを投票者viの公開鍵evi,Nviと選挙人名簿データベースとを用いて有権者であるかどうかを署名検証する。
【００３１】
3-2．3-1の署名検証で有権者であると確認できたら，開票センタOに票の正当性確認依頼をするために，票(IDvi,Vi,MSGvi,Xi,Sigvi)の暗号化投票データViを安全なハッシュ関数h()でハッシュ値
Hci = h(Vi,MSGC)
を生成し，集計センタCの署名
SigC1 = HC1^dC
を生成し，開票センタOに正当性確認依頼(IDC,Vi,MSGC,SigC1)を秘密裏に送信する。
【００３２】
3-3．開票センタOは集計センタCから正当性確認依頼(IDC,Vi,MSGC,SigC1)を受信し，集計センタCの署名SigC1を集計センタCの公開鍵eC, NCを用いて，正当な集計センタCであるかどうかを署名検証する。
【００３３】
3-4．3-3の署名検証で正当な集計センタCであると確認できたら，正当性確認依頼(IDC,Vi,MSGC,SigC1)の暗号化投票データViを開票センタOの準同型系公開鍵暗号方式のOU関数の秘密鍵p2と公開鍵g2とを用いて復号化して，その復号化した票miの内容が1または0であることの票の正当性確認をする。
【００３４】
3-5．3-4の正当性確認で票miの内容が1または0であると確認できたら，その票の内容が1または0であることの証明σiを生成し，その証明σiを集計センタCに送信するために，安全なハッシュ関数h()でハッシュ値
HO1 = h(σi,MSGO)
を生成し，開票センタOの署名
SigO1 = HO1^dO
を生成し，集計センタCに証明(IDO,σi,MSGO,SigO1)を秘密裏に送信する。
【００３５】
3-6.集計センタCは開票センタOから証明(IDO,σi,MSGO,SigO1)を受信し，開票センタOの署名SigO1を開票センタOの公開鍵eO, NOを用いて，正当な開票センタOであるかどうかを署名検証する。
【００３６】
3-7．3-6の署名検証で正当な開票センタOであると確認できたら，集計センタCは票が1または0であることの証明σiを確認し，投票者viの暗号化投票データViと公開情報データXi，集計センタCの秘密情報x，開票センタOの準同型系公開鍵暗号方式のOU関数の公開鍵N2，g2と共通パラメータp，Gを用いて，それぞれ
投票確認データ
Zi = Vi * Xi^x mod N2，
コミットメントデータ
Ci = G^Xi mod p，
集計センタCの公開情報データ
Yi = g2^x mod N2
を生成する。さらに，これらの情報を公開掲示板に掲示するために，安全なハッシュ関数h()でハッシュ値
HC2 = h(Zi,Ci,Yi,MSGC)
を生成し，集計センタCの署名
SigC2 = HC2^dc
を生成する。情報(IDC,Zi,Ci,Yi,MSGC,SigC2)を公開掲示板に掲示する。
【００３７】
3-8．投票者viは公開掲示板に掲示している情報(IDC,Zi,Ci,Yi,MSGC,SigC2)を取得し，集計センタCの署名SigC2について，正当な集計センタCであるかどうかを署名検証する。
【００３８】
3-9．3-8の署名検証で正当な集計センタCであると確認できたら，投票者viは暗号化投票データVi，投票者viの秘密情報データrvi，投票者viの公開情報データXi，投票確認データZi, コミットメントデータCi, 集計センタCの公開情報データYiを用いて，投票確認データとコミットメントデータが正しいかどうかを検証する。
【００３９】
Zi =｛？｝ Vi * Yi^rvi mod N2
Ci =｛？｝ G^Xi mod p
【００４０】
3-10．3-9で投票確認データとコミットメントデータを確認できたら，投票者viによる投票が完了する。投票期日まで同様に繰り返す。
【００４１】
4．集計フェーズ
4-1．投票期日後，任意の検証者(一例では集計センタC)は公開掲示板に掲示している複数の投票確認データZi(i=1,…,n)の積を生成し，その生成した投票確認データの積
Z = П{i=1}^n Zi mod N2
を公開掲示板に掲示する。
【００４２】
4-2．集計センタCは投票者viの公開情報データの積
X = П{i=1}^n Xi mod N2
及び，集計センタCの秘密情報データを用いて，その積のべき乗
T = X^x mod N2
を生成し，さらに，投票確認データの積と投票者の公開情報データの積のべき乗を用いて，集計値データ
Z' = Z / T mod N2
を生成する。これらのデータX，T，Z'を公開掲示板に掲示するために，安全なハッシュ関数h()でハッシュ値
HC3 = h(X,T,Z',MSGC)
を生成し，集計センタCの署名
SigC3 = HC3^dc
を生成する。さらに集計者が正しく集計したことの証明σCを生成し，集計情報(IDC,X,T,Z',σC,MSGC,SigC3)を公開掲示板に掲示する。
【００４３】
5．開票フェーズ 
5-1．開票センタOは公開掲示板に掲示している集計情報(IDC,X,T,Z',σC，MSGC,SigC3)を取得し，集計センタCの署名SigC3について，正当な集計センタCであるかどうかを署名検証する。
【００４４】
5-2．5-1の署名検証で正当な集計センタCであると確認できたら，開票センタOは開票センタOの準同型系公開鍵暗号方式のOU関数の秘密鍵p2と公開鍵g2を用いて，集計値データZ'を復号化して集計結果Mを得る。
【００４５】
Zp2 = Z’^{p2-1} mod p2^2 
gp2 = g2^{p2-1} mod p2^2 
M = L(Zp2) / L(gp2) mod p2
但し，
L(x) = (x-1) / p2
【００４６】
5-3．集計結果Mを公開掲示板に掲示するために，安全なハッシュ関数h()でハッシュ値
HO2 = h(M,MSG0)
を生成し，開票センタOの署名
SigO2 = HO2^dO
を生成する。さらに集計結果Mを正しく復号化したことの証明σOを生成し，集計結果(IDO,M,σO,MSGO,SigO2)を公開掲示板に掲示する。
【００４７】
5-4．開票センタOを除く全てのエンティティが公開掲示板に掲示している集計結果(IDO,M,σO,MSGO,SigO2)を取得し，開票センタOの署名SigO2について，正当な開票センタOであるかどうかを署名検証する。
【００４８】
5-5. 5-4の署名検証で正当な開票センタCであると確認できたら，集計結果Mとその証明σOについて確認し，確認できたら，最終的な集計結果Mが確定する。
【図面の簡単な説明】
【００４９】
【図１】本発明の実施の形態に係る電子投票システムを説明するためのブロック図である。
【符号の説明】
【００５０】
１  投票者端末
２  集計者端末
３  開票者端末
IDi  投票者viの認証番号
Vi  投票内容を暗号化した票
Xi  投票者viの公開情報データ
Y  集計センタCの公開情報データ
σ  Viに対する票の正当性証明
x  集計センタCの秘密情報データ
r  投票者viの秘密情報データ
G  剰余類群の生成元(共通パラメータ)
Ci  コミットメントデータ
【図１】
2006279716.tif 000003