JP4074226B2 - ゼロ知識対話証明プロトコル管理装置、ゼロ知識対話証明プロトコル管理方法及びプログラム - Google Patents

ゼロ知識対話証明プロトコル管理装置、ゼロ知識対話証明プロトコル管理方法及びプログラム Download PDF

Info

Publication number
JP4074226B2
JP4074226B2 JP2003188987A JP2003188987A JP4074226B2 JP 4074226 B2 JP4074226 B2 JP 4074226B2 JP 2003188987 A JP2003188987 A JP 2003188987A JP 2003188987 A JP2003188987 A JP 2003188987A JP 4074226 B2 JP4074226 B2 JP 4074226B2
Authority
JP
Japan
Prior art keywords
zero
parallelism
knowledge
protocol
proof protocol
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
JP2003188987A
Other languages
English (en)
Other versions
JP2005026928A (ja
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2003188987A priority Critical patent/JP4074226B2/ja
Publication of JP2005026928A publication Critical patent/JP2005026928A/ja
Application granted granted Critical
Publication of JP4074226B2 publication Critical patent/JP4074226B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、ゼロ知識対話証明プロトコルを管理するゼロ知識対話証明プロトコル管理装置、ゼロ知識対話証明プロトコル管理方法及びプログラムに関する。
【0002】
【従来の技術】
秘密情報wを知っていることを、秘密情報wを明かすことなく証明するプロトコルとして、ゼロ知識対話証明(Zero-Knowledge Interactive Proof)プロトコルが知られている(非特許文献1参照)。
【0003】
ゼロ知識対話証明プロトコルは、完全性(証明者Pが正しい証明を行う場合には、検証者Vは圧倒的な確率でその証明を受理する)、健全性(証明者Pが誤った証明を行う場合には、検証者Vは無視できる確率でしかその証明を受理しない)、ゼロ知識性(証明者Pとのメッセージのやり取りの後に検証者Vが効率的に計算できることはすべて、メッセージのやり取りがなくても検証者Vは効率的に計算できる(証明の正しさ以外の情報は一切検証者Vに漏れない))の3つの性質を満たすプロトコルとして定式化されている。
【0004】
ゼロ知識対話証明では、証明者Pと検証者Vとの間で一定のやり取り(対話)を行って秘密情報wを知っていることについての証明・検査を行うラウンドを、複数ラウンド繰り返し行う。すなわち、ゼロ知識対話証明では、1回のラウンドについてみると、証明者Pが秘密情報wを知らなくても検査を合格させる試み(なりすまし)が、ある確率をもって成功するので、十分証明されたとみなされるに足りる回数以上の数のラウンドを実施するようになっている。
【0005】
ところで、証明者Pが同一の秘密情報wについて、ゼロ知識対話証明プロトコルを複数並行にで実行する場合(例えば1つのクライアント装置が同一の秘密情報について複数のサーバ装置との間で同時にゼロ知識対話証明プロトコルを実行する場合)、単独での実行を前提とするラウンド数だけでは、ゼロ知識性が破れる(すなわち、秘密情報が漏れる)ことがあることが知られている。なお、(同一の秘密情報についての)複数プロトコルの並行実行は並行合成とも呼ばれる。
【0006】
並行合成の場合には、通常、単一実行の場合に比べて、必要なラウンド数が増加する。例えば、ある種のゼロ知識対話証明プロトコルでは、証明者PがN個のゼロ知識対話証明プロトコルを並行合成する場合に、ゼロ知識性を保つにためは、各ゼロ知識対話証明プロトコルにおけるラウンド数をΩ(log N)以上にする必要があることが示されている(非特許文献2参照)。また、例えば、Richardson-Kilianプロトコルは、N個の並行合成の場合に、O(Nε)ラウンドならば、ゼロ知識性を保つことが示されている(非特許文献3参照)。他方、例えば、Richardson-Kilianプロトコルでは、N個の並行合成の場合に、O(g(N)・log2 N)ラウンドならば、ゼロ知識性を保つことが示されている(非特許文献4参照)。ここで、g(・)は、任意の非定数関数である。
【0007】
【非特許文献1】
S. Goldwasser, S. Micali, and C. Rackoff, The knowledge complexity of interactive proof systems, SIAM J, Comput., Vol.18, No.1, pp.186-208, 1988
【0008】
【非特許文献2】
R. Canetti, J. Kilian, E. Petrank, and A. Rosen, Black-box concurrent zero-knowledge requires Ω(log n) round, In STOC´01, pp.570-579, 1988
【0009】
【非特許文献3】
R. Richardson and J. Kilian, On the Concurrent Composition of Zero-Knowledge Proofs, In EUROCRYPT´99, pp.415-431, 1999
【0010】
【非特許文献4】
J. Kilian and E. Petrank. Concurrent and Resettable Zero-Knowledge in Poly-logarithmic Rounds. In STOC´01, pp.560-569, 2001
【0011】
【発明が解決しようとする課題】
ゼロ知識対話証明プロトコルは、単独実行で安全が確保されるラウンド数と同じラウンド数では、(同一の秘密情報について行う)並列実行が安全とは限らなくなってくる。N個のプロトコルを並行実行する場合には、ゼロ知識性の破れを回避するために、並行度Nに応じてラウンド数を増やすことが必要になるが、従来は、予め多めのラウンド数を設定しておいて並列実行するしかなかったので、プロトコルが効率的でなく、また、設定ラウンド数が不十分であった場合には秘密情報が漏れてしまう危険性があった。
【0012】
本発明は、上記事情を考慮してなされたもので、並行に複数実行することがあるゼロ知識対話証明プロトコルに対して、安全性と効率性の両立を図ることのできるゼロ知識対話証明プロトコル管理装置、ゼロ知識対話証明プロトコル管理方法及びプログラムを提供することを目的とする。
【0013】
【課題を解決するための手段】
本発明は、証明者装置の持つ秘密情報について該証明者装置と1又は複数の検証者装置との間で複数並行して行われるゼロ知識対話証明プロトコルを管理するゼロ知識対話証明プロトコル管理装置であって、並行実行可能とするゼロ知識対話証明プロトコルの数の上限値を記憶する上限値記憶手段と、現在実行中の前記ゼロ知識対話証明プロトコルの数を示す並行度を記憶する並行度記憶手段と、前記証明者装置から、前記ゼロ知識対話証明プロトコルの開始を要求する開始要求メッセージを受信する手段と、前記開始要求メッセージを受信した場合に、前記上限値記憶手段に記憶された上限値及び前記並行度記憶手段に記憶された並行度に基づき、前記証明者装置に対して前記開始を許可するか不許可とするかを判断する判断手段とを備えたことを特徴とする。
【0014】
また、本発明は、証明者装置の持つ秘密情報について該証明者装置と1又は複数の検証者装置との間で複数並行して行われるゼロ知識対話証明プロトコルを管理するゼロ知識対話証明プロトコル管理装置であって、現在実行中の前記ゼロ知識対話証明プロトコルの数を示す並行度を記憶する並行度記憶手段と、現在実行中の前記ゼロ知識対話証明プロトコルごとに、当該ゼロ知識対話証明プロトコルで実施すべきラウンド数を記憶するラウンド数記憶手段と、前記証明者装置から、前記ゼロ知識対話証明プロトコルの開始を要求する開始要求メッセージを受信する手段と、前記開始要求メッセージを受信した場合に、前記並行度記憶手段に記憶された並行度及び前記ラウンド数記憶手段に記憶されたラウンド数に基づき、前記証明者装置に対して前記開始を許可するか不許可とするかを判断する判断手段とを備えたことを特徴とする。
【0015】
また、本発明は、証明者装置の持つ秘密情報について該証明者装置と1又は複数の検証者装置との間で複数並行して行われるゼロ知識対話証明プロトコルを管理するゼロ知識対話証明プロトコル管理装置であって、現在実行中の前記ゼロ知識対話証明プロトコルの数を示す並行度を記憶する並行度記憶手段と、前記証明者装置から、前記ゼロ知識対話証明プロトコルの開始を示す情報を取得する取得手段と、前記ゼロ知識対話証明プロトコルの開始を示す情報を取得した場合に、前記並行度記憶手段に記憶された並行度を1増加させるとともに、1増加させた後の並行度に基づいて、受信した前記ゼロ知識対話証明プロトコルの開始を示す情報に係るゼロ知識対話証明プロトコルで実施すべきラウンド数を求める手段と、求められた前記ラウンド数を示す情報を通知するメッセージを、前記証明者装置へ送信する手段とを備えたことを特徴とする。
【0016】
なお、装置に係る本発明は方法に係る発明としても成立し、方法に係る本発明は装置に係る発明としても成立する。
また、装置または方法に係る本発明は、コンピュータに当該発明に相当する手順を実行させるための(あるいはコンピュータを当該発明に相当する手段として機能させるための、あるいはコンピュータに当該発明に相当する機能を実現させるための)プログラムとしても成立し、該プログラムを記録したコンピュータ読取り可能な記録媒体としても成立する。
【0017】
本発明によれば、並行に複数実行することがあるゼロ知識対話証明プロトコルに対して、安全性と効率性の両立を図ることができるようになる。
【0018】
【発明の実施の形態】
まず、本発明の一実施形態に係る通信システムについて説明するのに先立って、本通信システムにおける証明側装置と検証側装置との間で実行されるゼロ知識対話証明について説明する。
【0019】
まず、1台の証明側装置P(例えば、インターネット上のクライアント計算機)と1台の検証側装置V(例えば、インターネット上のサーバ計算機)についてみたときに、検証側装置Vは、「証明側装置Pがある秘密情報w(例えば、パスワード)を知っていること」を検証したいとし、証明側装置Pは、検証側装置Vに自分の秘密情報wを明かすことなく、「自分が秘密情報wを知っていること」を検証側装置Vに証明したいとする。
【0020】
これを実現するプロトコルが、完全性、健全性、ゼロ知識性の3つの性質を満たすゼロ知識対話証明(Zero-Knowledge Interactive Proof)プロトコルである(非特許文献1参照)。
【0021】
既に説明したように、ゼロ知識対話証明では、十分証明されたとみなされるに足りる一定数のラウンドを実施するようになっているが、ゼロ知識対話証明プロトコルの並行合成の場合(例えば、1台の証明側装置Pが、同一の秘密情報wについて、複数台の検証側装置Vとの間で同時にゼロ知識対話証明プロトコルを実行する場合)に、単独実行を想定したラウンド数では、ゼロ知識性が破れる(すなわち、秘密情報が漏れる)ことがあることが知られている。
【0022】
そこで、並行ゼロ知識のための必要条件が問題になってくる。
【0023】
例えば、ある種のゼロ知識対Richardson-Kilianプロトコル話証明プロトコルでは、証明者PがN個のゼロ知識対話証明プロトコルを並行合成する場合に、ゼロ知識性を保つにためは、各ゼロ知識対話証明プロトコルにおけるラウンド数をΩ(log N)以上にする必要があることが示されている(非特許文献2参照)。
【0024】
また、次に示すRichardson-Kilianプロトコルは、N個の並行合成の場合に、O(Nε)ラウンドならば、ゼロ知識性を保つことが示されている(非特許文献3参照)。ここで、証明者Pは、検証者Vを相手方として、秘密情報Tを知っていることを証明しようとしているとする。このとき、次のように変換されたゼロ知識証明プロトコルを考える。
・このプロトコルは、秘密情報Tを知っていることを証明する代わりに、情報T´を知っていることを証明する。ここで、T´=T∨Wであり、かつ、Wが成立する確率が非常に小さいと仮定すれば、情報T´を知っていることを証明することは、秘密情報Tを知っていることを証明することとみなすことができる。
この考え方は、証拠識別不可能プロトコルをゼロ知識証明プロトコルに変換するために提案された(U. Feige, D. Lapidot, and A. Shamir, Multiple non-interactive, zero-knowledge proofs based on a single random string, In FOCS´90, pp.308-317, 1990参照)。
【0025】
証明者Pと検証者Vは、それぞれ、ランダムにm個の数p1,p2,…,pmとv1,v2,…,vm∈{0,1}qを選び、コミットする。その後で、証明者Pは、「Tが真であること、または、あるiに対してpi=viであることの少なくとも一方は真であること」を証明する(すなわち、証明者Pは、Tに対する証拠を知っていること、または、piを開示をしてREVEALが現れたとき、検証者Vがpi=viを受理するという対(i,REVEAL)に対する証拠のいずれかを知っているという統計的ゼロ知識証明を与える)。ただし、証明者Pは、いずれの証拠を知っているかは開示しない。
(手順1)V→P:Commit to v1,v2,…,vm
(手順2)P→V:Commit to p1
(手順3)V→P:Reveal v1
(手順4)P→V:Commit to p2

(手順2i+1)V→P:Reveal vi
(手順2i+2)P→V:Commit to pi+1

(手順2m+1)V→P:Reveal vm
(手順2m+2)P←→V:Zero-Knowledge Proof that (∃i vi = pi)∨(T is true)
ここで、非特許文献3では、以下の定理が証明された。
証明者Pから検証者Vへのコミットメントは、計算量的隠蔽性かつ完全結合性とし、検証者Pから証明者Vへのコミットメントは、完全隠蔽性かつ計算量的結合性とする。T∈NPを証明する証明系(あるいは、アーギュメント)に対して、上記のようなプロトコル変換を行う。εを任意の整数、m=kεとする。このとき、変換されたプロトコルは秘密情報Tに対するゼロ知識証明のままである。さらに、この証明の高々k (1)個のバージョンを使った、いかなる並行攻撃に対しても多項式時間ブラックボックスシミュレーションが存在する。このシミュレーションは、計算量的識別不可能性を実現する。
【0026】
さらに、非特許文献4では、上記の十分条件は改善され、Raichardson-Kilianプロトコルは、O(g(N)・log2 N)ラウンドでゼロ知識性を保つことが示された。ここで、g(・)は、任意の非定数関数である。
【0027】
このように、N個のプロトコルを並行実行する場合には、ゼロ知識性の破れを回避するために、並行度Nに応じてラウンド数を増やすことが必要になるが、前述した通り、従来は、予め多めのラウンド数を設定しておいて並列実行するしかなかったので、プロトコルが効率的でなく、また、設定ラウンド数が不十分であった場合には秘密情報が漏れてしまう危険性があった。
【0028】
そこで、本実施形態では、並行に複数実行することがあるゼロ知識対話証明プロトコルに対して、安全性と効率性の両立を図ることができるようにする。
【0029】
以下、本実施形態について詳しく説明する。
【0030】
図1に、本発明の一実施形態に係る通信システムの構成例を示す。
【0031】
図1に示されるように、本通信システムは、ゼロ知識対話証明(Zero-Knowledge Interactive Proof)プロトコルにおける証明者側となる通信装置(以下、証明者装置)1、ゼロ知識対話証明プロトコルにおける検証者側となる通信装置(以下、検証者装置)3、ゼロ知識対話証明プロトコルに関する管理を行う管理装置5を含む。各装置は、ネットワーク8を介して通信可能とする。ネットワーク8は、有線であってもよいし、無線であってもよいし、広域ネットワークであってもよいし、LANであってもよい。
【0032】
なお、以下では、ゼロ知識対話証明プロトコルをZKIPプロトコルと呼ぶ。
【0033】
本通信システムにおいて、管理装置5が1つのみ存在し、当該唯一の管理装置5が全証明者装置1及び検証者装置3を管理対象とするようにしてもよいし、複数存在して、各管理装置5が一部の証明者装置1及び検証者装置3を管理対象とするようにしてもよい。
【0034】
また、本通信システムにおいて、証明者装置1は、複数存在してもよい(複数存在することを想定している)。また、検証者装置3は、単独であってもよいし、複数存在してもよい。一つの検証者装置が複数のプロトコルを並行して実行する場合もある。なお、通信装置には、証明者装置1のみになるものと、検証者装置3のみになるものの他に、証明者装置1と検証者装置3のいずれにもなれるものが存在して構わない。
【0035】
本通信システムにおいては、同一の秘密情報についてZKIPプロトコルが並行合成される場合を管理対象(管理の単位)とする。例えば、図2(a)に示すように、同時に6通りの証明者装置と検証者装置とのZKIPプロトコルが実行される場合であっても、管理装置5は、(1)証明者装置P1と検証者装置V1及び検証者装置V2との間で「証明者装置P1が秘密情報w1を知っていること」を証明・検証するためにZKIPプロトコルが並行合成される部分と、(2)証明者装置P1と検証者装置V1及び検証者装置V3との間で「証明者装置P1が秘密情報w2を知っていること」を証明・検証するためにZKIPプロトコルが並行合成される部分と、(3)証明者装置P2と検証者装置V1及び検証者装置V2との間で「証明者装置P2が秘密情報w3を知っていること」を証明・検証するためにZKIPプロトコルが並行合成される部分とを、別々に管理することになる。例えば、図2(a)に示された範囲内では、秘密情報w1に関しては、図2(b)に示すように、証明者装置P1と検証者装置V1及び検証者装置V2を管理対象とすることになる。
【0036】
以下では、図3に示すように、証明者装置P1と検証者装置V1〜Vn(nは1以上の整数)との間で「証明者装置P1が秘密情報w1を知っていること」を証明・検証するためにZKIPプロトコルが並行合成されるにあたって、管理装置Mがこれを管理する場合を例にとって説明する。ただし、証明者装置P1と検証者装置V1〜Vnとの間のZKIPプロトコルは必ずしも同時に開始され同時に終了されるわけではなく、後から開始されるものや先に終了するものなどが存在し得る。また、並行度nはその時々によって変わり得るものであり、nが幾つになるかはその時々で変動するものである。
【0037】
なお、証明者装置P1と1台の検証者装置V1との間で、秘密情報w1についてのZKIPプロトコルが並行合成されることもある(例えば、検証者装置V1上で動作する複数のZKIPプロトコル以外の処理が、同時に秘密情報w1についてのZKIPプロトコルを呼び出すこともある)。したがって、例えば、ZKIPプロトコルがn並行合成される場合に、証明者装置P1とn台の異なる検証者装置V1〜Vnとの間でZKIPプロトコルが行われていることがあるのはもちろんであるが、証明者装置P1とn台未満のm台の異なる検証者装置V1〜Vmとの間でZKIPプロトコルが行われていることもある。
【0038】
図3に示すように、証明者装置1と検証者装置3との間ではそれぞれZKIPプロトコルのメッセージの授受が行われる。どのようなメッセージが授受されるかは、当該ZKIPプロトコルに応じて定まる。
【0039】
また、証明者装置1及び又は検証者装置3は、ZKIPプロトコルの開始に先立って又は開始した後に若しくは開始と同時に、管理装置5へ開始要求メッセージを送信する。なお、証明者装置1のみが開始要求メッセージを出す形態、検証者装置3のみが開始要求メッセージを出す形態、証明者装置1と検証者装置3の両方が開始要求メッセージを出す形態などがある。また、証明者装置1と検証者装置3の両方が開始要求メッセージを出す形態の場合に、管理装置5は、いずれか一方から開始要求メッセージを受信すれば、(有効に)開始要求メッセージを受信したものとみなす形態、両方から開始要求メッセージを受信してはじめて、(有効に)開始要求メッセージを受信したものとみなす形態などがある。
【0040】
なお、開始要求メッセージについては、管理装置5へ開始の許可を求める形態(以下、開始許可タイプと呼ぶ)、管理装置5へ開始の旨を通知する形態(以下、開始通知タイプと呼ぶ)などがある。また、開始許可タイプでは、開始を許可する旨の許可通知メッセージや開始を不許可とする旨の不許可通知メッセージが管理装置5から証明者装置1及び又は検証者装置3へ送信される。
【0041】
他方、管理装置5から証明者装置1及び又は検証者装置3へは、実施すべきラウンド数(以下、指定ラウンド数)を通知する。なお、管理装置5から証明者装置1のみに指定ラウンド数を通知する場合には、証明者装置1から検証者装置3へ指定ラウンド数を通知し、管理装置5から検証者装置3のみに指定ラウンド数を通知する場合には、検証者装置3から証明者装置1へ指定ラウンド数を通知する。
【0042】
指定ラウンド数は、静的に設定される構成と、動的に設定される構成とがある。
【0043】
なお、指定ラウンド数が静的に設定されるケースでは、管理装置5に設定ラウンド数を保持し、これを管理装置5から証明者装置1や検証者装置3へ通知するのではなく、証明者装置1及び又は検証者装置3が指定ラウンド数を保持する形態も可能である。なお、証明者装置1と検証者装置3の一方のみが指定ラウンド数を保持している場合には、証明者装置1と検証者装置3の一方から他方へ指定ラウンド数を通知すればよい。
【0044】
また、指定ラウンド数が動的に設定されるケースでは、管理装置5が動的に設定ラウンド数を求め、これを管理装置5から証明者装置1や検証者装置3へ通知するのではなく、管理装置5から証明者装置1や検証者装置3へは指定ラウンド数をもとめるもととなる情報を通知し、この情報をもとに証明者装置1及び又は検証者装置3が指定ラウンド数を動的に求める形態も可能である。なお、証明者装置1と検証者装置3の一方のみが指定ラウンド数を動的に求める場合には、証明者装置1と検証者装置3の一方から他方へ指定ラウンド数を通知すればよい。
【0045】
なお、開始許可タイプで、開始を許可する場合に、管理装置5が、開始を許可する旨の許可通知メッセージを送信した後に、ラウンド数通知メッセージを送信する形態、許可通知メッセージに指定ラウンド数を記述して通知する形態などがある。
【0046】
また、証明者装置1及び又は検証者装置3は、ZKIPプロトコルの終了にあたって管理装置5へ終了通知メッセージを送信する。終了通知メッセージについても上記と同様のバリエーションがある。なお、終了通知メッセージについては、管理装置5へ終了の旨を通知する形態のみとする。
【0047】
なお、管理装置5は、これら開始要求メッセージ及び終了通知メッセージにより、証明者装置1と(1又は複数の)検証者装置3との間で(同一の秘密情報について)並行して行われるZKIPプロトコルの個数(並行度)を把握する。
【0048】
また、詳しくは後述するように、管理装置5から証明者装置1及び又は検証者装置3へ、実行中のZKIPプロトコルを中断する旨を指示する中断指示メッセージを送信する形態(実行中のZKIPプロトコルを中断した場合、最初からZKIPプロトコルをやり直すことになるものとする)や、実行中のZKIPプロトコルを一旦停止する旨を指示する停止指示メッセージ(実行中のZKIPプロトコルを停止した場合、停止したところから再開できるものとする)、停止中のZKIPプロトコルを再開する旨を指示する再開指示メッセージなどが送信される形態などもある。
【0049】
各種メッセージの授受については、上記の他にも種々のバリエーションが可能である。
【0050】
なお、以下では、説明を簡潔にするために、証明者装置1のみが、ZKIPプロトコルの開始に先立って、開始要求メッセージを管理装置5へ送信し、ZKIPプロトコルが終了した後に、終了通知メッセージを管理装置5へ送信し、許可通知メッセージは、管理装置5から証明者装置1のみへ送信され、実施すべきラウンド数(指定ラウンド数)は、管理装置5から証明者装置1のみへ通知される場合を例にとって説明するが、もちろん、適宜修正することによって他の形態も同様に実施可能である。
【0051】
以下、いくつかの実施形態について順次説明していく。
【0052】
(第1の実施形態)
図4に、管理装置5の構成例を示す。
【0053】
図4に示されるように、本管理装置5は、ネットワークを介して他の通信装置と通信するためのインタフェースである通信部51、受信したメッセージを解釈する受信メッセージ解釈部52、実行中のZKIPプロトコルの並行度を管理する並行度管理部53、実施すべきラウンド数(指定ラウンド数)を管理するラウンド数管理部54、ZKIPプロトコルの実行を管理するZKIPプロトコル実行管理部55、各部の動作を制御する制御部56を備えている。
【0054】
本実施形態では、証明者装置1と(1又は複数の)検証者装置3との間で(同一の秘密情報について)並行して行われるZKIPプロトコルの個数(並行度)Cの上限値Cmaxを予め定め(上限値Cmaxは例えばシステム管理者等が決定する)、この上限値Cmaxに基づいて予め指定ラウンド数rを定めておくものである(すなわち、指定ラウンド数rは、Cmax個並行合成されたZKIPプロトコルの実行によってもゼロ知識性が破れないために必要なラウンド数以上であるように設定される)。なお、C個並行合成されたZKIPプロトコルの実行によってもゼロ知識性が破れないために必要なラウンド数は、プロトコルに応じて定まるものである(例えば非特許文献2,10等参照)。例えば、Richardson-Kilianプロトコルにつき、rを所定の正定数として、指定ラウンド数R=rlog2Cmaxで求めてもよい(非特許文献4参照)。一般には、用いているZKIPプロトコルに応じて、安全性が証明されているラウンド数を指定する。
【0055】
そして、本実施形態では、開始許可タイプを採用し、並行度Cが上限値Cmaxに達した場合には、それ以降(実行中のZKIPプロトコルのいずれかに係る終了通知を受信して並行度Cが上限値Cmaxを下回るようになるまでは)、開始要求を不許可とするものである。これによって、秘密情報の安全を確保できるようになる。
【0056】
なお、ZKIPプロトコル実行管理部55が、各管理単位となるZKIPプロトコル群ごとに、現在実行中のZKIPプロトコル(開始許可を与えたZKIPプロトコル)を識別する情報を保持するようにしてもよい。
【0057】
図5に、証明者装置1の構成例を示す。
【0058】
図5に示されるように、本証明者装置1は、ネットワークを介して他の通信装置と通信するためのインタフェースである通信部11、ZKIPプロトコル以外のプロコトルやその他の処理を行う第1の処理部12、ZKIPプロトコルを行う第2の処理部13、通知された指定ラウンド数r及び実行中の各ZKIPプロトコルにおける現在のラウンド数を管理するラウンド数管理部14を備えている。
【0059】
第1の処理部12は、所定の処理の実行中にZKIPプロトコルが必要になると、第2の処理部13を呼び出して、ZKIPプロトコルを実行させる。
【0060】
第1の処理部12に呼び出された第2の処理部13は、第1の処理部12から秘密情報と検証者装置3となる通信装置との指定を受け、管理装置5への開始要求メッセージを送信し、管理装置5からの許可通知メッセージ又は不許可通知メッセージを受信し(指定ラウンド数は許可通知メッセージ内に記述されるものとする)、許可通知メッセージを受けた場合には、通知された指定ラウンド数による該検証者装置3との間での該秘密情報についてのZKIPプロトコルの実行を行い、証明に成功したか否かを示す情報を第1の処理部32へ通知するとともに、終了通知メッセージを管理装置5へ送信する。図6に、この様子を示す。
【0061】
一方、不許可通知メッセージを受けた場合には、ZKIPプロトコルを開始せずに(ZKIPプロトコルを先に開始してしまう形態の場合には、不許可通知メッセージを受けた旨を検証者装置3へ通知し、当該ZKIPプロトコルを取り止め)、第2の処理部13へエラー通知を行う。なお、不許可通知メッセージを受けた場合に、一定時間経過後にあらためて開始要求を試みることを、許可が得られるまで予め定められた回数だけ行い、それでも許可が得られないときに、エラー通知を行うようにしてもよい)。
【0062】
ところで、管理装置5は、ある証明者装置1と(1又は複数の)検証者装置3との間で同一の秘密情報について並行して行われるZKIPプロトコル群を管理単位とするので、受信した開始要求メッセージに係るZKIPプロトコルがいずれのZKIPプロトコル群に属するものであるかを区別できる必要がある。そこで、例えば、開始要求メッセージには、当該開始要求メッセージ係るZKIPプロトコル群を区別可能な情報(あるいは、当該開始要求メッセージ係るZKIPプロトコルにおいて証明対象とされる秘密情報を区別可能で且つ該秘密情報を特定不能な情報)が付加されており、管理装置1(のZKIPプロトコル実行管理部55)が、この情報に依って、当該開始要求メッセージに係るZKIPプロトコルの属するZKIPプロトコル群を特定するものとする。
【0063】
図7に、検証者装置3の構成例を示す。
【0064】
図7に示されるように、本検証者装置3は、ネットワークを介して他の通信装置と通信するためのインタフェースである通信部31、ZKIPプロトコル以外のプロコトルやその他の処理を行う第1の処理部32、ZKIPプロトコルを行う第2の処理部33、通知された指定ラウンド数r及び実行中の各ZKIPプロトコルにおける現在のラウンド数を管理するラウンド数管理部34を備えている。
【0065】
第1の処理部32は、所定の処理の実行中にZKIPプロトコルが必要になると、第2の処理部33を呼び出して、ZKIPプロトコルを実行させる。
【0066】
なお、例えば、証明者装置1がインターネット上のクライアント計算機であり、検証者装置3がインターネット上のサーバ計算機であり、証明者装置1の第1の処理部12がWebブラウザソフトを実行し、検証者装置3の第1の処理部32がWebサーバソフトを実行し、Webブラウザ側が秘密情報であるパスワードW1を知っていることをWebブラウザ側とWebサーバ側との間で証明・検証するために、WebブラウザとWebサーバの呼び出しによって、証明者装置1の第2の処理部13と検証者装置3の第2の処理部32とがZKIPプロトコルを実行する場合など該当する。
【0067】
第1の処理部32に呼び出された第2の処理部33は、第1の処理部32から証明者装置1となる通信装置とその秘密情報の検証に必要なデータの指定を受け、該証明者装置1を介して通知された指定ラウンド数による該検証者装置3との間での該秘密情報についてのZKIPプロトコルの実行を行い、証明に成功したか否かを示す情報を第1の処理部32へ通知する。図8に、この様子を示す。
【0068】
なお、管理装置5から開始許可を得る前にZKIPプロトコルを先に開始してしまう形態の場合で、証明者装置1から不許可通知メッセージを受けた旨の通知を受けた場合には、そのZKIPプロトコルを取り止め、第2の処理部33へエラー通知を行う。
【0069】
図9に、本実施形態の場合の管理装置5の処理手順例を示す。
【0070】
まず、並行度管理部53で管理されるZKIPプロトコルの並行度Cを0に設定する(ステップS21)。
【0071】
開始要求メッセージ又は終了通知メッセージが到着するのを待ち、通信部51を介して(本例では証明者装置1から)受信したメッセージを受信メッセージ解釈部52により解析した結果、開始要求メッセージであったならば(ステップS22)、ZKIPプロトコル実行管理部55により、開始を許可するか否か判断する。本実施形態では、並行度Cが予め定められた上限値Cmaxに達していないならば、許可すると判断し、並行度Cが予め定められた上限値Cmaxに達しているならば、不許可と判断する。
【0072】
許可すると判断されたならば(ステップS23)、並行度Cを1だけインクリメントし(ステップS24)、許可する旨及びラウンド数管理部54に予め設定されている指定ラウンド数を含む許可通知メッセージを通信部51を介して(本例では証明者装置1へ)返送する(ステップS25)。
【0073】
一方、許可しないと判断されたならば(ステップS23)、許可しない旨の不許可通知メッセージを通信部51を介して(本例では証明者装置1へ)返送する(ステップS26)。
【0074】
また、受信したメッセージが終了通知メッセージであったならば(ステップS22)、並行度Cを1だけデクリメントする(ステップS27)。
【0075】
例えば、簡単のためにCmax=3とした場合に、図10に示すように(図10においては、矢印の起点から終点までの間が、当該ZKIPプロトコルの実行中であるとする)、ZKIPプロトコル(p1)の開始要求は許可され、次いで、ZKIPプロトコル(p1)の実行中のZKIPプロトコル(p2)の開始は許可され、次いで、ZKIPプロトコル(p1)及び(p2)の実行中のZKIPプロトコル(p3)の開始は許可されるが、ZKIPプロトコル(p1)〜(p3)の実行中はZKIPプロトコル(p4)の開始は不許可とされる。そして、ZKIPプロトコル(p1)が終了してはじめてZKIPプロトコル(p4)の開始が許可される。
【0076】
本実施形態によれば、並行に複数実行することがあるゼロ知識対話証明プロトコルに対して、安全性と効率性の両立を図ることができるようになる。
【0077】
(第2の実施形態)
第1の実施形態では、並行度Cが上限値Cmaxに達している場合には、その後に受信した開始要求を不許可とすることによって、新たなZKIPプロトコルを開始させないようにするものであったが、第2の実施形態は、並行度Cが上限値Cmaxに達している場合には、実行中のCmax個のZKIPプロトコルと、新たなZKIPプロトコルのうちで、最も優先度の低いものを選択し、最も優先度の低いものが実行中のZKIPプロトコルであれば、それを中断させて、該新たなZKIPプロトコルを開始させ、最も優先度の低いものが該新たなZKIPプロトコルであれば、その開始要求を不許可とするものである。
【0078】
ここでは、第1の実施形態と相違する点を中心に説明する。
【0079】
図11に、本実施形態の場合の管理装置5の処理手順例を示す。
【0080】
まず、並行度管理部53で管理されるZKIPプロトコルの並行度Cを0に設定する(ステップS31)。
【0081】
開始要求メッセージ又は終了通知メッセージが到着するのを待ち、通信部51を介して(本例では証明者装置1から)受信したメッセージを受信メッセージ解釈部52により解析した結果、開始要求メッセージであったならば(ステップS32)、ZKIPプロトコル実行管理部55により、許可と中断の判断を行う。
【0082】
すなわち、本実施形態では、並行度Cが予め定められた上限値Cmaxに達していないならば、許可すると判断する。この場合、ステップS33でYes、S34でNoとなり、並行度Cを1だけインクリメントし(ステップS36)、許可する旨及び指定ラウンド数を含む許可通知メッセージを通信部51を介して(本例では当該証明者装置1へ)返送する(ステップS37)。
【0083】
他方、並行度Cが予め定められた上限値Cmaxに達しているならば、実行中のCmax個のZKIPプロトコルと、新たなZKIPプロトコルのうちで、最も優先度の低いものを選択する。この選択基準については、各ZKIPプロトコルに(証明者装置1若しくは検証者装置3又は管理装置5が)優先度を付与し、この優先度に基づいて判断する方法など、種々のものが考えられる。
【0084】
そして、最も優先度の低いものが実行中のZKIPプロトコルである場合には、ステップS33でYes、S34でYesとなり、最も優先度の低い実行中のZKIPプロトコルを中断させるための処理を行い(例えば証明者装置1へ当該実行中のZKIPプロトコルを中断する旨を指示する中断指示メッセージを送信するとともに、並行度Cを1だけデクリメントする)(ステップS35)、その後、並行度Cを1だけインクリメントし(ステップS36)、許可する旨及び指定ラウンド数を含む許可通知メッセージを返送する(ステップS37)。
【0085】
なお、(本具体例では証明者装置1が)中断指示メッセージを受信した場合、中断を指示されたZKIPプロトコルを中断させる処理を行う。この中断されたZKIPプロトコルについては、中断するまでに行われた処理は無効となるので、必要に応じてあらためてZKIPプロトコルの開始要求からやり直せばよい。なお、ZKIPプロトコルを中断した場合、第2の処理部13,33は、直ちに第1の処理部12,32にエラー通知を行うようにしてもよいし、一定時間経過後にあらためて開始要求を試みることを、許可が得られるまで予め定められた回数だけ行い、それでも許可が得られないときに、エラー通知を行うようにしてもよい。
【0086】
また、最も優先度の低いものが該新たなZKIPプロトコルであれば、ステップS33でNoとなり、許可しない旨の不許可通知メッセージを返送する(ステップS38)。
【0087】
また、受信したメッセージが終了通知メッセージであったならば(ステップS39)、並行度Cを1だけデクリメントする(ステップS39)。
【0088】
例えば、簡単のためにCmax=3とした場合に、図12に示すように、ZKIPプロトコル(p1)の開始要求は許可され、次いで、ZKIPプロトコル(p1)の実行中のZKIPプロトコル(p2)の開始は許可され、次いで、ZKIPプロトコル(p1)及び(p2)の実行中のZKIPプロトコル(p3)の開始は許可される。そして、ZKIPプロトコル(p1)〜(p3)の実行中に、ZKIPプロトコル(p4)に係る開始要求があった場合に、例えば、ZKIPプロトコル(p3)の優先度が最も低ければ、ZKIPプロトコル(p3)が中断された後、ZKIPプロトコル(p4)の開始が許可される。そして、ZKIPプロトコル(p1)が終了した後に、あらためてZKIPプロトコル(p3)に係る開始要求があれば、開始が許可される。
【0089】
なお、並行度Cが予め定められた上限値Cmaxを下回った際に、中断させたZKIPプロトコルで未だZKIPプロトコルを開始していないものがあれば、これに開始可能である旨あるいは開始を指示する旨のメッセージを通知して、開始要求を促すようにしてもよい。
【0090】
(第3の実施形態)
第1の実施形態では、並行度Cが上限値Cmaxに達している場合には、その後に受信した開始要求を不許可とすることによって、新たなZKIPプロトコルを開始させないようにするものであったが、第3の実施形態は、並行度Cが上限値Cmaxに達している場合には、実行中のCmax個のZKIPプロトコルと、新たなZKIPプロトコルのうちで、最も優先度の低いものを選択し、最も優先度の低いものが実行中のZKIPプロトコルであれば、それを一旦停止させて、該新たなZKIPプロトコルを開始させ、最も優先度の低いものが該新たなZKIPプロトコルであれば、その開始要求を不許可とするものである。また、並行度Cが上限値Cmaxを下回った際には、当該一旦停止させたZKIPプロトコルを再開させるものである。
【0091】
ここでは、第1の実施形態と相違する点を中心に説明する。
【0092】
図13に、本実施形態の場合の管理装置5の処理手順例を示す。
【0093】
まず、ZKIPプロトコルの並行度Cを0に設定する(ステップS41)。
【0094】
開始要求メッセージ又は終了通知メッセージが到着するのを待ち、受信したメッセージが開始要求メッセージであったならば(ステップS42)、許可と中断の判断を行う。
【0095】
すなわち、本実施形態では、並行度Cが予め定められた上限値Cmaxに達していないならば、許可すると判断する。この場合、ステップS43でYes、S44でNoとなり、並行度Cを1だけインクリメントし(ステップS46)、許可する旨及び指定ラウンド数を含む許可通知メッセージを返送する(ステップS37)。
【0096】
他方、並行度Cが予め定められた上限値Cmaxに達しているならば、実行中のCmax個のZKIPプロトコルと、新たなZKIPプロトコルのうちで、最も優先度の低いものを選択する。
【0097】
そして、最も優先度の低いものが実行中のZKIPプロトコルである場合には、ステップS43でYes、S44でYesとなり、最も優先度の低い実行中のZKIPプロトコルを一旦停止させるための処理を行い(例えば証明者装置1へ当該実行中のZKIPプロトコルを一旦停止する旨を指示する停止指示メッセージを送信するとともに、並行度Cを1だけデクリメントする)(ステップS45)、その後、並行度Cを1だけインクリメントし(ステップS46)、許可する旨及び指定ラウンド数を含む許可通知メッセージを返送する(ステップS47)。
【0098】
なお、(本具体例では証明者装置1が)停止指示メッセージを受信した場合、中断を指示されたZKIPプロトコルを停止させる処理を行う。この停止されたZKIPプロトコルについては、停止するまでに行われた処理は有効となり、再開指示メッセージを受信すれば、停止したところから続いてZKIPプロトコルを実行することができる。
【0099】
また、最も優先度の低いものが該新たなZKIPプロトコルであれば、ステップS43でNoとなり、許可しない旨の不許可通知メッセージを返送する(ステップS48)。
【0100】
また、受信したメッセージが終了通知メッセージであったならば(ステップS39)、並行度Cを1だけデクリメントし(ステップS49)、次いで、再開の判断を行う。
【0101】
すなわち、一旦停止中のZKIPプロトコルがなければ、再開処理は不要であるので、ステップS50でNoとなり、ステップS51の再開処理はスキップする。
【0102】
また、一旦停止中のZKIPプロトコルが1つあれば、当該ZKIPプロトコルを再開させると決定する。他方、一旦停止中のZKIPプロトコルが複数あれば、それらのうちから最も優先度の高いものを選択し、該選択したZKIPプロトコルを再開させると決定する。これらの場合、ステップS50でYesとなり、当該ZKIPプロトコルを再開させるための処理を行う(例えば証明者装置1へ当該実行中のZKIPプロトコルを再開する旨を指示する中断指示メッセージを送信するとともに、並行度Cを1だけデクリメントする)(ステップS51)。
【0103】
例えば、簡単のためにCmax=3とした場合に、図14に示すように、ZKIPプロトコル(p1)の開始要求は許可され、次いで、ZKIPプロトコル(p1)の実行中のZKIPプロトコル(p2)の開始は許可され、次いで、ZKIPプロトコル(p1)及び(p2)の実行中のZKIPプロトコル(p3)の開始は許可される。そして、ZKIPプロトコル(p1)〜(p3)の実行中に、ZKIPプロトコル(p4)に係る開始要求があった場合に、例えば、ZKIPプロトコル(p1)の優先度が最も低ければ、ZKIPプロトコル(p1)が停止された後、ZKIPプロトコル(p4)の開始が許可される。そして、ZKIPプロトコル(p1)が終了した後に、ZKIPプロトコル(p1)が再開される。
【0104】
(第4の実施形態(第1〜第3の実施形態の変形例))
第1〜第3の実施形態では、一旦設定した並行度の上限値Cmaxを不変としたが(従って、Cmaxに基づく指定ラウンド数rも不変としたが)、ZKIPプロトコルの実行中であっても、例えば、予め容易された知識情報や、統計情報等により、Cmaxを増加又は減少すべきと判断される場合には、新たなCmax´を設定し、Cmax´に基づいて新たな指定ラウンド数r´を設定し直し、その後に開始許可するZKIPプロトコルについては、新たな指定ラウンド数r´を通知するようにしてもよい。その際、実行中のZKIPプロトコルについては、例えば、第2の実施形態のような中断指示メッセージを出して中断させ、新たな指定ラウンド数r´で開始し直すことができるようにすればよい。
【0105】
また、第1〜第3の実施形態や上記の変形例では、管理装置5のラウンド数管理部54が指定ラウンド数を保持し、管理装置5は、開始要求メッセージに対して開始を許可すると判断した場合に、該指定ラウンド数を、許可を通知するメッセージに記述して又は他のメッセージにより、証明者装置1及び又は検証者装置3へ通知するものであったが、その代わりに、証明者装置1及び又は検証者装置3が指定ラウンド数を保持しており、管理装置5は、開始要求メッセージに対して開始を許可すると判断した場合に、該指定ラウンド数の通知は行わずに、許可を通知するメッセージを通知する構成も可能である。なお、証明者装置1と検証者装置3の一方のみが指定ラウンド数を保持している場合には、証明者装置1と検証者装置3の一方から他方へ指定ラウンド数を通知すればよい。また、管理装置5がラウンド数管理部54を備えない構成も可能である。
【0106】
(第5の実施形態)
さて、第1の実施形態〜第4の実施形態は、指定ラウンド数rを静的に設定するものであったが、第5の実施形態は、指定ラウンド数rを動的に設定する(指定ラウンド数が適応的に増減するような決定を行う)ようにしたものである。
【0107】
また、第1の実施形態〜第4の実施形態は、開始許可タイプを採用したものであったが、第5の実施形態は、開始通知タイプを採用するものである。
【0108】
ここでは、第1の実施形態と相違する点を中心に説明する。
【0109】
図15に、本実施形態の場合の管理装置5の処理手順例を示す。
【0110】
まず、並行度管理部53で管理されるZKIPプロトコルの並行度Cを0に設定する(ステップS51)。
【0111】
開始要求メッセージ又は終了通知メッセージが到着するのを待ち、通信部51を介して(本例では証明者装置1から)受信したメッセージを受信メッセージ解釈部52により解析した結果、開始要求メッセージであったならば(ステップS52)、まず、並行度Cを1だけインクリメントする(ステップS53)。
【0112】
次いで、指定ラウンド数を求める(ステップS54)。
【0113】
本実施形態では、ラウンド数管理部54は、ある管理単位となるZKIPプロトコル群につき新たにZKIPプロトコル(ここでp1と呼ぶ)が開始される場合に、該ZKIPプロトコル(p1)に通知すべき指定ラウンド数を、該ZKIPプロトコル(p1)が開始したと仮定したときの並行度Cに基づいて決定する(すなわち、指定ラウンド数rは、C個並行合成されたZKIPプロトコルの実行によってもゼロ知識性が破れないために必要なラウンド数以上であるように設定される)。なお、前述と同様に、C個並行合成されたZKIPプロトコルの実行によってもゼロ知識性が破れないために必要なラウンド数は、プロトコルに応じて定まるものである。例えば、Richardson-Kilianプロトコルにつき、rを所定の正定数として、指定ラウンド数R=rlog2Cで求めてもよい。
【0114】
なお、指定ラウンド数は、例えば、Cをパラメータとする予め規定された計算式によって求めてもよいし、Cを入力とする予め用意された変換テーブルによって求めるようにしてもよい。
【0115】
そして、求めた指定ラウンド数を含むラウンド数通知メッセージを通信部51を介して(本例では証明者装置1へ)返送する(ステップS55)。
【0116】
一方、受信したメッセージが終了通知メッセージであったならば(ステップS52)、並行度Cを1だけデクリメントする(ステップS56)。
【0117】
なお、ZKIPプロトコル実行管理部55が、各管理単位となるZKIPプロトコル群ごとに、現在実行中のZKIPプロトコル(開始許可を与えてから終了通知を受けるまでのZKIPプロトコル)を識別する情報と、そのZKIPプロトコルに通知した指定ラウンド数とを対応付けて保持するようにしてもよい。
【0118】
(第6の実施形態)
さて、第6の実施形態は、第5の実施形態の手順において、さらに、ある管理単位となるZKIPプロトコル群につき新たにZKIPプロトコル(p1)に係る開始要求メッセージを受信した場合に、該ZKIPプロトコル(p1)を開始すると、現在既に実行されている該ZKIPプロトコル群に属するZKIPプロトコルのうち最小の指定ラウンド数を持つものの安全性が保証されなくなるか否か(ゼロ知識性が破れるか保たれるか)を判断し、安全性が保証されなくなると判断される場合には、(その最小の指定ラウンド数を持つZKIPプロトコルが終了するまで、)ZKIPプロトコル(p1)の開始を不許可とするようにしたものである(従って、本実施形態は、開始許可タイプになる)。
【0119】
ここでは、第5の実施形態と相違する点を中心に説明する。
【0120】
本実施形態では、ZKIPプロトコル実行管理部55が、各管理単位となるZKIPプロトコル群ごとに、図16に示すように、現在実行中のZKIPプロトコル(開始許可を与えてから終了通知を受けるまでのZKIPプロトコル)を識別する情報と、そのZKIPプロトコルに通知した指定ラウンド数とを対応付けた管理テーブル555を保持するようにするものとする。
【0121】
図17に、本実施形態の場合の管理装置5の処理手順例を示す。
【0122】
まず、並行度管理部53で管理されるZKIPプロトコルの並行度Cを0に設定する(ステップS61)。
【0123】
開始要求メッセージ又は終了通知メッセージが到着するのを待ち、通信部51を介して(本例では証明者装置1から)受信したメッセージを受信メッセージ解釈部52により解析した結果、開始要求メッセージであったならば(ステップS62)、ZKIPプロトコル実行管理部55により、開始を許可するか否か判断する。
【0124】
本実施形態では、前述したように、もし開始を許可したとすると、現在既に実行されているZKIPプロトコルのうち最小の指定ラウンド数を持つものの安全性が保証されなくなるか否か(当該最小の指定ラウンド数が、新たにZKIPプロトコルを開始すると、安全性が保証されないようなラウンド数であるか否か)を判断し、安全性が確保されると判断された場合には、許可をするものとし、安全性が保証されなくなると判断される場合には、不許可とするものとする。なお、最小の指定ラウンド数は、ZKIPプロトコル実行管理部55が保持する上記の管理テーブルにより知ることができる。
【0125】
許可すると判断されたならば(ステップS63)、まず、並行度Cを1だけインクリメントする(ステップS64)。
【0126】
次いで、第5の実施形態と同様にして、指定ラウンド数を求める(ステップS65)。
【0127】
そして、求めた指定ラウンド数を含むラウンド数通知メッセージを通信部51を介して(本例では証明者装置1へ)返送する(ステップS66)。
【0128】
一方、許可しないと判断されたならば(ステップS63)、許可しない旨の不許可通知メッセージを通信部51を介して(本例では証明者装置1へ)返送する(ステップS67)。
【0129】
また、受信したメッセージが終了通知メッセージであったならば(ステップS62)、並行度Cを1だけデクリメントする(ステップS68)。
【0130】
ところで、このような指定ラウンド数決定の待ち時間を減らすため、安全性にマージンを持たせた指定ラウンド数を回答するようにしてもよい。例えば、並行度Cに基づいて指定ラウンド数を求めるにあたって、並行度Cに、(並行度Cにかかわらない一定の)整数c1を加算して、並行度C+c1に基づいて指定ラウンド数を求めるようにしてもよいし、並行度Cに、(並行度Cに応じて定まる)整数c2(C)を加算して、並行度C+c2(C)に基づいて指定ラウンド数を求めるようにしてもよい。c2(C)は、例えば、Cがより小さいほどc2(C)が大きくなるような関数、あるいは、ある連続する範囲内のCの最大値と当該Cとの差分を与える関数など、種々のものが使用可能である。また、どのくらいのマージンを持たせるかを動的に判断していくようにしてもよい。
【0131】
例えば、図18に示すように、ZKIPプロトコル(p1)は、C+c2(C)=1+2=3として求められた指定ラウンド数が与えられ、ZKIPプロトコル(p2)は、C+c2(C)=2+1=3として求められた指定ラウンド数が与えられ、ZKIPプロトコル(p3)は、C+c2(C)=3+0=3として求められた指定ラウンド数が与えられ、ZKIPプロトコル(p1)〜(p3)が実行中であるものとする。このときに、ZKIPプロトコル(p4)に係る開始要求があったものとする。ここで、ZKIPプロトコル(p4)を、C+c2(C)=3+2=5として求められた指定ラウンド数を与えて開始させるとものすると、ZKIPプロトコル(p1)〜(p3)のすべてについて安全性が確保されないことになるので、ここでは、一旦、ZKIPプロトコル(p4)の開始要求について不許可とする。次に、ZKIPプロトコル(p1)が終了して、ZKIPプロトコル(p2)と(p3)の実行中に、あらためてZKIPプロトコル(p4)に係る開始要求があったものとする。ここでは、(例えば不許可の発生を契機として)より並行度を増加させるために、ZKIPプロトコル(p4)を、C+c2(C)=2+3=5として求められた指定ラウンド数を与えて開始させるとものすると、ZKIPプロトコル(p2)と(p3)のいずれも安全性が確保されることになるので、ここでは、ZKIPプロトコル(p4)の開始要求について許可をする。
【0132】
また、上記では、もし開始を許可したとすると、最小の指定ラウンド数を持つZKIPプロトコルの安全性が保証されなくなる場合には、開始を不許可とするようにしたが、その代わりに、第2の実施形態のようにして、優先度の小さいZKIPプロトコル(あるいは、当該最小の指定ラウンド数を持つZKIPプロトコル)を中断させ、最初からやり直させる構成も可能である。あるいは、第3の実施形態のようにして、優先度の小さいZKIPプロトコル(あるいは、当該最小の指定ラウンド数を持つZKIPプロトコル)を一旦停止させ、その後に該一旦停止させたZKIPプロトコルを再開させても、その再開時に最小の指定ラウンド数を持つZKIPプロトコルの安全性が確保されるような状態に到ったときに該一旦停止させたZKIPプロトコルを再開させるような構成も可能である。
【0133】
(第7の実施形態)
第6の実施形態では、ある指定ラウンド数r1にてZKIPプロトコルp1を開始すると、該ZKIPプロトコルp1についてはその実行中に該指定ラウンド数r1を増減しないことを前提としたものであったが、実行中に指定ラウンド数を増減可能なZKIPプロトコルに対して、管理装置5が、必要に応じて指定ラウンド数の増減を指示するラウンド数変更指定メッセージを送信する形態も可能である。
【0134】
例えば、第6の実施形態において、最小の指定ラウンド数を持つZKIPプロトコルの安全性が保証されなくなる(ゼロ知識性が破れる)ために、開始要求を不許可にするようにし、あるいは、開始要求を許可するとともに、他のZKIPプロトコルを中断あるいは停止させるようにしたが、その代わりに、開始要求を許可するとともに、開始要求を許可したことによって安全性が保証されなくなるZKIPプロトコルについて、指定ラウンド数の増加を指示するラウンド数変更指定メッセージを送信するようにしてもよい(この場合、開始通知タイプになる)。
【0135】
また、例えば、開始要求を許可したとすると、最小の指定ラウンド数を持つZKIPプロトコルの安全性が保証されなくなる場合に、開始要求を不許可にする方法と、開始要求を許可するとともに、他のZKIPプロトコルを中断させる方法と、開始要求を許可するとともに、他のZKIPプロトコルを停止させる方法と、開始要求を許可するとともに、開始要求を許可したことによって安全性が保証されなくなるZKIPプロトコルについて指定ラウンド数を増加させる方法とのいずれを採用するかを適宜選択するような構成も可能である。
【0136】
また、例えば、第5、第6の実施形態において、並行して実行されていた多数のZKIPプロトコルが一斉に終了した場合に、残りの実行中のZKIPプロトコルに対して、指定ラウンド数の減少を指示するラウンド数変更指定メッセージを送信するような構成も可能である。
【0137】
(第8の実施形態(第5〜第7の実施形態の変形例))
また、第5〜第7の実施形態では、管理装置5は、開始要求メッセージに対して開始を許可すると判断した場合に、管理装置5のラウンド数管理部54が並行度Cに基づいて指定ラウンド数を動的に求め、求めた指定ラウンド数を、許可を通知するメッセージに記述して又は他のメッセージにより、証明者装置1及び又は検証者装置3へ通知するものであったが、その代わりに、証明者装置1及び又は検証者装置3が並行度Cに基づいて指定ラウンド数を求める機能を保持しており、管理装置5は、開始要求メッセージに対して開始を許可すると判断した場合に、該指定ラウンド数の通知は行わずに、並行度Cを、許可を通知するメッセージに記述して又は他のメッセージにより、証明者装置1及び又は検証者装置3へ通知、証明者装置1及び又は検証者装置3は、与えられた並行度Cに基づいて指定ラウンド数を動的に求める構成も可能である。なお、証明者装置1と検証者装置3の一方のみが指定ラウンド数を動的に求める場合には、証明者装置1と検証者装置3の一方から他方へ指定ラウンド数を通知すればよい。また、管理装置5がラウンド数管理部54を備えない構成も可能である。
【0138】
(バリエーションについて)
なお、これまでの各実施形態では、証明者装置1及び又は検証者装置3から管理装置5への開始要求や終了通知によって、ZKIPプロトコルの並行度Cや、実行中のZKIPプロトコルなどの管理をするものであったが、その代わりに、管理装置5が、証明者装置1と検証者装置3との間でやり取りされるメッセージを監視することによって、ZKIPプロトコルの並行度Cや、実行中のZKIPプロトコルなどの管理をするようにしてもよい。
【0139】
また、これまでの各実施形態では、開始要求に応答して、管理装置5が指定ラウンド数を返送するものであったが、その代わりに、管理装置5が、必要に応じて自発的に、並行度に応じたZKIPプロトコルの指定ラウンド数rを決定し、これを開始要求とは関係なく所定の証明者装置1及び又は検証者装置3に与える(あるいは、ネットワーク内に放送する)ようにしてもよい。
【0140】
また、これまでの各実施形態では、管理装置5は、証明者装置1及び検証者装置3とは独立した装置であったが、管理装置5を証明者装置1あるいは検証者装置3と一体化した装置として構成することも可能である。
【0141】
また、管理対象となるZKIPプロトコル群のうちに複数の異なる種類のZKIPプロトコルが混在し得る場合においては、基本的には、ZKIPプロトコルの種類ごとに指定ラウンド数を求めればよい。その際、指定ラウンド数がZKIPプロトコルの種類にかかわりなくZKIPプロトコルの並行度だけで定まるときは、これまでのように並行度から指定ラウンド数を求めればよい。他方、例えば、管理対象となるZKIPプロトコル群に含まれるZKIPプロトコルの種類及び各種類のZKIPプロトコルの個数に応じて指定ラウンド数が変わってくる場合には、管理装置5のZKIPプロトコル実行管理部55は、現在実行中のZKIPプロトコルについて、その種類をも保持しておき、現在実行中のZKIPプロトコルの種類ごとの個数をパラメータとする予め規定された計算式によって求めてもよいし、現在実行中のZKIPプロトコルの種類ごとの個数を入力とする予め用意された変換テーブルによって求めるようにすればよい。
【0142】
なお、以上の各機能は、ソフトウェアとして記述し適当な機構をもったコンピュータに処理させても実現可能である。
また、本実施形態は、コンピュータに所定の手段を実行させるための、あるいはコンピュータを所定の手段として機能させるための、あるいはコンピュータに所定の機能を実現させるためのプログラムとして実施することもできる。加えて該プログラムを記録したコンピュータ読取り可能な記録媒体として実施することもできる。
【0143】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【0144】
【発明の効果】
本発明によれば、並行に複数実行することがあるゼロ知識対話証明プロトコルに対して、安全性と効率性の両立を図ることができるようになる。
【図面の簡単な説明】
【図1】 本発明の一実施形態に係る通信システムの構成例を示す図
【図2】 ZIPプロトコルの管理について説明するための図
【図3】 各装置間でやり取りされるメッセージについて説明するための図
【図4】 同実施形態に係る管理装置の構成例を示す図
【図5】 同実施形態に係る証明者装置の構成例を示す図
【図6】 同証明者装置の一動作例について説明するための図
【図7】 同実施形態に係る検証者装置の構成例を示す図
【図8】 同検証者装置の一動作例について説明するための図
【図9】 同実施形態に係る管理装置の処理手順の一例を示すフローチャート
【図10】 具体例について説明するための図
【図11】 同実施形態に係る管理装置の処理手順の他の例を示すフローチャート
【図12】 具体例について説明するための図
【図13】 同実施形態に係る管理装置の処理手順のさらに他の例を示すフローチャート
【図14】 具体例について説明するための図
【図15】 同実施形態に係る管理装置の処理手順のさらに他の例を示すフローチャート
【図16】 同管理装置のZKIPプロトコル実行管理部の持つ管理テーブルの一例を示す図
【図17】 同実施形態に係る管理装置の処理手順のさらに他の例を示すフローチャート
【図18】 具体例について説明するための図
【符号の説明】
1…証明者装置、3…検証者装置、5…管理装置、8…ネットワーク、11,31,51…通信部、12,32…第1の処理部、13,33…第2の処理部、14,34,54…ラウンド数管理部、52…受信メッセージ解釈部、53…並行度管理部、55…ZKIPプロトコル実行管理部、56…制御部、555…管理テーブル

Claims (31)

  1. 証明者装置の持つ秘密情報について該証明者装置と1又は複数の検証者装置との間で複数並行して行われるゼロ知識対話証明プロトコルを管理するゼロ知識対話証明プロトコル管理装置であって、
    並行実行可能とするゼロ知識対話証明プロトコルの数の上限値を記憶する上限値記憶手段と、
    現在実行中の前記ゼロ知識対話証明プロトコルの数を示す並行度を記憶する並行度記憶手段と、
    前記証明者装置から、前記ゼロ知識対話証明プロトコルの開始を要求する開始要求メッセージを受信する手段と、
    前記開始要求メッセージを受信した場合に、前記上限値記憶手段に記憶された上限値及び前記並行度記憶手段に記憶された並行度に基づき、前記証明者装置に対して前記開始を許可するか不許可とするかを判断する判断手段とを備えたことを特徴とするゼロ知識対話証明プロトコル管理装置。
  2. 前記判断手段は、前記並行度記憶手段に記憶された並行度が前記上限値記憶手段に記憶された上限値を下回っているならば、前記開始を許可するものと判断することを特徴とする請求項1に記載のゼロ知識対話証明プロトコル管理装置。
  3. 前記判断手段は、前記並行度記憶手段に記憶された並行度が前記上限値記憶手段に記憶された上限値に達しているならば、前記開始を不許可にするものと判断することを特徴とする請求項1に記載のゼロ知識対話証明プロトコル管理装置。
  4. 前記判断手段は、前記並行度記憶手段に記憶された並行度が前記上限値記憶手段に記憶された上限値に達している場合には、現在実行中のゼロ知識対話証明プロトコル及び受信した前記開始要求メッセージに係るゼロ知識対話証明プロトコルのうちで、最も優先度の低いものを求め、該最も優先度の低いゼロ知識対話証明プロトコルが現在実行中のゼロ知識対話証明プロトコルのいずれかであるならば、該最も優先度の低いゼロ知識対話証明プロトコルを中断又は一旦停止させた上で、前記開始を許可するものと判断することを特徴とする請求項1に記載のゼロ知識対話証明プロトコル管理装置。
  5. 前記判断手段は、前記最も優先度の低いゼロ知識対話証明プロトコルが受信した前記開始要求メッセージに係るゼロ知識対話証明プロトコルであるならば、前記開始を不許可にするものと判断することを特徴とする請求項4に記載のゼロ知識対話証明プロトコル管理装置。
  6. 前記上限値に基づいて定まる、前記ゼロ知識対話証明プロトコルで実施すべきラウンド数を記憶するラウンド数記憶手段と、
    前記開始を許可すると判断された場合に、前記並行度記憶手段に記憶された並行度を1増加させる手段と、
    前記開始を許可すると判断された場合に、前記開始を許可する旨を示す情報及び前記ラウンド数記憶手段に記憶されたラウンド数を示す情報を通知するメッセージを、前記証明者装置へ送信する手段とを更に備えたことを特徴とする請求項1に記載のゼロ知識対話証明プロトコル管理装置。
  7. 前記ラウンド数は、前記上限値記憶手段に記憶された上限値に等しい並行度の下での前記ゼロ知識対話証明プロトコルの安全性を確保するに足りるラウンド数以上の値であることを特徴とする請求項6に記載のゼロ知識対話証明プロトコル管理装置。
  8. 前記開始を許可すると判断された場合に、前記並行度記憶手段に記憶された並行度を1増加させる手段と、
    前記開始を許可すると判断された場合に、前記開始を許可する旨を示す情報を通知するメッセージを、前記証明者装置へ送信する手段とを更に備えたことを特徴とする請求項1に記載のゼロ知識対話証明プロトコル管理装置。
  9. 証明者装置の持つ秘密情報について該証明者装置と1又は複数の検証者装置との間で複数並行して行われるゼロ知識対話証明プロトコルを管理するゼロ知識対話証明プロトコル管理装置であって、
    現在実行中の前記ゼロ知識対話証明プロトコルの数を示す並行度を記憶する並行度記憶手段と、
    現在実行中の前記ゼロ知識対話証明プロトコルごとに、当該ゼロ知識対話証明プロトコルで実施すべきラウンド数を記憶するラウンド数記憶手段と、
    前記証明者装置から、前記ゼロ知識対話証明プロトコルの開始を要求する開始要求メッセージを受信する手段と、
    前記開始要求メッセージを受信した場合に、前記並行度記憶手段に記憶された並行度及び前記ラウンド数記憶手段に記憶されたラウンド数に基づき、前記証明者装置に対して前記開始を許可するか不許可とするかを判断する判断手段とを備えたことを特徴とするゼロ知識対話証明プロトコル管理装置。
  10. 前記判断手段は、前記ラウンド数記憶手段に記憶されたラウンド数の最小値が、前記並行度記憶手段に記憶された並行度を1増加させた後の並行度の下での前記ゼロ知識対話証明プロトコルの安全性を確保するに足りるラウンド数以上である場合に、前記開始を許可するものと判断することを特徴とする請求項9に記載のゼロ知識対話証明プロトコル管理装置。
  11. 前記判断手段は、前記ラウンド数記憶手段に記憶されたラウンド数の最小値が、前記並行度記憶手段に記憶された並行度を1増加させた後の並行度の下での前記ゼロ知識対話証明プロトコルの安全性を確保するに足りるラウンド数に満たない場合に、前記開始を不許可にするものと判断することを特徴とする請求項9に記載のゼロ知識対話証明プロトコル管理装置。
  12. 前記判断手段は、前記ラウンド数記憶手段に記憶されたラウンド数の最小値が、前記並行度記憶手段に記憶された並行度を1増加させた後の並行度の下での前記ゼロ知識対話証明プロトコルの安全性を確保するに足りるラウンド数に満たない場合には、現在実行中のゼロ知識対話証明プロトコル及び受信した前記開始要求メッセージに係るゼロ知識対話証明プロトコルのうちで、最も優先度の低いものを求め、該最も優先度の低いゼロ知識対話証明プロトコルが現在実行中のゼロ知識対話証明プロトコルのいずれかであるならば、該最も優先度の低いゼロ知識対話証明プロトコルを中断又は一旦停止させた上で、前記開始を許可するものと判断することを特徴とする請求項に記載のゼロ知識対話証明プロトコル管理装置。
  13. 前記判断手段は、前記最も優先度の低いゼロ知識対話証明プロトコルが受信した前記開始要求メッセージに係るゼロ知識対話証明プロトコルであるならば、前記開始を不許可にするものと判断することを特徴とする請求項12記載のゼロ知識対話証明プロトコル管理装置。
  14. 前記判断手段は、前記ラウンド数記憶手段に記憶されたラウンド数の最小値が、前記並行度記憶手段に記憶された並行度を1増加させた後の並行度の下での前記ゼロ知識対話証明プロトコルの安全性を確保するに足りるラウンド数に満たない場合には、前記ラウンド数記憶手段に記憶されたラウンド数のうちで、前記並行度記憶手段に記憶された並行度を1増加させた後の並行度の下での前記ゼロ知識対話証明プロトコルの安全性を確保するに足りるラウンド数に満たない値を持つゼロ知識対話証明プロトコルの全てにつきラウンド数を増加させた上で、前記開始を許可するものと判断することを特徴とする請求項に記載のゼロ知識対話証明プロトコル管理装置。
  15. 前記開始を許可すると判断された場合に、前記並行度記憶手段に記憶された並行度を1増加させるとともに、受信した前記開始要求メッセージに係るゼロ知識対話証明プロトコルで実施すべきラウンド数として、当該1増加させた後の並行度の下での当該ゼロ知識対話証明プロトコルの安全性を確保するに足りるラウンド数以上の値を求め、求めたラウンド数を受信した前記開始要求メッセージに係るゼロ知識対話証明プロトコルに対応付けて前記ラウンド数記憶手段に記憶する手段と、
    前記開始を許可する旨を示す情報及び前記ラウンド数を示す情報を通知するメッセージを、前記証明者装置へ送信する手段とを更に備えたことを特徴とする請求項に記載のゼロ知識対話証明プロトコル管理装置。
  16. 前記開始を許可すると判断された場合に、前記並行度記憶手段に記憶された並行度を1増加させるとともに、受信した前記開始要求メッセージに係るゼロ知識対話証明プロトコルで実施すべきラウンド数として、当該1増加させた後の並行度の下での当該ゼロ知識対話証明プロトコルの安全性を確保するに足りるラウンド数以上の値を求め、求めたラウンド数を受信した前記開始要求メッセージに係るゼロ知識対話証明プロトコルに対応付けて前記ラウンド数記憶手段に記憶する手段と、
    前記開始を許可する旨を示す情報及び前記1増加させた後の並行度を示す情報を通知するメッセージを、前記証明者装置へ送信する手段とを更に備えたことを特徴とする請求項に記載のゼロ知識対話証明プロトコル管理装置。
  17. 前記ゼロ知識対話証明プロトコルの終了を通知する終了通知メッセージを受信する手段と、
    前記終了通知メッセージを受信した場合に、前記並行度記憶手段に記憶された並行度を1減少させる手段とを更に備えたことを特徴とする請求項1または9に記載のゼロ知識対話証明プロトコル管理装置。
  18. 証明者装置の持つ秘密情報について該証明者装置と1又は複数の検証者装置との間で複数並行して行われるゼロ知識対話証明プロトコルを管理するゼロ知識対話証明プロトコル管理装置であって、
    現在実行中の前記ゼロ知識対話証明プロトコルの数を示す並行度を記憶する並行度記憶手段と、
    前記証明者装置から、前記ゼロ知識対話証明プロトコルの開始を示す情報を取得する取得手段と、
    前記ゼロ知識対話証明プロトコルの開始を示す情報を取得した場合に、前記並行度記憶手段に記憶された並行度を1増加させるとともに、1増加させた後の並行度に基づいて、受信した前記ゼロ知識対話証明プロトコルの開始を示す情報に係るゼロ知識対話証明プロトコルで実施すべきラウンド数を求める手段と、
    求められた前記ラウンド数を示す情報を通知するメッセージを、前記証明者装置へ送信する手段とを備えたことを特徴とするゼロ知識対話証明プロトコル管理装置。
  19. 証明者装置の持つ秘密情報について該証明者装置と1又は複数の検証者装置との間で複数並行して行われるゼロ知識対話証明プロトコルを管理するゼロ知識対話証明プロトコル管理装置であって、
    現在実行中の前記ゼロ知識対話証明プロトコルの数を示す並行度を記憶する並行度記憶手段と、
    前記証明者装置から、前記ゼロ知識対話証明プロトコルの開始を示す情報を取得する取得手段と、
    前記ゼロ知識対話証明プロトコルの開始を示す情報を取得した場合に、前記並行度記憶手段に記憶された並行度を1増加させる手段と、
    前記1増加させた後の並行度を示す情報を通知するメッセージを、前記証明者装置へ送信する手段とを備えたことを特徴とするゼロ知識対話証明プロトコル管理装置。
  20. 前記取得手段は、前記ゼロ知識対話証明プロトコルの開始を通知するメッセージを受信することによって、前記ゼロ知識対話証明プロトコルの開始を示す情報を取得することを特徴とする請求項18または19に記載のゼロ知識対話証明プロトコル管理装置。
  21. 前記取得手段は、前記証明者装置と前記検証者装置との間のメッセージの授受を監視することによって、前記ゼロ知識対話証明プロトコルの開始を示す情報を取得することを特徴とする請求項18または19に記載のゼロ知識対話証明プロトコル管理装置。
  22. 前記ゼロ知識対話証明プロトコルの終了を示す情報を取得する手段と、
    前記ゼロ知識対話証明プロトコルの終了を示す情報を取得した場合に、前記並行度記憶手段に記憶された並行度を1減少させる手段とを更に備えたことを特徴とする請求項18または19に記載のゼロ知識対話証明プロトコル管理装置。
  23. 前記ラウンド数を求める手段は、受信した前記開始要求メッセージに係るゼロ知識対話証明プロトコルで実施すべきラウンド数として、前記1増加させた後の並行度の下での当該ゼロ知識対話証明プロトコルの安全性を確保するに足りるラウンド数以上の値を求めることを特徴とする請求項18に記載のゼロ知識対話証明プロトコル管理装置。
  24. 前記ゼロ知識対話証明プロトコル管理装置は、前記証明者装置及び前記検証者装置とは独立した装置であることを特徴とする請求項1ないし23のいずれか1項に記載のゼロ知識対話証明プロトコル管理装置。
  25. 前記ゼロ知識対話証明プロトコル管理装置は、前記証明者装置又は前記検証者装置に一体化された装置であることを特徴とする請求項1ないし23のいずれか1項に記載のゼロ知識対話証明プロトコル管理装置。
  26. 上限値記憶手段と並行度記憶手段と受信手段と判断手段とを備えるものであり、且つ、証明者装置の持つ秘密情報について該証明者装置と1又は複数の検証者装置との間で複数並行して行われるゼロ知識対話証明プロトコルを管理するものであるゼロ知識対話証明プロトコル管理装置の、ゼロ知識対話証明プロトコル管理方法であって、
    前記上限値記憶手段が、並行実行可能とするゼロ知識対話証明プロトコルの数の上限値を記憶する上限値記憶ステップと、
    前記並行度記憶手段が、現在実行中の前記ゼロ知識対話証明プロトコルの数を示す並行度を記憶する並行度記憶ステップと、
    前記受信手段が、前記証明者装置から、前記ゼロ知識対話証明プロトコルの開始を要求する開始要求メッセージを受信するステップと、
    前記判断手段が、前記受信手段により前記開始要求メッセージ受信された場合に、前記上限値記憶手段に記憶された上限値及び前記並行度記憶手段に記憶された並行度に基づき、前記証明者装置に対して前記開始を許可するか不許可とするかを判断する判断ステップとを有することを特徴とするゼロ知識対話証明プロトコル管理方法。
  27. 並行度記憶手段とラウンド数記憶手段と受信手段と判断手段とを備えるものであり、且 つ、証明者装置の持つ秘密情報について該証明者装置と1又は複数の検証者装置との間で複数並行して行われるゼロ知識対話証明プロトコルを管理するものであるゼロ知識対話証明プロトコル管理装置の、ゼロ知識対話証明プロトコル管理方法であって、
    前記並行度記憶手段が、現在実行中の前記ゼロ知識対話証明プロトコルの数を示す並行度を記憶するステップと、
    前記ラウンド数記憶手段が、現在実行中の前記ゼロ知識対話証明プロトコルごとに、当該ゼロ知識対話証明プロトコルで実施すべきラウンド数を記憶するステップと、
    前記受信手段が、前記証明者装置から、前記ゼロ知識対話証明プロトコルの開始を要求する開始要求メッセージを受信するステップと、
    前記判断手段が、前記受信手段により前記開始要求メッセージ受信された場合に、前記並行度及び前記ラウンド数に基づき、前記証明者装置に対して前記開始を許可するか不許可とするかを判断するステップとを有することを特徴とするゼロ知識対話証明プロトコル管理方法。
  28. 並行度記憶手段と取得手段とラウンド数計算手段と送信手段とを備えるものであり、且つ、証明者装置の持つ秘密情報について該証明者装置と1又は複数の検証者装置との間で複数並行して行われるゼロ知識対話証明プロトコルを管理するものであるゼロ知識対話証明プロトコル管理装置の、ゼロ知識対話証明プロトコル管理方法であって、
    前記並行度記憶手段が、現在実行中の前記ゼロ知識対話証明プロトコルの数を示す並行度を記憶するステップと、
    前記取得手段が、前記証明者装置から、前記ゼロ知識対話証明プロトコルの開始を示す情報を取得するステップと、
    前記ラウンド数計算手段が、前記取得手段により前記ゼロ知識対話証明プロトコルの開始を示す情報取得された場合に、前記並行度を1増加させるとともに、1増加させた後の並行度に基づいて、受信した前記ゼロ知識対話証明プロトコルの開始を示す情報に係るゼロ知識対話証明プロトコルで実施すべきラウンド数を求めるステップと、
    前記送信手段が、前記ラウンド数計算手段により求められた前記ラウンド数を示す情報を通知するメッセージを、前記証明者装置へ送信するステップとを有することを特徴とするゼロ知識対話証明プロトコル管理方法。
  29. 証明者装置の持つ秘密情報について該証明者装置と1又は複数の検証者装置との間で複数並行して行われるゼロ知識対話証明プロトコルを管理するゼロ知識対話証明プロトコル管理装置としてコンピュータを機能させるためのプログラムであって、
    並行実行可能とするゼロ知識対話証明プロトコルの数の上限値を記憶する上限値記憶機能と、
    現在実行中の前記ゼロ知識対話証明プロトコルの数を示す並行度を記憶する並行度記憶機能と、
    前記証明者装置から、前記ゼロ知識対話証明プロトコルの開始を要求する開始要求メッセージを受信する機能と、
    前記開始要求メッセージを受信した場合に、前記上限値記憶機能に記憶された上限値及び前記並行度記憶機能に記憶された並行度に基づき、前記証明者装置に対して前記開始を許可するか不許可とするかを判断する判断機能とをコンピュータに実現させるためのプログラム。
  30. 証明者装置の持つ秘密情報について該証明者装置と1又は複数の検証者装置との間で複数並行して行われるゼロ知識対話証明プロトコルを管理するゼロ知識対話証明プロトコル管理装置としてコンピュータを機能させるためのプログラムであって、
    現在実行中の前記ゼロ知識対話証明プロトコルの数を示す並行度を記憶する並行度記憶機能と、
    現在実行中の前記ゼロ知識対話証明プロトコルごとに、当該ゼロ知識対話証明プロトコルで実施すべきラウンド数を記憶するラウンド数記憶機能と、
    前記証明者装置から、前記ゼロ知識対話証明プロトコルの開始を要求する開始要求メッセージを受信する機能と、
    前記開始要求メッセージを受信した場合に、前記並行度記憶機能に記憶された並行度及び前記ラウンド数記憶機能に記憶されたラウンド数に基づき、前記証明者装置に対して前記開始を許可するか不許可とするかを判断する判断機能とをコンピュータに実現させるためのプログラム。
  31. 証明者装置の持つ秘密情報について該証明者装置と1又は複数の検証者装置との間で複数並行して行われるゼロ知識対話証明プロトコルを管理するゼロ知識対話証明プロトコル管理装置としてコンピュータを機能させるためのプログラムであって、
    現在実行中の前記ゼロ知識対話証明プロトコルの数を示す並行度を記憶する並行度記憶機能と、
    前記証明者装置から、前記ゼロ知識対話証明プロトコルの開始を示す情報を取得する取得機能と、
    前記ゼロ知識対話証明プロトコルの開始を示す情報を取得した場合に、前記並行度記憶機能に記憶された並行度を1増加させるとともに、1増加させた後の並行度に基づいて、受信した前記ゼロ知識対話証明プロトコルの開始を示す情報に係るゼロ知識対話証明プロトコルで実施すべきラウンド数を求める機能と、
    求められた前記ラウンド数を示す情報を通知するメッセージを、前記証明者装置へ送信する機能とをコンピュータに実現させるためのプログラム。
JP2003188987A 2003-06-30 2003-06-30 ゼロ知識対話証明プロトコル管理装置、ゼロ知識対話証明プロトコル管理方法及びプログラム Expired - Fee Related JP4074226B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003188987A JP4074226B2 (ja) 2003-06-30 2003-06-30 ゼロ知識対話証明プロトコル管理装置、ゼロ知識対話証明プロトコル管理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003188987A JP4074226B2 (ja) 2003-06-30 2003-06-30 ゼロ知識対話証明プロトコル管理装置、ゼロ知識対話証明プロトコル管理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2005026928A JP2005026928A (ja) 2005-01-27
JP4074226B2 true JP4074226B2 (ja) 2008-04-09

Family

ID=34187347

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003188987A Expired - Fee Related JP4074226B2 (ja) 2003-06-30 2003-06-30 ゼロ知識対話証明プロトコル管理装置、ゼロ知識対話証明プロトコル管理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP4074226B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4845107B2 (ja) * 2006-07-12 2011-12-28 日本電信電話株式会社 知識証明検証システム

Also Published As

Publication number Publication date
JP2005026928A (ja) 2005-01-27

Similar Documents

Publication Publication Date Title
US11956361B2 (en) Network function service invocation method, apparatus, and system
CN110636103B (zh) 一种多异构集群作业统一调度方法及api接口
US7555657B2 (en) Communication device, software update device, software update system, software update method, and program
US20160261607A1 (en) Techniques for identity-enabled interface deployment
JP4822224B2 (ja) キーを提供することなく要求者を認証するための方法およびシステム
US20060007936A1 (en) Controlling quality of service and access in a packet network based on levels of trust for consumer equipment
JP2009524370A (ja) 通信端末デバイス、通信端末、及び通信システムを管理するための方法
WO2020216038A1 (zh) 数据管理方法、lepm和mepm
JP2008541549A (ja) 装置管理システム及びそのシステムにおける設定値セット方法
WO2006092826A1 (ja) サービス制御システム、サービス制御方法およびサービス制御プログラム
CN112738800A (zh) 一种网络切片的数据安全传输实现方法
US8516602B2 (en) Methods, apparatuses, and computer program products for providing distributed access rights management using access rights filters
CN108898026A (zh) 数据加密方法和装置
JP4074226B2 (ja) ゼロ知識対話証明プロトコル管理装置、ゼロ知識対話証明プロトコル管理方法及びプログラム
WO2020259419A1 (zh) 一种远程证明方式的协商方法及装置
CN112953986B (zh) 一种边缘应用的管理方法及装置
WO2008037174A1 (fr) Procédé, dispositif et système de communication correspondant de sélection de maître local
KR100872435B1 (ko) 가치 기반 평가에 의한 네트워크 관리 시스템 및 방법
CN116208346A (zh) 一种资源调度方法、装置、终端、平台管理器及编排器
KR100614930B1 (ko) 디지털 홈 서비스를 위한 플랫폼 프로파일 관리 방법
US20050005170A1 (en) Minimizing information gathered by access decision engines in access control systems
JP3961866B2 (ja) 通信方法、通信装置及びソフトウェアプログラム
US20080178267A1 (en) Method and system for simplifying role based authorization profile implementation
US6820124B1 (en) Cryptographic authentication using a network management protocol
KR100797487B1 (ko) 통합인증시스템, 통합인증방법 및 기록매체

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071023

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071225

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080124

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

Free format text: PAYMENT UNTIL: 20110201

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees