JP7348848B2 - 統合属性ベースグループ署名処理方法、統合属性ベースグループ署名処理システム、および、プログラム - Google Patents
統合属性ベースグループ署名処理方法、統合属性ベースグループ署名処理システム、および、プログラム Download PDFInfo
- Publication number
- JP7348848B2 JP7348848B2 JP2020004943A JP2020004943A JP7348848B2 JP 7348848 B2 JP7348848 B2 JP 7348848B2 JP 2020004943 A JP2020004943 A JP 2020004943A JP 2020004943 A JP2020004943 A JP 2020004943A JP 7348848 B2 JP7348848 B2 JP 7348848B2
- Authority
- JP
- Japan
- Prior art keywords
- group
- attribute
- signature
- data
- integrated
- 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
Landscapes
- Storage Device Security (AREA)
Description
(A)グループを識別するためのグループ識別子gに基づいて、暫定公開鍵tapk、および、暫定秘密鍵taskを生成し、
(B)有効データリストに含まれる属性データattjと署名データΣjと、グループ署名対象のメッセージMとを対応付けたデータ<attj,Σj,M>を、暫定秘密鍵taskで暗号化することで、暗号化データσ’jを取得し、暗号化データσ’jをグループ識別子gに対応付けたデータを、追跡用公開鍵tmpkにより暗号化することで、暗号化データcを取得するとともに、共通ステートメントcrsを用いてゼロ知識証明データΠを生成し、さらに、公開鍵セットgpk=(crs,gmpk,tmpk)とし、統合署名セットデータΣ=(gpk,{cj}j∈{1,...,v},c,Π)を生成する。
(1)グループに含まれるグループユーザーと、グループに含まれるグループユーザー数の最大値とを特定し、(2)属性の汎用セットを規定し、(3)鍵生成処理、署名処理、および、検証処理において使用されるパラメータを規定するセットアップステップと、
パラメータに基づいて、(1)ゼロ知識証明用の共通ステートメントcrsと、(2)グループ管理者用の公開鍵gmpkおよび秘密鍵gspkと、(3)追跡用の公開鍵tmpkおよび秘密鍵tmskと、(4)各グループユーザーi(i:自然数、1≦i≦Num1(Num1:グループユーサー数))が所有しうる各属性j(j:自然数、1≦j≦Num2(Num2:各グループユーザーが所有しうる属性数))についての公開鍵uapkijおよびuaskijと、を生成する鍵生成ステップと、
を実行する。
各グループユーザーiが所有する属性attjを、秘密鍵uaskijを用いて署名処理することで暗号化属性署名σijを取得し、当該暗号化属性署名σijを属性attj、および、グループユーザー識別子diと対応付けたデータ<attj,σij,di>を、追跡用公開鍵tmpkにより暗号化することで、暗号化データcijを取得するとともに、共通ステートメントcrsを用いてゼロ知識証明データπijを生成し、さらに、属性署名セットデータΣj=(cij,πij)を生成する処理を、グループユーザーiが所有する属性であって、ポリシーΓに設定されている属性と一致する属性の数に対応する回数であるm回(m:自然数)繰り返し実行することで、属性-ユーザー署名セットデータ{attj,Σj}j∈{1,...,m}を取得するユーザー属性署名ステップを実行する。
共通ステートメントcrsを用いて、ユーザー属性署名ステップにより生成されたデータの有効性を検証し、有効であると判定されたデータを、属性について重複がないように蓄積することで、有効データリストvlを取得するユーザー属性署名認証ステップと、
グループを識別するためのグループ識別子gに基づいて、暫定公開鍵tapk、および、暫定秘密鍵taskを生成し、
有効データリストに含まれる属性データattjと署名データΣjと、グループ署名対象のメッセージMとを対応付けたデータ<attj,Σj,M>を、暫定秘密鍵taskで暗号化することで、暗号化データσ’jを取得し、暗号化データσ’jをグループ識別子gに対応付けたデータを、追跡用公開鍵tmpkにより暗号化することで、暗号化データcを取得するとともに、共通ステートメントcrsを用いてゼロ知識証明データΠを生成し、さらに、公開鍵セットgpk=(crs,gmpk,tmpk)とし、統合署名セットデータΣ=(gpk,{cj}j∈{1,...,v},c,Π)を生成する、統合署名処理ステップと、
を実行する。
第1実施形態について、図面を参照しながら、以下、説明する。
図1は、第1実施形態に係る統合属性ベースグループ署名処理システム1000の概略構成図である。
(1)グループ管理用鍵ペア(gmpk、gmsk)
gmpk:グループ管理用公開鍵
gmsk:グループ管理用秘密鍵
(2)追跡用鍵ペア(tmpk、tmsk)
tmpk:追跡用公開鍵
tmsk:追跡用秘密鍵
(3)ユーザー属性用鍵ペア(uapkij、uaskij)
uapkij:グループユーザーiの属性j用の公開鍵
uaskij:グループユーザーiの属性j用の秘密鍵
また、鍵生成装置3は、ゼロ知識証明処理用の共通ステートメントcrsを生成する。
以上のように構成された統合属性ベースグループ署名処理システム1000の動作について、以下、説明する。
(1)デジタル署名技術(Digital signature sheme)DSは、DS.Gen、DS.Sign、および、DS.Verifyを含む。処理DS.Genは、1λが入力されると、鍵ペア(公開鍵pkおよび秘密鍵sk)を生成する処理である。処理DS.Signは、秘密鍵skとメッセージmを入力とし、署名σを出力する処理である。処理DS.Verifyは、署名σがメッセージmについて有効であるとき、「1」を出力し、署名σがメッセージmについて有効ではないとき、「0」を出力する。
(2)公開鍵暗号技術PKEは、PKE.Gen、PKE.Enc、および、PKE.Decを含む。処理PKE.Genは、1λが入力されると、鍵ペア(公開鍵pkおよび秘密鍵sk)を生成する処理である。処理PKE.Encは、公開鍵pkとメッセージmと、乱数rとを入力とし、暗号文cを出力する処理である。処理PKE.Decは、秘密鍵skおよび暗号文cを入力とし、平文mを出力する。
(3)非対話ゼロ知識証明技術(Non-interactive zero-knowledge proof)NIZKにおいて、Rを効率的に計算可能な関係とし、LをRにおけるステートメントを有する言語であるとし、ステートメントをxとし、(x,w)∈Rでであるウィットネス(witness)をwとする。このとき、非対話ゼロ知識証明技術NIZKは、ZK.Gen、ZK.P、および、ZK.Vを含む。処理ZK.Genは、1λが入力されると、共通ステートメントcrsを出力する。処理ZK.Pは、共通ステートメントcrs、ステートメントx、および、ウィットネスwを入力とし、証明πを出力する。処理ZK.Vは、共通ステートメントcrs、ステートメントx、および、証明πを入力し、証明πが有効であるとき、「1」を出力し、証明πが有効はないとき、「0」を出力する。
ステップS1において、鍵生成装置3は、セットアップ処理(Setup(1λ))を実行する。
ステップS101において、鍵生成装置3は、セキュリティパラメータλを設定する。
(先行技術文献A):
Y. Zhang, Y. Gan, Y. Yin, and H.Jia, Attribute-Based VLR Group Signature Scheme from Lattices: 18thInternational Conference, ICA3PP 2018, Guangzhou, China, November 15-17, 2018,Proceedings, Part IV, 11 2018, pp. 600-610.
N=2L=poly(λ)
n=poly(λ)
m=ceil(2n×log(q))
q=O(Ln2)
σ=ω(log(m))
β=O(sqrt(Ln))
ceil(x):天井関数(x以上の最小整数を取得する関数)
sqrt(x):xの平方根を取得する関数
なお、O(),ω()は、ランダウの記号である。
ハッシュ関数H:{0,1}*→{1,2,3}t
t=ω(log(n))
(ステップS104):
ステップS104において、鍵生成装置3は、上記により取得したデータから公開パラメータPP=(para,Att,attL,H)(para:ステップS102で取得したパラメータを含むデータ)を取得し、取得した公開パラメータPPを出力する。
ステップS2において、鍵生成装置3は、鍵生成処理(KeyGen(1λ,G))を実行する。
ステップS201において、鍵生成装置3は、グループ識別子g(g:自然数)を設定する。
ステップS205において、ループ処理(ループ1)が開始される。当該ループ処理は、iを変数とし、グループユーザー数nに相当する回数だけ繰り返される(For i∈{1,...,n})。
ステップS206において、鍵生成装置3は、グループユーザーiのグループユーザー識別子di(di:自然数)を設定する。
ステップS207において、ループ処理(ループ2)が開始される。当該ループ処理は、jを変数とし、属性数sに相当する回数だけ繰り返される(For j∈{1,...,s})。
ステップS210において、鍵生成装置3は、グループユーザーiのユーザー属性用公開鍵の集合データおよびユーザー属性用秘密鍵、すなわち、
ユーザー属性用公開鍵upki={upkij}j∈{1,...,s}
ユーザー属性用秘密鍵uski={uskij}j∈{1,...,s}
を取得する。
ステップS211において、鍵生成装置3は、ループ処理(ループ1)が終了条件を満たしているか否かを判定し、終了条件を満たしていないと判定したときは、処理をステップS205に戻し、終了条件を満たしていると判定した場合、処理をステップS212に進める。
ステップS212において、鍵生成装置3は、公開鍵セットデータgpk=(crs,gmpk,tmpk)を取得する。
ステップS3において、鍵生成装置3は、鍵生成処理(KeyGen(1λ,G))により生成した鍵を各装置に配布する。具体的には、鍵生成装置3は、追跡用公開鍵tmpk、グループ管理用公開鍵gmpk、グループユーザーiのユーザー属性用公開鍵upki、および、共通ステートメントcrsを公開する。また、鍵生成装置3は、追跡装置4へ、追跡用秘密鍵tmskを秘密裏に送付する。また、鍵生成装置3は、グループ管理装置2へ、グループ管理用秘密鍵gmskを秘密裏に送付する。また、鍵生成装置3は、グループユーザー用装置UE(di)へ、グループユーザーiのユーザー属性用秘密鍵uskiを秘密裏に送付する。
ステップS4において、グループ管理装置2、および、グループユーザー用装置UE(di)は、公開鍵セットデータgpk(=(crs,gmpk,tmpk))を取得する。
ステップS5において、認証装置1は、ポリシー設定処理を行う。具体的には、認証装置1は、グループ署名対象のメッセージのグループ署名が満たすべき条件(ポリシー要求条件)を設定したポリシーΓを生成する。具体的には、ポリシーΓは、S個の属性のうち、t個の属性を満たすことを要求する場合、当該ポリシーΓを、Γ=(t,S)と表記する。ここでは、説明便宜のため、図1に示すように、ポリシー要求条件を、3つの属性att1,att2,att3を満たすこととし、
(1)属性att1が、「財務部(Financial Department)に所属していること」であり(なお、属性att1を属性attFと表記することがある(att1=attF))、
(2)属性att2が、「弁護士(Lawyer)であること」であり(なお、属性att2を属性attLと表記することがある(att2=attL))、
(3)属性att3が、「マネージャー(Manager)であること」である(なお、属性att3を属性attMと表記することがある(att3=attM))、
として、以下説明する。
ステップS6において、グループユーザー用装置UE(di)は、ユーザー属性署名処理を行う。
グループユーザー用装置UE(di)は、グループユーザーiが有している属性と、ポリシーΓに設定されている属性とのマッチングを行い、マッチング数mを求める。つまり、グループユーザー用装置UE(di)は、m=|S∩Si|に相当する処理を実行し、属性のマッチング数mを取得する。
ステップS602において、グループユーザー用装置UE(di)は、属性jの署名処理を行う。具体的には、グループユーザー用装置UE(di)は、属性用秘密鍵uaskijを用いて、属性attjに対して処理DS.Sign(uaskij,attj)を実行し、属性attjについての電子署名σijを取得する。
ステップS603において、グループユーザー用装置UE(di)は、属性署名データの暗号化処理を行う。具体的には、グループユーザー用装置UE(di)は、属性attj、属性attjについての電子署名σij、および、グループユーザー識別子diのセットデータ<attj,σij,di>に対して、追跡用公開鍵tmpk、乱数rijを用いて、処理PKE.Enc(tmpk,<attj,σij,di>,rij)を実行し、暗号化データcijを取得する。
ステップS604において、グループユーザー用装置UE(di)は、属性署名データのゼロ知識証明処理を行う。具体的には、グループユーザー用装置UE(di)は、共通ステートメントcrsを用いて、
ステートメントx=<gpk,attj,cij>、
ウィットネスw=<uaskij,σij,di,rij>
として、処理ZK.P(crs,x,w)を実行し、ゼロ知識証明πijを取得する。
ステップS605において、グループユーザー用装置UE(di)は、属性署名セットデータΣj=(cij,πij)を取得する。
ステップS606において、グループユーザー用装置UE(di)は、ループ処理1(ループ1)が終了条件を満たしているか否かを判定し、終了条件を満たしていないと判定したときは、処理をステップS601に戻し、終了条件を満たしていると判定した場合、ユーザー属性署名処理を終了させる。
{attj,Σj}j∈{1,...,m}={(att1,Σ1),(att2,Σ2)}
={(attF,ΣF),(attL,ΣL)}
また、グループユーザー用装置UE(d2)の属性署名セットデータ{attj,Σj}j∈{1,...,m}は、下記の通りである。
{attj,Σj}j∈{1,...,m}={(att1,Σ1),(att2,Σ2)}
={(attF,ΣF),(attM,ΣM)}
(1.2.7:ユーザー属性署名認証処理(ステップS7))
ステップS7において、グループ管理装置2は、ユーザー属性署名認証処理を行う。
ステップS701において、グループ管理装置2は、有効データリストvlの初期化処理を実行する。つまり、グループ管理装置2は、有効データリストvlを空のリストに設定する。
ステップS702において、ループ処理1(ループ1)が開始される。当該ループ処理1は、jを変数(属性を示す変数)とし、グループ管理装置2が、グループユーザー用装置UE(di)から受信した属性署名セットデータの数kに相当する回数だけ繰り返される(For j∈{1,...,k})。
ステップS703において、グループ管理装置2は、属性attjについてのデータ(属性署名セットデータ)が、有効データリストvlに含まれているか否かの判定処理を行う。当該判定の結果、属性attjについてのデータ(属性署名セットデータ)が、有効データリストvlに含まれている場合、処理をステップS704に進め、一方、有効データリストvlに含まれていない場合、処理をステップS707に進める。
ステップS704において、グループ管理装置2は、属性署名セットデータのゼロ知識認証処理を行う。具体的には、グループ管理装置2は、共通ステートメントcrsを用いて、処理ZK.V(crs,<gpk,attj,πij>)を実行する。
ステップS705において、グループ管理装置2は、処理ZK.V(crs,<gpk,attj,πij>)の処理結果の判定処理を行う。判定の結果、ZK.V(crs,<gpk,attj,πij>)=1である場合、処理をステップS706に進め、一方、ZK.V(crs,<gpk,attj,πij>)が「1」ではない場合、処理をステップS707に進める。
ステップS706において、グループ管理装置2は、有効データリストvlに、ステップS705の処理で有効と判定された属性署名セットデータ(attj,Σj)を追加する。つまり、グループ管理装置2は、
vl=vl∪(attj,Σj)
に相当する処理を実行する。
ステップS707において、グループ管理装置2は、ループ処理1(ループ1)が終了条件を満たしているか否かを判定し、終了条件を満たしていないと判定したときは、処理をステップS702に戻し、終了条件を満たしていると判定した場合、処理をステップS708に進める。
ステップS708において、グループ管理装置2は、グループ署名破棄判定処理を行う。具体的には、グループ管理装置2は、有効データリストvlに、ポリシーΓが要求している属性、すなわち、S={att1,att2,att3}(={attF,attL,attM})に対応する属性署名セットデータが含まれているか否かを判定する。判定の結果、有効データリストvlに、ポリシーΓが要求している全ての属性に対応するデータが含まれていない場合、グループ管理装置2は、有効なグループ署名ができないと判断し、統合属性ベースグループ署名処理システム1000で実行されている処理(統合属性ベースグループ署名を生成する処理)を終了させる。一方、判定の結果、有効データリストvlに、ポリシーΓが要求している全ての属性に対応するデータが含まれている場合、統合属性ベースグループ署名処理システム1000で実行されている処理(統合属性ベースグループ署名を生成する処理)を続行させる。
ステップS8において、グループ管理装置2は、統合署名処理を行う。
ステップS801において、ループ処理1(ループ1)が開始される。当該ループ処理1は、jを変数(属性を示す変数)とし、有効データリストvlの要素数(属性署名セットデータの数)vに相当する回数だけ繰り返される(For j∈{1,...,v})。
ステップS802において、グループ管理装置2は、有効データリストvlから、属性署名セットデータvl[j]=(attj,Σj)を抽出する。
ステップS803において、グループ管理装置2は、グループ識別子gに基づいて、暫定鍵ペア(暫定公開鍵tapkj、および、暫定秘密鍵taskj)を生成する。つまり、グループ管理装置2は、処理DS.Gen(1g)に相当する処理を実行して、暫定鍵ペア(暫定公開鍵tapkj、および、暫定秘密鍵taskj)を生成する。
ステップS804において、グループ管理装置2は、暫定署名処理を行う。具体的には、グループ管理装置2は、暫定秘密鍵taskjを用いて、属性署名セットデータにメッセージMを追加したデータ<attj,Σj,M>に対して、処理DS.Sign(taskj,<attj,Σj,M>)を実行し、電子署名σ’jを取得する。
ステップS805において、グループ管理装置2は、ループ処理1(ループ1)が終了条件を満たしているか否かを判定し、終了条件を満たしていないと判定したときは、処理をステップS801に戻し、終了条件を満たしていると判定した場合、処理をステップS808に進める。
ステップS806において、グループ管理装置2は、統合署名データの暗号化処理を行う。具体的には、グループ管理装置2は、上記ループ処理1により取得した暫定署名データの集合データ{σ’j}j∈{1,...,v}にグループ識別子gを対応づけたデータ(統合署名データ)<{σ’j}j∈{1,...,v},g>を、追跡用公開鍵tmpkと、乱数rを用いて暗号化する。つまり、グループ管理装置2は、処理PKE.Enc(tmpk,<{σ’j}j∈{1,...,v},g>,r)に相当する処理を実行して、統合署名データの暗号化データcを取得する。
ステップS807において、グループ管理装置2は、統合署名データのゼロ知識証明処理を行う。具体的には、グループ管理装置2は、共通ステートメントcrsを用いて、
ステートメントx=<gpk,tapk,M,{attj,cj}j∈{1,...,v},c>、
ウィットネスw=<task,{σ’j}j∈{1,...,v},vl,g,r>
として、処理ZK.P(crs,x,w)を実行し、ゼロ知識証明Πを取得する。
ステップS808において、グループ管理装置2は、統合署名セットデータΣ=(gpk,{cj}j∈{1,...,v},c,Π)を取得する。
ステップS9において、認証装置1は、認証処理を行う。
ステップS901において、認証装置1は、統合署名セットデータのゼロ知識認証処理を行う。具体的には、認証装置1は、共通ステートメントcrsを用いて、処理ZK.V(crs,<gpk,{cj}j∈{1,...,v},c>,Π)を実行する。
ステップS902において、認証装置1は、処理ZK.V(crs,<gpk,{cj}j∈{1,...,v},c>,Π)の処理結果の判定処理を行う。判定の結果、ZK.V(crs,<gpk,{cj}j∈{1,...,v},c>,Π)=1である場合、統合署名セットデータΣが有効であると判定する(ステップS903)。一方、判定の結果、ZK.V(crs,<gpk,{cj}j∈{1,...,v},c>,Π)が「1」ではない場合、統合署名セットデータΣは有効ではない(無効である)と判定する(ステップS904)。
ステップS10において、追跡装置4は、追跡処理を行う。
ステップS1001において、追跡装置4は、統合署名セットデータΣ(=(gpk,{cj}j∈{1,...,v},c,Π))から、統合署名データの暗号化データcを取得する。
ステップS1002において、追跡装置4は、統合署名データの暗号化データの復号処理を行う。つまり、追跡装置4は、処理PKE.Dec(tmsk,c)を行い、復号されたデータ({σ’j}j∈{1,...,v},g)を取得する。これにより、グループ識別子gが取得される。
ステップS1008において、ループ処理1(ループ1)が開始される。当該ループ処理1は、jを変数(属性を示す変数)とし、統合署名セットデータに含まれる属性データの数vにに相当する回数だけ繰り返される(For j∈{1,...,v})。
ステップS1004において、追跡装置4は、統合署名セットデータΣ(=(gpk,{cj}j∈{1,...,v},c,Π))から、署名属性データの暗号化データcjを取得する。
ステップS1005において、追跡装置4は、属性署名データの暗号化データの復号処理を行う。つまり、追跡装置4は、処理PKE.Dec(tmsk,cj)を行い、復号されたデータ<attj,σij,di>を取得する。これにより、属性attjについての署名をしたグループユーザーのグループユーザー識別子diが取得される。
ステップS1006において、追跡装置4は、ループ処理1(ループ1)が終了条件を満たしているか否かを判定し、終了条件を満たしていないと判定したときは、処理をステップS1003に戻し、終了条件を満たしていると判定した場合、処理をステップS1007に進める。
ステップS1007において、追跡装置4は、グループ識別子gを取得する。
また、上記実施形態で説明した統合属性ベースグループ署名処理システム1000、認証装置1、グループ管理装置2、グループユーザー用装置UE(di)、鍵生成装置3、および、追跡装置4において、各ブロックは、LSIなどの半導体装置により個別に1チップ化されても良いし、一部又は全部を含むように1チップ化されても良い。
1 認証装置
2 グループ管理装置
3 鍵生成装置
4 追跡装置
UE(d1)~UE(dn) グループユーザー用装置
Claims (6)
- 複数のグループユーザーを含むグループを対象とする属性ベースグループ署名処理であって、署名権限の条件が属性に基づいて規定されているポリシーΓに基づいて、署名の有効性が判定される前記属性ベースグループ署名処理を行うための統合属性ベースグループ署名処理方法であり、
鍵生成装置と、認証装置と、グループ管理装置と、グループユーザー用装置と、を備える統合属性ベースグループ署名処理システムを用いて実行される統合属性ベースグループ署名処理方法であって、
前記鍵生成装置が、(1)グループに含まれるグループユーザーと、前記グループに含まれるグループユーザー数の最大値とを特定し、(2)属性の汎用セットを規定し、(3)鍵生成処理、署名処理、および、検証処理において使用されるパラメータを規定するセットアップステップと、
前記鍵生成装置が、前記パラメータに基づいて、(1)ゼロ知識証明用の共通ステートメントcrsと、(2)グループ管理者用の公開鍵gmpkおよび秘密鍵gspkと、(3)追跡用の公開鍵tmpkおよび秘密鍵tmskと、(4)各グループユーザーi(i:自然数、1≦i≦Num1(Num1:グループユーサー数))が所有しうる各属性j(j:自然数、1≦j≦Num2(Num2:各グループユーザーが所有しうる属性数))についての公開鍵uapkijおよびuaskijと、を生成する鍵生成ステップと、
前記認証装置が、前記ポリシーΓを設定するポリシー設定ステップと、
前記グループユーザー用装置が、各グループユーザーiが所有する属性attjを、秘密鍵uaskijを用いて署名処理することで暗号化属性署名σijを取得し、当該暗号化属性署名σijを属性attj、および、グループユーザー識別子diと対応付けたデータ<attj,σij,di>を、追跡用公開鍵tmpkにより暗号化することで、暗号化データcijを取得するとともに、前記共通ステートメントcrsを用いてゼロ知識証明データπijを生成し、さらに、属性署名セットデータΣj=(cij,πij)を生成する処理を、グループユーザーiが所有する属性であって、ポリシーΓに設定されている属性と一致する属性の数に対応する回数であるm回(m:自然数)繰り返し実行することで、属性-ユーザー署名セットデータ{attj,Σj}j∈{1,...,m}を取得するユーザー属性署名ステップと、
前記グループ管理装置が、前記共通ステートメントcrsを用いて、前記ユーザー属性署名ステップにより生成されたデータの有効性を検証し、有効であると判定されたデータを、属性について重複がないように蓄積することで、有効データリストvlを取得するユーザー属性署名認証ステップと、
前記グループ管理装置が、
(1)グループを識別するためのグループ識別子gに基づいて、暫定公開鍵tapk、および、暫定秘密鍵taskを生成し、
(2)前記有効データリストに含まれる属性データattjと署名データΣjと、グループ署名対象のメッセージMとを対応付けたデータ<attj,Σj,M>を、暫定秘密鍵taskで暗号化することで、暗号化データσ’jを取得し、暗号化データσ’jをグループ識別子gに対応付けたデータを、追跡用公開鍵tmpkにより暗号化することで、暗号化データcを取得するとともに、前記共通ステートメントcrsを用いてゼロ知識証明データΠを生成し、さらに、公開鍵セットgpk=(crs,gmpk,tmpk)とし、データ<att j ,σ ij ,d i >を前記追跡用公開鍵tmpkにより暗号化したデータをc j とし、統合署名セットデータΣ=(gpk,{cj}j∈{1,...,v},c,Π)を生成する、統合署名処理ステップと、
を備える統合属性ベースグループ署名処理方法。 - 前記統合属性ベースグループ署名処理システムは追跡装置を備え、
前記統合属性ベースグループ署名処理方法は、さらに、
前記追跡装置が、前記統合署名セットデータΣを取得する統合署名セットデータ取得ステップと、
前記追跡装置が、前記統合署名セットデータΣから暗号化データcを取得し、当該暗号化データcを、追跡用秘密鍵tmskにより復号したデータからグループ識別子gを取得する追跡処理ステップと、
を備える、
請求項1に記載の統合属性ベースグループ署名処理方法。 - 前記追跡処理ステップは、さらに、
前記追跡装置が、前記統合署名セットデータΣから暗号化データcjを取得し、当該暗号化データcjを、追跡用秘密鍵tmskにより復号したデータから、属性attjについての署名をしたグループユーザーのグループユーザー識別子diを取得する、
請求項2に記載の統合属性ベースグループ署名処理方法。 - 複数のグループユーザーを含むグループを対象とする属性ベースグループ署名処理であって、署名権限の条件が属性に基づいて規定されているポリシーΓに基づいて、署名の有効性が判定される前記属性ベースグループ署名処理を行うための統合属性ベースグループ署名処理システムであって、
鍵生成装置と、
認証装置と、
グループ管理装置と、
グループユーザー用装置と、
を備え、
前記鍵生成装置は、
(1)グループに含まれるグループユーザーと、前記グループに含まれるグループユーザー数の最大値とを特定し、(2)属性の汎用セットを規定し、(3)鍵生成処理、署名処理、および、検証処理において使用されるパラメータを規定するセットアップステップと、
前記パラメータに基づいて、(1)ゼロ知識証明用の共通ステートメントcrsと、(2)グループ管理者用の公開鍵gmpkおよび秘密鍵gspkと、(3)追跡用の公開鍵tmpkおよび秘密鍵tmskと、(4)各グループユーザーi(i:自然数、1≦i≦Num1(Num1:グループユーサー数))が所有しうる各属性j(j:自然数、1≦j≦Num2(Num2:各グループユーザーが所有しうる属性数))についての公開鍵uapkijおよびuaskijと、を生成する鍵生成ステップと、
を実行し、
前記認証装置は、前記ポリシーΓを設定するポリシー設定ステップを実行し、
前記グループユーザー用装置は、
各グループユーザーiが所有する属性attjを、秘密鍵uaskijを用いて署名処理することで暗号化属性署名σijを取得し、当該暗号化属性署名σijを属性attj、および、グループユーザー識別子diと対応付けたデータ<attj,σij,di>を、追跡用公開鍵tmpkにより暗号化することで、暗号化データcijを取得するとともに、前記共通ステートメントcrsを用いてゼロ知識証明データπijを生成し、さらに、属性署名セットデータΣj=(cij,πij)を生成する処理を、グループユーザーiが所有する属性であって、ポリシーΓに設定されている属性と一致する属性の数に対応する回数であるm回(m:自然数)繰り返し実行することで、属性-ユーザー署名セットデータ{attj,Σj}j∈{1,...,m}を取得するユーザー属性署名ステップを実行し、
前記グループ管理装置は、
前記共通ステートメントcrsを用いて、前記ユーザー属性署名ステップにより生成されたデータの有効性を検証し、有効であると判定されたデータを、属性について重複がないように蓄積することで、有効データリストvlを取得するユーザー属性署名認証ステップと、
グループを識別するためのグループ識別子gに基づいて、暫定公開鍵tapk、および、暫定秘密鍵taskを生成し、
前記有効データリストに含まれる属性データattjと署名データΣjと、グループ署名対象のメッセージMとを対応付けたデータ<attj,Σj,M>を、暫定秘密鍵taskで暗号化することで、暗号化データσ’jを取得し、暗号化データσ’jをグループ識別子gに対応付けたデータを、追跡用公開鍵tmpkにより暗号化することで、暗号化データcを取得するとともに、前記共通ステートメントcrsを用いてゼロ知識証明データΠを生成し、さらに、公開鍵セットgpk=(crs,gmpk,tmpk)とし、データ<att j ,σ ij ,d i >を前記追跡用公開鍵tmpkにより暗号化したデータをc j とし、統合署名セットデータΣ=(gpk,{cj}j∈{1,...,v},c,Π)を生成する、統合署名処理ステップと、
を実行する、
統合属性ベースグループ署名処理システム。 - 前記認証装置は、前記共通ステートメントcrsを用いて、前記統合署名セットデータΣのゼロ知識証明Πについてのゼロ知識認証処理を行う認証ステップを実行する、
請求項4に記載の統合属性ベースグループ署名処理システム。 - 請求項1乃至3に記載の統合属性ベースグループ署名処理方法をコンピュータに実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020004943A JP7348848B2 (ja) | 2020-01-16 | 2020-01-16 | 統合属性ベースグループ署名処理方法、統合属性ベースグループ署名処理システム、および、プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020004943A JP7348848B2 (ja) | 2020-01-16 | 2020-01-16 | 統合属性ベースグループ署名処理方法、統合属性ベースグループ署名処理システム、および、プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021114641A JP2021114641A (ja) | 2021-08-05 |
JP7348848B2 true JP7348848B2 (ja) | 2023-09-21 |
Family
ID=77077745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020004943A Active JP7348848B2 (ja) | 2020-01-16 | 2020-01-16 | 統合属性ベースグループ署名処理方法、統合属性ベースグループ署名処理システム、および、プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7348848B2 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010137508A1 (ja) | 2009-05-29 | 2010-12-02 | 日本電気株式会社 | 署名装置、署名検証装置、匿名認証システム、署名方法、署名認証方法およびそれらのプログラム |
JP2013536651A (ja) | 2010-08-24 | 2013-09-19 | コーニンクレッカ フィリップス エヌ ヴェ | 属性ベースのデジタル署名 |
WO2016014048A1 (en) | 2014-07-23 | 2016-01-28 | Hewlett-Packard Development Company, L.P. | Attribute-based cryptography |
-
2020
- 2020-01-16 JP JP2020004943A patent/JP7348848B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010137508A1 (ja) | 2009-05-29 | 2010-12-02 | 日本電気株式会社 | 署名装置、署名検証装置、匿名認証システム、署名方法、署名認証方法およびそれらのプログラム |
JP2013536651A (ja) | 2010-08-24 | 2013-09-19 | コーニンクレッカ フィリップス エヌ ヴェ | 属性ベースのデジタル署名 |
WO2016014048A1 (en) | 2014-07-23 | 2016-01-28 | Hewlett-Packard Development Company, L.P. | Attribute-based cryptography |
Non-Patent Citations (1)
Title |
---|
藤井 裕城 ほか,ペアリングを用いた効率的な属性ベースグループ署名方式の提案,電子情報通信学会技術研究報告,日本,社団法人電子情報通信学会 The Institute of Electronics,Information and Communication Engineers,2009年11月05日,第109巻,第271号,pp.15-22 |
Also Published As
Publication number | Publication date |
---|---|
JP2021114641A (ja) | 2021-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6515246B2 (ja) | 情報及び階層的で決定性の暗号化鍵のセキュアな交換のための共通秘密の決定 | |
JP6547079B1 (ja) | 登録・認可方法、装置及びシステム | |
Liu et al. | Achieving reliable and secure services in cloud computing environments | |
Michalas | The lord of the shares: Combining attribute-based encryption and searchable encryption for flexible data sharing | |
JP2024063229A (ja) | ブロックチェーンにより実装される方法及びシステム | |
Liu et al. | A Survey of Public Auditing for Shared Data Storage with User Revocation in Cloud Computing. | |
US10880100B2 (en) | Apparatus and method for certificate enrollment | |
JP5506704B2 (ja) | 復号システム、鍵装置、復号方法、及びプログラム | |
Hoang et al. | Privacy-preserving blockchain-based data sharing platform for decentralized storage systems | |
Sciancalepore et al. | On the design of a decentralized and multiauthority access control scheme in federated and cloud-assisted cyber-physical systems | |
KR20210066640A (ko) | 비밀분산 인증 시스템 및 방법 | |
Luong et al. | Privacy-preserving identity management system on blockchain using Zk-SNARK | |
Bakas et al. | The cloud we share: Access control on symmetrically encrypted data in untrusted clouds | |
Alimohammadi et al. | A secure key-aggregate authentication cryptosystem for data sharing in dynamic cloud storage | |
Abdulsalam et al. | Decentralized data integrity scheme for preserving privacy in cloud computing | |
CN116346336B (zh) | 一种基于多层密钥生成中心的密钥分发方法及相关系统 | |
WO2016014048A1 (en) | Attribute-based cryptography | |
JP7348848B2 (ja) | 統合属性ベースグループ署名処理方法、統合属性ベースグループ署名処理システム、および、プログラム | |
JP7301652B2 (ja) | 匿名認証方法、プログラム、および、匿名認証システム | |
US20230379175A1 (en) | Challenge-response protocol based on physically unclonable functions | |
Rehman et al. | Securing cloud storage by remote data integrity check with secured key generation | |
Rajeb et al. | Formal analyze of a private access control protocol to a cloud storage | |
Zhang et al. | Traceable dynamic public auditing with identity privacy preserving for cloud storage | |
Duan et al. | Lightweight key management system for inter-node communication in IoT | |
Divya et al. | A combined data storage with encryption and keyword based data retrieval using SCDS-TM model in cloud |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221109 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230310 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230711 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230712 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230808 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230830 |
|
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: 20230905 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230908 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7348848 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |