JP4098510B2 - 匿名通信方法、その装置処理方法、そのプログラムおよびその記録媒体 - Google Patents
匿名通信方法、その装置処理方法、そのプログラムおよびその記録媒体 Download PDFInfo
- Publication number
- JP4098510B2 JP4098510B2 JP2001333310A JP2001333310A JP4098510B2 JP 4098510 B2 JP4098510 B2 JP 4098510B2 JP 2001333310 A JP2001333310 A JP 2001333310A JP 2001333310 A JP2001333310 A JP 2001333310A JP 4098510 B2 JP4098510 B2 JP 4098510B2
- Authority
- JP
- Japan
- Prior art keywords
- server device
- key
- decryption server
- information
- decryption
- 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
Links
Images
Description
【発明の属する技術分野】
この発明は、情報セキュリティ技術の応用技術であって、ネットワーク上で投票やアンケートのような一方向の通信だけでなく情報閲覧やコンテンツサービスのような双方向の通信にも適用できる匿名通信方法、その装置処理方法、そのプログラム及びその記録媒体に関するものである。
【0002】
【従来の技術】
ネットワーク上で投票やアンケートのような一方向の匿名通信を実現する手段として、例えば大久保、「暗号文の長さが不変な Hybrid-Mix」(2000年暗号と情報セキュリティシンポジウム)がある。これは共通鍵暗号を利用した匿名通信方法であり、複数のユーザ装置と、その装置による多重に暗号化された暗号文を復号する複数の復号サーバ装置と、それらをつなぐネットワークから構成される。このような構成のもとで匿名通信を実現するために、あらかじめ複数の復号サーバ装置が協力して計算を行い、それぞれの復号サーバ装置がその計算結果を暗号/復号用鍵を生成するための情報として公開する必要がある。つまり復号サーバ装置M1,M2,・・・,Mmがネットワークを介して公開掲示板装置に送信する鍵情報は、それぞれが生成した秘密乱数A1,A2,・・・AmとX1,X2,・・・,Xmを用いて計算された(gA1,gA1X1),(gA1A2,gA1A2X1),・・・,(gA1A2・・・m,gA1A2・・・AmXm)となる。これによりユーザ装置および各復号サーバ装置は鍵を生成できるが、鍵情報のサイズが大きいことに加え、いくつかの復号サーバ装置がシステムダウンした、あるいは不正を働いたなどとして排除する場合に、従来技術では鍵情報の生成が復号サーバ装置間で依存しているために再度鍵情報を生成しなおさなくてはならない。
【0003】
【発明が解決しようとする課題】
第1の問題点は多様な匿名通信経路の構成が困難なこと、また、いくつかの復号サーバ装置が停止した場合などに再度事前計算を行わなければならないことである。
その理由は、上記従来技術ではその事前計算により復号サーバ装置の順序づけが一意に決定されてしまい、あらかじめ複数の復号サーバ装置が協力して計算を行わなくてはならないためである。
【0004】
第2の問題点は、投票やアンケートのような一方向の匿名通信にのみ適用できる手段においてのみ提供しているということである。
双方向の通信にも適用できれば情報閲覧やコンテンツサービスなどの匿名サービスができる。
この発明の第1の目的は、ユーザ装置が共通鍵を作るための復号サーバ装置の鍵情報を、複数の復号サーバ装置があらかじめ協力して計算を行うことを必要としない匿名通信方法を提供することにある。
この発明の第2の目的は、ユーザは利用する復号サーバ装置とその利用順序を自由に選択でき、情報閲覧やコンテンツサービスのような双方向の通信にも適用できる匿名通信方法を提供することにある。
【0005】
【課題を解決するための手段】
この発明によれば掲示板装置と、複数のユーザ装置と、複数の復号サーバ装置と、それらをつなぐネットワークとを備え、
掲示板装置は受信した情報を即座に電子的公開掲示板に公開し、復号サーバ装置はそれぞれ独立に生成したユーザ装置が鍵を作るための鍵情報を掲示板装置にネットワークを介して送信し、
ユーザ装置は各復号サーバ装置が鍵を作るための鍵情報を生成すると共に、公開された復号サーバ装置のそれぞれの鍵情報から複数の鍵を生成し、自身の平文をそれらの鍵で多重に共通鍵暗号で暗号化し、自身の生成した鍵情報と多重暗号の組の複数を最初の復号サーバ装置にネットワークを介して送信し、
復号サーバ装置は、取得した各組中の鍵情報からそれぞれ復号鍵を生成して、これら復号鍵により複数の多重暗号文を復号し、その各復号文と生成した鍵情報の組の複数よりなるリストを置換して次の復号サーバ装置へネットワークを介して送信して、
復号サーバ装置への入力である複数のユーザ装置の暗号文及びそれに付随する情報のリストと、復号サーバ装置の出力である次の複数の復号サーバ装置への情報のリストとの対応関係を隠蔽する。
【0006】
この発明において例えば、復号サーバ装置がネットワークを介して公開掲示板装置に送信するユーザ装置が鍵を作るための鍵情報は、復号サーバ装置をM1,M2,・・・,Mmとすると、それぞれが生成した秘密乱数A1,A2,・・・,Amおよび公開情報gをもちいて計算されたgA1,gA2,・・・,gAmとなる。この鍵情報のみでユーザ装置は多重暗号文に必要な複数の暗号鍵を生成でき、各復号サーバ装置はユーザ装置による多重暗号文を復号するための鍵情報を生成できる。このため復号サーバ装置が不正してそれを排除した場合や復号サーバ装置が使用不能になった場合に、復号サーバ装置による鍵情報が他復号サーバ装置とは独立に生成されているために鍵情報を生成し直す必要はない。
【0007】
また、従来技術では匿名通信経路が一意的であったが、この発明では復号サーバ装置の鍵情報が他復号サーバ装置とは独立であるため容易に匿名通信経路を多様に構成でき、その経路をユーザ自身が選択することができる。そのためには例えばユーザ装置による多重暗号文をEK1(HEDD2||EK2(HEDD3||EK3(・・・(EKm(MSG))・・・)))とし(ただしMSGを平文、Eを共通鍵暗号の暗号化アルゴリズム、HEDDiで復号サーバ装置iを表すヘッダ情報(識別情報)、||でデータの連結、EKi(MSG)でMSGをEをもちいて鍵Kiで暗号化したものとする)、復号サーバ装置M1は鍵K1をもちいて復号しHEDD2||EK2(HEDD3||EK3(・・・(EKm(MSG))・・・))を得る。これにより次に復号を行う復号サーバ装置はHEDD2に示されているように復号サーバ装置M2であることが分かる。最終的に復号サーバ装置Mmが復号することにより平文MSGを得る。
【0008】
更に従来技術では投票やアンケートなど一方向の匿名通信にのみが考えられていたが、例えばユーザ装置による多重暗号文EK1(EK2(・・・(EKm(MSG))・・・))を各復号サーバ装置が逐次EK2(・・・(EKm(MSG))・・・),・・・,EKm(MSG),MSGと復号していたものに対して、逆にユーザ装置に与える平文MSG′を各復号サーバ装置が逐次EKm(MSG′),・・・,EK2(・・・(EKm(MSG′))・・・),EK1(EK2(・・・(EKm(MSG′))・・・))と自身の鍵で暗号化を施し、その多重暗号文をユーザ装置が一括復号しMSG′を得ることで、情報閲覧やコンテンツサービスなど双方向の通信がこの発明により可能となる。これはユーザ装置から復号サーバ装置への匿名通信と同様の方法により双方向の通信においても匿名通信が可能となる。
【0009】
【発明の実施の形態】
次に、この発明の実施の形態について図面を参照して詳細に説明する。
まず第1の実施形態として、ユーザが利用する復号サーバ装置とその匿名通信経路があらかじめ一意的に決まっていて、電子的公開掲示板を用いて匿名性を備えた鍵共有及びメッセージの復号を実現する方法を示す。
次に第2の実施形態として、利用する復号サーバ装置とその匿名通信経路は各ユーザが自由に選択でき、ユーザ装置−復号サーバ装置、復号サーバ装置−復号サーバ装置間で署名を付与して送受信し、匿名のユーザの要求に対する情報をその匿名のユーザに返送できる方法を示す。
なお第1、第2の実施形態ともに、匿名通信を行う際、離散対数問題を拠り所とするような大きな素数p,q(qはp−1の約数となるような関係を持つ)及び位数がqとなるような乗法群(Z/pZ)*の元gがあらかじめ公開されているものとする。
【0010】
第1の実施形態
図1に示すように、第1の実施形態におけるこの発明による匿名通信を実現するための構成は、ユーザ装置及び復号サーバ装置がアクセス可能な公開掲示板装置10と、公開掲示板装置10が受信した情報を公開するための電子的公開掲示板11と、複数のユーザ12と、そのユーザが操作するユーザ装置13と、復号サーバ装置14と、それを操作、管理する復号サーバ管理者15と、ユーザ装置13及び復号サーバ装置14と、公開掲示板装置10あるいは電子的公開掲示板11とを結ぶネットワーク16からなる。なお復号サーバ装置14はm台あるものとし、i番目(i=1,2,・・・,m)の復号サーバ装置を14−iで表し、その管理者を15−iとし、ユーザ12はn人いるものとしそのユーザ12には番号が割り振られており、j番目のユーザ12を12−jとし、12−jが操作するユーザ装置13を13−j(j=1,2,・・・,n)で表す。
【0011】
復号サーバ装置14−i(i=1,2,・・・,m)はそれぞれ別の機関が管理するなどして結託しないものとし、事前処理として,図4及び図5に示すように、p,q,gを電子的公開掲示板11よりダウンロードして記憶部141に格納し(S2)、乱数生成部142により1以上q未満の乱数Aiを生成し、Aiを記憶部141に格納すると共にWi=gAiを関数演算部143で計算して公開掲示板装置10に送信する(S2)。
次にユーザ装置13−jの多重暗号文と鍵情報の生成法について述べる。ユーザ装置13−jの処理手順を図2に、その機能構成を図3にそれぞれ示す。
ユーザ装置13−jはp,q,gを電子的公開掲示板11よりダウンロードして記憶部131に格納し(S1)、乱数生成部132より1以上q未満の乱数Rjを生成した後、G0,j=gRjを関数演算部133で計算し(S2)、これを鍵情報とする。また復号サーバ装置14−i(i=1,2,・・・,m)の公開情報Wiを電子的公開掲示板11よりダウンロードし、Gi,j=WiRjLi-1,jをiについて1からはじめてmまで順に関数演算部133で計算する。ここでLi,j=L(Gi,j)×Li−1,j,ただしL0,j=1,Lは乗法群(Z/pZ)*からZ/qZへ写す関数とする。
【0012】
以上の準備から復号サーバ装置14−iに対する共通鍵Ki,j=H(Gi,j)をiについて1からはじめてmまで順に関数演算部133で生成する(S3)。ただしHは乗法群(Z/pZ)*から共通鍵空間へ写す関数とする。
そして最終的にユーザ装置13−jのメッセージMSGjに対して、暗号鍵Km,jからはじめてK1,jまで順に用いて暗号化を関数演算部133で施した多重暗号文V0,j=EK1,j(・・・(EKm,j(MSGj))・・・)を計算して鍵情報と多重暗号文の組C0,j=(G0,j,V0,j)を公開掲示板装置10に送信する(S4)。ただしEは共通鍵暗号の暗号化アルゴリズム、添字のKi,jはEに用いる暗号鍵とする。
【0013】
続いて復号サーバ装置14の処理について述べる。復号サーバ装置14の処理手順を図4に示す。また、復号サーバ装置14の機能構成を図5に示す。
まず復号サーバ装置14−1は全ユーザ装置13からの公開情報のリストB0={C0,1,C0,2,・・・,C0,n}を電子的公開掲示板11より取得し(S3)、自身の生成した乱数A1を記憶部141から取り出し、T1,j=G0、jA1(j=1,2,・・・,n)を関数演算部143で計算する。これらから、鍵情報G1、j=G0,jL(T1,j)及び復号鍵共通鍵K1,j=H(T1,j)を関数演算部143で生成した後(S4)、多重暗号文V0,jをその復号鍵K1,jで関数演算部143において復号する。この復号した値をV1,j=DK1,j(V0,j)と表記する。ただしDは共通鍵暗号の復号アルゴリズム、もちろん復号サーバ装置14が2台以上であればV1,jは暗号文となっている。そしてn個の鍵情報と暗号文の組C1,j=(G1,j,V1,j)を作成し(S5)、この組C1,jの順序を置換処理部144で適当(ランダム)に置換して得られたリストB1を公開掲示板装置10に送信する(S6)。
【0014】
以下同様の操作を復号サーバ装置14−iはiについて2からmまで繰り返す。すなわち復号サーバ装置14−iは復号サーバ装置14−i‐1の公開リストBi‐1を取得し、これから鍵情報と復号鍵を生成し、復号及び置換をした後、リストBiを公開掲示板装置10に送信する。
最終的に復号サーバ装置14−mの復号処理で全ユーザのメッセージMSGjを得ることができる。
この操作により全復号サーバ装置14の置換が知られない限り、つまり各復号サーバ装置14−iを管理する復号サーバ管理者15全員が結託しない限り、MSGjがどのユーザのものであるかの判別がつかない。ただしもちろん各復号サーバ装置14の入出力のリストが複数のユーザ12により構成されている必要がある。
【0015】
またもしユーザ12−jが自身のメッセージMSGjが公開されていないことを確認したい場合は、復号サーバ装置14−i各々の出力値を、これと対応する暗号文を作成して一致するものがあるか否か検証することにより、どの復号サーバ装置14が不正を行ったか特定でき、さらにユーザ12−jと復号サーバ管理者15−i双方の間で不正が報告され、かつお互いが正当だと主張した場合、例えばお互いの秘密乱数Rj,Aiを公開することで、第3者が双方の処理を再度行い、その計算結果を電子的公開掲示板11に公開された情報と照らし合わせることで、どちらが不正を行ったか特定できる。
【0016】
復号サーバ装置はそれぞれ独立に、ユーザ装置が鍵を作るための鍵情報Wiを生成できることにより、一部の復号サーバ装置がシステムダウンあるいは不正を働いたとして排除された場合も、鍵情報の生成をやり直す必要がない。
上述ではユーザ装置13−jからの多重暗号文を公開掲示板装置10へ送信し、各サーバ装置14−iは電子的公開掲示板11より、リスト Bi−1を取得して、リストBiを生成して公開掲示板装置10へ送信したが、ユーザ装置13−jから最初のサーバ装置14−1にL0,jを送り、サーバ装置14−1はその生成したリストB1を次のサーバ装置14−2へ送信するというように順次送信してもよい。つまり、サーバ装置14−1,14−2,・・・へ掲示板装置10及び電子的公開掲示板11を介して各生成したリストを送信しても、直接送信しても良く,この明細書では装置Aが情報Bを公開掲示板装置10へ送信し、他の装置Cが電子的公開掲示板11より情報Bを取得することも含めて、装置Aが情報Bを装置Cへ送信すると定義する。
【0017】
第2の実施形態
図6に示すように、第2の実施形態におけるこの発明による匿名通信を実現するための構成は、ユーザ装置および復号サーバ装置がアクセス可能な公開掲示板装置17と、公開掲示板装置17が受信した情報を公開するための電子的公開掲示板18と、複数のユーザ19と、そのユーザが操作するユーザ装置20と、復号サーバ装置21と、それを操作,管理する復号サーバ管理者22と、ユーザ19からの要求にこたえるセンタ23と、そのセンタ23が操作する復号サーバ装置24と、ユーザ装置20及び復号サーバ装置21と、電子的公開掲示板18あるいは公開掲示板装置17を結ぶネットワーク25と、復号サーバ装置21間とセンタ23の復号サーバ装置24間を全て結ぶネットワーク25からなる。なお復号サーバ装置21はm台あるものとし、その復号サーバ装置21には番号が割り振られておりi番目の復号サーバ装置を21−iで表し、その管理者22を22−iとし、ユーザ19はn人いるものとし、そのユーザには番号が割り振られており、j番目のユーザ19を19−jとし、ユーザ19−jが操作するユーザ装置20を20−j(j=1,2,・・・,n)で表す。
復号サーバ装置21−i(i=1,2,・・・,m)、及び24はそれぞれ別の機関が管理するなどして結託しないものとする。
まずセンタ23の操作する復号サーバ装置24をm+1番目の復号サーバ装置とみなして鍵共有するものとし,ユーザ装置20−jは復号サーバ装置21−i(i=1,2,・・・,m)、及び24に対する暗号鍵Ki,jを自身の記憶部に格納しているものとする。同様に復号サーバ装置21−i、24はユーザ装置20−j(j=1,2,・・・,n)に対する復号鍵Ki,jを自身の記憶部に格納しているものとする。この鍵共有は電子的公開掲示板18をもちいる必要があり、例えば第1の実施形態に示されている方法により実現できる。第1の実施形態における鍵共有の手法のみを利用して、各記憶部に共通鍵を格納し、又は第1の実施形態を実行して1回目の通信を行うと共にその際求めた共通鍵を記憶部に格納して2回目以降の通信にこの第2の実施形態を適用してもよい。
復号サーバ装置21−i(i=1,2,・・・,m)、及び24は各ユーザ装置20と共有した鍵Ki,j(j=1,2,・・・,n)から一方向性関数FをもちいてF(Ki,j)を計算し、(Ki,j,F(Ki,j))の組として即座に自身の記憶部に書きこむ。この記憶部に書きこまれた複数の組は、外部から読まれることのないように管理する必要がある。またFとして例えば一方向性ハッシュ関数をもちいるなどし、この関数はあらかじめユーザ19、復号サーバ管理者22、センタ23の間で一意的に定めておく必要がある。
この例ではF(Ki,j)はKi,jの鍵識別情報として用いられる。
【0018】
ユーザ装置20の処理手順の例を図7に、その機能構成例を図8にそれぞれ示し、ユーザ装置20の処理について述べる。
ユーザ装置20−jははじめに自身から復号サーバ装置21及び復号サーバ装置21から自身への双方向の経路、そして利用する複数の復号サーバ装置21−iを決める(S1)。この経路をユーザ装置20−j→復号サーバ装置21−u(1)→・・・→復号サーバ装置21−u(m′)→復号サーバ装置24→復号サーバ装置21−u′(1)→・・・→復号サーバ装置21−u′(m″)→ユーザ装置20−jとする。ただし、u、u′は1からmの自然数の間へ写す関数、m′、m″は自然数とする。単一の復号サーバ装置でも良いが,その場合匿名性はその単一の復号サーバ装置に対して失われる。
【0019】
次にユーザ装置20−jは関数演算部201により、Fk(Ku(1),j),・・・,Fk(Ku(m′),j)、Fk(Ku′(1),j),・・・,Fk(Ku′(m″),j)、Fk(Km+1,j)を計算する(S2)。ここでKm+1,jはユーザ装置20−jと復号サーバ装置24間の共通鍵、Fk(Ki,j)=F(Ki,j||Fk−1(Ki,j)),kは関数Fの入力となる鍵の対象となる復号サーバ装置21を利用した回数、ただしF0は空の値、||はデータの連結とする。この計算は、あらかじめKi,jおよびFk−1(Ki,j)を記憶部202に格納しておくことで、利用回数をカウントする必要なく容易に行える。
【0020】
そしてヘッダ情報を含んだ多重暗号文
V′i,j=HEDDu′(i+1)||Fk(Ku′(i+1),j)||EKu′(i+1)(V′i+1,j)(i=m″,m″−1,・・・,1,0)
を関数演算部201で計算する。ただし、HEDDiは復号サーバ装置21−iを示すヘッダ情報(サーバ識別情報)、EKu′(m″+1)(V′m″+1,j)を空の値とする。さらにセンタ23に対するメッセージをMSGjとし、ヘッダ情報(サーバ識別情報)と鍵情報(鍵識別情報)を含んだ多重暗号文
Vi,j=HEDDu(i+1)||Fk(Ku(i+1),j)||EKu(i+1),j(Vi+1,j)(i=m′,m′−1,・・・,0)
を関数演算部201で計算する(S3)。ただし、u(m′+1)=m′+1,Vm′+1=MSGj||V′0,jとする。最終的にV0,jにユーザ19−jの署名を付与した組(V0,j,SUj(V0,j))(SUj(x)でユーザ19−jによるxを入力とした署名関数の出力値とする)をHEDDu(1)で記されているとおり、復号サーバ装置21−u(1)に送信する(S4)。
【0021】
続いて復号サーバ装置21の処理について述べる。復号サーバ管理者22−u(i)の操作する復号サーバ装置21−u(i)の処理手順の例を図9に、復号サーバ装置21−u(i)の機能構成例を図10にそれぞれ示す。
まず復号サーバ装置21−u(1)はユーザ装置20−jから署名付き多重暗号文の組(V0,j,SUj(V0,j))を受信すると(S1)、これに対して関数演算部211でその署名が正しいか検証する(S2)。もし正しくなければその時点で処理を中断するなど、あらかじめ決められた規則に従う。その検証が正しい場合、ユーザ装置20−jに、検証にパスしたことを証明する文書を署名付きで返信し(S3)、V0,jに含まれているFk(Ku(1),j)から自身の記憶部212に書きこまれた情報(Ku(1),j,Fk(Ku(1),j))を読み込み、鍵Ku(1),jを取り出す(S4)。
【0022】
そしてV0,jに含まれているEKu(1),j(V1,j)を関数演算部211で鍵Ku(1),jにより復号し,V1,j=HEDDu(2)||Fk(Ku(2),j)||EKu(2),j(V2,j)を得る(S5)。最終的にV1,jに復号サーバ装置21−u(1)の管理者22−u(1)の署名を関数演算部211で付与し、その復号結果と署名の組(V1,j,SMu(1)(V1,j))(SMu(i)(x)で管理者22−iによるxを入力とした署名関数の出力値とする)を、HEDDu(2)で記されているとおり、復号サーバ装置21−u(2)に送信する(S6)。
【0023】
なお、この操作はユーザ19−jの匿名性を確保するために、複数ユーザのデータを置換処理部213で置換処理を施した上でまとめて送信する必要がある。このときまとめられたユーザ数が多ければ多いほど一般により高い匿名性を確保できる。また、Fk+1(Ku(1),j)を関数演算部211で計算し、記憶部212に書きこまれたFk(Ku(1),j)をFk+1(Ku(1),j)に書き換える(S7)。つまり共通鍵Ku(1),jに対する鍵識別情報を更新する。
【0024】
なおFk(Ki,j)は復号サーバ装置21−iのための鍵情報であり、これにより復号サーバ装置21−iだけが、どのユーザの多重暗号文かを知ることなくもちいる共通鍵を識別できる。もしFk(Ki,j)がそれをみた他者に対して何らかの情報を与えていれば、そこから匿名性が失われる危険性がある。しかしこの方法は一方向性関数を用いることで匿名性の確保と匿名の情報に対する共通鍵の識別を両立させている。
以下同様の操作を復号サーバ装置21−u(2)から21−u(m′)まで行う。
【0025】
次にセンタ23の操作する復号サーバ装置24の処理について述べる。復号サーバ装置24の処理手順の例を図11に示し、復号サーバ装置24の機能構成例を図12に示す。
まず復号サーバ装置24は復号サーバ装置21−u(m′)から署名付き暗号文の組(Vm′,j,SMu(m′)(Vm′,j))を受信すると(S1)、これに対して関数演算部241でその署名が正しいか検証する(S2)。もし正しくなければその時点で処理を中断するなど、あらかじめ決められた規則に従う。その検証が正しい場合、復号サーバ装置21−u(m′)に、パスしたことを証明する文書を署名付きで返信(S3)、Vm′,jに含まれているFk(Ku(m′+1),j)から自身の記憶部242に書きこまれた情報(Ku(m′+1),j,Fk(Ku(m′+1),j))を読みこみ、鍵Ku(M′+1),jを取り出す(S4)。そしてVm′,jに含まれているEKu(m′+1),j(MSGj||V′0,j)を鍵Ku(m′+1),jで関数演算部241において復号し、MSGjおよびV′0,jを得る(S5)。
【0026】
次にユーザ19−jの要求内容が記されているMSGjの要求に応えたデータMSGj′を作成し(S6)、V′0,jとMSGj′を自身の鍵Ku(m′+1),jで関数演算部241において暗号化を施して
EKu(m′+1),j(MSGj′)を求め(S7)、これとV′0,jとの連結V″0,j=V′0,j||EKu(m′+1),j(MSGj′)
を計算し(S8)、それに対する署名を関数演算部241で求め、この署名の組(V″0,j,SMu(m′+1)(V″0,j))をV′0,jに含まれるHEDDu′(1)に示されたとおり、復号サーバ装置21−u′(1)に送信する(S9)。
【0027】
なお、この操作はユーザ19−jの匿名性を確保するために、複数ユーザへ返信するデータを置換処理を置換処理部243で施した上でまとめて送信する必要がある。また、Fk+1(Ku(m′+1),j)を関数演算部241で計算し、記憶部242に書きこまれたFk(Ku(m′+1),j)をFk+1(Ku(m′+1),j)に書き換える(S10)。
続いて復号サーバ装置21の処理について述べる。この場合の復号サーバ装置21の処理手順の例を図13に、その機能構成における入出力を図14にそれぞれ示す。
【0028】
まず復号サーバ装置21−u′(1)は復号サーバ装置24から受信した署名付き多重暗号文の組(V″0,j,SMu(m′+1)(V″0,j))を受信すると(S1)、これに対してその署名が正しいか関数演算部211で検証する(S2)。もし正しくなければその時点で処理を中断するなど、あらかじめ決められた規則に従う。検証が正しい場合、復号サーバ装置24に、パスしたことを証明する文書を署名付きで返信し(S3)、V″の中のV′0、jに含まれているFk(Ku′(1),j)から自身の記憶部212に書きこまれた情報(Ku′(1),j,Fk(Ku′(1),j))を読みこみ、鍵Ku′(1),jを取り出す(S4)。そしてV″0,jの中のV′0,jにふくまれているEKu′(1)(V′1,j)を関数演算部211においてKu′(1),jで復号し(S5)、V′,1,j=HEDDu′(2)||Fk(Ku′(2),j)||EKu′(2),j(V′2,j)
を得るとともに、EKu(m′+1),j(MSGj′)に対し鍵Ku′(1),jで関数演算部211において多重暗号文
EKu′(1),j(EKu(m′+1),j(MSGj′))
を計算する。更にこれらの連結V″1,j=V′1,j||EKu′(1),j(EKu(m′+1),j(MSGj′))を作成する(S6)。最終的にV″1,jに復号サーバ装置21−u′(1)の管理者22−u′(1)の署名を関数演算部211で付与し、V″1,jとこの署名の組(V″1,j,SMu′(1)(V″1,j))をHEDDu′(2)で記されているとおり、復号サーバ装置21−u′(2)に送信する(S7)。
【0029】
なお、この操作はユーザ19−jの匿名性を確保するために、複数ユーザへ返信するデータを置換処理部213で置換処理を施した上でまとめて送信する必要がある。また、Fk+1(Ku′(1),j)を関数演算部211で計算し、記憶部212に書きこまれたFk(Ku′(1),j)をFk+1(Ku′(1),j)に書き換える(S8)。
以下同様の操作を復号サーバ装置21−u′(2)から復号サーバ装置21−u(m″)まで行う。図15及び図16に示すように、ユーザ装置20−jは最終的に(V″m″,j,SMu(m″)(V″m″,j))を受信すると(S1)、その署名検証を関数演算部201で行い、その署名が正しければ(S2)、復号サーバ装置21−u(m″)に正しかったことを、そのユーザ19−jの署名を付けて返信する(S3)。記憶部202から共通鍵Ku′(m″),j,・・・,Ku′(1),j,Ku(m′+1),jを読み出し(S4)、これらの鍵を順番に用いて、関数演算部201で多重暗号文EKu′(m″),j(・・・(EKu′(1),j(EKu(m′+1),j(MSGj′)))・・・)を復号してMSGj″を得る(S4)。この際に鍵Ku′(m″),j,・・・,Ku′(1),j,Ku(m′+1),jはユーザ装置20−j自身も共有しており、復号する順序もユーザ19−j自身が定めたものであり、明らかであるため、MSGj′を得ることができる。復号されたメッセージMSGj′がユーザ装置20−jが送信したメッセージMSGjと対応したものであるかを調べ、対応していれば、そのMSGj′を受領する(S5)。
【0030】
なお、図8に示したユーザ装置と図16に示したユーザ装置とは同一であり、図10に示した復号サーバ装置と図14に示した復号サーバ装置とは同一であるが、データの入出力を明らかにするため説明の便宜上、分けて示した。
以上の操作により全復号サーバ装置21の置換が知られない限り、つまり各復号サーバ装置21−iを管理する復号サーバ管理者22−i全員が結託しない限り、センタ23はMSGjがどのユーザのものであるかの判別もつかなければ、MSGj′がどのユーザに行くのかの判別もつかない。またセンタ23が複数あるとすれば、復号サーバ管理者22のうち、誰もどのユーザがどのセンタに要求をだしたか対応付けることができない。これにより秘匿性の高い匿名通信が可能となる。ただし各復号サーバ装置21−iの入出力のリストが複数のユーザ19−jにより構成されている必要がある。
【0031】
またもしユーザ19−jに自身の要求に対するメッセージMSGj′が届かない場合、各復号サーバ装置21−u(i)(i=1,2,・・・,m′+1)および21−u′(i′)(i′=1,2,・・・,m″)に、自身がパスしたことを証明する署名付き文書を提出させる。この署名付き文書を受信しなかった場合は即座に責任者に報告するなどして対処することにより、どの復号サーバ装置が不正を行ったか特定でき、さらにユーザ19−jと復号サーバ管理者22−i双方の間で不正が報告され、かつお互いが正当だと主張した場合、例えばお互いの秘密乱数を公開することで、第3者が双方の処理を再度行い、その計算結果を電子的公開掲示板18に公開された情報と照らし合わせることと必要な部分の署名付き文書を提出させてその署名を検証することで、どちらが不正を行ったか特定できる。
【0032】
この第2の実施形態によれば多重暗号文中の各暗号文に対応する平文には次に復号を行う復号サーバ装置に対する識別情報が含まれていることにより、ユーザは利用するサーバ及び経路を自由に選択することができる。また復号サーバ装置はその際どのユーザ装置の暗号文なのかを知ることなく、どの共通鍵を用いれば良いかを鍵識別情報Fk(Ki,j)により知ることができる。
第2の実施形態に示すように、復号サーバ装置21−iの順にユーザが任意に選ぶことができるから、この明細書においてユーザ装置20−jが多重暗号文を最初に送信する復号サーバ装置は必ずしも装置21−1に限らず、装置21−1〜21−m中の任意のものとすることができる。
【0033】
なおセンタ23よりのMSGj′には様々な形態を含めることが可能であり、例えば画像データ、それ自体が金銭的価値を持つようなデータなどが挙げられる。第2の実施形態では、ユーザ装置20−jにおける多重暗号化の際に、順次復号すべき復号サーバ装置のサーバ識別情報(ヘッダ情報)HEDDを付けたが、匿名通信路を構成する復号サーバ装置の順番が予め決っている場合はサーバ識別情報(ヘッダ情報)を省略できる。またセンタ23がデータMSGjに対する応答を必要としない場合はユーザ装置20−jにおいてV′0,jの生成を省略すればよい。
【0034】
課題を解決するための手段の項で説明したことから明らかなように、第1の実施形態においても、サーバ識別情報(第2の実施形態におけるヘッダ情報)を用いることにより、匿名通信路の経路をユーザ自身で選択できるようにすることができる。同様に第1の実施形態においても、課題を解決するための手段の項で説明したように、双方向通信を行わせることもできる。この双方向通信は、ユーザ19−jからセンタ23への送信情報に対し、センタ23から応答をユーザ19−jに行う場合に限らず、センタ23の復号サーバ装置24からユーザ19−jのユーザ装置20−jへ情報を送信し、ユーザ19−jのユーザ装置20−jからその情報に対する応答をセンタの復号サーバ装置24へ送信する場合にも適用できる。この場合に匿名通信路に用いる復号サーバ装置の順を任意に選ぶ場合は、センタ23が復号サーバ装置24で、ユーザ装置20−jで図7のステップS3によりV′i,jとVi′,jを計算したように、これと対応するものを生成して、最初の復号サーバ装置よりユーザ装置20−jへ向けて送信すればよい。
【0035】
第2の実施形態においても、第1の実施形態と同様に、ユーザ装置−復号サーバ装置間、2つの復号サーバ装置間の組情報送信を公開掲示板装置と電子的公開掲示板を介して行ってもよい。鍵識別情報としてはFk(Ki,j)に限らない、何れの鍵識別情報を用いても、複数回の通信を行う場合は、その個々の通信の間に対応関係が付かないように鍵の使用ごとに鍵情報の更新を行う。
第1の実施形態、第2の実施形態におけるユーザ装置及び復号サーバ装置間の各関数演算部は図17に示すように機能構成として、べき乗演算部、関数L演算部、共通鍵暗号演算部、一方向性関数F演算部、関数H演算部、署名生成/検証演算部を含むものである。
【0036】
図3、図8及び図16に示した各ユーザ装置をコンピュータによりプログラムを実行させて機能させることもできる。この場合は、図2又は図7のみ又は図7及び図15に示した処理手順をコンピュータに実行させるための匿名通信のユーザ装置プログラムをCD−ROM、可撓性磁気ディスクなどの記録媒体からユーザ装置のコンピュータにインストールし、又は通信回線を介してダウンロードしてそのプログラムを実行させればよい。
同様に図5、又は図10、図12、図13及び図14に示した各復号サーバ装置を、コンピュータにより、匿名通信の復号サーバ装置プログラムを実行させて機能させることもできる。
【0037】
【発明の効果】
第1の効果は、復号サーバ装置の1つがシステムダウンしたり、不正を働いたことにより排除する場合にユーザ装置が共通鍵を作るための鍵情報を作り直す必要がない。その理由は各復号サーバ装置がそれぞれ独立に、ユーザ装置が鍵を作るための鍵情報を生成し、この鍵情報を用いてユーザ装置は共通鍵を作ることができるからである。
第2の効果は、多重暗号化の際に各暗号文にそれを復号するためのサーバ識別情報を付加する場合は、ユーザは自由に匿名通信経路を選択できることにある。
【0038】
その理由は、本発明では復号サーバ装置は事前処理を他復号サーバ装置と協力することなく行うことができるためである。またユーザが自由に匿名通信路を選択できることは同時に匿名性の信頼度は多少落ちてもできるだけ早くレスポンス(応答)を必要とする場合や、匿名性を最重要視する場合などをユーザ自身が選択できる。
第3の効果は、ネットワーク上で情報閲覧やコンテンツサービスなどの双方向の通信を匿名で行うことができることにある。
【0039】
その理由は、本発明ではユーザ装置から復号サーバ装置への経路ではユーザ装置が多重暗号を施すのに加え、復号サーバ装置からユーザ装置への経路ではユーザ装置が多重暗号文を一括して復号しているためである。
【図面の簡単な説明】
【図1】第1の実施形態が適用されるシステム構成例を示す図。
【図2】第1の実施形態におけるユーザ装置の処理手順の例を示す流れ図。
【図3】第1の実施形態におけるユーザ装置の機能構成例を示す図。
【図4】第1の実施形態における復号サーバ装置の処理手順の例を示す流れ図。
【図5】第1の実施形態における復号サーバ装置の機能構成例を示す図。
【図6】第2の実施形態が適用されるシステム構成例を示す図。
【図7】第2の実施形態におけるユーザ装置の処理手順の例を示す流れ図。
【図8】第2の実施形態におけるユーザ装置の機能構成例を示す図。
【図9】第2の実施形態における復号サーバ装置21の処理手順の例を示す流れ図。
【図10】第2の実施形態における復号サーバ装置21の機能構成例を示す図。
【図11】第2の実施形態における復号サーバ装置24の処理手順の例を示す流れ図。
【図12】第2の実施形態における復号サーバ装置24の機能構成例を示す図。
【図13】第2の実施形態における復号サーバ装置21の応答通信に対する処理手順の例を示す流れ図。
【図14】第2の実施形態における復号サーバ装置21の応答通信における入出力状態を示す図。
【図15】第2の実施形態におけるユーザ装置の応答通信に対する処理手順の例を示す図。
【図16】第2の実施形態におけるユーザ装置の応答通信における入出力状態を示す図。
【図17】第1,第2の実施形態におけるユーザ装置及び復号サーバ装置内の関数演算部の機能構成例を示す図。
Claims (23)
- 掲示板装置と、複数のユーザ装置と、複数の復号サーバ装置と、それらをつなぐネットワークとを備え、
掲示板装置は受信した情報を即座に電子的公開掲示板に公開し、
復号サーバ装置が、それぞれ乱数を生成し、その乱数から各ユーザ装置が当該復号サーバ装置との共通鍵を作るための鍵情報を独立に生成して、当該鍵情報を掲示板装置にネットワークを介して送信するステップと、
ユーザ装置が、それぞれ乱数を生成し、その乱数から最初の復号サーバ装置がユーザ装置との共通鍵を作るための鍵情報を生成するとともに、自身の生成した上記乱数と上記公開された復号サーバ装置のそれぞれの鍵情報とから複数の各復号サーバ装置との各共通鍵を生成し、自身の平文をそれらの共通鍵で多重に暗号化し、自身の生成した鍵情報と多重暗号の組の複数を最初の復号サーバ装置にネットワークを介して送信するステップと、
復号サーバ装置が、取得した各組中の鍵情報と自身の生成した上記乱数とから、各ユーザ装置との共通鍵と次の復号サーバに送る鍵情報とを生成し、これら各共通鍵により複数の多重暗号文を復号し、その各復号文と上記生成した次の復号サーバ装置に送る各鍵情報の組の複数よりなるリストを置換して次の復号サーバ装置にネットワークを介して送信するステップと、
を実行し、
復号サーバ装置への入力である複数のユーザ装置の暗号文およびそれに付随する情報のリストと、復号サーバ装置の出力である次の複数の復号サーバ装置への情報のリストとの対応関係を隠蔽する、
ことを特徴とする匿名通信方法。 - 掲示板装置と、複数のユーザ装置j(j=1、・・・、n)と、複数の復号サーバ装置i(i=1、・・・、m)と、それらをつなぐネットワークとを備え、
掲示板装置は受信した情報を即座に電子的公開掲示板に公開し、
qがp−1の約数の関係にある素数p,q、位数がqとなる(Z/pZ) * ( 1以上p未満でかつpと互いに素な整数の集合 ) の元gが公開されてあり、
復号サーバ装置iは、自ら生成した1以上q未満の秘密の乱数Aiを用いて、ユーザ装置が当該復号サーバ装置との共通鍵を作るための鍵情報Wi=g Ai を独立に生成して、掲示板装置にネットワークを介して送信し、
ユーザ装置jは、独立に生成した1以上q未満の秘密の乱数Rjを用いて、各復号サーバ装置iがユーザ装置jとの共通鍵を作るための鍵情報G0,j=g Rj を生成するとともに、Lを上記(Z/pZ) * からZ/qZ(0以上q未満の整数の集合)へ写す関数とし、L0,j=1としてLi,j=L(Gi,j)×Li−1,jを各サーバ装置につき計算し、Hを上記(Z/pZ) * から共通鍵空間へ写す関数とし、各サーバ装置iについてGi,j=Wi RjLi-1,j を計算し、そのサーバ装置iとの共通鍵Ki,j=H(Gi,j)を生成し、自身の平文MSGjをそれらの共通鍵で多重に暗号化して多重暗号文V0,j=E K1,j (・・・(E Km,j (MSGj))・・・)(Eは共通鍵暗号の暗号化アルゴリズム、添字のKi,jはEに用いる暗号鍵)を計算し、自身の生成した鍵情報G0,jと多重暗号V0,jの組C0,j=(G0,j、V0,j)を最初の復号サーバ装置にネットワークを介して送信し、
復号サーバ装置iは、公開情報のリストBi−1= { Ci−1,1、Ci−1,2、・・・、Ci−1,n } を取得し、Ci−1,jの各組中の鍵情報Gi−1,jと上記乱数AiよりTi,j=Gi−1,j Ai を計算し、鍵情報Gi,j=Gi−1,j L(Ti,j) を計算し、共通鍵Ki,j=H(Ti,j)を生成し、これら各共通鍵により複数の多重暗号文を復号し、その各復号文Vi,j=E Ki+1,j (・・・(E Km,j (MSGj))・・・)と生成した鍵情報Gi,jの組Ci,j=(Gi,j、Vi,j)の複数よりなるリストを置換して次の復号サーバ装置にネットワークを介して送信して、
復号サーバ装置への入力である複数のユーザ装置の暗号文およびそれに付随する情報のリストと、復号サーバ装置の出力である次の複数の復号サーバ装置への情報のリストとの対応関係を隠蔽する、
ことを特徴とする匿名通信方法。 - 請求項1又は2記載の方法において、
ユーザ装置は各復号サーバ装置との共通鍵による平文の多重暗号化の際に、暗号文にそれを復号する復号サーバ装置を示す情報をつけて暗号化することを順次行って多重暗号文を生成することを特徴とする匿名通信方法。 - 請求項1乃至3記載の方法において、
ユーザ装置および復号サーバ装置の間で共通鍵を共有し、各々の装置はそれを自身の記憶部に識別情報をつけて格納し、
その後の通信において
各ユーザ装置は上記多重暗号化の際に、その各暗号化ごとにその暗号文の共通鍵の識別情報を付け、
各復号サーバ装置は受信した暗号文に付けられた識別情報を用いて記憶部から共通鍵を取出し、その共通鍵でその暗号文を復号し、その復号結果を次の復号サーバ装置へ送信すると共に、その装置の記憶部内のその復号に用いた共通鍵の識別情報を、複数回の通信を行う場合にその個々の通信の間に対応関係が付かないように更新する
ことを特徴とする匿名通信方法。 - 請求項1又は2記載の方法において、
ユーザ装置からの多重暗号文を次々に復号して匿名の平文とした、複数の復号サーバ装置は、その匿名のユーザ装置に対して情報を送信するために、復号に用いた共通鍵を用いて上記復号した匿名の平文を次々に暗号化を施して多重の暗号文とし、
ユーザ装置はその多重暗号文を復号することで平文を得る、
ことを特徴とする匿名通信方法。 - 請求項1乃至5のいずれかに記載の方法において、
ユーザ装置は多重暗号文を電子的公開掲示板上に公開し、
復号サーバ装置がそれを取得して復号し、その結果を電子的公開掲示板上に公開することを繰返し、
ユーザ装置は電子的公開掲示板に掲示された各復号サーバ装置の出力値を取得し、その取得した出力値が、自身の平文に対応したデータが正しく出力されているかどうか検証する、
ことを特徴とする匿名通信方法。 - 請求項1ないし5のいずれかに記載の方法において、
ユーザ装置による多重暗号文、あるいは復号サーバ装置の出力情報を、ユーザ装置−復号サーバ装置間あるいは復号サーバ装置−復号サーバ装置間で署名を付与して送受信し、ユーザ装置は各復号サーバ装置の署名検証結果を提出させて不正した復号サーバ装置を検出することを特徴とする匿名通信方法。 - 乱数生成部が、乱数Rjを生成する乱数生成ステップと、
関数演算部が、上記乱数Rjより最初の復号サーバ装置がユーザ装置との共通鍵を作るための鍵情報を生成する鍵情報生成ステップと、
関数演算部が、匿名通信路を構成する複数の復号サーバ装置iの各公開情報Wiと乱数Rjとを用いて、各復号サーバ装置iとの共通鍵Ki,jを生成する共通鍵生成ステップと、
関数演算部が、これら共通鍵Ki,jを順次用いて平文MSGjを、暗号演算部で暗号化して多重暗号文を生成する多重暗号文生成ステップと、
関数演算部が、その多重暗号文と上記生成した鍵情報の組を最初の復号ユーザ装置へ送信する送信ステップと、
を実行することを特徴とする匿名通信のユーザ装置処理方法。 - 請求項8記載の方法であって、
qがp−1の約数の関係がある素数p,q、位数がqとなる(Z/pZ)* ( 1以上p未満でかつpと互いに素な整数の集合 )の元gが公開されてあり、
サーバ装置iの1以上q未満の秘密の乱数をAiとすると、上記公開情報WiはgAiであり、
上記乱数Rjは1以上q未満の数であり、
上記各サーバ装置がユーザ装置との共通鍵を作るための鍵情報はG0,j=gRjであり、
上記共通鍵生成ステップは、
Lを上記(Z/pZ)*からZ/qZ(0以上q未満の整数の集合)へ写す関数とし、L0,j=1として、Li,j=L(Gi,j)×Li−1,jを各サーバ装置i=1、・・・、mにつき計算し、
Hを上記(Z/pZ)*から共通鍵空間へ写す関数とし、各サーバ装置iについてGi,j=WiRjLi-1,jを計算し、そのサーバ装置iとの共通鍵Ki,j=H(Gi,j)を計算する、
ことを特徴とする匿名通信のユーザ装置処理方法。 - 関数演算部が、
ユーザ装置又は前の復号サーバ装置が生成した鍵情報と暗号文の組の複数よりなるリストを公開掲示板から取得するリスト取得ステップと、
記憶部から秘密の乱数Aiを取り出す乱数取り出しステップと、
そのリスト中の各組について、その鍵情報と乱数Aiを用いて次の復号サーバ装置に送る鍵情報と共通鍵を生成する鍵情報・共通鍵生成ステップと、
上記共通鍵によりその組の暗号文を復号する復号ステップと、
上記生成した次の復号サーバ装置に送る鍵情報と復号した暗号文の各組を作成する組情報作成ステップと、
を実行し、
置換処理部が、
上記各組情報をランダムに置換したリストを生成して次の復号サーバ装置へ送信するステップを実行する
ことを特徴とする匿名通信の復号サーバ装置処理方法。 - 請求項10記載の方法において、
qがp−1の約数の関係にある素数p,q、位数がqとなる(Z/pZ)* ( 1以上p未満でかつpと互いに素な整数の集合 )の元gが公開されてあり、
乱数Rjを1以上q未満とし、
G0,j=gRjとし、
Lを上記(Z/pZ)*からZ/qZ(0以上q未満の整数の集合)へ写す関数とし、
Hを上記(Z/pZ)*から共通鍵空間へ写す関数とし、
上記鍵情報・共通鍵生成ステップは、
取得した鍵情報Gi−1,jと上記乱数AiよりTi,j=Gi−1,jAiをj=1,・・・,nについて演算し、
鍵情報Gi,jをGi−1,jL(Ti,j)の演算により求め、
共通鍵Ki,jをH(Ti,j)の演算により求める
ことを特徴とする匿名通信の復号サーバ装置処理方法。 - 関数演算部が、
記憶部より復号サーバ装置i(i=1,2,・・・,m)との共通鍵Kiをi=mから順に取り出すステップと、
共通鍵Kiによる暗号文EKi()を復号する復号サーバ装置iの識別情報HEDDiをEKiにつけて共通鍵Ki−1により暗号化して、平文MSGに対する多重暗号文EK1(HEDD2||EK2(HEDD3||EK3(・・・(EKm(MSG))・・・)))を生成するステップと、
その多重暗号文を識別情報HEDD1の復号サーバ装置へ送信するステップと、
を実行することを特徴とする匿名通信のユーザ装置処理方法。 - 各復号サーバ装置i(i=1,2,・・・,m)との共通鍵Kiをその識別情報と共に記憶部に記憶しておき、
関数演算部が、
秘匿通信路を構成する各復号サーバ装置u(i)(uは1〜mの自然数の間へ写す関数)の共通鍵Ku(i)を記憶部よりu(i)=m´,m´−1,・・・,2,1の順に取出して、平文MSGを多重暗号化して暗号文EK1´(・・・(EKm´(MSG))・・・)を生成する暗号文生成ステップと、
その多重暗号文と、u(i)=1の復号サーバ装置との共通鍵の識別情報とをu(i)=1の復号サーバ装置へ送信する送信ステップと、
各復号サーバ装置u(i)の共通鍵Ku(i)の識別情報を更新する更新ステップと、
を実行することを特徴とする秘匿通信のユーザ装置処理方法。 - 請求項13記載の方法において、
共通鍵Kiの識別情報として、Kiに一方向性関数Fを施した値
Fk(Ki)=F(Ki||Fk−1(Ki))
(F0(Ki)は空の値)(kは鍵の使用回数に対応した値)を用い、
上記更新ステップは、その鍵Kiを使用するごとにその識別情報に一方向性関数Fを施してkを+1したFk+1(Ki)=F(Ki || Fk(Ki))に識別情報を更新することを特徴とする匿名通信のユーザ装置処理方法。 - 乱数生成部が、乱数Aiを生成する乱数生成ステップと、
記憶部が、上記Aiを記憶部に記憶する乱数記憶ステップと、
関数演算部が、
Aiを用いてユーザ装置が当該復号サーバ装置との共通鍵を作るための鍵情報Wiを生成して公開する鍵情報公開ステップと、
ユーザ装置又は前の復号サーバ装置が生成した鍵情報及び暗号文の組の複数よりなるリストを受信する受信ステップと、
受信した各組について、その鍵情報とAiを用いて次の復号サーバ装置に送る鍵情報と共通鍵を生成する鍵情報・共通鍵生成ステップと、
その共通鍵を用いてその組の暗号文を復号する復号ステップと、
その復号した結果を暗号文とし、これと生成した次の復号サーバ装置に送る鍵情報の組を作る組情報作成ステップと、
を実行し、
置換処理部が、
これら作った組の順序をランダムに置換して次の復号サーバ装置へ送信する置換ステップを実行する、
ことを特徴とする匿名通信の復号サーバ装置処理方法。 - 請求項15記載の方法において、
qがp−1の約数の関係になる素数p、q、位数がqとなる(Z/pZ)* ( 1以上p未満でかつpと互いに素な整数の集合 )の元gが公開されてあり、
Lを上記(Z/pZ)*からZ/qZ(0以上q未満の整数の集合)へ写す関数とし、
Hを上記(Z/pZ)*から共通鍵空間へ写す関数とし、
乱数Aiを1以上q未満として、鍵情報WiをgAiとし、
上記鍵情報・共通鍵生成ステップは、
受信鍵情報Gi−1,jに対し、Ti,j=Gi−1,jAiを演算し、
鍵情報Gi,jをGi−1,jL(Ti,j)の演算により生成し、
共通鍵Ki,jをH(Ti,j)の演算により生成する
ことを特徴とする匿名通信の復号サーバ装置処理方法。 - 請求項15又は16記載の方法において、
上記復号した結果から復号サーバ装置識別情報を取出し、
上記置換ステップは、同一識別情報について作った組をランダムに置換して、その識別情報の復号サーバ装置へ送信することを特徴とする匿名通信の復号サーバ装置処理方法。 - n個のユーザ装置j(j=1,2,・・・,n)との共通鍵Ki,jをその鍵識別情報と共に記憶部に記憶しておき、
関数演算部が、
受信した鍵識別情報及び暗号文の組から鍵識別情報を取り出すステップと、
その鍵識別情報と対応する共通鍵を記憶部から取り出すステップと、
その共通鍵で暗号文を復号する復号ステップと、
その復号結果の鍵識別情報及び暗号文よりなる組を作成する組情報作成ステップと、
を実行し、
置換処理部が、
他の組と順序をランダムに置換して次の復号サーバ装置へ送信するステップを実行し、
関数演算部が、
記憶部内における、上記復号に用いた共通鍵の鍵識別情報を更新する更新ステップを実行する
ことを特徴とする匿名通信の復号サーバ装置処理方法。 - 請求項18記載の方法において、
上記鍵識別情報として、その共通鍵Ki,jに一方向性関数Fを施した値
Fk(Ki)=F(Ki||Fk−1(Ki))
(F0(Ki)は空の値)(kは鍵の使用回数に対応した値)を用い、
上記更新ステップは、鍵識別情報の更新を、現鍵識別情報値Fk(Ki)=F(Ki||Fk−1(Ki))に対し一方向性関数Fを施してkを+1したFk+1(Ki)=F(Ki||Fk(Ki))とすることを特徴とする匿名通信の復号サーバ装置処理方法。 - 請求項18又は19記載の方法において、
上記復号結果からサーバ識別情報を取出し、
そのサーバ識別情報の復号サーバ装置を上記次の復号サーバ装置とすることを特徴とする匿名通信の復号サーバ装置処理方法。 - 請求項8、9、12、13、14の何れかに記載のユーザ装置処理方法をコンピュータに実行させるための匿名通信のユーザ装置プログラム。
- 請求項10、11、15、16、17、18、19、20の何れかに記載の復号サーバ装置処理方法をコンピュータに実行させるための匿名通信の復号サーバ装置プログラム。
- 請求項21又は22記載のプログラムを記憶したコンピュータ読み出し可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001333310A JP4098510B2 (ja) | 2001-10-30 | 2001-10-30 | 匿名通信方法、その装置処理方法、そのプログラムおよびその記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001333310A JP4098510B2 (ja) | 2001-10-30 | 2001-10-30 | 匿名通信方法、その装置処理方法、そのプログラムおよびその記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003143129A JP2003143129A (ja) | 2003-05-16 |
JP4098510B2 true JP4098510B2 (ja) | 2008-06-11 |
Family
ID=19148601
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001333310A Expired - Fee Related JP4098510B2 (ja) | 2001-10-30 | 2001-10-30 | 匿名通信方法、その装置処理方法、そのプログラムおよびその記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4098510B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4758814B2 (ja) * | 2006-04-27 | 2011-08-31 | 日本電信電話株式会社 | 匿名暗号文通信システム、鍵生成装置、通信装置、それらの方法、プログラム及び記録媒体 |
JP5458026B2 (ja) * | 2010-01-15 | 2014-04-02 | 日本電信電話株式会社 | 暗号化システム、暗号化装置、復号装置、暗号化方法、プログラム |
-
2001
- 2001-10-30 JP JP2001333310A patent/JP4098510B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003143129A (ja) | 2003-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Shacham et al. | Compact proofs of retrievability | |
JP3560860B2 (ja) | 秘密分散システム、装置及び記憶媒体 | |
US6202150B1 (en) | Auto-escrowable and auto-certifiable cryptosystems | |
US6389136B1 (en) | Auto-Recoverable and Auto-certifiable cryptosystems with RSA or factoring based keys | |
US20180337775A1 (en) | Cryptographic key-generation with application to data deduplication | |
JP6363032B2 (ja) | 鍵付替え方向制御システムおよび鍵付替え方向制御方法 | |
US20120278609A1 (en) | Joint encryption of data | |
CN113014392A (zh) | 基于区块链的数字证书管理方法及系统、设备、存储介质 | |
JP4869824B2 (ja) | 受信者装置及び送信者装置及び暗号通信システム及びプログラム | |
WO2006126668A1 (ja) | 擬似ランダム関数計算装置及び方法、並びに回数制限匿名認証システム及び方法 | |
CN109818752A (zh) | 信用评分生成方法、装置、计算机设备和存储介质 | |
CN116830523A (zh) | 阈值密钥交换 | |
JP2021072593A (ja) | 暗号処理システム及び暗号処理方法 | |
US11271743B2 (en) | Plaintext equivalence proof techniques in communication systems | |
Delgado-Segura et al. | Bitcoin private key locked transactions | |
JP4758110B2 (ja) | 通信システム、暗号化装置、鍵生成装置、鍵生成方法、復元装置、通信方法、暗号化方法、暗号復元方法 | |
CN116346336B (zh) | 一种基于多层密钥生成中心的密钥分发方法及相关系统 | |
JP2012256008A (ja) | 評価対象情報自己評価システム、評価対象情報自己評価方法、装置、プログラム | |
JP3513324B2 (ja) | ディジタル署名処理方法 | |
AU8656498A (en) | Auto-recoverable auto-certifiable cryptosystems | |
JP4098510B2 (ja) | 匿名通信方法、その装置処理方法、そのプログラムおよびその記録媒体 | |
JP4146252B2 (ja) | 不正者特定可能な匿名通信方法、それに使用される利用者装置、及び中継サーバ装置 | |
JP2004013606A (ja) | 電子投票方法及びシステム及び投票者装置及び管理者装置及び集計者装置及び電子投票プログラム及び電子投票プログラムを格納した記憶媒体 | |
JPH0946329A (ja) | 通信装置及び通信システム | |
Couteau et al. | Secure distributed computation on private inputs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040716 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20060531 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061205 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070205 |
|
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: 20080304 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080313 |
|
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: 20110321 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110321 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120321 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130321 Year of fee payment: 5 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |