JP5871827B2 - 安全性強化システム、安全性強化装置、検証装置、およびプログラム - Google Patents
安全性強化システム、安全性強化装置、検証装置、およびプログラム Download PDFInfo
- Publication number
- JP5871827B2 JP5871827B2 JP2013003706A JP2013003706A JP5871827B2 JP 5871827 B2 JP5871827 B2 JP 5871827B2 JP 2013003706 A JP2013003706 A JP 2013003706A JP 2013003706 A JP2013003706 A JP 2013003706A JP 5871827 B2 JP5871827 B2 JP 5871827B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- key
- unit
- secret
- verification
- 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
Links
Images
Description
<定義>
各実施形態で用いる記号や用語を定義する。
[暗号学的デバイス]
暗号学的デバイス(Setup,Gen,C,X,Y,K)は、以下のSetup,Gen,C,X,Y,Kから構成される。
Setup(1κ)はセットアップアルゴリズムであり、セキュリティパラメータ1κを入力とし、共通パラメータppを出力する。ppは集合X,Y,Kの情報を含む。
Gen(pp)は鍵生成アルゴリズムであり、ppを入力とし、秘密の鍵情報k∈Kをランダムに選んで出力する。
C(pp,(k,x))は回路であり、ppおよび(k,x)∈K×Xを入力とし、y∈Yを出力する。
例えばC(pp,(k,x))は共通鍵暗号の復号回路であり、kは秘密鍵、xは暗号文、yは平文に対応する。
公開鍵型暗号学的デバイス(Setup,Gen,C,X,Y,K,Ω)は、以下のSetup,Gen,C,X,Y,K,Ωから構成される。
Setup(1κ)はセットアップアルゴリズムであり、セキュリティパラメータ1κを入力とし、共通パラメータppを出力する。ppは集合X,Y,K,Ωの情報を含む。
Gen(pp;r)は鍵生成アルゴリズムであり、ppを入力とし、乱数r∈Ωに基づいて、秘密の鍵情報k∈Kと公開の鍵情報pを出力する。
C(pp,(k,x))は回路であり、ppおよび(k,x)∈K×Xを入力とし、y∈Yを出力する。
例えばC(pp,(k,x))は公開鍵暗号の復号回路であり、kは復号鍵、pは暗号鍵、xは暗号文、yは平文に対応する。他にもC(pp,(k,x))を電子署名の署名回路とすれば、kは署名鍵、pは検証鍵、xはメッセージ、yは署名となる。
鍵カプセル化方式は、以下の4つ組からなる。
Setup(1κ)はセットアップアルゴリズムであり、セキュリティパラメータ1κを入力とし、共通パラメータppを出力する。
GenKEM(pp)は鍵生成アルゴリズムであり、ppを入力とし、公開鍵pkと秘密鍵skとの鍵ペア(pk,sk)を生成する。
Encaps(pp,pk;s)は、鍵暗号化アルゴリズムであり、ppとpkを入力とし、秘密情報s∈Sに基づいた鍵kとその暗号文cとを出力する。Sは秘密情報が属する集合を表す。以下では簡単のため、Encaps(pp,pk)をEncaps1(pp,pk;s)とEncaps2(pp;s)とに分離して表記する。Encaps1(pp,pk;s)は暗号文cを出力するアルゴリズムであり、Encaps2(pp;s)は鍵kを出力するアルゴリズムである。
Decaps(pp,sk,c)は、鍵復号アルゴリズムであり、ppとskとcを入力とし、鍵kまたは⊥を出力する。なお、⊥は拒絶を表す情報である。
公開鍵暗号方式は、以下の4つ組からなる。
Setup(1κ)はセットアップアルゴリズムであり、セキュリティパラメータ(1κ)を入力とし、共通パラメータppを出力する。
GenPKE(pp)は鍵生成アルゴリズムであり、ppを入力とし、暗号化鍵ekと復号鍵dkとの鍵ペア(ek,dk)を生成する。
Enc(pp,ek,m;ρ)は暗号化アルゴリズムであり、ppとekとメッセージmを入力にとり、乱数ρ∈RPKEに基づいてメッセージmの暗号文cmを得て出力する。RPKEは乱数空間を表す。
Decaps(pp,dk,cm)は復号アルゴリズムであり、ppとdkとcmを入力にとり、メッセージmまたは⊥を出力する。
Bを二項関係とし、LをBから定義される言語とする。すなわち、L={x∈{0,1}*:B(x,w)=1 for some w}である。x∈Lのときに対応するwを証拠と呼ぶ。
非対話零知識証明とは三つ組みのアルゴリズムであり、NIZK=(G,P,V)と書く。
G(1κ)はセットアップアルゴリズムであり、セキュリティパラメータ1κを入力とし、CRS(Common Reference String)と呼ばれる共通パラメータcrsNIZKを出力する。なお、1κはκ個の1からなる列を表す。κは1以上の所定の整数である。
P(crsNIZK,x,w)は証明者アルゴリズムであり、共通パラメータcrsNIZKと、文字列x∈L⊆{0,1}*と、その証拠wを入力とし、x∈Lの証明πを出力する。
V(crsNIZK,x,π)は検証者アルゴリズムであり、共通パラメータcrsNIZKと、文字列xと、証明πを入力とし、yes(合格)/no(不合格)を出力する。
双線形写像e:GK×GK→GTは、双線形性、非退化性および効率的計算可能性を持つ写像である。ただし、GK,GTは位数が素数qである可換群である。
双線形性により、任意のh1,h2∈GKおよび任意のα,β∈Zqについてe(h1 α,h2 β)=e(h1,h2)αβとなる。非退化性により、e(h1,h1)のGTでの位数がqとなる。効率的計算可能性により、eを効率よく計算することができる。なお、Zqはqによる剰余群を表す。双線形写像の例はペアリングである。
写像Hが衝突困難性を持つとは、多項式時間で動作する敵が、写像の属からそれに属する写像Hを定める情報とセキュリティパラメータ1κとを受け取ったとき、γ≠δかつH(γ)=H(δ)なる組(γ,δ)を無視できる確率でしか出力することができないことを表す。衝突困難性を持つ写像Hの例は、SHA−1等の暗号学的なハッシュ関数などである。通常、衝突困難性を持つ写像は一方向性も持つ。
各実施形態に共通する原理を説明する。
安全性強化装置では、秘密の鍵情報に対応する秘密情報を格納し、秘密情報に対して特定の対応関係を持つ補助情報を得て出力する。ただし、当該秘密情報と異なる関連秘密情報に対して当該対応関係を持つ関連補助情報を当該補助情報から特定することは困難である。
以下に従来の公開鍵型暗号学的デバイスを例示する。
Setup(1κ)は、セキュリティパラメータ1κを入力とし、GKとqと生成元g1,g2∈GKと衝突困難性を持つ写像H:GK 3→Zqとを得、共通パラメータpp=(GK,q,g1,g2,H)として出力する。
Gen(pp;r)は、ppを入力とし、秘密情報sである鍵情報dk=(x1,x2,y1,y2,z1,z2)と公開情報である鍵情報ek=(Xek,Yek,Zek)=(g1 x1・g2 x2,g1 y1・g2 y2,g1 z1・g2 z2)とを得て出力する。
Enc(pp;ek,m)は、ppとekとメッセージmとを入力とし、乱数r’∈Zqを生成し、c1=g1 r’,c2=g2 r’,E=m・Zek r’,ω=H(c1,c2,E),ν=(Xek ω・Yek)r’を得て、暗号文ct=(c1,c2,E,ν)を出力する。
Dec(pp;dk,ct)は、ppとdkとctとを入力とし、ct∈GK 4であれば、ct=(c1,c2,E,ν)からω=H(c1,c2,E)を得、さらにc1x1*ω+y1・c2x2*ω+y2=νであれば、m=E/(c1z1・c2z2)を出力する。
上記の従来の公開鍵型暗号学的デバイスに対し、以下の一方向性を破る関連鍵攻撃が成功する。
1.敵はメッセージmの暗号文ct=(c1,c2,E,ν)を受け取る。
2.敵は0以外のΔ∈Zqを選択し、鍵情報dk=(x1,x2,y1,y2,z1,z2)を関連鍵情報φ(x1,x2,y1,y2,z1,z2)=(x1,x2,y1+Δ,y2,z1,z2)に移す写像φと、新しい暗号文ct’=(c1,c2,E,ν・c1Δ)をDecに問い合わせる。
3.Decは鍵情報dkに写像φを適用し、関連鍵情報(x1,x2,y1+Δ,y2,z1,z2)を得、それを用いてct’を復号し、メッセージmを敵に返す。
4.敵はmをそのまま出力する。
第1実施形態を説明する。本形態は、暗号学的デバイス(Setup,Gen,C,X,Y,K)に上述の原理を適用したものである。本形態の安全性強化装置は、非対話零知識証明(NIZK=(G,P,V))を用いて補助情報を生成する。この補助情報は、秘密情報に対応する第1暗号文と、秘密情報と乱数とに対応する第2暗号文と、秘密情報と乱数とを証拠情報として第1暗号文と第2暗号文とに対する非対話零知識証明を行うための証明情報とを含む。本形態の検証装置は、補助情報が含む証明情報を用いて第1暗号文と第2暗号文とに対する非対話零知識証明検証を行い、さらに秘密情報に対応する検証用暗号文と第1暗号文とが一致するかを判定する。
図1に例示するように、本形態の安全性強化システム1は、設定装置110と安全性強化装置120と検証装置130とを有する。設定装置110と安全性強化装置120と検証装置130とは、それぞれ、CPU(central processing unit)、RAM(random-access memory)等を含む汎用または専用のコンピュータに所定のプログラムが読み込まれて構成された特別な装置である。設定装置110と安全性強化装置120と検証装置130は、ネットワークや可搬型記録媒体等を通じ、情報のやり取りが可能なように構成されている。
設定装置110は、セキュリティパラメータ(1κ)を入力としてセットアップアルゴリズムSetup(1κ)を実行し、共通パラメータppを得る。この共通パラメータppは、暗号学的デバイス、鍵カプセル化方式、および公開鍵暗号方式に共通することとする。また設定装置110は、セキュリティパラメータ(1κ)を入力として非対話零知識証明のセットアップアルゴリズムG(1κ)を実行し、共通パラメータcrsNIZKを得る。さらに設定装置110は、鍵カプセル化方式の鍵生成アルゴリズムGenKEM(pp)を実行し、鍵ペア(pk,sk)を得る。また設定装置110は、公開鍵暗号方式の鍵生成アルゴリズムGenPKE(pp)を実行し、鍵ペア(ek,dk)を得る。設定装置110は、以上のように得られた共通パラメータcrs=(pp,pk,ek,crsNIZK)を出力する。共通パラメータcrsは、それぞれ、安全性強化装置120および検証装置130の入力部121および131に入力され、記憶部122および132に格納される。
安全性強化装置120の乱数生成部123aが、乱数ρ∈RPKEを生成して出力する(ステップS121)。鍵・鍵暗号文生成部123bが、共通パラメータppと公開鍵pkと秘密情報sを用いて鍵暗号化アルゴリズムEncaps(pp,pk;s)を実行し、鍵(鍵情報)kとそれに対応する暗号文c(第1暗号文)とを出力する(ステップS122)。暗号化部123cが、共通パラメータppと暗号化鍵ekと秘密情報sと乱数ρとを用いて暗号化アルゴリズムEnc(pp,ek,m;ρ)を実行し、秘密情報sの暗号文τ(第2暗号文)を得て出力する(ステップS123)。証明生成部123dが、共通パラメータcrsNIZKと、暗号文c,τに対応する文字列x=(c,τ)と、その証拠wである証拠情報(s,ρ)とを入力とし、証明者アルゴリズムP(crsNIZK,(c,τ),(s,ρ))を実行し、その証明である証明情報πを得て出力する。なお、文字列xの例は、c,τのビット列表現値のビット結合値である。証拠情報(s,ρ)の例は、s,ρのビット列表現値のビット結合値である。また、非対話零知識証明の二項関係Bを以下のように定義する。
B(x,w)={((c,τ),(s,ρ)):((c,*)=Encaps(pp,pk;s)∧(τ=Enc(pp,ek,s;ρ)))}
ここで「*」はワイルドカードを表す(ステップS124)。出力部124は、暗号文c,τと証明情報πとを含む補助情報aux=(c,τ,π)を出力する(ステップS125)。得られた鍵kは、例えば共通鍵暗号方式に則って暗号化するための共通鍵として用いられる(暗号学的デバイスに上述の原理を適用する以降の実施形態についても同様)。
補助情報aux=(c,τ,π)は、検証装置130の入力部131に入力されて記憶部132に格納される。検証部133aが、共通パラメータcrsNIZKと暗号文c,τと証明情報πとを入力とし、検証者アルゴリズムV(crsNIZK,(c,τ),π)を実行し、証明情報πを用いた暗号文c,τに対する非対話零知識証明検証を行い、その検証結果がyesであるかを判定する(ステップS131)。検証結果がnoであれば、出力部137が⊥を出力し(ステップS135)、処理を終える。検証結果がyesであれば、鍵暗号文生成部133bが、共通パラメータppと公開鍵pkと秘密情報sを用い、アルゴリズムEncaps1(pp,pk;s)を実行し、秘密情報sに対応する検証用暗号文c’を得て出力する(ステップS132)。暗号文比較部133cが、暗号文cと検証用暗号文c’とが一致するかを判定する(ステップS133)。これらが一致しないと判定された場合(c≠c’)、出力部137が⊥を出力し(ステップS135)、処理を終える。暗号文cと検証用暗号文c’とが一致すると判定された場合(c=c’)、鍵制御部136が、共通パラメータppと秘密情報sとを用い、アルゴリズムEncaps2(pp;s)を実行し、秘密情報sに対応する鍵k’を得て出力する(ステップS134)。出力部137は、鍵(鍵情報)k’を出力し(ステップS136)、処理を終える。出力された鍵k’は、例えば共通鍵暗号方式に則って復号するための共通鍵として用いられる(暗号学的デバイスに上述の原理を適用する以降の実施形態についても同様)。
第2実施形態を説明する。本形態は、公開鍵型暗号学的デバイス(Setup,Gen,C,X,Y,K,Ω)に上述の原理を適用したものである。本形態の安全性強化装置は、非対話零知識証明(NIZK=(G,P,V))を用いて補助情報を生成する。この補助情報は、秘密情報に対応する公開鍵と、秘密情報に対応する第1暗号文と、秘密情報と乱数とに対応する第2暗号文と、秘密情報と乱数とを証拠情報として第1暗号文と第2暗号文とに対する非対話零知識証明を行うための証明情報とを含む。本形態の検証装置は、補助情報が含む証明情報を用いて第1暗号文と第2暗号文とに対する非対話零知識証明検証を行い、秘密情報に対応する検証用暗号文と第1暗号文とが一致するかを判定し、さらに秘密情報に対応する検証用公開鍵と公開鍵とが一致するかを判定する。以降、これまで説明したものと共通する事項については、同じ参照番号を用いて説明を省略する。
図1に例示するように、本形態の安全性強化システム2は、設定装置210と安全性強化装置220と検証装置230とを有する。設定装置210と安全性強化装置220と検証装置230とは、それぞれ、汎用または専用のコンピュータに所定のプログラムが読み込まれて構成された特別な装置である。設定装置210と安全性強化装置220と検証装置230は、ネットワークや可搬型記録媒体等を通じ、情報のやり取りが可能なように構成されている。
本形態の設定装置210のセットアップ処理で生成される共通パラメータppは、公開鍵型暗号学的デバイス、鍵カプセル化方式、および公開鍵暗号方式に共通するものである。その他のセットアップ処理の内容は第1実施形態の設定装置110と同じである。設定装置210は、生成した共通パラメータcrs=(pp,pk,ek,crsNIZK)および秘密情報s∈Sを出力する。これらはそれぞれ、安全性強化装置220および検証装置230の入力部121および131に入力され、記憶部122および132に格納される。
安全性強化装置220の乱数生成部123aが第1実施形態で説明したステップS121の処理を実行した後、鍵・暗号文生成装置223bが第1実施形態で説明したステップS122の処理を「k」を「r」に置換して実行し(ステップS222)、その後、暗号化部123cおよび証明生成部123dが第1実施形態で説明したステップS123およびS124の処理を実行する。次に安全性強化装置220の鍵ペア生成部223eが、共通パラメータppと秘密情報sを入力とし、鍵生成アルゴリズムkey−extract(pp,s)を実行し、公開鍵pと秘密鍵k(鍵情報)との鍵ペア(p,k)を得て出力する。ただし、key−extract(pp,s)は、共通パラメータppと秘密情報sを入力とし、鍵カプセル化方式のアルゴリズムEncaps2(pp;s)を実行して鍵rを得、公開鍵型暗号学的デバイスの鍵生成アルゴリズムGen(pp;r)を実行して、秘密鍵k∈Kと公開鍵pを得て出力するアルゴリズムである。ただし、鍵rを新たに得るのではなく、ステップS222で得られた鍵rがkey−extract(pp,s)で流用されてもよい(ステップS224)。出力部224は、公開鍵pと暗号文c,τと証明情報πとを含む補助情報aux=(p,c,τ,π)を出力する(ステップS225)。得られた秘密鍵kは、例えば公開鍵暗号方式に則って暗号化するために用いられる(公開鍵型暗号学的デバイスに上述の原理を適用する以降の実施形態についても同様)。
補助情報aux=(p,c,τ,π)は、検証装置230の入力部131に入力されて記憶部132に格納される。その後、ステップS131〜S133,S135の処理が第1実施形態で説明した通りに実行される。ステップS133で暗号文cと検証用暗号文c’とが一致すると判定された場合(c=c’)、公開鍵比較部233dが、共通パラメータppと秘密情報sを入力とし、鍵生成アルゴリズムkey−extract(pp,s)を実行し、秘密情報に対応する検証用公開鍵p’と秘密鍵k’との鍵ペア(p’,k’)を得る(ステップS233)。さらに公開鍵比較部233dは、検証用公開鍵p’と公開鍵pとが一致するかを判定する(ステップS234)。これらが一致しないと判定された場合(p≠p’)、出力部237が⊥を出力し(ステップS135)、処理を終える。一方、検証用公開鍵p’と公開鍵pとが一致すると判定された場合(p=p’)、鍵制御部236が、秘密鍵k’を出力部237に送り、出力部237は秘密鍵k’(鍵情報)を出力し(ステップS236)、処理を終える。出力された秘密鍵k’は、例えば公開鍵暗号方式に則って復号するためや署名生成に用いられる(公開鍵型暗号学的デバイスに上述の原理を適用する以降の実施形態についても同様)。
第3実施形態を説明する。本形態は、暗号学的デバイス(Setup,Gen,C,X,Y,K)として、K=GTとし、双線形写像を用いたものに上述の原理を適用したものである。本形態では、h、z、VおよびWが群GKの元、gが群GKの生成元、Hが衝突困難性を持つ写像、e:GK 2→GTが双線形写像であり、秘密情報が乱数σに対するs=hσ∈GKであり、鍵情報がe(z,s)∈GTを含み、補助情報がX=gσ∈GKとTG=(V・WH(X))σ∈GKとを含む。本形態の検証装置は、e(g,TG)∈GTとe(X,V・WH(X))∈GTとが一致するかを判定し、e(g,s)∈GTとe(X,h)∈GTとが一致するかを判定する。
図3に例示するように、本形態の安全性強化システム3は、設定装置310と安全性強化装置320と検証装置330とを有する。設定装置310と安全性強化装置320と検証装置330とは、それぞれ、汎用または専用のコンピュータに所定のプログラムが読み込まれて構成された特別な装置である。設定装置310と安全性強化装置320と検証装置330は、ネットワークや可搬型記録媒体等を通じ、情報のやり取りが可能なように構成されている。
設定装置310は、セキュリティパラメータ(1κ)を入力としてセットアップアルゴリズムSetup(1κ)を実行し、共通パラメータppとして、GK,GT,q,e,gと衝突困難性を持つ写像H:GK→Zqとを得、pp=(GK,GT,q,e,g,H)とする。写像Hの例は、SHA−1等の暗号学的なハッシュ関数などである。また設定装置310は、群GKの元h,z,V,W∈GKをランダムに選び、crs=(pp,h,z,V,W)を出力する。共通パラメータcrsは、それぞれ、安全性強化装置320および検証装置330の入力部121および131に入力され、記憶部122および132に格納される。
安全性強化装置320の乱数生成部323は、ppを入力として乱数σ∈Zqを選択して出力する(ステップS321)。秘密情報生成部324は、pp,σを入力とし、乱数σに対する秘密情報s=hσ∈GKを得て出力する(ステップS322)。鍵生成部325は、pp,z,sを入力とし、秘密の鍵(鍵情報)k=e(z,s)∈GTを生成して出力する(ステップS323)。群演算部326aは、pp,σを入力としてX=gσ∈GKを得て出力する(ステップS324)。群演算部326bは、pp,X,σを入力としてTG=(V・WH(X))σ∈GKを得て出力する(ステップS325)。出力部327は、XとTGとを含む補助情報aux=(X,TG)と秘密情報sを出力する(ステップS326)。
補助情報aux=(X,TG)と秘密情報sは、検証装置330の入力部131に入力されて記憶部132に格納される。比較部333aは、pp,auxを入力とし、e(g,TG)∈GTとe(X,V・WH(X))∈GTとが一致するかを判定する(ステップS331)。これらが一致しないと判定された場合(e(g,TG)≠e(X,V・WH(X)))、出力部337が⊥を出力し(ステップS135)、処理を終える。e(g,TG)とe(X,V・WH(X))とが一致すると判定された場合(e(g,TG)=e(X,V・WH(X)))、比較部333aは、pp,sを入力とし、e(g,s)∈GTとe(X,h)∈GTとが一致するかを判定する(ステップS332)。これらが一致しないと判定された場合(e(g,s)≠e(X,h))、出力部337が⊥を出力し(ステップS135)、処理を終える。e(g,s)とe(X,h)とが一致すると判定された場合(e(g,s)=e(X,h))、鍵制御部336がpp,z,sを入力とし、秘密の鍵(鍵情報)k’=e(z,s)∈GTを生成し(ステップS334)、出力部337が鍵kを出力する(ステップS336)。
第4実施形態を説明する。本形態は、公開鍵型暗号学的デバイス(Setup,Gen,C,X,Y,K,Ω)として、K=GTとし、双線形写像を用いたものに上述の原理を適用したものである。本形態では、h、z、VおよびWが群GKの元、gが群GKの生成元、Hが衝突困難性を持つ写像、e:GK 2→GTが双線形写像であり、秘密情報が乱数σに対するs=hσ∈GKであり、鍵情報がe(z,s)∈GTを含み、補助情報が秘密情報sに対応する公開鍵とX=gσ∈GKとTG=(V・WH(X))σ∈GKとを含む。本形態の検証装置は、e(g,TG)∈GTとe(X,V・WH(X))∈GTとが一致するかを判定し、e(g,s)∈GTとe(X,h)∈GTとが一致するかを判定し、さらに秘密情報に対応する検証用公開鍵と公開鍵とが一致するかを判定する。
図4に例示するように、本形態の安全性強化システム4は、設定装置410と安全性強化装置420と検証装置430とを有する。設定装置410と安全性強化装置420と検証装置430とは、それぞれ、汎用または専用のコンピュータに所定のプログラムが読み込まれて構成された特別な装置である。設定装置410と安全性強化装置420と検証装置430は、ネットワークや可搬型記録媒体等を通じ、情報のやり取りが可能なように構成されている。
本形態の設定装置410は、第3実施形態の共通パラメータppに加え、さらに公開鍵型暗号学的デバイスの共通パラメータを生成し、それらを共通パラメータppとして、共通パラメータcrs=(pp,h,V,W)を得る。その他のセットアップ処理の内容は第3実施形態の設定装置310と同じである。設定装置410はcrs=(pp,h,V,W)を出力し、共通パラメータcrsは、それぞれ、安全性強化装置420および検証装置430の入力部121および131に入力され、記憶部122および132に格納される。
安全性強化装置420の乱数生成部323および秘密情報生成部324が、第3実施形態で説明したステップS321およびS322の処理を実行する。鍵生成部426cが、共通パラメータppと秘密情報sを入力とし、鍵生成アルゴリズムkey−extract(pp,s)を実行し、秘密情報sに対応する公開鍵pと秘密鍵k(鍵情報)との鍵ペア(p,k)を得て出力する(ステップS423)。その後、第3実施形態で説明したステップS324およびS325と同じ処理が実行され、出力部427は、pとXとTGとを含む補助情報aux=(p,X,TG)と秘密情報sを出力する(ステップS426)。
補助情報aux=(p,X,TG)と秘密情報sは、検証装置430の入力部131に入力されて記憶部132に格納される。その後、ステップS331,332,S135の処理が、第3実施形態で説明した通りに実行される。ステップS332でe(g,s)とe(X,h)とが一致すると判定された場合(e(g,s)=e(X,h))、公開鍵比較部433cが、共通パラメータppと秘密情報sを入力とし、鍵生成アルゴリズムkey−extract(pp,s)を実行し、秘密情報sに対応する検証用公開鍵p’と秘密鍵k’(鍵情報)との鍵ペア(p’,k’)を得る。公開鍵比較部433cは、検証用公開鍵p’と公開鍵pとが一致するかを判定する(ステップS434)。検証用公開鍵p’と公開鍵pとが一致しないと判定された場合(p≠p’)、出力部437が⊥を出力し(ステップS135)、処理を終える。検証用公開鍵p’と公開鍵pとが一致すると判定された場合(p=p’)、鍵制御部436が、秘密鍵k’を出力部437に送り、出力部437が秘密鍵k’(鍵情報)を出力し(ステップS436)、処理を終える。
第5実施形態を説明する。本形態でも、双線形写像を用いた公開鍵型暗号学的デバイス(Setup,Gen,C,X,Y,K,Ω)に上述の原理を適用する。ただし本形態では、補助情報auxの一部であるX=gσ∈GKを公開鍵pとして流用する。すなわち、本形態の公開鍵pは補助情報auxの一部であるX=gσを含み、これに対応する秘密鍵k(鍵情報)は秘密情報s=hσ∈GKを含む。これにより、補助情報auxのサイズを第4実施形態よりも小さくできる。
図7に例示するように、本形態の安全性強化システム5は、設定装置510と安全性強化装置520と検証装置530とを有する。設定装置510と安全性強化装置520と検証装置530とは、それぞれ、汎用または専用のコンピュータに所定のプログラムが読み込まれて構成された特別な装置である。設定装置510と安全性強化装置520と検証装置530は、ネットワークや可搬型記録媒体等を通じ、情報のやり取りが可能なように構成されている。
本形態の設定装置510は、第3実施形態と同じ共通パラメータpp=(GK,GT,q,e,g,H)を生成し、共通パラメータcrs=(pp,h,V,W)を得る。設定装置510はcrs=(pp,h,V,W)を出力する。crsは、それぞれ、安全性強化装置520および検証装置530の入力部121および131に入力され、記憶部122および132に格納される。
安全性強化装置520の乱数生成部323および秘密情報生成部324が、第3実施形態で説明したステップS321およびS322の処理を実行する。ただし、ステップS322で得られた秘密情報sは秘密鍵(鍵情報)として機能する。その後、補助情報生成部526の群演算部326aおよび326bが、第3実施形態で説明したステップS324およびS325の処理を実行し、X=gσ∈GKとTG=(V・WH(X))σ∈GKを得て出力する。ただし、出力部524は、XとTGとを含む補助情報aux=(X,TG)と秘密情報sを出力する。ただし、Xは補助情報として用いられるだけではなく、さらに暗号化処理等に公開鍵として用いられる(ステップS326)。
補助情報aux=(X,TG)と秘密情報sと暗号化対象のメッセージxが、検証装置530の入力部131に入力されて記憶部132に格納される。その後、ステップS331,332,S135の処理が、第3実施形態で説明した通りに実行される。ステップS332でe(g,s)とe(X,h)とが一致すると判定された場合(e(g,s)=e(X,h))、鍵制御部536が、秘密情報sを秘密鍵k’とし、メッセージxに対する暗号文CPP(s,x)(鍵情報から得られる情報)を得(ステップS534)、出力部537が当該暗号文CPP(s,x)を出力し(ステップS536)、処理を終える。なお、ステップS534で暗号文CPP(s,x)を得、ステップS536で当該暗号文CPP(s,x)を出力する代わりに、ステップS534で秘密情報sを秘密鍵k’とし、ステップS536で秘密鍵k’(鍵情報)を出力してもよい。
第6実施形態を説明する。本形態でも、双線形写像を用いた公開鍵型暗号学的デバイス(Setup,Gen,C,X,Y,K,Ω)に上述の原理を適用する。ただし本形態では、公開鍵型暗号学的デバイスとしてWaters IDベース暗号を用い、さらに補助情報auxであるX=gσ∈GKおよびTG=(V・WH(X))σ∈GKをマスター公開鍵mpkとして流用し、秘密情報s=hσ∈GKをマスター秘密鍵(鍵情報)mskとして用いる。これにより、補助情報auxのサイズを第4実施形態よりも小さくできる。
図7に例示するように、本形態の安全性強化システム6は、設定装置610と安全性強化装置520と検証装置630とを有する。検証装置630は、汎用または専用のコンピュータに所定のプログラムが読み込まれて構成された特別な装置である。設定装置610と安全性強化装置520と検証装置630は、ネットワークや可搬型記録媒体等を通じ、情報のやり取りが可能なように構成されている。
本形態の設定装置610は、第3実施形態と同じ共通パラメータpp=(GK,GT,q,e,g,H)を生成し、さらに群GKからランダムにY0,Y1,...,Yn∈GKを選択し、共通パラメータcrs=(pp,h,V,W,Y0,Y1,...,Yn)を得る。ただし、nは正整数である。設定装置610はcrs=(pp,h,V,W,Y1,...,Yn)を出力し、crsは、それぞれ、安全性強化装置620および検証装置630の入力部121および131に入力され、記憶部122および132に格納される。
本形態の安全性強化処理は第5実施形態と同じである。ただし、X=gσおよびTG=(V・WH(X))σがマスター公開鍵mpkとして機能し、秘密情報s=hσをマスター秘密鍵(鍵情報)mskとして機能する。マスター公開鍵mpkはID=(ID1,...,IDn)∈{0,1}nに対応する公開鍵の生成に用いられ、マスター秘密鍵mskはIDに対応する秘密鍵の生成に用いられる。
補助情報aux=(X,TG)と秘密情報sとIDとが、検証装置530の入力部131に入力されて記憶部132に格納される。その後、ステップS331,332,S135の処理が、第3実施形態で説明した通りに実行される。ステップS332でe(g,s)とe(X,h)とが一致すると判定された場合(e(g,s)=e(X,h))、鍵制御部636が、共通パラメータppとマスター秘密鍵(鍵情報)msk=sとIDとを入力とし、乱数d∈Zqを生成し、ID=(ID1,...,IDn)∈{0,1}nに対応する秘密鍵k’=dkID(鍵情報から得られる情報)を以下のように生成する。
k’=dkID=(gd,s・(WatH(ID))d)∈GK 2
ただし、WatH(ID)を
とする(ステップS634)。出力部637は秘密鍵k’を出力し(ステップS636)、処理を終える。
第7実施形態を説明する。本形態でも、双線形写像を用いた公開鍵型暗号学的デバイス(Setup,Gen,C,X,Y,K,Ω)に上述の原理を適用する。ただし本形態では、公開鍵型暗号学的デバイスとしてBoyen−Mei−Waters鍵カプセル化方式の変種を用いる。本形態の補助情報はX=gσとTG=(V・WH(X))σに加えてR=hρとT=(v・wH(R))ρとを含む。ただし、v、wが群GKの元であり、ρが乱数である。形態の検証装置は、e(g,TG)とe(X,V・WH(X))とが一致するかを判定し、e(g,s)とe(X,h)とが一致するかを判定し、さらにe(g,T)とe(R,v・wH(R))とが一致するかを判定する。
図7に例示するように、本形態の安全性強化システム7は、設定装置710と安全性強化装置720と検証装置730とを有する。設定装置710と安全性強化装置720と検証装置730とは、それぞれ、汎用または専用のコンピュータに所定のプログラムが読み込まれて構成された特別な装置である。設定装置710と安全性強化装置720と検証装置730は、ネットワークや可搬型記録媒体等を通じ、情報のやり取りが可能なように構成されている。
本形態の設定装置710は、第3実施形態と同じ共通パラメータpp=(GK,GT,q,e,g,H)を生成し、第3実施形態と同じpp,h,V,Wに加え、さらにランダムに元v,w∈GKを選択し、共通パラメータcrs=(pp,h,V,W, v, w)を得る。共通パラメータcrsは、それぞれ、安全性強化装置720および検証装置730の入力部121および131に入力され、記憶部122および132に格納される。
安全性強化装置720の乱数生成部323および秘密情報生成部324が、第3実施形態で説明したステップS321およびS322の処理を実行し、群演算部326a,326bが、第3実施形態で説明したステップS324およびS325の処理を実行する。次に、乱数生成部726cが、ppを入力として第2乱数ρ∈Zqを選択して出力する(ステップS721)。群演算部726dは、pp,ρを入力とし、乱数ρに対するR=gρ∈GKを得て出力する(ステップS722)。群演算部726eは、pp,v,w,R,ρを入力とし、T=(v・wH(R))ρ∈GKを得て出力する(ステップS723)。鍵生成部725は、pp,X,h,ρを入力とし、鍵(鍵情報)k=e(X,h)ρ∈GKを得て出力する。出力部727は、XとTGとRとTとを含む補助情報aux=(X,TG,R,T)を暗号文とし、当該補助情報auxと鍵kと秘密情報sとを出力する(ステップS726)。
補助情報aux=(X,TG,R,T)と鍵kと秘密情報sは、検証装置730の入力部131に入力されて記憶部132に格納される。その後、ステップS331,332,S135の処理が、第3実施形態で説明した通りに実行される。ステップS332でe(g,s)とe(X,h)とが一致すると判定された場合(e(g,s)=e(X,h))、比較部733cが、e(g,T)∈GTとe(R,v・wH(R))∈GTとが一致するかを判定する(ステップS733)。これらが一致しないと判定された場合(e(g,T)≠e(R,v・wH(R)))、出力部737が⊥を出力し(ステップS135)、処理を終える。e(g,T)とe(R,v・wH(R))とが一致すると判定された場合(e(g,T)=e(R,v・wH(R)))、鍵制御部736が、pp,R,sを入力とし、鍵(鍵情報)k’=e(R,s)∈GTを得て出力し、出力部737が鍵k’を出力する。
なお、本発明は上述の実施形態に限定されるものではない。例えば、安全性強化装置や検証装置が複数個存在してもよい。また、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
110〜710 設定装置
120〜720 安全性強化装置
130〜730 検証装置
Claims (10)
- 秘密の鍵情報に対応する秘密情報を格納する記憶部と、前記秘密情報に対して特定の対応関係を持つ補助情報を得て出力する補助情報生成部と、を含む安全性強化装置と、
入力された前記補助情報が前記秘密情報に対して前記特定の対応関係を持つかを判定する判定部と、前記補助情報が前記秘密情報に対して前記対応関係を持つ場合に前記秘密情報に対応する秘密の鍵情報または前記鍵情報から得られる情報を得、前記補助情報が前記秘密情報に対して前記対応関係を持たない場合に拒絶を表す情報を出力する鍵制御部と、を含む検証装置と、を有し、
前記秘密情報と異なる関連秘密情報に対して前記対応関係を持つ関連補助情報を前記補助情報から特定することが困難である、
ことを特徴とする安全性強化システム。 - 請求項1の安全性強化システムであって、
前記補助情報が、前記秘密情報に対応する第1暗号文と、前記秘密情報と乱数とに対応する第2暗号文と、前記秘密情報と前記乱数とを証拠情報として前記第1暗号文と前記第2暗号文とに対する非対話零知識証明を行うための証明情報と、を含み、
前記判定部が、
前記証明情報を用いて前記第1暗号文と前記第2暗号文とに対する非対話零知識証明検証を行う検証部と、
前記秘密情報に対応する検証用暗号文と前記第1暗号文とが一致するかを判定する暗号文比較部と、を含む、
ことを特徴とする安全性強化システム。 - 請求項1の安全性強化システムであって、
h、z、VおよびWが群GKの元、gが前記群GKの生成元、Hが衝突困難性を持つ写像、eが双線形写像であり、
前記秘密情報が、乱数σに対するs=hσであり、
前記鍵情報が、e(z,s)を含み、
前記補助情報が、X=gσとTG=(V・WH(X))σとを含み、
前記判定部が、
e(g,T G )とe(X,V・W H(X) )とが一致するかを判定する第1比較部と、
e(g,s)とe(X,h)とが一致するかを判定する第2比較部と、を含む、ことを特徴とする安全性強化システム。 - 請求項2または3の安全性強化システムであって、
前記補助情報が、さらに、前記秘密情報に対応する公開鍵を含み、
前記判定部が、さらに、前記秘密情報に対応する検証用公開鍵と前記公開鍵とが一致するかを判定する公開鍵比較部を含む、
ことを特徴とする安全性強化システム。 - 請求項1の安全性強化システムであって、
h、VおよびWが群GKの元、gが前記群GKの生成元、Hが衝突困難性を持つ写像、eが双線形写像であり、
前記秘密情報が、乱数σに対するs=hσであり、
前記鍵情報が、sを含み、
前記補助情報が、X=gσとTG=(V・WH(X))σとを含み、
前記判定部が、
e(g,T G )とe(X,V・W H(X) )とが一致するかを判定する第1比較部と、
e(g,s)とe(X,h)とが一致するかを判定する第2比較部と、を含む、ことを特徴とする安全性強化システム。 - 請求項5の安全性強化システムであって、
v、w、RおよびTが前記群GKの元であり、
前記補助情報が、さらに、第2乱数ρに対するR=hρとT=(v・wH(R))ρとを含み、
前記判定部が、e(g,T)とe(R,v・w H(R) )とが一致するかを判定する第3比較部を含む、
ことを特徴とする安全性強化システム。 - 請求項1から6の何れかの安全性強化システムにおける安全性強化装置。
- 請求項1から6の何れかの安全性強化システムにおける検証装置。
- 請求項7の安全性強化装置としてコンピュータを機能させるためのプログラム。
- 請求項8の検証装置としてコンピュータを機能させるためのプログラム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013003706A JP5871827B2 (ja) | 2013-01-11 | 2013-01-11 | 安全性強化システム、安全性強化装置、検証装置、およびプログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013003706A JP5871827B2 (ja) | 2013-01-11 | 2013-01-11 | 安全性強化システム、安全性強化装置、検証装置、およびプログラム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2014135687A JP2014135687A (ja) | 2014-07-24 |
| JP5871827B2 true JP5871827B2 (ja) | 2016-03-01 |
Family
ID=51413659
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2013003706A Active JP5871827B2 (ja) | 2013-01-11 | 2013-01-11 | 安全性強化システム、安全性強化装置、検証装置、およびプログラム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5871827B2 (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6267657B2 (ja) * | 2015-01-07 | 2018-01-24 | 日本電信電話株式会社 | 安全性強化方法、安全性強化システム、安全性強化装置、検証装置、およびプログラム |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4961909B2 (ja) * | 2006-09-01 | 2012-06-27 | ソニー株式会社 | 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム |
| JP5682527B2 (ja) * | 2011-03-28 | 2015-03-11 | ソニー株式会社 | 暗号処理装置、および暗号処理方法、並びにプログラム |
-
2013
- 2013-01-11 JP JP2013003706A patent/JP5871827B2/ja active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2014135687A (ja) | 2014-07-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Coron et al. | Fully homomorphic encryption over the integers with shorter public keys | |
| Abusukhon et al. | A hybrid network security algorithm based on Diffie Hellman and Text-to-Image Encryption algorithm | |
| JP4786531B2 (ja) | 暗号システム、暗号装置、復号装置、プログラムおよび集積回路 | |
| US20140233731A1 (en) | Device and Method for Generating Keys with Enhanced Security for Fully Homomorphic Encryption Algorithm | |
| CN105933101B (zh) | 一种基于参数高次偏移的全同态加密公钥压缩方法 | |
| TWI511517B (zh) | Information processing apparatus, information processing method, program and recording medium | |
| JP4620669B2 (ja) | 署名生成装置、署名検証装置、それらの方法、および集積回路 | |
| JP5730805B2 (ja) | 格子問題に基づく階層型内積暗号システム,格子問題に基づく階層型内積暗号方法,装置 | |
| JP5871827B2 (ja) | 安全性強化システム、安全性強化装置、検証装置、およびプログラム | |
| JPWO2006114948A1 (ja) | 署名生成装置および署名検証装置 | |
| JP5300373B2 (ja) | 代数的トーラスを用いたデータ圧縮処理を行う装置およびプログラム | |
| JP5314449B2 (ja) | 電子署名検証システム、電子署名装置、検証装置、電子署名検証方法、電子署名方法、検証方法、電子署名プログラム、検証プログラム | |
| JP2017038336A (ja) | 復号方法 | |
| CN112733176B (zh) | 基于全域哈希的标识密码加密方法 | |
| Easttom | More approaches to quantum-resistant cryptography | |
| JP6267657B2 (ja) | 安全性強化方法、安全性強化システム、安全性強化装置、検証装置、およびプログラム | |
| Harjito et al. | Comparative Analysis between Elgamal and NTRU Algorithms and their implementation of Digital Signature for Electronic Certificate | |
| Biryukov et al. | PURED: A unified framework for resource-hard functions | |
| WO2017203743A1 (ja) | 暗号化装置、復号装置及び暗号システム | |
| CN118764170B (zh) | 数据处理方法、系统、设备、存储介质和程序产品 | |
| JP5931797B2 (ja) | 署名システム及び方法、署名生成装置並びに署名検証装置 | |
| Orsini et al. | Bootstrapping BGV ciphertexts with a wider choice of p and q | |
| JP5871826B2 (ja) | 認証子生成装置、検証装置、およびプログラム | |
| JP2015213233A (ja) | 鍵生成装置、再暗号化装置、およびプログラム | |
| JP6087849B2 (ja) | 代理署名装置、署名検証装置、鍵生成装置、代理署名システム、およびプログラム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150204 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150925 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20151104 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151209 |
|
| 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: 20160105 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160112 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5871827 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |