Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4738003B2 - 署名システム、署名方法 - Google Patents
[go: Go Back, main page]

JP4738003B2 - 署名システム、署名方法 - Google Patents

署名システム、署名方法 Download PDF

Info

Publication number
JP4738003B2
JP4738003B2 JP2005015336A JP2005015336A JP4738003B2 JP 4738003 B2 JP4738003 B2 JP 4738003B2 JP 2005015336 A JP2005015336 A JP 2005015336A JP 2005015336 A JP2005015336 A JP 2005015336A JP 4738003 B2 JP4738003 B2 JP 4738003B2
Authority
JP
Japan
Prior art keywords
signature
key
unit
participating
generation
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 - Lifetime
Application number
JP2005015336A
Other languages
English (en)
Other versions
JP2006203754A (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.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
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 Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2005015336A priority Critical patent/JP4738003B2/ja
Publication of JP2006203754A publication Critical patent/JP2006203754A/ja
Application granted granted Critical
Publication of JP4738003B2 publication Critical patent/JP4738003B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

本発明は、情報セキュリティ技術に関するものであり、閾値つき電子署名技術に関する。
閾値つき電子署名技術は、複数の参加者の一部が協力することで署名が生成されたことを、誰が署名生成に協力したのかが分からないように署名のみから確認できる電子署名である。n人の参加者うち任意のt人以上が協力することで署名が生成されたことを、誰が署名生成に協力したのかが分からないように署名のみから確認できる電子署名の方式を、(t,n)閾値電子署名方式と呼ぶ。従来の方法として非特許文献1に示された方法がある。最初に本説明中で使用する記号について説明する。離散対数問題が難しいと考えられている巡回群をGとし、その生成元をg、群の位数をqとする(G=<g>,#G=q)。Zは、qを法とする剰余類{0,1,2,…,q−1}である。∈は一様ランダムに元を取り出すことを、{0,1}は0または1が任意長並んだビット列を、Kは有限体を意味する。また、H,I,JはそれぞれH:{0,1}→G,I:K→Z,J:{0,1}→Kのように変換するハッシュ関数である。以下に非特許文献1に示された方法について説明する。
図1に、閾値つき電子署名システムの構成例と流れを示す。本システムへの参加者の総数はn人であり、n台の参加装置910−i(i=1,…,n)では、あらかじめ定められた巡回群Gの元g(g∈G)を用いて、各参加装置の秘密鍵skと公開鍵pkとが生成され、公開鍵pkは公開される。署名を作成する場合は、n人中の任意のt人以上が参加装置910−i(i=1,…,t)でコミットメントaを生成し、署名生成部920を備える装置に送信する。ここで、説明を簡略化するために、i=1,…,tを署名生成に使用した(協力した)参加装置を示す数、i=t+1,…,nを署名作成に使用していない(協力しなかった)参加装置を示す数とするが、t台の参加装置はn台の参加装置中のどれでも良い。
署名生成部920は、独立した装置ででもかまわないし、いずれかの参加装置内に備えさせてもかまわない。署名生成部920は、i=t+1,…,nに対するダミーレスポンスe、ダミーチャレンジc、およびダミーコミットメントaを生成した上で、n−t次多項式f(x)、i=1,…,tに対するチャレンジcとレスポンスeとを生成し、署名σ(m)を作成する。この署名σ(m)はt台の参加装置910−i(i=1,…,t)から取得したコミットメントaと、署名生成部920がダミーとして生成したコミットメントa(i=t+1,…,n)等から生成されており、t人が協力した署名生成になっているだけでなく、どのt人が協力したのかが分からない署名になっている。
署名検証部930は、署名検証を行いたい任意の装置内に備えてかまわない。署名検証部では、多項式f(x)の次数がn−tであること、チャレンジc(i=1,…,n)とf(0)の値が正しいことなどを検証する。
図2は、参加装置910−iの機能構成例を示す図である。参加装置910−iは、鍵生成部911−i、署名者証拠生成部912−i、記録部913−i、および通信部914−iから構成される。図3は鍵生成部911−iの処理フローを示す図であり、図4は署名者証拠生成部912−iの処理フローを示す図である。
鍵生成部911−iは、秘密鍵sk生成手段9111−iと公開鍵pk生成手段9112−iとで構成される。鍵生成部911-iでの具体的な鍵生成方法の例を次に示す。秘密鍵sk生成手段9111−iでは、qを法とする剰余類Zから等確率でランダムに1つの元を選択して秘密鍵skとし(sk)(S9111)、秘密鍵skを記録部913−iに記録する(S9112)。公開鍵pk生成手段9112−iでは、あらかじめ定められた巡回群Gの元gを用いて、
Figure 0004738003
により公開鍵pk(pk∈G={1,g,g,…,gq−1})を生成し(S9113)、公開鍵pkを記録部913−iに記録する(S9114)。ここで、巡回群Gは、離散対数問題が難しい群から選ばれているため、公開鍵pkと元gが分かっても、秘密鍵skは分からない。このように生成された公開鍵pkは、元gの情報とともに通信部914−iを介して公開される。
署名者証拠生成部912−iは、署名生成に協力する場合に動作する構成部であり、署名者証拠r生成手段9121−i、コミットメントa生成手段9122−i、チャレンジc取得手段9123−i、およびレスポンスe生成手段9122−iで構成される。署名者証拠生成部912−iでの具体的な処理手順の例を次に示す。参加者が署名に協力する場合には、署名者証拠r生成手段9121−iでは、qを法とする剰余類Zから等確率でランダムに1つの元を選択して署名者証拠rとする(r)(S9121)。次にコミットメントa生成手段9122−iでは、元gを用いて、
Figure 0004738003
によりコミットメントa(∈G)を生成し(S9122)、コミットメントaを記録部913−iに記録し、通信部914−iを介して署名生成部920を備える装置に送信する(S9123)。通常、署名者証拠rはコミットメントaを生成すれば不要となるため、記録部913−iに記録されること無く消去される。署名生成部920で署名生成処理が行われると、署名生成部920の計算部922の処理過程で生成されたチャレンジcが署名生成部920から、署名生成に協力している参加装置910−i(i=1,…,t)に送信される。このチャレンジcをチャレンジc取得手段9123−iで取得し(S9124)、記録部913−iに記録する(S9125)。また、レスポンスe生成手段9122−iで、e:=r−csk(e∈Z)により、e(i=1,…,t)を求め(S9126)、記録部913−iに記録するとともに署名生成部920に送信する(S9127)。
図5に署名生成部920の機能構成例を示す。署名生成部920は、ダミー生成部921、計算部922、情報取得部923、記録部924、および通信部925から構成されている。また、図6は署名生成部920の処理フローを示す図である。
署名生成部920では、以下の手順で署名σ(m)が生成される。通信部925を介して情報取得部923の公開鍵pk(i=1,…,n)取得手段9231により、参加装置910−i(i=1,…,n)の公開鍵pkを取得する(S9231)。ダミー生成部921では、次のように、ダミーレスポンスe、ダミーチャレンジc、ダミーコミットメントa(i=t+1,…,n)を生成する。ダミーレスポンスe(i=t+1,…,n)生成手段9211により、qを法とする剰余類Zから等確率でランダムに1つの元を選択してダミーレスポンスe(i=t+1,…,n)とし(e)(S9211)、記録部924に記録する(S9212)。ダミーチャレンジc(i=t+1,…,n)生成手段9212により、有限体Kから等確率でランダムに1つの座標値yを選び、そのハッシュ関数をダミーチャレンジc(i=t+1,…,n)とし(yK,c:=I(y)∈Z)(S9213)、記録部924に記録する(S9214)。また、ダミーコミットメントa(i=t+1,…,n)生成手段9213により、元gと公開鍵pkを用いて、
Figure 0004738003
によりダミーコミットメントa(i=t+1,…,n)を生成し(S9215)、記録部924に記録する(S9216)。
また、通信部925を介して情報取得部923のコミットメントa(i=1,…,t)取得手段9232により、参加装置910−i(i=1,…,t)のコミットメントaを取得する(S9232)。
次に、計算部922では、以下のようにメッセージmの(t,n)閾値署名σ(m)を求める。n−t次多項式f(x)計算手段9221により、n−t次の多項式f(x)(f(x)=α+αx+α+…+αn−tn−t,α∈K)と定め、f(0)=J(t,n,pk,…,pk,a,…,a,m)とf(i)=y(i=t+1,…,n)の条件からα(j=0,…,n−t)を計算することでn−t次多項式f(x)を求める(S9221)。また、求めたn−t次多項式f(x)を記録部924に記録する(S9222)。チャレンジc(i=1,…,t)生成手段9222では、c:=I(f(i))により、チャレンジc(i=1,…,t)を求め(S9223)、記録部924に記録するとともに、チャレンジcに対応する参加装置910−i(i=1,…,t)にチャレンジcを送信する(S9224)。各参加者装置910−i(i=1,…,t)では、送信されたチャレンジcを用いて、上記のようにレスポンスeを生成し署名生成部920に送信する(S9124〜S9127)。そこで、レスポンスe(i=1,…,t)取得手段9223は、レスポンスe(i=1,…,t)を取得し(S9225)、記録部924に記録する(S9226)。署名σ(m)作成手段9223では、σ(m)=(t,n,f,c,…,c,e,…,e)により、σ(m)を求め(S9227)、記録部924に記録する(S9228)。このようにしてメッセージmに対する(t,n)閾値署名σ(m)を求める。
図7に署名検証部930の機能構成例を示す。また、図8に署名検証部930での署名σ(m)を検証するフローを示す。情報取得手段933は、公開鍵pk(i=1,…,n)と署名σ(m)を取得し(S933)、多項式f(x)の次数確認手段931で多項式f(x)の次数がn−tであることを確認し(S931)、チャレンジc、多項式f(0)確認手段932で、
Figure 0004738003
であることを確認する(S932)。
このように署名σ(m)の生成と検証を行うことで、署名検証部930(署名検証をする人)は、少なくともt台の参加装置910−i(t人の参加者)が協力して署名を作成したことが確認できる。また、署名検証部930は、n台の参加装置910−i中のどのt台(n人の参加者中のどのt人)が署名生成に協力したのかは分からない。
[CDS94] R. Cramer and I. Damgard and B. Schoen-makers, Proofs of Partial Knowledge and Simplified Design of Witness Hiding Protocols, CRYPTO ’94, pp. 174-187, 1994.
従来技術では、どの参加者が署名生成に協力したのかが分からないことを特徴としているが、参加者が署名生成に協力したことを証明すること(名乗り出ること)もできなかった。
また、署名生成に協力したことを証明することができるようにする場合には、何人の参加者が証明できるのかを署名から確認できるようにすることも必要である。さらに、署名生成に協力したことを証明するときに秘密鍵の情報も流出することが考えられることから、以後、今までの秘密鍵と公開鍵が使用できなくなる。
本発明では、あらかじめ参加装置の記録部で署名者証拠を記録しておき、参加者が署名生成に協力したことを証明したい場合に当該署名者証拠を公開し、署名検証装置で当該署名者証拠を確認する。
また、何人の参加者が証明できるのかを署名から確認できるようにするための手段は以下のとおりである。ダミー鍵生成装置の情報取得部で署名生成に協力していない参加装置に対する公開鍵を少なくとも1つ生成し、当該公開鍵および公開鍵生成時に使用した乱数と離散対数問題の難しい巡回群の元を公開する。署名生成装置でダミーの公開鍵も用いて電子署名を生成する。署名検証装置でダミーの公開鍵を含めて公開鍵を取得し、ダミーの公開鍵生成時に使用した上記乱数と離散対数問題の難しい巡回群の上記元も取得し、署名者参加者数を確認する。
さらに、署名生成に協力したことを証明するときに秘密鍵の情報も流出することに対応する手段は以下のとおりである。参加装置では、公的機関に公開鍵を登録するような長期的に使用する秘密鍵と公開鍵の組(第1の秘密鍵と公開鍵)の他に、署名生成に用いる使い捨ての秘密鍵と公開鍵の組(第2の秘密鍵と公開鍵)を生成し、ダミー鍵生成装置で少なくとも1つの第2の公開鍵に対するダミー公開鍵を生成する。署名生成装置では、第1の署名と第2の署名とを生成する。署名検証装置では、参加者装置ごとの第1の公開鍵、第2の公開鍵を取得し、第1の署名および第2の署名の確認を行う。
または、参加装置で、署名生成に用いる使い捨ての秘密鍵(第2の秘密鍵)を、第1の秘密鍵から生成する。署名生成装置では、第2の秘密鍵を用いた署名だけを生成する。署名検証装置で、第1の公開鍵および第1の鍵生成と第2の鍵生成で使用した2つの問題の難しい巡回群の元を用いて署名を検証する。
本発明では上記のような手段により、参加者が署名生成に協力したことを証明したい場合に、証明することができる。また、何人の参加者が証明できるのかを署名から確認できる。さらに、使い捨て秘密鍵(第2の秘密鍵)を使用することにより、公的機関に登録しているような公開鍵と組となる秘密鍵の情報流出を避けることができる。
以下にこの発明の実施形態を図面を参照して説明するが、同一の機能を有する部分は、各図中に同一参照番号を付けて重複説明を省略する。また、以下の説明でも背景技術の説明と同様に、説明を簡単にするために、i=1,…,tを署名生成に協力した参加装置を示す数、i=t+1,…,nを署名作成に協力しなかった参加装置を示す数とするが、t台の参加装置はn台の参加装置中のどれでも良い。
[第1実施形態]
本発明では、tを1≦t≦nとし、(t,n)閾値署名方式で署名に協力した参加者i(i=1,…,t)が、署名検証後に署名に協力したことを証明できる。図9は本発明のシステム構成例と流れを示す図であり、従来技術のシステム構成例を示す図である図1との違いは、次の点である。各参加者装置110−i(i=1,…,t)が、署名作成に協力する過程で生成した署名者証拠rを記録しておき、署名生成に協力したこと(署名者の1人であったこと)を証明したい場合に、署名者証拠rを、署名検証部130を備える装置に送信することで、署名生成に協力したことを証明する。以下に、従来技術と異なる構成装置について詳細に説明する。
図10は、参加装置110−iの機能構成例を示す図である。参加装置110−iは、従来の参加装置910−iとは、署名者証拠生成部112−iと記録部113−iが異なり、署名者証拠公開部115−iが追加されている。図11は署名者証拠生成部112−iの処理フローを示す図であり、図12は署名者証拠公開部115−iの処理フローを示す図である。図11に示すように、署名者証拠生成部112−iでは、従来であれば、通常コミットメントaを生成すれば不要となる署名者証拠rを、記録部913−iに記録する工程(S1121)を署名者証拠r生成ステップ(S9121)の後に追加した処理を行う。また、参加者iが署名生成に協力したことを証明したい場合には、図12に示すように、署名者証拠公開部115−iは、記録部113−iに記録された署名者証拠rを署名検証部130に対して公開する(S115)。
図13に署名検証部130の機能構成例を示す。図7に示す従来の署名検証部930との違いは、署名者証拠r確認手段133が追加されたことと、情報取得手段134が署名者証拠rも取得するよう変更されたことである。図14に署名に協力したことを証明したい参加者から署名者証拠rが公開された場合の、署名者証拠r確認フローを示す。署名に協力したことを証明したい参加者iから署名者証拠rが公開された場合には、署名検証部130の情報取得手段134は署名者証拠rを取得する(S134)。次に、署名者証拠r確認手段133で、
Figure 0004738003
であることを確認する(S133)ことで、署名者証拠rを公開した参加者iが署名生成に協力した参加者であることが分かる。
ただし、署名者証拠r、レスポンスe、チャレンジc、および秘密鍵skの間には、e=r−cskの関係があるため、署名者証拠rを公開することで、秘密鍵skも分かってしまう。したがって、署名に協力したことを証明した後は、これまで使用してきた秘密鍵skと公開鍵pkの組は使用できなくなる。
[第2実施形態]
本発明は、tを1≦t≦n−1とする(t,n−1,n)閾値署名方式に関する。(t,n−1,n)閾値署名方式とは、署名者であったことを証明することができる参加者は、t人以上n-1人以下であることを署名のみから確認できる方式である。図15は、本発明のシステム構成例と流れを示す図であり、第1実施形態との違いは、ダミー鍵生成部240が追加されたことと、署名検証部230が変更されたことである。ダミー鍵生成部240では、参加装置110−nの鍵生成部911−nの代わりに署名生成に使用する公開鍵pkを生成する。この公開鍵pkを用いて署名を生成することで、署名者であったことを証明することができる参加者がt人以上n-1人以下であることを署名のみから確認できる方式を実現する。以下に本発明を詳しく説明する。
図16にダミー鍵生成部240の機能構成例を、図17にダミー鍵生成部240の処理フローを示す。ダミー鍵生成部240では、通信部243を介して情報取得部242の公開鍵pk(i=1,…,n−1)取得手段2421で、参加装置110−i(i=1,…,n−1)の公開鍵pkを取得する(S2421)。計算部241のダミー公開鍵pk生成手段2411で、巡回群Gに属する元x(x∈G)を、例えば{0,1}の乱数Rのハッシュ値として生成する(x=H(R))。例えば、乱数Rのビット長を1024とする。ここで、秘密鍵skはqを法とする剰余類Zから等確率でランダムに1つの元(sk)であり(S9111参照)、公開鍵pkは巡回群Gの元(pk∈G)である(S9113参照)。公開鍵pkをpk:=x/pkpk…pkn−1と定め(S2411)、公開鍵pk、元x、および乱数Rを公開する(S2412)。このように公開鍵pkを定めると、xの離散対数は分からないので参加者nの秘密鍵は分からない。
なお、ダミー鍵生成部240を各参加装置110−i(i=1,…,n)に備えさせておき、ダミーの公開鍵を作ることとした1つの参加装置110−nだけは、ダミー鍵生成部240で公開鍵pkを生成することとしてもよい。また、単独のダミー鍵生成部240を具備するダミー鍵生成装置を1つ設置し、参加装置110−nの代わりに公開鍵pkを生成し、直接または参加装置110−n経由で公開鍵pkを公開してもよい。
図18に署名検証部230の機能構成例を示す。第1実施形態との違いは、署名参加者数確認手段235が追加されたことと、情報取得手段234が元xとRも取得するよう変更されたことである。図19に署名検証部230が署名σ(m)を検証するフローを示す。第1実施形態の署名σ(m)の検証フローは従来技術を同じであるので、本フローの違いは図8に示した従来の署名σ(m)の検証フローとの違いを説明する。署名検証部230では、情報取得手段234で、公開鍵pk(i=1,…,n)、署名σ(m)、元x、および乱数Rを取得し(S234)、多項式f(x)の次数確認(S931と同じ)、チャレンジc、多項式f(0)確認(S932と同じ)を行う。さらに、署名参加者数確認手段235で、x=H(R)とpkpk…pk=xを確認する(S235)。
このように署名σ(m)を生成、検証することで、どの公開鍵pkかは分からないが、少なくとも1つは秘密鍵がないダミーの公開鍵があることになるため、署名生成に協力したことを証明できる参加者がt人以上n−1人以下であることが署名のみから確認できる。
[第3実施形態]
本発明は、tとt’とを1≦t≦t'≦n−1とする(t,t’,n)閾値署名方式に関する。(t,t’,n)閾値署名方式とは、署名者であったことを証明することができる参加者は、t人以上t’人以下であることを署名のみから確認できる方式である。図20は、本発明のシステム構成例と流れを示す図であり、第2実施形態との違いは、ダミー鍵生成部340と署名検証部330が変更されたことである。ダミー鍵生成部340では、参加装置110−i(i=t’,…,n)の鍵生成部911−i(i=t’,…,n)の代わりに署名生成に使用する公開鍵pk(i=t’,…,n)を生成する。この公開鍵pkを用いて署名を生成することで、署名者であったことを証明することができる参加者がt人以上t'人以下であることを署名のみから確認できる方式を実現する。以下に本発明を詳しく説明する。
図21にダミー鍵生成部340の機能構成例を、図22にダミー鍵生成部340の処理フローを示す。ダミー鍵生成部340では、通信部243を介して情報取得部342の公開鍵pk(i=1,…,t')取得手段3421で、参加装置110−i(i=1,…,t')の公開鍵pkを取得する(S3421)。計算部341のダミー公開鍵pk(i=t'+1,…,n)生成手段では、巡回群Gに属する元A(A∈G)を、例えば{0,1}の乱数Rのハッシュ値として生成する(A=H(R))。(mij)を、
Figure 0004738003
のt'×t'行列(i)の逆行列として、A(i=1,…,t')を
Figure 0004738003
と定め、公開鍵pk(i=t'+1,…,n)を
Figure 0004738003
として公開鍵pkを生成し(S3411)、公開鍵pk、元A、および乱数Rを公開する(S3412)。このように公開鍵pk(i=t'+1,…,n)を生成すれば、公開鍵pk∈Gを満足するので、t’次多項式F(F∈Z[x])が存在し、秘密鍵sk=F(i)かつlog=F(0)となっている。ここで、Aの離散対数は分からないので、参加者i(i=t'+1,…,n)の秘密鍵は分からない。
図23に署名検証部330の機能構成例を示す。第2実施形態との違いは、署名参加者数確認手段335と、情報取得手段334が変更されたことである。図24に署名検証部330が署名σ(m)を検証するフローを示す。署名検証部330では、情報取得手段334で、公開鍵pk(i=1,…,n)、署名σ(m)、元A(i=1,…,t')、および乱数Rを取得し(S334)、多項式f(x)の次数確認(S931と同じ)、チャレンジc、多項式f(0)確認(S932と同じ)を行う。さらに、署名参加者数確認手段335で、A=H(R)と
Figure 0004738003
(pk∈G)(i=1,…,n)を確認する(S335)。
このように署名σ(m)を生成、検証することで、どの公開鍵pkかは分からないが、少なくともn−t’は秘密鍵がないダミーの公開鍵があることになるため、署名生成に協力したことを証明できる参加者がt人以上t’人以下であることが署名のみから確認できる。
[第4実施形態]
本発明は、参加者が署名生成に協力したことを証明した後も同じ公開鍵を使うことができるよう第2実施形態を改良したものであって、tを1≦t≦n−1とする(t,n−1,n)閾値署名方式に関する。図25は、本発明のシステム構成例と流れを示す図であり、第2実施形態との違いは、参加装置410−i(i=1,…,n)、署名生成部420、署名検証部430、およびダミー鍵生成部440のそれぞれが、通常の秘密鍵と公開鍵(第1の秘密鍵と公開鍵)および署名者証拠rを公開すると使用できなくなる使い捨ての秘密鍵と公開鍵(第2の秘密鍵と公開鍵)の2種類の鍵に対応できるよう変更されたことである。2種類の鍵を使用することにより、第2実施形態の効果は維持しながら、公の機関に登録しているような公開鍵(第1の公開鍵)が署名者証拠rの公開後も使用できる。以下に本発明を詳しく説明する。
図26は、参加装置410−iの機能構成例を示す図である。参加装置410−iは、第1の秘密鍵と公開鍵を生成する鍵生成部411−i、第2の秘密鍵と公開鍵を生成する鍵生成部911−i、署名者証拠生成部112−i、記録部413−i、通信部914−i、および署名者証拠公開部115−iから構成される。図27は第1の秘密鍵と公開鍵を生成する鍵生成部411−iの処理フローを示す図である。鍵生成部411−iの秘密鍵SK生成手段4111−iでは、任意の(t,n)閾値署名Σ(m)の方法で秘密鍵SKを生成し(S4111)、記録部413−iに記録する(S4112)。この(t,n)閾値署名Σ(m)は従来からある技術を用いればよいし、鍵生成部911−iと同じ方法でも良い。公開鍵PK生成手段4112−iでは、上記の秘密鍵SK生成手段4111−iに対応した方法で公開鍵PKを生成し(S4113)、記録部413−iに記録する(S4114)。鍵生成部411−iで生成された秘密鍵SKと公開鍵PKの組が、継続的に使用し、署名者証拠rを公開後も使用できる鍵となる。また、鍵生成部911−iで生成された秘密鍵skと公開鍵pkの組(鍵生成フローは図3と同じ)が使い捨ての鍵であり、署名者証拠rを公開後は使用できない鍵となる。なお、署名者証拠生成部112−iと署名者証拠r公開部115−iは第1実施形態と同じである。
図28にダミー鍵生成部440の構成例を、図29にダミー鍵生成部440の処理フローを示す。ダミー鍵生成部440では、通信部243を介して情報取得部442の公開鍵PK(i=1,…,n−1)取得手段4421で、参加装置410−i(i=1,…,n−1)の公開鍵PKを取得する(S4421)。また、情報取得部242の公開鍵pk(i=1,…,n−1)取得手段2421で、参加装置410−i(i=1,…,n−1)の公開鍵pkを取得する(S2421と同じ)。計算部441のダミー公開鍵pk生成手段4411で、R=(t,n−1,n,PK,…,PK,m)として、巡回群Gに属する元x(x∈G)を、Rのハッシュ値として生成する(x=H(R))。公開鍵pkをpk:=x/pkpk…pkn−1と定め(S4411)、公開鍵pk、元x、およびRを公開する(S2412と同じ)。このように公開鍵pkを定めると、xの離散対数は分からないので参加者nの秘密鍵は分からない。
図30に署名生成部420の機能構成例を示す。署名生成部420は、ダミー生成部921、計算部422、情報取得部423、記録部424、および通信部925から構成されている。また、図31は署名生成部420の処理フローを示す図である。
署名生成部420では、以下の手順で署名σ(m)と署名Σ(m)が生成される。通信部925を介して情報取得部423の公開鍵PK(i=1,…,n)取得手段4231により、参加装置910−i(i=1,…,n)の公開鍵PKを取得する(S4231)。ステップS9231の公開鍵pk(i=1,…,n)の取得、ダミー鍵生成部の処理フローであるステップS9211〜ステップS9216、およびステップS9232のコミットメントa(i=1,…,t)の取得は、図6での説明と同じである。また、情報取得部423の元x取得手段4233では、元xを取得する(S4233)。計算部422の処理のステップS9221〜S9228の処理は、図6の説明と同じである。したがって、n−t次多項式f(x)、チャレンジc(i=1,…,t)、レスポンスe(i=1,…,t)、メッセージmに対する(t,n)閾値署名σ(m)は、第2実施形態と同じで、背景技術として説明した従来技術と同じである。次に、署名作成手段4225では、M=(t,n−1,n,PK,…,PK,m,x,pk,…,pk)とし、(M,σ(M),Σ(M,σ(M))、(M,Σ(M),σ(M,Σ(M)))、もしくは(M,σ(M),Σ(M))を署名とし(S4227)、記録部424への記憶と公開を行う(S4228)。なお、Σ(m)はステップS4411での秘密鍵SKの生成方法に対応した任意の(t,n)閾値署名Σ(m)の方法を用いればよい。
図32に署名検証部430の機能構成例を、図33に署名検証部430での署名σ(m)と署名Σ(m)の検証フローを示す。情報取得手段434で、公開鍵PK(i=1,…,n)、公開鍵pk(i=1,…,n)、署名σ(m)、元x、およびRを取得する(S434)。多項式f(x)の次数確認(S931と同じ)、チャレンジc、多項式f(0)確認(S932と同じ)を行うことで、σ(m)の検証ができる。また、Σ(m)の検証は、ステップS4411での秘密鍵SKの生成方法に対応した任意の(t,n)閾値署名Σ(m)の方法を用いて行う(S431)。さらに、署名参加者数確認手段235で、x=H(R)とpkpk…pk=xを確認する(S235と同じ)。
このように署名σ(m)と署名Σ(m)を生成、検証することで、署名者証拠rの公開後も秘密鍵SKと公開鍵PKとが使用でき、かつ署名生成に協力したことを証明できる参加者がt人以上n−1人以下であることが署名のみから確認できる。
[第5実施形態]
本発明は、参加者が署名生成に協力したことを証明した後も同じ公開鍵を使うことができるよう第3実施形態を改良したものであって、tとt’を1≦t≦t’≦nとする(t,t’,n)閾値署名方式に関する。図34は、本発明のシステム構成例と流れを示す図であり、第3実施形態との違いは、参加装置410−i(i=1,…,n)、署名生成部520、署名検証部530、およびダミー鍵生成部540のそれぞれが、通常の秘密鍵と公開鍵(第1の秘密鍵と公開鍵)および署名者証拠rを公開すると使用できなくなる使い捨ての秘密鍵と公開鍵(第2の秘密鍵と公開鍵)の2種類の鍵に対応できるよう変更されたことである。2種類の鍵を使用することにより、第3実施形態の効果は維持しながら、公の機関に登録しているような公開鍵(第1の公開鍵)が署名者証拠rの公開後も使用できる。以下に本発明を詳しく説明する。
参加装置410−i(i=1,…,n)は第4実施形態と同じため、説明は省略する。 図35にダミー鍵生成部540の構成例を、図36にダミー鍵生成部540の処理フローを示す。ダミー鍵生成部540では、通信部243を介して情報取得部542の公開鍵PK(i=1,…,n)取得手段4421で、参加装置410−i(i=1,…,n)の公開鍵PKを取得する(S4421と同じ)。また、情報取得部342の公開鍵pk(i=1,…,t’)取得手段3421で、参加装置410−i(i=1,…,t’)の公開鍵pkを取得する(S2421と同じ)。計算部541のダミー公開鍵pk(i=t’+1,…,n)生成手段5411で、R=(t,t’,n,PK,…,PK,m)として、巡回群Gに属する元A(A∈G)を、Rのハッシュ値として生成する(A=H(R))。その後はステップS3411と同じ方法であって、(mij)を、
Figure 0004738003
のt'×t'行列(i)の逆行列として、A(i=1,…,t')を
Figure 0004738003
と定め、
Figure 0004738003
として公開鍵pk(i=t'+1,…,n)を生成する(S5411)。生成された公開鍵pk、元A、およびRを公開する(S3412と同じ)。このように公開鍵pk(i=t'+1,…,n)を生成すれば、第3実施形態と同様に、公開鍵pk∈Gを満足するので、t’次多項式F(F∈Z[x])が存在し、秘密鍵sk=F(i)かつlog=F(0)となっている。ここで、Aの離散対数は分からないので、参加者i(i=t'+1,…,n)の秘密鍵は分からない。
図37に署名生成部520の機能構成例を示す。署名生成部520は、ダミー生成部921、計算部522、情報取得部523、記録部424、および通信部925から構成されている。また、図38は署名生成部520の処理フローを示す図である。この機能構成と処理フローは、ほとんど第4実施形態の署名生成部420と同じであり、異なる点は元xではなく元A(i=0,…,t')を用いる点だけである。異なる点だけを示すと以下のようになる。情報取得部523の元A(i=0,…,t')取得手段5233では、元xではなく元A(i=0,…,t')を取得する(S5233)。署名作成手段5225では、M=(t,t’,n,PK,…,PK,m,A,…,At’,pk,…,pk)とし、(M,σ(M),Σ(M,σ(M))、(M,Σ(M),σ(M,Σ(M)))、もしくは(M,σ(M),Σ(M))を署名とし(S5227)、記録部424への記憶と公開を行う(S4228)。
図39に署名検証部530の機能構成例を、図40に署名検証部530での署名σ(m)と署名Σ(m)の検証フローを示す。情報取得手段534で、公開鍵PK(i=1,…,n)、公開鍵pk(i=1,…,n)、署名σ(m)、元A(i=0,…,t')、およびRを取得する(S534)。多項式f(x)の次数確認(S931と同じ)、チャレンジc、多項式f(0)確認(S932と同じ)を行うことで、σ(m)の検証ができる。また、Σ(m)の検証は、参加装置410−iでの秘密鍵SKの生成方法に対応した任意の(t,n)閾値署名Σ(m)の方法を用いて行う(S431と同じ)。さらに、署名参加者数確認手段335で、A=H(R)と
Figure 0004738003
(pk∈G)(i=1,…,n)を確認する(S335と同じ)。
このように署名σ(m)と署名Σ(m)を生成、検証することで、署名者証拠rの公開後も秘密鍵SKと公開鍵PKとが使用でき、かつ署名生成に協力したことを証明できる参加者がt人以上t’人以下であることが署名のみから確認できる。
[第6実施形態]
本発明は、参加者が署名生成に協力したことを証明した後も同じ公開鍵を使うことができるよう第1実施形態を改良したものであって、tを1≦t≦nとする(t,n)閾値署名方式に関する。図41は本発明のシステム構成例と流れを示す図であり、第1実施形態との違いは、参加装置610−i(i=1,…,n)、署名生成部620、および署名検証部630のそれぞれが、通常の秘密鍵と公開鍵(第1の秘密鍵と公開鍵)および署名者証拠rを公開すると使用できなくなる使い捨ての秘密鍵(第2の秘密鍵)の2種類の鍵に対応できるよう変更されたことである。2種類の鍵を使用することにより、第1実施形態の効果は維持しながら、公の機関に登録しているような公開鍵(第1の公開鍵)が署名者証拠rの公開後も使用できる。また、第4実施形態と第5実施形態との違いとしては、継続的に使用する第1の秘密鍵SKと使い捨ての第2の秘密鍵skとをペアリング写像を用いて関連つけた点にあり、本発明では、署名生成部620は1つの署名σ(m)のみを生成する。
まず、発明の説明のために追加または変更される記号等について簡単に説明する。E={0,P,2P,…,(p−1)P}を加法によりPで生成される位数pの巡回群とする。またEは離散対数問題は難しい(つまりPとaPの値が分かっても、aを求めることは難しい)巡回群である。G={1,g,g,…,g(q−1)}を乗法によりgで生成される位数q(ただしpはqの約数)の巡回群とする。またGは離散対数問題は難しい(つまりgとgの値が分かっても、aを求めることは難しい)巡回群である。<・,・>:E×E→Gを双線形性(つまり<aP,Q>=<P,aQ>=<P,Q>が任意のaに対して成立する)と非退化性(つまり<P,Q>=1が任意のQに対して成り立つならば、P=0)を満たすペアリング写像とする。H,I,JはそれぞれH:{0,1}→E,I:K→Z,J:{0,1}→Kのように変換するハッシュ関数である。このような群とペアリング写像は、楕円曲線とその上のベイユペアリング(Weil Pairing)を用いて実現することができる(例えばD. Boneh and M. Franklin, Identity-Based Encryption from the Weil Pairing, CRYPTO ’01, pp. 213-229, 2001.)。以下に本発明を詳しく説明する。
図42に参加装置610−iの機能構成例を示す。参加装置610−iは、第1の鍵生成部611−i、第2の鍵生成部612−i、署名者証拠生成部613−i、記録部614−i、署名者証拠公開部115−i、および通信部914−iから構成される。図43は第1の鍵生成部611−iの処理フローを示す図、図44は第2の鍵生成部612−iの処理フローを示す図、図45は署名者証拠生成部613−iの処理フローを示す図である。
参加装置610−i(i=1,…,n)の鍵生成部611−iでは、以下の手順で第1の秘密鍵SKと公開鍵PKとを生成する。秘密鍵SK生成手段6111−iでは、pを法とする剰余類Zから等確率でランダムに1つの元sを選択して秘密鍵SKとし(SK=s)(S6111)、秘密鍵SKを記録部614−iに記録する(S6112)。公開鍵PK生成手段6112−iでは、あらかじめ定められた巡回群Eの元Pを用いて、PK=sPにより公開鍵PK(PK∈E)を生成し(S6113)、公開鍵PKを記録部614−iに記録する(S6114)。ここで、巡回群Eは、離散対数問題が難しい群から選ばれているため、公開鍵PKと元Pとが分かっても、秘密鍵SK(=s)は分からない。このように生成された公開鍵PKは、元Pの情報とともに通信部914−iを介して公開される。
鍵生成部612−iでは、以下の手順で第2の秘密鍵skを生成する。まず、公開鍵PK(i=1,…,n)取得手段6123−iで参加装置610−i(i=1,…,n)の公開鍵PKを取得する(S6121)。Q生成手段6122−iでは、Q=H(t,n,PK,…,PK,m)としてQ(Q∈E)を生成し(S6122)、Qを記録部614−iに記録するとともに公開する(S6123)。秘密鍵sk生成手段6121−iでは、sk=sとして使い捨ての秘密鍵sk(sk∈E)を生成し(S6124)、秘密鍵skを記録部614−iに記録する(S6125)。なお、上記のQを求める方法では全ての参加装置610−iの公開鍵PK(i=1,…,n)を使用しており、どの参加装置で計算しても同じQを得る。したがって、1つの参加装置または別の装置でQを求め、各参加装置に送信しても良い。
参加者が署名に協力する場合には、署名者証拠生成部613−iの署名者証拠r生成手段6121−iでは、pを法とする剰余類Zから等確率でランダムに1つの元を選択して署名者証拠r(r)とし(S6121)、記録部614−iに記録する(S1121)。次にコミットメントa生成手段6132−iは、元Pを用いて、
Figure 0004738003
によりコミットメントa(∈G)を生成し(S6132)、コミットメントaを記録部614−iに記録し、通信部914−iを介して署名生成部620に送信する(S9123)。署名生成部620で署名生成処理が行われると、署名生成部620の計算部622の処理過程で生成されたチャレンジcが署名生成部620から、署名生成に協力している参加装置610−i(i=1,…,t)に送信される。このチャレンジcをチャレンジc取得手段9123−iで取得し(S9124)、記録部913−iに記録する(S9125)。また、レスポンスe生成手段6132−iで、e:=r−csk(e∈E)により、e(i=1,…,t)を求め(S6136)、記録部614−iに記録するとともに署名生成部620に送信する(S9127)。
図46に署名生成部620の機能構成例を示す。署名生成部620は、ダミー生成部621、計算部622、情報取得部623、記録部624、および通信部925から構成されている。また、図47は署名生成部620の処理フローを示す図である。
署名生成部620では、以下の手順で署名σ(m)が生成される。通信部925を介して情報取得部623の公開鍵PK(i=1,…,n)取得手段4231により、参加装置910−i(i=1,…,n)の公開鍵PKを取得する(S4231)。また、Q取得手段6231により、Qを取得する(S6231)。ダミー生成部621では、次のように、ダミーレスポンスe、ダミーチャレンジc、ダミーコミットメントa(i=t+1,…,n)を生成する。ダミーレスポンスe(i=t+1,…,n)生成手段6211により、pを法とする剰余類Zから等確率でランダムに1つの元を選択してダミーレスポンスe(i=t+1,…,n)とし(e)(S6211)、記録部624に記録する(S9212)。ダミーチャレンジc(i=t+1,…,n)生成手段9212により、有限体Kから等確率でランダムに1つの座標値yを選び、そのハッシュ関数をダミーチャレンジc(i=t+1,…,n)とし(yK,c:=I(y)∈Z)(S6213)、記録部624に記録する(S9214)。また、ダミーコミットメントa(i=t+1,…,n)生成手段6213により、元P、Q、および公開鍵PKを用いて、
Figure 0004738003
によりダミーコミットメントa(i=t+1,…,n)を生成し(S6215)、記録部624に記録する(S9216)。
また、通信部925を介して情報取得部623のコミットメントa(i=1,…,t)取得手段9232により、参加装置610−i(i=1,…,t)のコミットメントaを取得する(S9232と同じ)。
次に、計算部622では、以下のようにメッセージmの(t,n)閾値署名σ(m)を求める。n−t次多項式f(x)計算手段6221により、n−t次の多項式f(x)(f(x)=α+αx+α+…+αn−tn−t,α∈K)と定め、f(0)=J(t,n,PK,…,PK,Q,a,…,a,m)とf(i)=y(i=t+1,…,n)の条件からα(j=0,…,n−t)を計算することでn−t次多項式f(x)を求める(S6221)。また、求めたn−t次多項式f(x)を記録部624に記録する(S9222)。チャレンジc(i=1,…,t)生成手段9222では、c:=I(f(i))により、チャレンジc(i=1,…,t)を求め(S9223)、記録部924に記録するとともに、チャレンジcに対応する参加装置910−i(i=1,…,t)にチャレンジcを送信する(S9224)。
各参加者装置610−i(i=1,…,t)では、送信されたチャレンジcを用いて、上記のようにレスポンスeを生成し署名生成部620に送信する(図45のS9124〜S9127)。そこで、レスポンスe(i=1,…,t)取得手段9223は、レスポンスe(i=1,…,t)を取得し(S9225)、記録部624に記録する(S9226)。署名σ(m)作成手段6223では、σ(m)=(f,c,…,c,e,…,e)により、σ(m)を求め(S6227)、記録部624に記録する(S9228)。このようにしてメッセージmに対する(t,n)閾値署名σ(m)を求める。
図48に署名検証部630の機能構成例を、図49に署名検証部630での署名σ(m)を検証するフローを示す。なお、署名者証拠rを確認する処理フローは第1実施形態と同じである。署名σ(m)を検証する場合は、情報取得手段634で公開鍵PK(i=1,…,n)、Q、および署名σ(m)を取得し(S634)、多項式f(x)の次数確認手段931で多項式f(x)の次数がn−tであることを確認し(S931)、Q確認手段632で、Q=H(t,n,PK,…,PK,m)かつQ∈Eであることを確認し(S632)、チャレンジc、多項式f(0)確認手段633で、
Figure 0004738003
であることを確認する(S932)。
このように署名σ(m)を生成、検証することによって以下のような効果がある。署名生成に協力したことを参加者iが証明するために署名者証拠rを公開した場合、第2の秘密鍵skは、sk=s=c -1(r−e)により求めることができるが、Eは離散対数問題が難しい巡回群から選ばれているため、第1の秘密鍵SK(SK=s∈Z)を求めることはできない。したがって、署名者証拠r公開後も公開鍵PKを使うことができる。また、チャレンジc、多項式f(0)確認手段633で、
Figure 0004738003
を確認しているため、署名者証拠r(r∈Z)と公開鍵PK(PK=sP∈E)とは関連しており、署名者証拠rを示すことにより公開鍵PKに対応する参加者iが署名に協力したことを証明することができる。
[第7実施形態]
本実施形態は、第1実施形態から第6実施形態の総括である。図50に第1実施形態から第6実施形態をまとめた(t,n)閾値電子署名システムの処理フローを示す。図50では、すべての実施形態に共通する装置(部)と処理工程を実線の四角で示し、第2実施形態から第5実施形態に必要な装置(部)と処理工程を点線の四角で示し、第4実施形態から第6実施形態に必要な装置(部)と処理工程を一点鎖線の四角で示す。第6実施形態に必要な処理工程を二点鎖線の四角で示す。
第4実施形態から第6実施形態の参加装置(410−i、または610−i)(i=1,…,n)は、第1の秘密鍵SKと公開鍵PKを生成し、公開鍵PKを公開する。第1の実施形態と第6実施形態の場合は、すべての参加装置(110−i、または610−i)(i=1,…,n)は、署名に使用する秘密鍵skを生成し、第1の実施形態は公開鍵pkも生成し、公開鍵pkを公開する。第2実施形態と第4実施形態は参加装置(110−i、または410−i)(i=1,…,n−1)が、署名に使用する秘密鍵skと公開鍵pkを生成し、公開鍵pkを公開する。第3実施形態と第5実施形態は参加装置(110−i、または410−i)(i=1,…,t’)が、署名に使用する秘密鍵skと公開鍵pkを生成し、公開鍵pkを公開する。
第2実施形態から第5実施形態の場合は、ダミー鍵生成部(240、340,440,540)で、ダミーの公開鍵pk(i=nまたはt’,…,n)を生成し、公開する。
署名生成に協力する参加装置(110−i、410−i、または610−i)(i=1,…,t)は、署名者証拠rとコミットメントaを生成し、コミットメントaを署名生成部(920、420、520、または620)に送信する。署名生成部(920、420、520、または620)では、署名生成に協力していない参加装置(110−i、410−i、または610−i)(i=t+1,…,n)に対応するダミーのレスポンスe、チャレンジc、およびコミットメントaを生成し、n−t次多項式fと署名生成に協力した参加装置(110−i、410−i、または610−i)(i=1,…,t)に対応するチャレンジcを生成し、チャレンジcを参加装置(110−i、410−i、または610−i)(i=1,…,t)に送信する。各参加装置(110−i、410−i、または610−i)(i=1,…,t)では、レスポンスeを生成し署名生成部(920、420、520、または620)に送信する。署名生成部(920、420、520、または620)では、署名σ(第4実施形態と第5実施形態の場合は、さらにΣ)を生成する。署名検証部(130、230、330,430,530、または630)で、署名σ(第4実施形態と第5実施形態の場合は、さらにΣ)を確認し、第2実施形態から第5実施形態の場合は、署名参加者数を確認する。さらに、署名に協力した参加者が署名に協力したことを証明したい場合には、参加装置(110−i、410−i、または610−i)(i=1,…,t)は署名者証拠rを公開し、署名検証部(130、230、330,430,530、または630)は署名者証拠rを確認する。なお、各処理の詳細は、上記の第1実施形態から第6実施形態に示したとおりである。
このようなシステム構成と処理方法により、参加者が署名生成に協力したことを証明したい場合に、証明することができる。また、何人の参加者が証明できるのかを署名から確認できる。さらに、使い捨て秘密鍵(第2の秘密鍵)を使用することにより、公的機関に登録しているような公開鍵と組となる秘密鍵の情報流出を避けることができる。
閾値つき電子署名システムの構成例と流れを示す図。 参加装置910−iの機能構成例を示す図。 鍵生成部911−iの処理フローを示す図。 署名者証拠生成部912−iの処理フローを示す図。 署名生成部920の機能構成例を示す図。 署名生成部920の処理フローを示す図。 署名検証部930の機能構成例を示す図。 署名検証部930での署名σ(m)を検証するフローを示す図。 第1実施形態のシステム構成例と流れを示す図。 参加装置110−iの機能構成例を示す図。 署名者証拠生成部112−iの処理フローを示す図。 署名者証拠公開部115−iの処理フローを示す図 署名検証部130の機能構成例を示す図。 署名に協力したことを証明したい参加者から署名者証拠rが公開された場合の、署名者証拠r確認フローを示す図。 第2実施形態のシステム構成例と流れを示す図。 ダミー鍵生成部240の機能構成例を示す図。 ダミー鍵生成部240の処理フローを示す図。 署名検証部230の機能構成例を示す図。 署名検証部230が署名σ(m)を検証するフローを示す図。 第3実施形態のシステム構成例と流れを示す図。 ダミー鍵生成部340の機能構成例を示す図。 ダミー鍵生成部340の処理フローを示す図。 署名検証部330の機能構成例を示す図。 署名検証部330が署名σ(m)を検証するフローを示す図。 第4実施形態のシステム構成例と流れを示す図。 参加装置410−iの機能構成例を示す図。 第1の秘密鍵と公開鍵を生成する鍵生成部411−iの処理フローを示す図。 ダミー鍵生成部440の構成例を示す図。 ダミー鍵生成部440の処理フローを示す図。 署名生成部420の機能構成例を示す図。 署名生成部420の処理フローを示す図。 署名検証部430の機能構成例を示す図。 署名検証部430での署名σ(m)と署名Σ(m)の検証フローを示す図。 第5実施形態のシステム構成例と流れを示す図。 ダミー鍵生成部540の構成例を示す図。 ダミー鍵生成部540の処理フローを示す図。 署名生成部520の機能構成例を示す図。 署名生成部520の処理フローを示す図。 署名検証部530の機能構成例を示す図。 署名検証部530での署名σ(m)と署名Σ(m)の検証フローを示す図。 第6実施形態のシステム構成例と流れを示す図。 参加装置610−iの機能構成例を示す図。 第1の鍵生成部611−iの処理フローを示す図。 第2の鍵生成部612−iの処理フローを示す図。 署名者証拠生成部613−iの処理フローを示す図。 署名生成部620の機能構成例を示す図。 署名生成部620の処理フローを示す図。 署名検証部630の機能構成例を示す図。 署名検証部630での署名σ(m)を検証するフローを示す図。 第1実施形態から第6実施形態をまとめた(t,n)閾値電子署名システムの処理フローを示す図。

Claims (12)

  1. n台の参加装置、前記参加装置のいずれかもしくは独立した装置に具備された署名生成部、任意の装置に具備された署名検証部を有し、t台の参加装置が協力することでメッセージに対する署名を生成する署名システムであって、
    nは2以上の整数、tはn−1以下の整数、Gは離散対数問題が難しい巡回群、gは群Gの生成元とし、
    iは参加装置の番号を識別するためのインデックスであって、i=1,…,tの参加装置が署名生成に協力し、i=t+1,…,nの参加装置が署名生成に協力しなかったとし、
    各参加装置は、
    Figure 0004738003

    の関係を有する秘密鍵skと公開鍵pkを生成する鍵生成部と、
    署名生成に協力する場合は、署名者証拠rを生成し、
    Figure 0004738003

    の関係を有するコミットメントaを生成して前記署名生成部に送信し、チャレンジcを前記署名生成部から取得し、
    =r−csk
    の関係を有するレスポンスeを生成して前記署名生成部に送信する署名者証拠生成部と、
    前記署名者証拠rを記録する記録部と、
    署名者証拠r前記署名検証部に送信する署名者証拠公開部と
    を備え、
    前記署名生成部は、
    署名生成に協力しなかった参加装置用のレスポンスe、チャレンジc、コミットメントaであるダミーレスポンスe、ダミーチャレンジc、ダミーコミットメントa
    Figure 0004738003

    の関係を有するように生成するダミー生成部と、
    署名に協力する参加装置から前記コミットメントa を受信し、前記公開鍵pk署名に協力する参加装置の前記コミットメントa と前記ダミーコミットメントa を用いた計算によってn−t次多項式を求め、署名に協力する参加装置の前記チャレンジc を生成して対応する参加装置に送信し、署名に協力する参加装置から前記レスポンスe を受信し、前記多項式fおよび全参加装置の前記チャレンジcと前記レスポンスeを含む署名σを生成し、記録する計算部と
    を備え、
    前記署名検証部は、
    前記署名生成部から前記署名σを取得し、すべての前記参加装置の前記公開鍵pk を取得し、いずれかの前記参加装置から前記署名者証拠r を取得する情報取得手段と、
    前記署名σに含まれる多項式fの次数がn−tであることを確認する次数確認手段と、
    前記署名σに含まれるチャレンジc が前記計算部で生成され、前記署名σに含まれる多項式fが前記計算部で求められたことを前記公開鍵pk、前記署名σに含まれるレスポンスeを用いて確認するチャレンジ・多項式確認手段と、
    前記署名者証拠rが、
    Figure 0004738003

    を満たすことを確認することで、当該参加装置が署名生成に協力したことを確認する署名者証拠確認手段と
    を備える署名システム。
  2. 請求項1記載の署名システムであって、
    さらに、前記参加装置のいずれかもしくは独立した装置に具備されたダミー鍵生成部も有し
    前記ダミー鍵生成部は、
    群Gの任意の元xを生成し、
    署名生成に協力していない1つの参加装置を除く参加装置の公開鍵pk(i=1,…,n−1)を取得し
    pk=x/pkpk…pkn−1
    のように、署名生成に協力していない1つの参加装置の公開鍵pk計算し
    前記署名検証部は、さらに
    pkpk…pk=x
    であることを確認する署名参加者数確認手段も
    備える署名システム。
  3. 請求項1記載の署名システムであって、
    t’をt以上n以下の整数とし、
    さらに、前記参加装置のいずれかもしくは独立した装置に具備されたダミー鍵生成部も有し
    前記ダミー鍵生成部は、
    群Gの任意の元Aを生成し、
    Figure 0004738003

    のようにmij計算し
    Figure 0004738003

    のようにA(i=1,…,t')を計算し
    Figure 0004738003

    のように署名生成に協力していない(n−t’)台の参加装置の公開鍵pk(i=t'+1,…,n)を計算し
    前記署名検証部は、さらに
    Figure 0004738003

    であることを確認する署名参加者数確認手段も
    備える署名システム。
  4. 請求項2記載の署名システムであって、
    各参加装置は、
    前記鍵生成部を第2鍵生成部とし、さらに、
    秘密鍵SKと公開鍵PKを生成する第1鍵生成部を備え、
    前記ダミー鍵生成部が生成した前記元xは、
    任意長のビット列を群Gの元に変換するハッシュ関数Hを用いて、公開鍵PK,…,PKを含むビット列から生成したものであり、
    前記署名生成部の前記計算部は、
    前記秘密鍵SKの生成方法に対応した方法で前記メッセージに対する署名Σも生成し、
    前記署名検証部は、
    前記署名Σを確認するΣ確認手段も
    備える署名システム。
  5. 請求項3記載の署名システムであって、
    各参加装置は、
    前記鍵生成部を第2鍵生成部とし、さらに、
    秘密鍵SKと公開鍵PKを生成する第1鍵生成部を備え、
    前記ダミー鍵生成部が生成した前記元Aは、
    任意長のビット列を群Gの元に変換するハッシュ関数Hを用いて、公開鍵PK,…,PKを含むビット列から生成したものであり、
    前記署名生成部の前記計算部は、
    前記秘密鍵SKの生成方法に対応した方法で前記メッセージに対する署名Σも生成し、
    前記署名検証部は、
    前記署名Σを確認するΣ確認手段も
    備える署名システム。
  6. n台の参加装置、前記参加装置のいずれかもしくは独立した装置に具備された署名生成部、任意の装置に具備された署名検証部を有し、t台の参加装置が協力することでメッセージに対する署名を生成する署名システムであって、
    nは2以上の整数、tはn−1以下の整数、Gは離散対数問題が難しい巡回群、gは群Gの生成元、Eは加法により生成された離散対数問題が難しい巡回群、Pは群Eの生成元、<・,・>は2つの群Eの元を群Gの元に変換するペアリング写像とし、
    iは参加装置の番号を識別するためのインデックスであって、i=1,…,tの参加装置が署名生成に協力し、i=t+1,…,nの参加装置が署名生成に協力しなかったとし、
    各参加装置は、
    PK=SK
    の関係を有する秘密鍵SKと公開鍵PKを生成する第1鍵生成部と、
    任意長のビット列を群Eの元に変換するハッシュ関数Hを用いて、公開鍵PK,…,PKを含むビット列から群Eの元Qを生成し、
    sk=SK
    のように前記秘密鍵skを生成する第2鍵生成部と、
    署名生成に協力する場合は、署名者証拠rを生成し、
    Figure 0004738003

    の関係を有するコミットメントaを生成して前記署名生成部に送信し、チャレンジcを前記署名生成部から取得し、
    =r−csk
    の関係を有するレスポンスeを生成して前記署名生成部に送信する署名者証拠生成部と、
    前記署名者証拠rを記録する記録部と、
    署名者証拠r前記署名検証部に送信する署名者証拠公開部と
    を備え、
    前記署名生成部は、
    署名生成に協力しなかった参加装置用のレスポンスe、チャレンジc、コミットメントaであるダミーレスポンスe、ダミーチャレンジc、ダミーコミットメントa
    Figure 0004738003

    の関係を有するように生成するダミー生成部と、
    署名に協力する参加装置から前記コミットメントa を受信し、前記公開鍵PK署名に協力する参加装置の前記コミットメントa と前記ダミーコミットメントa を用いた計算によってn−t次多項式を求め、署名に協力する参加装置の前記チャレンジc を生成して対応する参加装置に送信し、署名に協力する参加装置から前記レスポンスe を受信し、前記多項式fおよび全参加装置の前記チャレンジcと前記レスポンスeを含む署名σを生成し、記録する計算部と
    を備え、
    前記署名検証部は、
    前記署名生成部から前記署名σを取得し、すべての前記参加装置の前記公開鍵pk を取得し、いずれかの前記参加装置から前記署名者証拠r を取得する情報取得手段と、
    前記署名σに含まれる多項式fの次数がn−tであることを確認する次数確認手段と、
    元Qが、ハッシュ関数Hを用いて、前記の公開鍵PK,…,PKを含むビット列から生成されたことを確認するQ確認手段と、
    前記署名σに含まれるチャレンジc が前記計算部で生成され、と前記署名σに含まれる多項式fが前記計算部で求められたことを前記公開鍵pk、前記署名σに含まれるレスポンスeを用いて確認するチャレンジ・多項式確認手段と、
    前記署名者証拠rが、
    Figure 0004738003

    を満たすことを確認することで、当該参加装置が署名生成に協力したことを確認する署名者証拠確認手段と
    を備える署名システム。
  7. n台の参加装置、前記参加装置のいずれかもしくは独立した装置に具備された署名生成部、任意の装置に具備された署名検証部を有する署名システム内のt台の参加装置が協力することでメッセージに対する署名を生成する署名方法であって、
    nは2以上の整数、tはn−1以下の整数、Gは離散対数問題が難しい巡回群、gは群Gの生成元とし、
    iは参加装置の番号を識別するためのインデックスであって、i=1,…,tの参加装置が署名生成に協力し、i=t+1,…,nの参加装置が署名生成に協力しなかったとし、
    すべての参加装置が、
    Figure 0004738003

    の関係を有する秘密鍵skと公開鍵pkを生成する鍵生成ステップと、
    署名生成に協力する各参加装置が、署名者証拠rを生成し、
    Figure 0004738003

    の関係を有するコミットメントaを生成して前記署名生成部に送信し、チャレンジcを前記署名生成部から取得し、
    =r−csk
    の関係を有するレスポンスeを生成して前記署名生成部に送信する署名者証拠生成ステップと、
    署名生成に協力する各参加装置が、前記署名者証拠rを記録する記録ステップと、
    前記署名生成部が、署名生成に協力しなかった参加装置用のレスポンスe、チャレンジc、コミットメントaであるダミーレスポンスe、ダミーチャレンジc、ダミーコミットメントa
    Figure 0004738003

    の関係を有するように生成するダミー生成ステップと、
    前記署名生成部が、署名に協力する参加装置から前記コミットメントa を受信し、前記公開鍵pk署名に協力する参加装置の前記コミットメントa と前記ダミーコミットメントa を用いた計算によってn−t次多項式を求め、署名に協力する参加装置の前記チャレンジc を生成して対応する参加装置に送信し、署名に協力する参加装置から前記レスポンスe を受信し、前記多項式fおよび全参加装置の前記チャレンジcと前記レスポンスeを含む署名σを生成し、記録する計算ステップと、
    いずれかの参加装置が、署名者証拠r を前記署名検証部に送信する署名者証拠公開ステップと、
    前記署名検証部が、前記署名生成部から前記署名σを取得し、すべての前記参加装置の前記公開鍵pk を取得し、いずれかの前記参加装置から前記署名者証拠r を取得する情報取得ステップと、
    前記署名σに含まれる多項式fの次数がn−tであることを確認する次数確認ステップと、
    前記署名検証部が、前記署名σに含まれるチャレンジc が前記計算部で生成され、前記署名σに含まれる多項式fが前記計算部で求められたことを前記公開鍵pk、前記署名σに含まれるレスポンスeを用いて確認するチャレンジ・多項式確認ステップと
    記署名検証部が、前記署名者証拠rが、
    Figure 0004738003

    を満たすことを確認することで、署名者証拠rを公開した参加装置が署名生成に協力したことを確認する署名者証拠確認ステップと
    を有する署名方法。
  8. 請求項7記載の署名方法であって、
    前記署名システムは、前記参加装置のいずれかもしくは独立した装置に具備されたダミー鍵生成部も有し
    前記ダミー鍵生成部が、群Gの任意の元xを生成し、
    署名生成に協力していない1つの参加装置を除く参加装置の公開鍵pk(i=1,…,n−1)を取得し
    pk=x/pkpk…pkn−1
    のように、署名生成に協力していない1つの参加装置の公開鍵pk計算するダミー鍵生成ステップと、
    前記署名検証部が、
    pkpk…pk=x
    であることを確認する署名参加者数確認ステップも
    有する署名方法。
  9. 請求項7記載の署名方法であって、
    前記署名システムは、前記参加装置のいずれかもしくは独立した装置に具備されたダミー鍵生成部も有し
    t’をt以上n以下の整数とし、
    前記ダミー鍵生成部が、群Gの任意の元Aを生成し、
    Figure 0004738003

    のようにmij計算し
    Figure 0004738003

    のようにA(i=1,…,t')を計算し
    Figure 0004738003

    のように署名生成に協力していない(n−t’)台の参加装置の公開鍵pk(i=t'+1,…,n)を計算するダミー鍵生成ステップと、
    前記署名検証部が、
    Figure 0004738003

    であることを確認する署名参加者数確認ステップも
    有する署名方法。
  10. 請求項8記載の署名方法であって、
    前記鍵生成ステップを第2鍵生成ステップとし、
    前記第2鍵生成ステップの前に、すべての参加装置が、秘密鍵SKと公開鍵PKを生成する第1鍵生成ステップを有し、
    前記ダミー鍵生成ステップの中で生成された前記元xは、任意長のビット列を群Gの元に変換するハッシュ関数Hを用いて、公開鍵PK,…,PKを含むビット列から生成されたものであり、
    前記計算ステップは、前記秘密鍵SKの生成方法に対応した方法で前記メッセージに対する署名Σも生成し、
    前記署名検証部が、前記署名Σを確認するΣ確認ステップも
    有する署名方法。
  11. 請求項9記載の署名方法であって、
    前記鍵生成ステップを第2鍵生成ステップとし、
    前記第2鍵生成ステップの前に、すべての参加装置が、秘密鍵SKと公開鍵PKを生成する第1鍵生成ステップを有し、
    前記ダミー鍵生成ステップの中で生成された前記元Aは、任意長のビット列を群Gの元に変換するハッシュ関数Hを用いて、公開鍵PK,…,PKを含むビット列から生成されたものであり、
    前記計算ステップは、前記秘密鍵SKの生成方法に対応した方法で前記メッセージに対する署名Σも生成し、
    前記署名検証部が、前記署名Σを確認するΣ確認ステップも
    有する署名方法。
  12. n台の参加装置、前記参加装置のいずれかもしくは独立した装置に具備された署名生成部、任意の装置に具備された署名検証部を有する署名システム内のt台の参加装置が協力することでメッセージに対する署名を生成する署名方法であって、
    nは2以上の整数、tはn−1以下の整数、Gは離散対数問題が難しい巡回群、gは群Gの生成元、Eは加法により生成された離散対数問題が難しい巡回群、Pは群Eの生成元、<・,・>は2つの群Eの元を群Gの元に変換するペアリング写像とし、
    iは参加装置の番号を識別するためのインデックスであって、i=1,…,tの参加装置が署名生成に協力し、i=t+1,…,nの参加装置が署名生成に協力しなかったとし、
    すべての参加装置が、
    PK=SK
    の関係を有する秘密鍵SKと公開鍵PKを生成する第1鍵生成ステップと、
    すべての参加装置が、任意長のビット列を群Eの元に変換するハッシュ関数Hを用いて、公開鍵PK,…,PKを含むビット列から群Eの元Qを生成し、
    sk=SK
    のように前記秘密鍵skを生成する第2鍵生成ステップと、
    署名生成に協力する各参加装置が、署名者証拠rを生成し、
    Figure 0004738003

    の関係を有するコミットメントaを生成して前記署名生成部に送信し、チャレンジc前記署名生成部から取得し、
    =r−csk
    の関係を有するレスポンスeを生成して前記署名生成部に送信する署名者証拠生成ステップと、
    署名生成に協力する各参加装置が、前記署名者証拠rを記録する記録ステップと、
    前記署名生成部が、署名生成に協力しなかった参加装置用のレスポンスe、チャレンジc、コミットメントaであるダミーレスポンスe、ダミーチャレンジc、ダミーコミットメントa
    Figure 0004738003

    の関係を有するように生成するダミー生成ステップと、
    前記署名生成部が、署名に協力する参加装置から前記コミットメントa を受信し、前記公開鍵PK署名に協力する参加装置の前記コミットメントa と前記ダミーコミットメントa を用いた計算によってn−t次多項式を求め、署名に協力する参加装置の前記チャレンジc を生成して対応する参加装置に送信し、署名に協力する参加装置から前記レスポンスe を受信し、前記多項式fおよび全参加装置の前記チャレンジcと前記レスポンスeを含む署名σを生成し、記録する計算ステップと、
    いずれかの参加装置が、署名者証拠r を前記署名検証部に送信する署名者証拠公開ステップと、
    前記署名検証部が、前記署名生成部から前記署名σを取得し、すべての前記参加装置の前記公開鍵pk を取得し、いずれかの前記参加装置から前記署名者証拠r を取得する情報取得ステップと、
    前記署名σに含まれる多項式fの次数がn−tであることを確認する次数確認ステップと、
    前記署名検証部が、元Qが、ハッシュ関数Hを用いて、前記の公開鍵PK,…,PKを含むビット列から生成されたことを確認するQ確認ステップと、
    前記署名検証部が、前記署名σに含まれるチャレンジc が前記計算部で生成され、と前記署名σに含まれる多項式fが前記計算部で求められたことを前記公開鍵pk、前記署名σに含まれるレスポンスeを用いて確認するチャレンジ・多項式確認ステップと
    記署名検証部が、前記署名者証拠rが、
    Figure 0004738003

    を満たすことを確認することで、署名者証拠rを公開した参加装置が署名生成に協力したことを確認する署名者証拠確認ステップと
    を有する署名方法。
JP2005015336A 2005-01-24 2005-01-24 署名システム、署名方法 Expired - Lifetime JP4738003B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005015336A JP4738003B2 (ja) 2005-01-24 2005-01-24 署名システム、署名方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005015336A JP4738003B2 (ja) 2005-01-24 2005-01-24 署名システム、署名方法

Publications (2)

Publication Number Publication Date
JP2006203754A JP2006203754A (ja) 2006-08-03
JP4738003B2 true JP4738003B2 (ja) 2011-08-03

Family

ID=36961332

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005015336A Expired - Lifetime JP4738003B2 (ja) 2005-01-24 2005-01-24 署名システム、署名方法

Country Status (1)

Country Link
JP (1) JP4738003B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019210418A1 (en) * 2018-05-04 2019-11-07 Crypto4A Technologies Inc. Digital data comparison filter, system and method, and applications therefor

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5154830B2 (ja) * 2006-04-27 2013-02-27 パナソニック株式会社 コンテンツ配信システム
WO2015118160A1 (en) * 2014-02-10 2015-08-13 Thomson Licensing Signing methods for delivering partial signatures, and/or threshold signatures, corresponding verification methods, and corresponding electronic devices
JP6216688B2 (ja) * 2014-06-12 2017-10-18 日本電信電話株式会社 部分使い捨て署名システム及び方法、署名装置、検証装置並びにプログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001142397A (ja) * 1998-10-30 2001-05-25 Hitachi Ltd ディジタル署名方法、秘密情報の管理方法およびシステム
JP3899808B2 (ja) * 2000-12-07 2007-03-28 株式会社日立製作所 ディジタル署名生成方法およびディジタル署名検証方法
JP2003218858A (ja) * 2002-01-25 2003-07-31 Nippon Telegr & Teleph Corp <Ntt> 署名生成方法及び署名検証方法及び署名生成装置及び署名検証装置及び署名生成プログラム及び署名検証プログラム及び署名生成プログラムを格納した記憶媒体及び署名検証プログラムを格納した記憶媒体
JP4176537B2 (ja) * 2003-04-09 2008-11-05 日本電信電話株式会社 匿名署名装置、署名検証装置、匿名署名方法、匿名署名プログラム及び署名検証プログラム
JP3894919B2 (ja) * 2003-12-16 2007-03-22 村田機械株式会社 電子署名方法とそのプログラム及び装置
JP4322768B2 (ja) * 2004-09-29 2009-09-02 株式会社東芝 署名要求装置、署名システム、署名要求方法および署名要求プログラム
JP4679163B2 (ja) * 2005-01-21 2011-04-27 株式会社東芝 デジタル署名情報生成装置、デジタル署名情報生成方法及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019210418A1 (en) * 2018-05-04 2019-11-07 Crypto4A Technologies Inc. Digital data comparison filter, system and method, and applications therefor
US11921867B2 (en) 2018-05-04 2024-03-05 Crypto4A Technologies Inc. Digital data comparison filter, system and method, and applications therefor

Also Published As

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

Similar Documents

Publication Publication Date Title
JP4859933B2 (ja) 暗号文生成装置及び暗号通信システム及び群パラメータ生成装置
CN107508686B (zh) 身份认证方法和系统以及计算设备和存储介质
CN102201920B (zh) 一种无证书公钥密码系统的构造方法
US9438589B2 (en) Binding a digital file to a person&#39;s identity using biometrics
KR101425552B1 (ko) 제어가능 연결성을 제공하는 그룹서명 시스템 및 방법
US9166957B2 (en) Digital file authentication using biometrics
US10263773B2 (en) Method for updating a public key
JP5419056B2 (ja) Cartier対形成の暗号化適用
CN108989054B (zh) 一种密码系统及数字签名方法
KR20130027061A (ko) 사인크립션 방법 및 장치와 대응하는 사인크립션 검증 방법 및 장치
JP2006163164A5 (ja)
WO2010047356A1 (ja) 鍵共有システム
CN105450396A (zh) 一种无证书的组合密钥产生及应用方法
CN111130758A (zh) 一种适用于资源受限设备的轻量级匿名认证方法
JP4250429B2 (ja) 連鎖型署名作成装置、及びその制御方法
JP5327223B2 (ja) 署名システム
CN114070556A (zh) 一种门限环签名方法、装置、电子设备及可读存储介质
CN104767611A (zh) 一种从公钥基础设施环境到无证书环境的签密方法
JP4738003B2 (ja) 署名システム、署名方法
Rodríguez-Henríquez et al. Yet another improvement over the Mu–Varadharajan e-voting protocol
CN113824677B (zh) 联邦学习模型的训练方法、装置、电子设备和存储介质
JP5134555B2 (ja) 鍵生成装置、暗号化装置、復号化装置、暗号化システム、鍵生成方法、暗号化方法、復号化方法、プログラム、および記録媒体
JP2012103655A (ja) 耐量子コンピュータ性をもつディジタル署名方式
JP4533636B2 (ja) デジタル署名システム、デジタル署名管理装置、デジタル署名管理方法及びプログラム
WO2010013571A2 (ja) グループ署名システム及び方法

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20061225

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100601

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110401

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4738003

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140513

Year of fee payment: 3

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term