JP4679163B2 - デジタル署名情報生成装置、デジタル署名情報生成方法及びプログラム - Google Patents

デジタル署名情報生成装置、デジタル署名情報生成方法及びプログラム Download PDF

Info

Publication number
JP4679163B2
JP4679163B2 JP2005014213A JP2005014213A JP4679163B2 JP 4679163 B2 JP4679163 B2 JP 4679163B2 JP 2005014213 A JP2005014213 A JP 2005014213A JP 2005014213 A JP2005014213 A JP 2005014213A JP 4679163 B2 JP4679163 B2 JP 4679163B2
Authority
JP
Japan
Prior art keywords
information
signature
digital signature
signer
user
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.)
Active
Application number
JP2005014213A
Other languages
English (en)
Other versions
JP2006203660A (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.)
THE UNIVERSITY OF ELECTRO-COMUNICATINS
Toshiba Corp
Original Assignee
THE UNIVERSITY OF ELECTRO-COMUNICATINS
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 THE UNIVERSITY OF ELECTRO-COMUNICATINS, Toshiba Corp filed Critical THE UNIVERSITY OF ELECTRO-COMUNICATINS
Priority to JP2005014213A priority Critical patent/JP4679163B2/ja
Publication of JP2006203660A publication Critical patent/JP2006203660A/ja
Application granted granted Critical
Publication of JP4679163B2 publication Critical patent/JP4679163B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、デジタル署名情報を生成するためのデジタル署名情報生成装置、デジタル署名情報生成方法及びプログラムに関する。
情報化社会の発展に伴い、データをデジタル化しネットワークを通じてやり取りするコミュニケーション形態が増加している。デジタルデータ(以下、データとはデジタルデータを指すものとする)は、第三者による作成や複製や改ざん等が容易であるため、データの真正性が重要になる場合には、データに信頼性を持たせるためにデジタル署名(電子署名)の技術が利用される。
基本的なデジタル署名では、例えば、署名者側においては、署名対象のデータにハッシュ関数を適用してハッシュ値を求め、このハッシュ値を署名者の秘密鍵で変換してデジタル署名情報を生成し、このデジタル署名情報を署名対象データに付加して、デジタル署名付データとする。一方、検証者側においては、例えば、検証対象のデジタル署名付データのデータ部分にハッシュ関数を適用して得た第1のデータと、検証対象のデータに付加されているデジタル署名情報を署名者とされている者の公開鍵で逆変換して得た第2のデータとを比較することによって、検証を行う。
デジタル署名情報の偽造や秘密鍵の解読は困難であることから、デジタル署名情報を用いた検証により、署名者とされるユーザがデータに電子証明を行ったという事実(確かに当該データ及び当該署名者の秘密鍵を用いて当該デジタル署名が生成されたという事実)が保証できる。
なお、本明細書において、グループ管理者、署名者、検証者、認証局等について説明する動作は、基本的には、それらに係る装置の動作を意味するものである。
ところで、ネットワーク上のサービスの多様化により、デジタル署名にも様々な機能が求められている。例えば、電子決済や電子投票等において署名者個人のプライバシー保護を実現するために、匿名性を有するデジタル署名が開発されている。匿名性を有するデジタル署名においては、これを利用するユーザは、複数のユーザが加入するグループに所属する。そして、署名者となるユーザは、そのグループに対応する公開鍵で正当性の検証が可能なデジタル署名あるいはそのグループに属する全てのユーザの公開鍵で正当性の検証が可能なデジタル署名を、当該ユーザ自身の秘密鍵を用いて生成する。匿名性を保証するデジタル署名は、検証者がそのグループに属する者のうちのいずれかが当該デジタル署名を生成した事実を検証することはできるが、当該デジタル署名を実際に生成した署名者を特定することはできない。
従来の匿名性を保証する署名方法は、大きく二つに分類される。一つはグループ署名(例えば非特許文献1参照)であり、もう一つはリング署名(例えば特許文献1参照)である。以下、従来のグループ署名とリング署名について簡単に説明する。
グループ署名では、署名者は、グループ管理者と交信を行って署名鍵を生成する。グループ管理者は、グループに対応する公開鍵を生成して認証局に登録する。このとき、グループに対応する公開鍵が予め定められていて各署名者の署名鍵を生成する方法と、各署名者からグループへの参加及び署名鍵の生成を受けるたびに公開鍵を更新して認証局に再登録を行う方法とがある。署名は、証明者の署名鍵を用いて行われ、検証は、グループに対応する公開鍵を用いて行われる。
従来のグループ署名では、グループ管理者が署名者を特定することが可能であるため、署名者が意図しないところで署名者の特定が行われて匿名性の破棄すなわちプライバシーに係る情報の暴露がなされる可能性があった。また、署名者は署名鍵を生成するためにグループ管理者と交信を行わなければならず鍵生成の効率が悪いことに加えて、グループ管理者に秘密情報が集中するためグループ管理者の管理を厳密に行わなければならないという問題点があった。
また、グループ管理者を必要としないグループ署名方式も提案されているが、検証のために検証者と署名者との間のオンラインによる多数回の交信が行われる必要があるため、検証処理の効率が悪いことに加えて、匿名性を保証するために匿名通信技術を用いる必要があった。
すなわち、従来のグループ署名においては、管理者を不要とし、署名者の匿名性を有し、署名者以外のユーザによる否認(自身が真の署名者ではないことの主張)が可能であり、検証をオフラインで実施できるものはなかった。
一方、リング署名では、署名は、動的に選択され認証局から入手された複数の他のユーザの公開鍵及び署名者の署名鍵を用いて行われ(以下、公開鍵が選択された他のユーザを、真の署名者に対してダミー署名者と呼ぶ)、検証は、署名者及びダミー署名者の公開鍵を用いて行われる。
従来のリング署名においても、管理者を不要とし、署名者の匿名性を有し、署名者以外のユーザによる否認が可能であり、検証をオフラインで実施できるものはなかった。
特開2004−229137公報 「須賀,市村,"否認機能を持つリング署名",暗号と情報セキュリティシンポジウム2003」
従来のデジタル署名においては、管理者を不要とし、署名者の匿名性を有し、署名者以外のユーザによる否認が可能であり、検証をオフラインで実施できるものはなかった。
本発明は、上記事情を考慮してなされたもので、管理者を不要とし、署名者の匿名性を有し、署名者以外のユーザによる否認が可能であり、検証をオフラインで実施できるデジタル署名情報を生成するデジタル署名情報生成装置、デジタル署名情報生成方法及びプログラムを提供することを目的とする。
本発明は、署名対象のデータを入力する入力手段と、前記データに対する署名者となる第1のユーザの秘密鍵を記憶する記憶手段と、前記第1のユーザ以外の第2のユーザの公開鍵の全部又は一部を取得する取得手段と、前記データ及び前記秘密鍵を用いて、個々の前記第2のユーザが前記データに対する署名者であることを否認することを可能にする第1の情報を生成する第1の生成手段と、前記公開鍵の全部又は一部及び前記秘密鍵を用いて、前記第1の情報が前記秘密鍵を用いて生成されたことを保証するための第2の情報を生成する第2の生成手段と、前記第1の情報及び前記第2の情報を含むデジタル署名情報を出力する出力手段とを備えたことを特徴とする。
署名対象のデータにデジタル署名情報が付加されて、署名付きデータとして、受け渡しされる。署名付きデータは、デジタル署名情報生成装置と署名検証装置との間で、通信媒体を介して付け渡しされてもよいし、記録媒体を介して付け渡しされてもよい。
署名検証装置は、署名対象のデータ、該データに付加されたデジタル署名情報並びに署名者及びダミー署名者の公開鍵により、(オフラインで)検証を行うことができる。また、特定の署名者が署名を生成したか否かについての特定が必要な場合には、署名検証装置からデジタル署名情報生成装置に問い合わせて(オンラインの対話により)当該装置に係るユーザが当該デジタル署名情報を生成したこと又は当該デジタル署名情報を生成していないことを検証する。
なお、装置に係る本発明は方法に係る発明としても成立し、方法に係る本発明は装置に係る発明としても成立する。
また、装置または方法に係る本発明は、コンピュータに当該発明に相当する手順を実行させるための(あるいはコンピュータを当該発明に相当する手段として機能させるための、あるいはコンピュータに当該発明に相当する機能を実現させるための)プログラムとしても成立し、該プログラムを記録したコンピュータ読み取り可能な記録媒体としても成立する。
本発明によれば、管理者を不要とし、署名者の匿名性を有し、署名者以外のユーザによる否認が可能であり、検証をオフラインで実施できるデジタル署名情報を生成するデジタル署名情報生成装置、デジタル署名情報生成方法及びプログラムを提供することができる。
以下、図面を参照しながら本発明の実施形態について説明する。
ここで、本実施形態に係るデジタル署名について説明するのに先立って、非特許文献1に開示されたデジタル署名について言及する。
非特許文献1では、署名者の人数をL人とし、各署名者P(i∈{0,…,L−1})は公開情報(pi,q,g,y,H)を公開しているものとする。ただし、pとqは、qがp−1を割り切るような十分大きな素数とする。gは位数がqとなるZ/pZ={0,1,…,p−1}内の乗法群Gの生成元とする。yは署名者が秘密裏に保持する秘密情報x∈Z/qZ={0,1,…,q−1}に対してy=gxi mod pより計算される値である。Hは任意のビット長の値をGの元に写すハッシュ関数とする。また、Hを任意のビット長の値をl1ビットの値に写すような、全ての署名者が共通で用いるハッシュ関数とする。
非特許文献1において、署名者Pは、他の署名者の公開鍵を利用して2種類の署名を生成する。1つ目は、文書Mと署名者以外のユーザが自分は署名を生成していないということを主張するための成分Repに対する署名であり、2つ目は文書MとRepのハッシュ値H(Rep)に対する署名である。
1つ目の署名成分の計算は以下の通りである。
署名者Pkは、a’∈Z/qkZをランダムに選択し、T’k=gk a’ mod pk及びc’k+1=Hk(M,Rep,T’k)を計算する。
次に、署名者Pkは、j=k+1,…,L−1,0(=L),…,k−1について、s’j∈Z/qjZをランダムに選択し、Pjの公開情報(pj,qj,gj,yj,Hj)を用いて、T’j=gj s’jj c’j mod pj及びc’j+1=Hj(M,Rep,T’j)を計算する。
最後に、署名者Pkは、s’k=a’−xkc’k mod qkを計算し、R=(H(Rep),c’,s’,…,c’L-1,s’L-1)を1つ目の署名成分とする。
2つ目の署名成分の計算は以下の通りである。
署名者Pkは、a’’=H(R)を計算してa=a’+a’’ mod qkとおいて、Tk=gk mod pk及びck+1=Hk(M,H(Rep),Tk)を計算する。
次に、署名者Pkは、j=k+1,…,L−1,0(=L),…,k−1について、sj∈Z/qjZをランダムに選択し、Pjの公開情報(pj,qj,gj,yj,Hj)を用いて、Tj=gj sjj cj mod pj及びcj+1=Hj(M,H(Rep),Tj)を計算する。
最後に、署名者Pkは、sk=a−xkk mod qkを計算し、R=(c,s,…,cL-1,sL-1)を2つ目の署名成分とする。
このとき、非特許文献1に開示されている通り、2つ目の署名成分の計算におけるa=a’+H(R) mod qkが正しく生成されているかを保証する手段はなく、署名者が偽りなくaを生成している場合にのみ、署名者以外のユーザが「自分は署名を生成していない」ことを主張できる。
次に、非特許文献1において、署名者が偽りなく署名を生成した場合には、署名から署名者の特定が可能となることを説明する。
署名者Piの公開情報(pi,qi,gi,yi,Hi)、文書M、Rep、署名R=(H(Rep),c’,s’,…,c’L-1,s’L-1)、署名R=(c,s,…,cL-1,sL-1)が公開されているとする。このとき、署名者Pkの署名生成手段から、gk skk ck=ga-xkckk ck=gk a mod pkとgk s’kk c’k=ga’-xkc’kk c’k=gk a’ modpkが成り立つ。ここで、署名者を特定しようと試みるもの(非特許文献1に開示される方法の匿名性を破ろうとするもの)は、a’’=H(R)を計算し、gi sii ci≡gi s’ii c’ii a’’ (mod pi)となるiを全数探索により決定する。i=kについてはa=a’+a’’ mod qであるため、上述した合同式が成り立つ。一方、i≠kについてはci及びc’iがハッシュ関数の出力であるため、上述の合同式を満たす可能性は低い。このため、上述した合同式により決定されるiに対してPiが署名者であると特定することが可能となる。
このように非特許文献1に開示された技術では、「署名者以外のユーザが自分は署名を生成していないということを証明できる成分(2種類の署名)」が偽りなく生成されたかどうかを確認する手段がないため、偽ったデジタル署名情報を生成することで、検証には成功するが、署名者自身も署名成の事実を否認できるような署名を生成することができるという問題があるとともに、検証者によりデジタル署名から署名者を容易に特定することができるという問題がある。
一方、本実施形態によれば、署名者は、「署名者以外の他のユーザが自分はデジタル署名情報を生成していない(自分は署名者ではない)ということを証明できる」第1の成分を、他のユーザの公開鍵を用いずに生成する。さらに、署名者は、「署名者が第1の成分を正しく生成していることを保証する」第2の成分を計算するため、署名者が偽って検査式に合格するデジタル署名情報を生成することは不可能である。よって、上述したような問題は起こらない。
以下、本実施形態のデジタル署名について詳しく説明する。
なお、以下の説明では、デジタル署名の対象を文書と呼んでいるが、文書はどのようなデータであっても構わない。
本実施形態に係るデジタル署名情報(以下、単に署名とも呼ぶ)を生成するデジタル署名情報生成装置により、管理者を仮定しない否認可能なオフライン検証型の匿名性を有するデジタル署名が実現される。また、デジタル署名した署名者の特定又は署名者以外の他のユーザのデジタル署名についての否認は、検証者が署名者又は署名者以外の他のユーザと通信をすることによって可能になる。
まず、本実施形態に係る署名生成処理で生成される署名者の特定又は否認を可能とする成分について説明する。
署名者の特定又は否認を可能とする成分及びその特定又は否認の方法は、ゼロ知識否認不可署名(例えば、「D. Chaum, “Zero-Knowledge Undeniable Signature,” in Proceedings of EUROCRYPT ’90」など)を利用することができる。
本実施形態では、安全性の保証を可能とするため、岡本らにより改良された否認不可署名(「T. Okamoto and D. Pointcheval, “,” in Proceedings of CT-RSA 2001」(以下、文献Aと呼ぶ))を利用した場合を例にとって説明する。
ここで、文献Aにより開示された方法について説明する。
なお、文献Aは、匿名性がなく、検証にオンラインを必要とするものであるが、本実施形態は、匿名性を有し、検証をオフラインで実施できるものである。
システムの管理者あるいは署名者となる各ユーザは、p,q,g,A,Fを公開する。ここで、pはlビットの素数、qはp−1を割り切るl1ビットの素数、gは位数qの乗法群Aの生成元であり、Gは任意のビット長の数からAへの耐衝突一方向性ハッシュ関数、Fは任意の長さの数からl2ビットの数への耐衝突一方向性ハッシュ関数とする。ここで、耐衝突性とはG(a)=G(b)を満たすa,bを見つけることが困難であることを表し、一方向性とはcが与えられたときにG(a)=cを満たすaを見つけることが困難であることを表す。
まず、否認不可署名の鍵の生成から否認不可署名の生成までについて説明する。
図7に、否認不可署名の鍵の生成手順(署名者の加入及び署名生成)を示す。また、図8に、否認不可署名の生成手順を示す。
署名者となるユーザは、s∈Z/qZ={0,1,…,q−1}をランダムに選択して秘密鍵とし(ステップS101K)、k=gs mod pを計算して(ステップS102K)、公開鍵として公開し、あるいは認証局に登録する(ステップS103K)。
署名者は、デジタル署名対象の文書Mを受け付けた後(ステップS101S)、w=G(M)を計算し(ステップS102S)、S=w mod pを計算して(ステップS103S)、(M,S)を署名付き文書として公開する(ステップS104S)。
一方、検証者は、(M,S)が正しい署名付き文書であること又は正しくないこと(署名者がMに正しく署名をしたこと又はMに正しく署名をしていないこと)を、署名者と交信を行い以下に説明する確認プロトコル(Confirmation Protocol)あるいは否認プロトコル(Disavowal Protocol)を実行することで検証する。各プロトコルでは、検証者は署名者とK回の繰り返し処理を行い、全ての処理に合格するときに確認または否認を受理する。
図9に、検証装置(署名検証装置)における否認不可署名の検証手順を示す。また、図10に、署名装置(デジタル署名情報生成装置)における否認不可署名の検証手順を示す。
検証者は、署名付き文書(M,S)を、特定のユーザ(例えば、署名者であることを確認しようとする対象のユーザ、または、署名者でないことを確認しようとする対象のユーザ)に問い合わせて(ステップS101Vv)、待機する(ステップS102Vv)。
この特定のユーザは、問い合わせを受け付けた後(ステップS101Vs)、w=G(M)を計算して(ステップS102Vs)、S=ws mod pが成り立つかどうかを検査して(ステップS103Vs)、検査式が成り立つ場合には、(M,S)が正しい署名付き文書であるとして検証者に確認プロトコルを実行することを伝え(ステップS104Vs)、成り立たない場合には、(M,S)が正しくない署名付き文書であるとして検証者に否認プロトコルを実行することを伝えて(ステップS105Vs)、待機する(ステップS106Vs)。
(確認プロトコル)
図11に、検証装置(署名検証装置)における否認不可署名の確認手順を示す。また、図12に、署名装置(デジタル署名情報生成装置)における否認不可署名の確認手順を示す。
検証者は、上記の特定のユーザから確認プロトコルを実行する連絡を受け付けた場合(ステップS101Cv)、カウンタとしてcnt=0と設定し(ステップS102Cv)、w=G(M)を計算する(ステップS103Cv)。
次に、検証者は、a,b∈Z/qZをランダムに選択して(ステップS104Cv)、c=wab mod pを計算して(ステップS105Cv)、上記の特定のユーザに送信して(ステップS106Cv)、待機する(ステップS107Cv)。
上記の特定のユーザは、検証者からcを受け付けた後(ステップS101Cs)、r∈Z/qZをランダムに選択して(ステップS102Cs)、t=cgr mod p及びu=ts mod pを計算して(ステップS103Cs)、検証者に送信し(ステップS104Cs)、待機する(ステップS105Cs)。
検証者は、上記の特定のユーザからt,uを受け付けた後(ステップS108Cv)、a,bを上記の特定のユーザに送信して(ステップS109Cv)、待機する(ステップS110Cv)。
上記の特定のユーザは、検証者からa,bを受け付けた後(ステップS106Cs)、c=wab mod pが成り立つかどうかを検査する(ステップS107Cs)。検査に合格の場合には、rを検証者に送信し(ステップS108Cs)、不合格の場合には、(例えば、検証者が不正な処理をした、あるいは、通信路上でエラーが発生したと判断して)処理を停止する(ステップS109Cs)。
検証者は、上記の特定のユーザからrを受け付けた後(ステップS111Cv)、t=cgr mod p及びu=Sab+r mod pが成り立つかどうか検査する(ステップS112Cv)。検査に不合格の場合には、(上記の特定のユーザが不正な処理をした、あるいは、通信路上でエラーが発生したと判断して)処理を停止する(ステップS117Cv)。
検査に合格の場合には、cnt=cnt+1とし(ステップS113Cv)、cnt=Kかどうか検査する(ステップS114Cv)。検査に不合格の場合にはステップS104Cvに戻る(ステップS115Cv)。検査に合格の場合には、(M,S)を正しい署名付き文書として受理する(ステップS116Cv)。
(否認プロトコル)
図13に、検証装置(署名検証装置)における否認不可署名の否認手順を示す。図14に、署名装置(デジタル署名情報生成装置)における否認不可署名の否認手順を示す。
他方、検証者は、上記の特定のユーザから否認プロトコルを実行する連絡を受け付けた場合(ステップS101Dv)、カウンタとしてcnt=0と設定し(ステップS102Dv)、w=G(M)を計算する(ステップS103Dv)。
次に、検証者は、a∈{0,…,max}とb∈Z/qZをランダムに選択して(ステップS104Dv),c=wab mod pとc2=Sab mod pを計算して(ステップS105Dv)、上記の特定のユーザに送信して(ステップS106Dv)、待機する(ステップS107Dv)。ステップS103Dvのmaxは、後にaが全数探索により見つけられる程度の小さな数として設定される。
上記の特定のユーザは、検証者からc1,c2を受け付けた後(ステップS101Ds)、(c /c2)=(w/S)a mod pを満たすaを探索し(ステップS102Ds)、r∈Z/qZをランダムに選択して(ステップS103Ds)、t=F(r,a)を計算して(ステップS104Ds)、検証者に送信し(ステップS105Ds)、待機する(ステップS106Ds)。
検証者は、上記の特定のユーザからtを受け付けた後(ステップS108Dv)、bを上記の特定のユーザに送信して(ステップS109Dv)、待機する(ステップS110Dv)。
上記の特定のユーザは、検証者からbを受け付けた後(ステップS107Ds)、c1=wab mod pとc2=Sab mod pが成り立つかどうかを検査する(ステップS108Ds)。検査に合格の場合には、rを検証者に送信して(ステップS109Ds)、不合格の場合には、(検証者が不正な処理をした、あるいは、通信路上でエラーが発生したと判断して)処理を停止する(ステップS110Ds)。
検証者は、上記の特定のユーザからrを受け付けた後(ステップS111Dv)、t=F(r,a)が成り立つかどうか検査する(ステップS112Dv)。検査に不合格の場合には、(上記の特定のユーザが不正な処理をした、あるいは、通信路上でエラーが発生したと判断して)処理を停止する(ステップS117Dv)。
検査に合格の場合には、cnt=cnt+1とし(ステップS113Dv)、cnt=Kかどうか検査する(ステップS114Dv)。検査に不合格の場合にはステップS104Dvに戻る(ステップS115Dv)。検査に合格の場合には、上記の特定のユーザによる(M,S)の否認を受理する(ステップS116Dv)。
さて、以下では、上記したような否認不可署名を利用した、管理者を仮定しない否認可能なオフライン検証型の匿名性を有する署名方法の構成例を示す。
(第1の構成例)
まず、第1の構成例について説明する。
なお、署名対象の文書にデジタル署名情報を付加した署名付き文書自体は、デジタル署名情報生成装置と署名検証装置との間で、通信媒体を介して付け渡しされてもよいし、記録媒体を介して付け渡しされてもよい。
(共通パラメータの準備)
以下、本構成例に係るデジタル署名情報生成装置、署名検証装置を構成するために用いる関数と、それら関数の入出力データの長さについて説明する。
安全な署名交換システムの構成例を記述するにあたり、安全性のパラメータl,l1,l2を以下のように選択する。lは離散対数問題が計算困難とされるビット長である1024とし、l1はそのときの位数1023、l2は総当りによる探索が困難とされるビット長である80などである。このとき、lビットの素数p及びp−1を割り切るlビットの素数q、位数qの乗法群Aとその生成元gが認証局により公開されているとする。また、任意のビット長の値をAの元に写像するハッシュ関数G、任意のビット長の値をZ/qZの元に写像するハッシュ関数H、任意のビット長の値をl2ビットの値に写像するハッシュ関数F、否認プロトコルで用いられるあまり大きくない値maxが公開されているとする。ハッシュ関数G,H,Fは、例えばSHAなどのハッシュ関数である(例えば、「M. Bellare and P. Rogaway, “Optimal Asymmetric Encryption−How to encrypt with RSA” Advances in Cryptology−EUROCRYPT’94 LNCS, Springer-Verlag, 1995」等にその具体例が挙げられている)。
(デジタル署名情報生成装置)
図1に、本構成例に係るデジタル署名情報生成装置のブロック図の一例を示す。
演算器201は、多倍長の演算を実行する部分であり、具体的には、排他的論理和の計算、ビット連結・分割、ビットの比較などを行う。
乱数生成部202は、署名生成時に必要な乱数を発生させる部分である。
乱数メモリ203は、乱数生成部202により生成された乱数を保存する。
秘密鍵メモリ204は、当該装置のユーザPの公開鍵暗号方式に関する秘密鍵を格納するメモリである。
署名生成部205は、署名生成処理や確認及び否認プロトコルを行う際に、秘密鍵メモリ204に保存された秘密鍵を読み出す。
入出力部206は、生成された当該装置のユーザPのデジタル署名情報を送信する。入出力部206は、自装置と外部との間で取り交わされるその他のデータの入出力も行う。
関数演算部207,208,209は、それぞれ、ランダム関数G,H,Fによる演算を行う。当該装置のユーザPのデジタル署名情報の生成や確認及び否認プロトコルにおいては、関数演算部207,208,209に保存されたランダム関数を利用する。ランダム関数は、事前に取り決められたものを保存しておいてもよいし、署名者ごとに定められた関数を入出力部206を介して入手・保存してもよい。
制御部211は、装置全体の制御を司る。
メモリ212は、各種データを記憶する。
なお、デジタル署名情報生成装置は、機能的には、鍵に関する処理を行う機能部分と、後述するデジタル署名情報の第1の成分を生成する機能部分と、デジタル署名情報の第2の成分を生成する機能部分とを有する。
また、デジタル署名情報生成装置は、署名対象の文書にデジタル署名情報を付加した署名付き文書を、ネットワークを介して署名検証装置又は他の装置へ送信する機能や、(署名検証装置又は他の装置との間の受け渡しのために)記録媒体へ書き込む機能を含んでもよい。
(公開鍵及び秘密鍵の準備)
署名者となる各ユーザは、それぞれ、図1に示されるデジタル署名情報生成装置を使用する。認証局により公開されたp,q,A,gに対して、各ユーザPj(j=1,…,L)は、sj∈Z/qZをランダムに選択して秘密鍵メモリ204に格納し、公開鍵kj=gsj mod pを計算して公開する。
(署名生成手順)
以下、署名者Piによる署名生成の処理手順について説明する。
図2に、本構成例に係る署名生成処理手順の一例を示す。
以下の例では説明を簡潔にするために、公開鍵を登録しているL人のうち、署名者となるユーザPiを除くL−1人のユーザをダミー署名者として選択する方法を例にとって説明する。この方法の他にも、例えば、署名者Piが署名生成時にL’≦L-1を満たす任意のL’人のダミー署名者を選択して、ユーザ(署名者たるユーザ、選択されたダミー署名者たるユーザ又は選択されなかったユーザ)を特定するための添え字(以下の例で示すiやj)を動的に決定する方法なども可能である(なお、L’を固定する方法も可能であり、L’をも動的に決定する方法も可能である)。
ここで、ステップS301〜S303により計算されるデジタル署名情報の第1の成分Sを利用することで、下記に示す確認及び否認プロトコルにより、署名者Piは、第1の成分Sを生成した事実を否認することができず、署名者以外のユーザPjは、第1の成分Sを生成していないという事実を証明することができる。
一方、ステップS304〜S311で計算されるデジタル署名情報の第2の成分(y,b,c,d,…,cL,dL)は、第1の成分SがユーザP,…,PLの公開鍵k,…,kLのいずれかの成分と同一の指数(秘密鍵si)をもつことを証明する非対話零知識証明となっている。
署名者Piは、署名対象の文書Mを受け付けた後(ステップS301)、w=G(M)を計算して(ステップS302)、確認又は否認を行うための第1の成分S=wsi mod pを計算する(ステップS303)。
次に、署名者Piは、第2の成分を計算する。
すなわち、b’∈Z/qZをランダムに選択し(ステップS304)、y=wb’ mod pを計算する(ステップS305)。
j=1,…,i−1,i+1,…,Lについて、cj,dj∈Z/qZをランダムに選択して、aj=gcjj dj mod p, bj=wcjdj mod pを計算する(ステップS306)。
e’∈Z/qZをランダムに選択し(ステップS307)、ai=ge’ mod p, bi=we’ mod pを計算する(ステップS308)。
,b,…,aL,bLの計算が完了した後、d=H(M,w,S,y,k,…,kL,a,b,…,aL,bL)を計算し(ステップS309)、di=d−(d+…+di-1+di+1+…+dL) mod q及びci=e’−dii mod qを計算する(ステップS310)。
そして、b=b’+dsi mod qを計算する(ステップS311)。
最後に、署名者Piは、(M,S,y,b,c,d,…,cL,dL,k,…,kL)を署名付き文書として公開する(ステップS312)。
なお、(M,S,y,b,c,d,…,cL,dL,k,…,kL)において、Mが署名対象の文書、Sが第1の成分、(y,b,c,d,…,cL,dL)が第2の成分である。
また、k,…,kLはそれぞれユーザP,…,PLの公開鍵である。なお、デジタル署名情報にユーザP,…,PLの公開鍵を含ませる代わりに、それらを特定可能とする情報を含ませるようにしてもよい。
(署名検証装置)
図3に、本実施形態に係る署名検証装置のブロック図の一例を示す。
演算器401は、多倍長の演算を実行する部分であり、具体的には、排他的論理和の計算、ビット連結・分割、ビットの比較などを行う。
入出力部406は、デジタル署名情報生成装置により生成された署名付き文書(M,S,y,b,c,d,…,cL,dL,k,…,kL)を受け付ける。入出力部406は、自装置と外部との間で取り交わされるその他のデータの入出力も行う。
判定部413は、入出力部406から受け付けられたデジタル署名情報について、(M,S,y,b,c,d,…,cL,dL,k1,…,kL)から構成されるか否かを検査する。
署名検証部407は、ユーザP,…,PLの公開鍵k1,…,kLを利用してデジタル署名情報を検証する。
関数演算部407,408,409は、それぞれ、ランダム関数G,H,Fによる演算を行う。署名検証や確認又は否認プロトコルにおいては、関数演算部408,409,410に保存されたランダム関数を利用する。ランダム関数は、事前に取り決められたものを保存しておいてもよいし、署名者ごとに定められた関数を入出力部406を介して入手・保存してもよい。
制御部411は、装置全体の制御を司る。
メモリ412は、各種データを記憶する。
なお、署名検証装置は、機能的には、鍵に関する処理を行う機能部分と、オフラインでのデータの真正性の検証に関する処理を行う機能部分と、オンラインで署名者の特定又は否認に関する処理を行う機能部分とを有する。
また、署名検証装置は、署名対象の文書にデジタル署名情報を付加した署名付き文書を、ネットワークを介してデジタル署名情報生成装置又は他の装置から受信する機能や、署名付き文書を記録した記録媒体から読み込む機能を含んでもよい。
(署名検証手順)
以下、本構成例に係るデジタル署名情報生成装置により生成されたデジタル署名情報を検証する方法について説明する。
図4に、本構成例に係る署名検証処理手順の一例を示す。
検証者は、署名付き文書(M,S,y,b,c,d,…,cL,dL,k,…,kL)を受け付けた後(ステップS501)、w=G(M)を計算する(ステップS502)。
次に、検証者は、j=1,…,Lについて、aj=gcjj dj mod p及びbj=wcjdj mod pを計算し(ステップS503)、d=H(M,w,S,y,k1,…,kL,a1,b1,…,aL,bL)を計算する(ステップS504)。
最後に、検証者は、ySd=wb mod pかつd=d1+…+dL mod qが成り立つかどうか検査して(ステップS505)、検査に合格なら署名を受理し(ステップS506)、不合格なら署名を棄却する(ステップS507)。
(確認及び否認プロトコル)
本構成例における確認及び否認プロトコルは、(M,S)を用いて上述した文献Aの確認及び否認プロトコルと同じ処理により実行することができる。
以上説明した第1の構成例では、有限体の乗法群上の離散対数問題を利用した例を示したが、楕円曲線の点のなす加法群に対しても同様のプロトコルが実現可能である。より具体的には、例えば、標数pの体上で定義された楕円曲線Eの上の点Pと、点Pで生成される位数qの加法群Aを用いればよい。また、本構成例のgの代わりにPを利用し、乗法群における冪乗剰余演算を楕円曲線上のスカラー倍算に、乗法群における剰余乗算を楕円曲線上の加算にそれぞれ置き換えればよい。
なお、公開鍵は必要に応じて取得できればよく、認証局を用いない構成も可能である。
本構成例によれば、署名検証時には、署名者と通信を行う必要がなく、署名者の特定あるいは署名者以外のユーザの否認には、対象となるユーザとの通信を必要とするデジタル署名を実現することができる。
また、本構成例によれば、グループ管理者が不要であり、各署名者が自ら公開鍵と秘密鍵を生成することができるため鍵生成の効率が良く、全署名者の秘密情報が集中することもないため管理が容易となる。さらに、自らが署名者ではない署名で疑いがかけられた場合には、署名生成処理で生成された署名者の特定又は否認が可能となる第1の成分により署名を生成していないという事実を証明できる。また、署名者の特定には署名者を除く全てのダミー署名者が否認を行わない限り署名者との交信が必要であり、署名者が意図しないところでの匿名性の破棄、すなわちプライバシーに係る情報の暴露はより起こりづらい。また、検証処理において検証者と署名者本人との交信が不要となるため、検証処理の効率が良く、匿名通信技術なども不要となる。
(第2の構成例)
次に、第2の構成例について説明する。
本構成例は、より高いレベルの安全性を保証するために、第1の構成例で用いた否認不可署名(文献Aの否認不可署名)の署名生成過程において、署名者が乱数Rを生成してwをG(M,R)により計算し、M,R,Sを署名付き文書として公開するようにしたものである。
以下では、第1の構成例と相違する点を中心に説明する。
(共通パラメータの準備)
本構成例に係るデジタル署名情報生成装置、署名検証装置を構成するために用いる関数と、それら関数の入出力データの長さについては、第1の構成例と同じである。
(デジタル署名情報生成装置)
本構成例におけるデジタル署名情報生成装置は、第1の構成例(図1)と同じで構わない。ただし、関数演算部207,208のランダム関数G,Hは、乱数Rをもパラメータとして持つものである。
(公開鍵及び秘密鍵の準備)
本構成例における公開鍵及び秘密鍵の生成方法は、第1の構成例と同じである。
(署名生成手順)
本構成例における署名生成手順は、第1の構成例(図2)とほぼ同じであるため、これと相違する点について説明する。
署名者となるユーザPiは、署名対象の文書Mを受け付けた後(ステップS301)、乱数Rを生成して、w=G(M,R)を計算して(ステップS302)、ステップS308までは第1の構成例における署名生成手順と同じ処理を行う。
1,b1,…,aL,bLの計算が完了した後、署名者Piは、d=H(M,R,w,S,y,k1,…,kL,a1,b1,…,aL,bL)を計算し(ステップS309)、ステップS311まで第1の構成例における署名生成手順と同じ処理を行い、(M,R,S,y,b,c1,d1,…,cL,dL,k1,…,kL)を署名付き文書として公開する(ステップS312)。
(署名検証装置)
本構成例における署名検証装置は、第1の構成例(図3)と同じである。ただし、関数演算部407,408のランダム関数G,Hは、乱数Rをもパラメータとして持つものである。
(署名検証手順)
本構成例における署名生成手順は、第1の構成例(図4)とほぼ同じであるため、これと相違する点について説明する。
検証者は、署名付き文書(M,R,S,y,b,c1,d1,…,cL,dL,k1,…,kL)を受け付けた後(ステップS501)、w=G(M,R)を計算する(ステップS502)。その後、検証者は第1の構成例と同様にして、j=1,…,Lについてaj=gcjj dj mod p, bj=wcjdj mod pを計算し(ステップS503)、d=H(M,R,w,S,y,k1,…,kL,a1,b1,…,aL,bL)を計算する(ステップS504)。
最後に、検証者は、ステップS405を行い、検査結果に応じて、署名を受理し、あるいは署名を棄却する(ステップS506,S507)。
(確認及び否認プロトコル)
本構成例における確認及び否認プロトコルは、第1の構成例で用いた確認及び否認プロトコル(文献Aの確認及び否認プロトコル)とほぼ同じであるが、相違する点は、wをG(M)ではなくw=G(M,R)により計算する点(ステップS102S,ステップS102Vs,ステップS102Cv,ステップS102Dv)と、署名付き文書を(M,S)ではなく(M,R,S)とする点(ステップS104S,ステップS101Vv,ステップS104Vs,ステップS105Vs,ステップS116Cv,ステップS117Cv,ステップS116Dv,ステップS117Dv)である。
なお、公開鍵は必要に応じて取得できればよく、認証局を用いない構成も可能である。
本構成例によれば、第1の構成例の効果に加えて、乱数をも用いることにより、より高いレベルの安全性を保証することができる。
(第3の構成例)
第3の構成例では、第1の構成例又は第2の構成例を用いたシステムについて説明する。
なお、以下では、具体例としては、第1の構成例を用いた場合を例示している。
図5に、本構成例に係るデジタル署名システムの一例を示す。
本デジタル署名システムには、認証局601、署名生成端末(第1又は第2の構成例に係るデジタル署名情報生成装置)6021〜602、署名検証端末603が含まれる。これらは、ネットワーク600を介して通信可能である。
署名生成端末には、第1又は第2の構成例に係るデジタル署名情報生成装置を用いる。署名検証端末には、第1又は第2の構成例に係る署名検証装置(署名生成端末に対応するもの)を用いる。
なお、認証局は複数存在してもよい。また、署名検証端末は複数存在してもよい。また、署名生成端末の機能と署名検証装置の機能とを兼ね備えた端末が存在してもよい。
各認証局及び端末は、それぞれ、固有の識別情報IDを有するものとする。
(共通パラメータの準備)
まず、認証局601は、第1又は第2の構成例の「共通パラメータの設定」に従い、lビットの素数p、p−1を割り切るlビットの素数q、位数qの乗法群Aとその生成元g、任意のビット長の値をAの元に写像するハッシュ関数G、任意のビット長の値をZ/qZの元に写像するハッシュ関数H、及び、任意のビット長の値をl2ビットの値に写像するF、否認プロトコルで用いられるあまり大きくない値maxを公開する。
(公開鍵及び秘密鍵の準備と登録)
次に、署名生成端末i(iは1からLまでのいずれかをあらわす)は、共通パラメータをネットワーク600を通じて入手して自端末内部に保存し、第1又は第2の構成例の「公開鍵及び秘密鍵の準備」に基づいて、自端末内で秘密鍵siと公開鍵kiを生成して、秘密鍵siを秘密裏に保持し、公開鍵kiをネットワーク600を通じて自らの識別情報IDiとともに認証局601に送信する。
認証局601は、署名生成端末iから識別情報IDi及び公開鍵kiを受け取り、必要に応じて署名生成端末iが過去に不正な処理を行った端末であるかなどの調査を行った後、識別情報IDi及び公開鍵kiを、例えば図6に示すような表として、保存する。
(署名生成手順)
署名生成端末iにユーザから署名対象の文書Mが入力される。
このとき、署名生成端末iは、必要に応じて認証局601に問い合わせを行って、ネットワーク600経由で他の署名生成端末の公開鍵kj(jは1からLのうちi以外のインデックスのいずれかをあらわす)を複数入手する。他の署名生成端末の公開鍵が署名生成端末iに保存されている場合には、上記の問い合わせを行う必要はない。
その後、署名対象の文書M、他の署名生成端末の公開鍵、署名生成端末iが内部に保存する秘密鍵si及び共通パラメータ、署名生成端末iが内部で生成する乱数成分を用いて第1又は第2の構成例の「署名生成手段」に基づいて署名生成を行い、(M,S,y,b,c1,d1,…,cL,dL,k1,…,kL)を、署名付き文書として、ネットワーク600上に公開する。
なお、署名付き文書に含まれる公開鍵k1,…,kLの代わりに、対応する署名生成端末の識別情報ID1,…,IDLを添付することも可能である。あるいは、公開鍵と識別情報の両方を付加してもよい。
(署名検証手順)
署名検証端末603は、ネットワーク600を通して署名付き文書(M,S,y,b,c1,d1,…,cL,dL,k1,…,kL)を入手する。
署名検証端末603は、認証極601に問い合わせを行い、公開鍵k1,…,kLに対応する署名生成端末の識別情報ID1,…,IDLを入手する。あるいは、署名付き文書に公開鍵k1,…,kLの代わりに、識別情報ID1,…,IDLが付加されている場合には、認証極601に問い合わせを行い識別情報ID1,…,IDLに対応する署名生成端末の公開鍵k1,…,kLを入手する。
次に、署名検証端末603は、第1又は第2の構成例の「署名検証手段」に基づいて署名付き文書の正当性を検証する。検査に合格の場合には、署名付き文書が識別情報ID1,…,IDLに対応するL個の署名生成端末のうちのいずれかにより生成されたとして署名を受理する。検査に不合格の場合には、署名を棄却する。
以上の署名検証処理は、署名生成端末との通信を必要とせず、また、署名検証処理に合格する場合においても、いずれの署名生成端末が署名を生成したかの特定は困難である。
(確認及び否認プロトコル)
署名検証端末603がある署名生成端末(署名生成端末i)が署名付き文書(M,S,y,b,c1,d1,…,cL,dL,k1,…,kL)を生成したか否かを確認する方法について説明する。
署名検証端末603は、署名生成端末iに向けて確認及び否認プロトコルの実行依頼と署名付き文書のうち(M,S)を送信する。
署名生成端末iは第1又は第2の構成例の「確認及び否認プロトコル」に基づいて、(M,S)が自らの秘密鍵に基づいて生成された署名である場合には、確認プロトコルを、そうでない場合には、否認プロトコルを、署名検証装置603との間で実行する。
なお、公開鍵は必要に応じて取得できればよく、認証極を用いない構成も可能である。
なお、以上の各機能は、ハードウェアとしても実現可能であるし、ソフトウェアとして記述し適当な機構をもったコンピュータに処理させても実現可能である。
また、本実施形態は、コンピュータに所定の手順を実行させるための、あるいはコンピュータを所定の手段として機能させるための、あるいはコンピュータに所定の機能を実現させるためのプログラムとして実施することもできる。加えて該プログラムを記録したコンピュータ読取り可能な記録媒体として実施することもできる。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
本発明の一実施形態に係るデジタル署名情報生成装置の構成例を示す図 同実施形態に係る署名生成処理手順の一例を示すフローチャート 同実施形態に係る署名検証装置の構成例を示す図 同実施形態に係る署名検証処理手順の一例を示すフローチャート 同実施形態に係るデジタル署名システムの構成例を示す図 同実施形態に係る認証極により保存及び公開される識別情報及び公開鍵のリストの構成例を示す図 否認不可署名の鍵の生成手順を示すフローチャート 否認不可署名の生成手順を示すフローチャート 検証装置(署名検証装置)における否認不可署名の検証手順を示すフローチャート 署名装置(デジタル署名情報生成装置)における否認不可署名の検証手順を示すフローチャート 検証装置(署名検証装置)における否認不可署名の確認手順を示すフローチャート 署名装置(デジタル署名情報生成装置)における否認不可署名の確認手順を示すフローチャート 検証装置(署名検証装置)における否認不可署名の否認手順を示すフローチャート 署名装置(デジタル署名情報生成装置)における否認不可署名の否認手順を示すフローチャート
符号の説明
201,401…演算器、202…乱数生成器、203…乱数メモリ、204…秘密鍵メモリ、205…署名生成部、206,406…入出力部、207〜209,407〜409…ランダム関数演算部、211,411…制御部、212,412…メモリ、600…ネットワーク、601…認証局、6021〜602…署名生成端末、603…署名検証端末

Claims (9)

  1. 署名対象のデータを入力する入力手段と、
    前記データに対する署名者となる第1のユーザの秘密鍵を記憶する記憶手段と、
    前記第1のユーザ以外の第2のユーザの公開鍵の全部又は一部を取得する取得手段と、
    前記データ及び前記秘密鍵を用いて、個々の前記第2のユーザが前記データに対する署名者であることを否認することを可能にする第1の情報を生成する第1の生成手段と、
    前記公開鍵の全部又は一部及び前記秘密鍵を用いて、前記第1の情報が前記秘密鍵を用いて生成されたことを保証するための第2の情報を生成する第2の生成手段と、
    前記第1の情報及び前記第2の情報を含むデジタル署名情報を出力する出力手段とを備えたことを特徴とするデジタル署名情報生成装置。
  2. 前記出力手段は、前記デジタル署名情報に、前記第2の情報の生成に用いた公開鍵又はこれらを特定可能な情報を含む第3の情報をも含めて出力するものであることを特徴とする請求項1に記載のデジタル署名情報生成装置。
  3. 前記第1の生成手段及び前記第2の生成手段は、前記第1の情報及び前記第2の情報の生成に乱数をも用いるものであることを特徴とする請求項1または2に記載のデジタル署名情報生成装置。
  4. 前記データは、前記第1の情報及び前記第2の情報を用いて検証されるものであることを特徴とする請求項1ないし3のいずれか1項に記載のデジタル署名情報生成装置。
  5. 前記第2の情報は、非対話零知識証明を用いて検証されるものであることを特徴とする請求項1ないし3のいずれか1項に記載のデジタル署名情報生成装置。
  6. 前記第2の生成手段は、前記第2の情報を生成するにあたって、前記公開鍵の全部を用いる方法、前記公開鍵のうちから予め定められた数を選択して用いる方法、又は使用すべき公開鍵の数を決定し、前記公開鍵のうちから当該決定された数を選択して用いる方法のいずれかを採るものであることを特徴とする請求項1ないし3のいずれか1項に記載のデジタル署名情報生成装置。
  7. 前記デジタル署名情報を用いた検証を行う署名検証装置と通信するための手段を更に備えたことを特徴とする請求項1ないし6のいずれか1項に記載のデジタル署名情報生成装置。
  8. 入力手段と第1の生成手段と第2の生成手段と出力手段とを備えたデジタル署名情報生成装置のデジタル署名情報生成方法であって、
    前記入力手段が、署名対象のデータを入力するステップと、
    前記第1の生成手段が、前記データ及び前記データに対する署名者となる第1のユーザの秘密鍵を用いて、前記第1のユーザ以外の個々の第2のユーザが前記データに対する署名者であることを否認することを可能にする第1の情報を生成するステップと、
    前記第2の生成手段が、前記第1のユーザ以外の第2のユーザの公開鍵の全部又は一部及び前記秘密鍵を用いて、前記第1の情報が前記秘密鍵を用いて生成されたことを保証するための第2の情報を生成するステップと、
    前記出力手段が、前記第1の情報及び前記第2の情報を含むデジタル署名情報を出力するステップとを有することを特徴とするデジタル署名情報生成方法。
  9. デジタル署名情報生成装置としてコンピュータを機能させるためのプログラムにおいて、
    前記プログラムは、
    署名対象のデータを入力するステップと、
    前記データ及び前記データに対する署名者となる第1のユーザの秘密鍵を用いて、前記第1のユーザ以外の個々の第2のユーザが前記データに対する署名者であることを否認することを可能にする第1の情報を生成するステップと、
    前記第1のユーザ以外の第2のユーザの公開鍵の全部又は一部及び前記秘密鍵を用いて、前記第1の情報が前記秘密鍵を用いて生成されたことを保証するための第2の情報を生成するステップと、
    前記第1の情報及び前記第2の情報を含むデジタル署名情報を出力するステップとをコンピュータに実行させるものであることを特徴とするプログラム。
JP2005014213A 2005-01-21 2005-01-21 デジタル署名情報生成装置、デジタル署名情報生成方法及びプログラム Active JP4679163B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005014213A JP4679163B2 (ja) 2005-01-21 2005-01-21 デジタル署名情報生成装置、デジタル署名情報生成方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005014213A JP4679163B2 (ja) 2005-01-21 2005-01-21 デジタル署名情報生成装置、デジタル署名情報生成方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2006203660A JP2006203660A (ja) 2006-08-03
JP4679163B2 true JP4679163B2 (ja) 2011-04-27

Family

ID=36961249

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005014213A Active JP4679163B2 (ja) 2005-01-21 2005-01-21 デジタル署名情報生成装置、デジタル署名情報生成方法及びプログラム

Country Status (1)

Country Link
JP (1) JP4679163B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4738003B2 (ja) * 2005-01-24 2011-08-03 日本電信電話株式会社 署名システム、署名方法
EP2154667A4 (en) 2007-05-25 2015-11-11 Nec Corp KEY EXCHANGE DEVICE AND KEY EXCHANGE METHOD
JP5371698B2 (ja) * 2009-10-30 2013-12-18 株式会社エヌ・ティ・ティ・データ 電子署名システム及び電子署名方法
CN117240477B (zh) * 2023-11-13 2024-02-23 泉州信息工程学院 一种基于rsa算法的数字签名方法、系统及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09298537A (ja) * 1996-04-26 1997-11-18 Canon Inc ディジタル署名方式およびそれを用いた情報通信システム
JP2004229137A (ja) * 2003-01-24 2004-08-12 Canon Inc 連鎖型署名作成方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09298537A (ja) * 1996-04-26 1997-11-18 Canon Inc ディジタル署名方式およびそれを用いた情報通信システム
JP2004229137A (ja) * 2003-01-24 2004-08-12 Canon Inc 連鎖型署名作成方法

Also Published As

Publication number Publication date
JP2006203660A (ja) 2006-08-03

Similar Documents

Publication Publication Date Title
US9967239B2 (en) Method and apparatus for verifiable generation of public keys
US8856524B2 (en) Cryptographic methods, host system, trusted platform module, computer arrangement, computer program product and computer program
JP5201136B2 (ja) 匿名認証システムおよび匿名認証方法
US7590850B2 (en) Digital signature method based on identification information of group members, and method of acquiring identification information of signed-group member, and digital signature system for performing digital signature based on identification information of group members
JP4692284B2 (ja) グループ署名システム、方法、装置、およびプログラム
JP4899867B2 (ja) グループ署名方式
JP4932168B2 (ja) 新しいフェア・ブラインド署名プロセス
US8041944B2 (en) Group signature system and information processing method
CN106789087B (zh) 确定消息的数据摘要、基于多方的数字签名的方法及系统
Camenisch et al. An identity escrow scheme with appointed verifiers
JP4679163B2 (ja) デジタル署名情報生成装置、デジタル署名情報生成方法及びプログラム
WO2007010903A1 (ja) 鍵発行方法、グループ署名システム
EP4111637A1 (en) (ec)dsa threshold signature with secret sharing
CN116346336B (zh) 一种基于多层密钥生成中心的密钥分发方法及相关系统
JP3513324B2 (ja) ディジタル署名処理方法
CN114090649A (zh) 基于变色龙哈希函数的消息查找方法、系统、装置及介质
JP3484069B2 (ja) 秘密情報認証方法及び合同多項式認証方法並びに当該認証プログラムを記録した記録媒体
JP5486454B2 (ja) ディジタル署名・検証システム、ディジタル署名・検証方法、署名装置、検証装置、及びそれらのプログラム
JP3331329B2 (ja) 公開検証可依頼復元ブラインド署名方法、その装置及びプログラム記録媒体
JP3316466B2 (ja) 電子無記名投票方法、その装置及びプログラム記録媒体
Tom et al. Performance and Security of Group Signature in Wireless Networks
Lee Cryptanalysis of Zhu et al.’s Identity-Based Encryption with Equality Test without Random Oracles
JP2000231330A (ja) ブラインド署名方法、そのシステム、その装置およびプログラム記録媒体
JP3285190B2 (ja) 範囲認証方法
JPH09298538A (ja) 秘密保持認証方法及びシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071228

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101116

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101217

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110201

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

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350