加密系统、加密方法以及加密程序.pdf

上传人:a*** 文档编号:170210 上传时间:2018-01-31 格式:PDF 页数:53 大小:2.55MB
返回 下载 相关 举报
摘要
申请专利号:

CN201380076638.7

申请日:

2013.05.15

公开号:

CN105210133A

公开日:

2015.12.30

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效IPC(主分类):G09C 1/00申请日:20130515|||公开

IPC分类号:

G09C1/00

主分类号:

G09C1/00

申请人:

三菱电机株式会社

发明人:

高岛克幸; 川合丰

地址:

日本东京都

优先权:

专利代理机构:

北京三友知识产权代理有限公司 11127

代理人:

李辉;马建军

PDF下载: PDF下载
内容摘要

目的在于提供一种通过公开密钥设置也能够一并隐匿密文中设定的属性信息和解密密钥中设定的谓词信息的谓词加密。加密装置(200)生成作为基(D)的基向量的系数设定有属性信息(x)的密文(ctx)。中介装置(300)通过转换信息(W)将加密装置(200)生成的密文(ctx)的基(D)转换成基(B)来生成密文(CTx)。解密装置(400)通过作为与基(B)对应的基(B*)的基向量的系数设定有谓词信息(v)的令牌(tkv),对中介装置(300)生成的密文(CTx)进行解密。

权利要求书

1.  一种加密系统,其特征在于,该加密系统具有:
加密装置,其生成作为基D的基向量的系数设定有属性信息x的密文ctx
转换装置,其通过转换信息W将所述加密装置生成的密文ctx的基D转换成基B来生成密文CTx;以及
解密装置,其通过作为与所述基B对应的基B的基向量的系数设定有谓词信息v的令牌tkv,对所述转换装置生成的密文CTx进行解密。

2.
  根据权利要求1所述的加密系统,其特征在于,
所述解密装置通过对所述密文CTx和所述令牌tkv进行配对运算,计算所述属性信息x与所述谓词信息v的内积,从而对所述密文CTx进行解密。

3.
  根据权利要求2所述的加密系统,其特征在于,
所述加密装置生成包含数式1所示的元素f的密文ctx
所述转换装置生成包含数式2所示的元素c的密文CTx
所述解密装置进行数式3所示的配对运算,对所述密文CTx进行解密,
【数式1】

其中,
τ←UFq]]>
x→:=x1,...,xn,]]>
x1,...,xn是属性信息x,
【数式2】
c:=ρf·W-1
其中,
ρ←UFq,]]>
di:=biWfori=1,...,n,
D:=(d1,...,dn),
B:=(b1,...,bn)
【数式3】
e(c,k*)
其中,

v→:=v1,...,vn,]]>
v1,...,vn是谓词信息v。

4.
  根据权利要求1~3中的任意一项所述的加密系统,其特征在于,
所述加密系统实现将所述基D的至少一部分基向量作为公开密钥公开的公开密钥设置的加密方式。

5.
  根据权利要求1~3中的任意一项所述的加密系统,其特征在于,
所述加密系统实现将所述基D的至少一部分基向量作为秘密密钥发布给所述加密装置的秘密密钥设置的加密方式。

6.
  根据权利要求1~5中的任意一项所述的加密系统,其特征在于,
所述基B和所述基B是对偶配对向量空间中的标准正交基。

7.
  根据权利要求1~6中的任意一项所述的加密系统,其特征在于,
所述基B和所述基B是使用稀疏矩阵对规定的基A进行变形而生成的基,所述稀疏矩阵的各行各列具有至少1个常数值0以外的值。

8.
  根据权利要求7所述的加密系统,其特征在于,
所述基B和所述基B是使用1行1列~n行n列的值如数式4所示的稀疏矩阵即N行N列(N为n以上的整数)的线性变换X如数式5所示根据所述基A而生成的基,
【数式4】

其中,μ、μ’2、...、μ’n、μ”1、...、μ”n-1、μ”’是常数值0以外的规定值,空栏是常数值0,
【数式5】
其中i=1,...,N,B:=(b1,...,bN),
θi,j:=ψ·(X-1)T
bi*:=Σj=1Nθi,jaj]]>其中i=1,...,N,
其中,χi,j是线性变换X的i行j列的成分,ψ是规定值,aj是基A的第j个基向量。

9.
  根据权利要求1~8中的任意一项所述的加密系统,其特征在于,
所述加密装置生成如下的所述密文ctx,该密文ctx关于集合Ix中包含的各索引t包含元素ct,所述元素ct设定了预先分配给索引t的信息Jt作为所述基D的基向量dindex的系数,设定了所述属性信息x中的属性信息xt作为所述基D的其它基向量的系数,
所述解密装置利用如下的所述令牌tkv对所述密文CTx进行解密,该令牌tkv关于集合Iv中包含的各索引t包含元素kt,所述元素kt设定了与所述信息Jt的内积为0的信息Jt作为与基向量dindex对应的所述基B的基向量bindex的系数,设定了所述谓词信息v中的谓词信息vt作为所述基B的其它基向量的系数。

10.
  根据权利要求1~9中的任意一项所述的加密系统,其特征在于,
所述加密装置生成作为所述属性信息x设定有基因信息的密文ctx
所述解密装置通过利用所述令牌tkv对所述密文CTx进行解密,检索具有满足在所述令牌tkv中设定的条件的基因信息的密文CTx

11.
  一种加密方法,其特征在于,该加密方法具有:
加密步骤,加密装置生成作为基D的基向量的系数设定有属性信息x的密文ctx
转换步骤,转换装置通过转换信息W将在所述加密步骤中生成的密文ctx的基D转换成基B来生成密文CTx;以及
解密步骤,解密装置通过作为与所述基B对应的基B的基向量的系数设定有谓词信息v的令牌tkv,对在所述转换步骤中生成的密文CTx进行解密。

12.
  一种加密程序,其特征在于,该加密程序使计算机执行以下处理:
加密处理,生成作为基D的基向量的系数设定有属性信息x的密文ctx
转换处理,通过转换信息W将在所述加密处理中生成的密文ctx的基D转换成基B来生成密文CTx;以及
解密处理,通过作为与所述基B对应的基B的基向量的系数设定有谓词信息v的令牌tkv,对在所述转换处理中生成的密文CTx进行解密。

说明书

加密系统、加密方法以及加密程序
技术领域
本发明涉及能够一并隐匿密文中设定的属性信息和解密密钥中设定的谓词信息的谓词加密。
背景技术
在非专利文献1中记载有能够通过将加密侧和解密侧双方的密钥设为秘密的秘密密钥设置,一并隐匿密文中设定的属性信息和解密密钥中设定的谓词信息的内积谓词加密。
现有技术文献
非专利文献
非专利文献1:EmilyShen,ElaineShi,andBrentWaters.Predicateprivacyinencryptionsystems.InOmerReingold,editor,TCC2009,volume5444ofLNCS,pages457.473.Springer,2009.
非专利文献2:AllisonB.Lewko,TatsuakiOkamoto,AmitSahai,KatsuyukiTakashima,andBrentWaters.Fullysecurefunctionalencryption:Attribute-basedencryptionand(hierarchical)innerproductencryption.InHenriGilbert,editor,EUROCRYPT2010,volume6110ofLNCS,pages62.91.Springer,2010.Fullversionisavailableathttp://eprint.iacr.org/2010/110.
非专利文献3:Okamoto,T.,Takashima,K.:AchievingShortCiphertextsorShortSecret-KeysforAdaptivelySecureGeneralInner-ProductEncryption.CANS2011,LNCS,vol.7092,pp.138-159SpringerHeidelberg(2011).
非专利文献4:Okamoto,TTakashima,K.:FullySecureUnboundedInner-ProductandAttribute-BasedEncryption.ePrinthttp://eprint.iacr.org/2012/671
发明内容
发明要解决的课题
通过将加密侧的密钥公开的公开密钥设置,实现不了能够一并隐匿密文中设定的属性信息和解密密钥中设定的谓词信息的谓词加密。
本发明的目的在于,提供一种通过公开密钥设置也能够一并隐匿密文中设定的属性信息和解密密钥中设定的谓词信息的谓词加密。
用于解决课题的手段
本发明的加密系统的特征在于,该加密系统具有:
加密装置,其生成作为基D的基向量的系数设定有属性信息x的密文ctx
转换装置,其通过转换信息W将所述加密装置生成的密文ctx的基D转换成基B来生成密文CTx;以及
解密装置,其通过作为与所述基B对应的基B的基向量的系数设定有谓词信息v的令牌tkv,对所述转换装置生成的密文CTx进行解密。
发明效果
本发明的加密系统通过使用转换信息W和转换装置,可实现通过公开密钥设置也能够一并隐匿密文中设定的属性信息和解密密钥中设定的谓词信息的谓词加密。
附图说明
图1是实施方式1的加密系统10的结构图。
图2是示出实施方式1的密钥生成装置100的功能的功能框图。
图3是示出实施方式1的加密装置200的功能的功能框图。
图4是示出实施方式1的转换装置300的功能的功能框图。
图5是示出实施方式1的解密装置400的功能的功能框图。
图6是示出实施方式1的Setup算法的处理的流程图。
图7是示出实施方式1的TokenGen算法的处理的流程图。
图8是示出实施方式1的Enc算法的处理的流程图。
图9是示出实施方式1的Conv算法的处理的流程图。
图10是示出实施方式1的Query算法的处理的流程图。
图11是示出实施方式3的TokenGen算法的处理的流程图。
图12是实施方式5的隐匿检索系统500的结构图。
图13是与图12不同结构的隐匿检索系统500的结构图。
图14是示出上述实施方式中示出的密钥生成装置100、加密装置200、转换装置300、解密装置400的硬件结构例的图。
具体实施方式
对以下说明中的记法进行说明。
在A为随机变量或分布时,数式101表示根据A的分布而从A中随机选择y。即,在数式101中,y为随机数。
【数式101】
y←RA]]>
在A为集合时,数式102表示从A中选择相同的y。即,在数式102中,y为相同随机数。
【数式102】
y←UA]]>
数式103表示用z定义y或将y代入z。
【数式103】
y:=z
在a为常数时,数式104表示机械(算法)A相对于输入x而输出a。
【数式104】
A(x)→a
例如,
A(x)→1
数式105即Fq表示位数q的有限体。
【数式105】
Fq
向量表记表示有限体Fq中的向量显示。即数式106。
【数式106】
表示
(x1,...,xn)∈Fqn]]>
数式107表示数式108所示的2个向量x与v的数式109所示的内积。
【数式107】
x→·v→]]>
【数式108】
x→=(x1,...,xn)]]>
v→=(v1,...,vn)]]>
【数式109】
Σi=1nxivi]]>
XT表示矩阵X的转置矩阵。
相对于数式110所示的基B和基B*定义数式111。
【数式110】
B:=(b1,...,bN),
B*:=(h1*,...,bN*)]]>
【数式111】
(x1,...,xN)B:=Σi=1Nxibi,]]>
(y1,...,yN)B*:=Σi=1Nyibi*]]>
在以下说明中,在“δi,j”用上标表示的情况下,意味着该δi,j为δi,j
在表示向量的“→”标注在下标文字或上标文字上的情况下,意味着该“→”用上标标注在下标文字或上标文字上。
并且,在以下说明中,密码处理包含密钥生成处理、加密处理、转换处理、解密处理(询问处理)。
实施方式1
在对内积谓词加密方式的基础概念进行说明后,对通过公开密钥设置也能够一并隐匿密文中设定的属性信息和解密密钥中设定的谓词信息的内积谓词加密方式进行说明。
第一,对一并隐匿密文中设定的属性信息和解密密钥中设定的谓词信息的背景进行说明。
第二,对用于实现内积谓词加密方式的空间即“对偶配对向量空间(DualPairing VectorSpaces(DPVS))”这样的具有丰富数学构造的空间进行说明。
第三,对用于构成实施方式1的内积谓词加密方式的关键技术进行说明。
第四,对实施方式1的内积谓词加密方式进行说明。
<第一.背景>
医院等在数据库中储存有患者的DNA信息,制药公司等使用检索查询来检索所述数据库,调查具有某种疾病的患者的DNA信息是否存在特定的规律性等。
患者的DNA信息是隐私信息。在药品的开发战略方面,检索查询被制药公司等设为秘密。
在谓词加密等中,将患者的DNA信息等设定成属性信息来生成密文,将检索条件设定成谓词信息来生成检索查询。
但是,在以往的公开密钥设置中,即使能够隐匿患者的DNA信息,检索条件也有可能无法隐匿。这是因为在公开密钥设置中,能够根据公开密钥自由生成密文,因此对生成的密文执行检索查询,有可能估计出检索查询中设定的检索条件。
在非专利文献1记载的内积谓词加密方式中,能够通过秘密密钥设置,隐匿患者的DNA信息和检索条件双方。
但是,在秘密密钥设置中,密文的生成需要秘密密钥,在实际运用上非常不便。为此,希望有能够通过公开密钥设置来隐匿患者的DNA信息和检索条件双方的方式。
<第二.对偶配对向量空间>
在对偶配对向量空间内实现以下说明的内积谓词加密方式。
首先,对对称双线性配对群进行说明。
对称双线性配对群(q,G,GT,g,e)是素数q、位数q的循环加法群G、位数q的循环乘法群GT、g≠0∈G、能够利用多项式时间计算的非退化双线性配对e:G×G→GT的组。非退化双线性配对是e(sg,tg)=e(g,g)st,e(g,g)≠1。
在以下说明中,设Gbpg为如下算法:将1λ作为输入,输出以保密参数为λ的双线性配对群的参数paramG:=(q,G,GT,g,e)的值。
接着,对对偶配对向量空间进行说明。
对偶配对向量空间(q,V,GT,A,e)可以由对称双线性配对群(paramG:=(q,G,GT,g,e))的直积构成。对偶配对向量空间(q,V,GT,A,e)是素数q、数式112所示的Fq上的N维向量空间V、位数q的循环群GT、空间V的标准基A: =(a1,...,aN)的组,具有以下的运算(1)、(2)。其中,ai如数式113所示。
【数式112】

【数式113】

运算(1):非退化双线性配对
空间V内的配对由数式114定义。
【数式114】
e(x,y):=Πi=1Ne(Gi,Hi)&Element;GT]]>
其中,
(G1,...,GN):=x∈V,
(H1,...,HN):=y∈V
这是非退化双线性。即e(sx,ty)=e(x,y)st,针对全部y∈V,在e(x,y)=1的情况下,x=0。并且,针对全部i和j,e(ai,aj)=e(g,g)δi,j。这里,如果i=j,则δi,j=1,如果i≠j,则δi,j=0。并且,e(g,g)≠1∈GT
运算(2):失真映射
数式115所示的空间V内的线性变换φi,j可以进行数式116。
【数式115】
φi,j(aj)=ai
如果k≠j,则φi,j(ak)=0。
【数式116】

其中,
(g1,...gN):=x
这里,将线性变换φi,j称作失真映射。
在以下说明中,设Gdpvs为如下算法:将1λ(λ∈自然数)、N∈自然数、双线性配对群的参数paramG:=(q,G,GT,g,e)的值作为输入,保密参数为λ,输出设 为N维空间V的对偶配对向量空间的参数paramV:=(q,V,GT,A,e)的值。
另外,这里,对通过上述对称双线性配对群构成对偶配对向量空间的情况进行说明。另外,也可以通过非对称双线性配对群构成对偶配对向量空间。容易在通过非对称双线性配对群构成对偶配对向量空间的情况下应用以下说明。
<第三.关键技术>
为了能够隐匿属性信息和谓词信息双方,在公开密钥与秘密密钥之间(或者密文与令牌(token)之间)采用新的陷门(trapdoor)(以下说明的转换密钥W)。
首先,生成对偶配对向量空间中的随机的对偶基B、B。然后,使用作为随机矩阵的转换密钥W,对基B的部分基B^进行线性变换,生成新的基D^(:=B^·W)。基D^从基B均匀且独立地分散。然后,输出基D^作为公开密钥,输出基B的部分基B^作为秘密密钥。这里,如果不考虑W,则基D^和基B^是相互独立的。
由加密者生成的原始的密文和用于进行检索的令牌继承这些密钥对的独立性。
由与加密者不同的中介者,通过陷门W(转换密钥W),将原始的密文转换成利用基B、B的对偶归一正交性而与令牌相关联的可检索的密文。然后,利用令牌检索转换后的密文。
<第四.内积谓词加密方式>
这里,对伴随密文转换的内积谓词加密(InnerProductEncryptionwithCiphertextConversion,IPE-CC)方式进行说明。
在IPE-CC方式中,内积谓词的属性信息用属性向量x∈Fqn\{0}表示。此外,谓词信息(fv→)用谓词向量v表示。这里,仅在v·x=0的情况下,fv→(x)=1。
IPE-CC方式具有Setup、TokenGen、Enc、Conv、Query这5个概率多项式时间算法。
(Setup)
在Setup算法中,输入保密参数1λ,输出公开密钥pk、转换密钥ck和秘密密钥sk(主秘密密钥)。
(TokenGen)
在TokenGen算法中,输入公开密钥pk、秘密密钥sk和谓词向量v,输出令牌tkv(解密密钥)。
(Enc)
在Enc算法中,输入公开密钥pk、属性向量x,输出密文ctx
(Conv)
在Conv算法中,输入公开密钥pk、转换密钥ck和密文ctx,输出转换后的密文CTx
(Query)
在Query算法中,输入公开密钥pk、令牌tkv和转换后的密文CTx,输出基于属性向量x评价后的、表示与谓词向量v相关的谓词fv→的值的0或1。
对执行IPE-CC方式的算法的加密系统10进行说明。
图1是实施方式1的加密系统10的结构图。
加密系统10具有密钥生成装置100、加密装置200、转换装置300、解密装置400。
密钥生成装置100将保密参数λ作为输入来执行Setup算法,生成公开密钥pk、转换密钥ck和秘密密钥sk。然后,密钥生成装置100将公开密钥pk公开,将转换密钥ck秘密发送给转换装置300。并且,密钥生成装置100将公开密钥pk、秘密密钥sk、谓词向量v作为输入来执行TokenGen算法,生成令牌tkv而秘密发送给解密装置400。
加密装置200将公开密钥pk、属性向量x作为输入来执行Enc算法,生成密文ctx
转换装置300将公开密钥pk、转换密钥ck和密文ctx作为输入来执行Conv算法,生成密文CTx
解密装置400将公开密钥pk、令牌tkv和密文CTx作为输入来执行Query算法,输出0或1。
图2是示出实施方式1的密钥生成装置100的功能的功能框图。图3是示出实施方式1的加密装置200的功能的功能框图。图4是示出实施方式1的转换装置300的功能的功能框图。图5是示出实施方式1的解密装置400的功能的功能框图。
图6和图7是示出实施方式1的密钥生成装置100的动作的流程图。图6是示出实施方式1的Setup算法的处理的流程图,图7是示出实施方式1的TokenGen算法的处理的流程图。图8是示出实施方式1的加密装置200的动作的流程图,是示出实施方式1的Enc算法的处理的流程图。图9是示出实施方式1的转换装置300的动作 的流程图,是示出实施方式1的Conv算法的处理的流程图。图10是示出实施方式1的解密装置400的动作的流程图,是示出实施方式1的Query算法的处理的流程图。
对密钥生成装置100的功能和动作进行说明。
如图2所示,密钥生成装置100具有主密钥生成部110、主密钥存储部120、信息输入部130、令牌生成部140、令牌发送部150。
根据图6对Setup算法的处理进行说明。
(S101:标准正交基生成步骤)
主密钥生成部110通过处理装置计算数式117,生成参数paramV、基B和基B
【数式117】
(1)input1λ
(2)N:=n+u+w+z
(3)

(4)
(5)X:=(χi,j)&LeftArrow;UGL(N,Fq)]]>
(6)
(7)
(8)bi*:=Σj=1Nθi,jaj,B*:=(b1*,...,bN*)]]>
(9)gT:=e(g,g)ψ,
paramV:=(paramV',gT)
即,主密钥生成部110执行以下(1)~(9)的处理。
(1)主密钥生成部110通过输入装置输入保密参数λ。
(2)主密钥生成部110通过处理装置在N中设定n+u+w+z。另外,n是1以上的整数,u、w、z分别是0以上的整数。
(3)主密钥生成部110通过处理装置将(1)中输入的保密参数λ作为输入来执行算法Gbpg,生成双线性配对群的参数paramG。然后,主密钥生成部110通过处理 装置,将(1)中输入的保密参数λ、(2)中设定的N、参数paramG作为输入来执行算法Gdpvs,生成对偶配对向量空间的参数paramV’:=(q,V,GT,A,e)的值。
(4)主密钥生成部110通过处理装置生成随机数ψ。
(5)主密钥生成部110通过处理装置将(2)中设定的N、Fq作为输入,随机生成线性变换X:=(χi,j)。另外,GL是GeneralLinear的缩写。即,GL是一般线性群,是行列式不为0的正方矩阵的集合,是与乘法有关的群。
(6)主密钥生成部110通过处理装置,根据(4)中生成的随机数ψ和(5)中生成的线性变换X,生成(νi,j):=ψ·(XT)-1
(7)主密钥生成部110通过处理装置,根据(5)中生成的线性变换X,从(3)中生成的标准基A生成基B。
(8)主密钥生成部110通过处理装置,根据(6)中生成的νi,j,从(3)中生成的标准基A生成基B
(9)主密钥生成部110通过处理装置在gT中设定e(g,g)ψ。此外,主密钥生成部110在paramV中设定(4)中生成的paramV’、gT
(S102:转换密钥生成步骤)
主密钥生成部110通过处理装置,如数式118所示生成转换信息W。主密钥生成部110将转换信息W作为转换密钥ck。
【数式118】
W&LeftArrow;UGL(N,Fq)]]>
(S103:公开密钥生成步骤)
主密钥生成部110通过处理装置,如数式119所示,利用转换密钥W对S101中生成的基B进行转换而生成基D。然后,主密钥生成部110通过处理装置,如数式119所示生成基D的部分基D^。
【数式119】
di:=biWfori=1,...,n+u+w+z,
D:=(d1,...,dn+u+w+z),
D^:=(d1,...,dn,dn+u+w+1...,dn+u+w+z)]]>
主密钥生成部110合并部分基D^、S101中输入的保密参数λ、S101中生成的paramV,作为公开密钥pk。
(S104:秘密密钥生成步骤)
主密钥生成部110通过处理装置,如数式120所示生成S101中生成的基B的部分基B^
【数式120】
B^*:=(b1*,..,bn*,bn+u+1*,..,bn+u+w*)]]>
主密钥生成部110将部分基B^作为秘密密钥sk。
(S105:密钥存储步骤)
主密钥存储部120将S102中生成的转换密钥ck、S103中生成的公开密钥pk和S104中生成的秘密密钥sk存储在存储装置中。
即,在S101~S104中,密钥生成装置100执行数式121所示的Setup算法,生成转换密钥ck、公开密钥pk和秘密密钥sk。然后,在S105中,密钥生成装置100将转换密钥ck、公开密钥pk和秘密密钥sk存储在存储装置中。
另外,公开密钥例如经由网络公开,成为加密装置200、转换装置300和解密装置400能够取得的状态。转换密钥ck通过例如通信装置经由网络被秘密发送到转换装置300。
【数式121】
Setup(1λ):
(paramV,B:=(b1,...,bn+u+w+z),B*:=(b1*,...,b1+u+w+z*))&LeftArrow;RGobIPE(1λ),]]>
W&LeftArrow;UGL(N,Fq),]]>
di:=biWfori=1,...,n+u+w+z,D:=(d1,...,dn+u+w+z),
D^:=(d1,...,dn,dn+u+w+1...,dn+u+w+z),]]>
B^*:=(b1*,..,bn*,bn+u+1*,..,bn+u+w*),]]>
return pk:=(1λ,paramV,D^),ck:=W,sk:=B^*.]]>
GobIPE(1λ):]]>
N:=n+u+w+z,




paramV:=(paramV',gT),

bi*:=Σj=1Nθi,jaj,B*:=(b1*,...,bN*),]]>
return(paramV,B,B*).
根据图7对TokenGen算法的处理进行说明。
(S201:信息输入步骤)
信息输入部130通过输入装置输入谓词向量v。谓词向量v例如设定令牌tkv的使用者的属性信息和检索关键词等作为元素。
(S202:随机数生成步骤)
令牌生成部140通过处理装置,如数式122所示生成随机数。
【数式122】
σ&LeftArrow;UFq,]]>
η&RightArrow;:=(η1,...,ηw)&LeftArrow;UFqw]]>
(S203:令牌元素生成步骤)
令牌生成部140通过处理装置,如数式123所示生成令牌tkv的元素k
【数式123】

另外,对于数式110所示的基B和基B*定义数式111。因此,数式123是指设定σv1,...,σvn作为基B的基向量b1,...,bn的系数,设定0作为基B的基向量 bn+1,...,bn+u的系数,设定η1,...,ηw作为基B的基向量bn+u+1,...,bn+u+w的系数,设定0作为基B的基向量bn+u+w+1,...,bn+u+w+z的系数。
(S204:令牌发送步骤)
令牌发送部150通过例如通信装置经由网络向解密装置400秘密发送将S203中生成的k作为元素的令牌tkv。当然,令牌tkv也可以通过其它方法发送到解密装置400。
即,在S201~S203中,密钥生成装置100执行数式124所示的TokenGen算法,生成令牌tkv。然后,在S204中,密钥生成装置100将令牌tkv发送到解密装置400。
【数式124】
TokenGen(pk,sk,v&RightArrow;&Element;Fqn\{0&RightArrow;}):]]>
σ&LeftArrow;UFq,η&RightArrow;:=(η1,...,ηw)&LeftArrow;UFqw,]]>

returntkv:=k*.
对加密装置200的功能和动作进行说明。
如图3所示,加密装置200具有公开密钥取得部210、信息输入部220、密文生成部230、数据发送部240。
根据图8对Enc算法的处理进行说明。
(S301:公开密钥取得步骤)
公开密钥取得部210通过例如通信装置经由网络取得密钥生成装置100生成的公开密钥pk。
(S302:信息输入步骤)
信息输入部220通过输入装置输入属性向量x∈Fq。属性向量x例如设定有可检索的用户的属性信息和检索用的标签作为元素。
(S303:随机数生成步骤)
密文生成部230通过处理装置,如数式125所示生成随机数。
【数式125】
τ&LeftArrow;UFq,]]>
ξ&RightArrow;:=(ξ1,...,ξz)&LeftArrow;UFqz]]>
(S304:密码元素生成步骤)
密文生成部230通过处理装置,如数式126所示生成密文ctx的元素f。
【数式126】

(S305:数据发送步骤)
数据发送部240通过例如通信装置经由网络向转换装置300发送包含S304中生成的元素f的密文ctx。当然,密文ctx也可以通过其它方法发送到转换装置300。
即,在S301~S304中,加密装置200执行数式127所示的Enc算法,生成密文ctx。然后,在S305中,加密装置200将密文ctx发送到转换装置300。
【数式127】
Enc(pk,x&RightArrow;&Element;Fqn):]]>
τ&LeftArrow;UFq,ξ&RightArrow;:=(ξ1,...,ξz)&LeftArrow;UFqz,]]>

returnctx:=f.
对转换装置300的功能和动作进行说明。
如图4所示,转换装置300具有转换密钥取得部310、密文取得部320、密文转换部330、数据发送部340。
根据图9对Conv算法的处理进行说明。
(S401:转换密钥取得步骤)
转换密钥取得部310通过例如通信装置经由网络取得从密钥生成装置100发送的转换密钥ck:=W。并且,转换密钥取得部310取得密钥生成装置100生成的公开密钥pk。
(S402:密文取得步骤)
密文取得部320通过例如通信装置经由网络接收加密装置200发送的密文ctx: =f。
(S403:随机数生成步骤)
密文转换部330通过处理装置,如数式128所示生成随机数。
【数式128】
ρ&LeftArrow;UFq,]]>
y&LeftArrow;Uspan<dn+u+w+1,...,dn+u+w+z>]]>
(S404:密文转换步骤)
密文转换部330通过处理装置,如数式129所示转换密文ctx,生成元素c。
【数式129】
c:=(ρf+y)W-1
(S405:数据发送步骤)
数据发送部340通过例如通信装置经由网络向解密装置400发送包含S404中生成的元素c的密文CTx。当然,密文CTx也可以通过其它方法发送到解密装置400。
即,在S401~S404中,转换装置300执行数式130所示的Conv算法,生成密文CTx。然后,在S405中,转换装置300将生成的密文CTx发送到解密装置400。
【数式130】
Conv(pk,ck:=W,ctx:=f):
ρ&LeftArrow;UFq,y&LeftArrow;Uspan<dn+u+w+1,...,dn+u+w+z>,]]>
c:=(ρf+y)W-1,
returnCTx:=c.
对解密装置400的功能和动作进行说明。
如图5所示,解密装置400具有令牌取得部410、密文取得部420、解密部430。
根据图10对Dec算法的处理进行说明。
(S501:令牌取得步骤)
令牌取得部410通过例如通信装置经由网络取得从密钥生成装置100发送的令牌tkv:=k。并且,令牌取得部410取得密钥生成装置100生成的公开参数pk。
(S502:密文取得步骤)
密文取得部420通过例如通信装置经由网络接收转换装置300发送的密文CTx: =c。
(S503:解密步骤)
解密部430通过处理装置,如果计算配对运算e(c,k)的结果为1,则输出表示已解密的1,如果结果不为1,则输出表示未能解密的0。
即,在S501~S503中,解密装置400执行数式131所示的Query算法,判定是否已解密。
【数式131】
Query(pk,tkv:=k*,CTx:=c):
ife(c,k*)=1,output1,
otherwise,output0.
另外,D·W-1:=(d1W-1,...,dn+u+w+zW-1)等于B:=(b1,...,bn+u+w+z)。因此,c:=(ρf+y)W-1=(ωx,0u,0w,η)D·W-1=(ωx,0u,0w,η)D·W-1=(ωx,0u,0w,η)B。这里,下标的W-1是指W-1。此外,ω∈Fq和η∈Fnq均匀且独立地分散。因此,如果v·x=0,则e(c,k)=gTωσv→·x→=1。
在以往的IPE中,由于能够使用公开密钥pk自由生成密文,因此可能会由于对大量密文执行Query算法,使得令牌tkv中设定的谓词向量v的信息泄露。
在实施方式1的IPE-CC方式中,转换装置300使用转换密钥ck对密文ctx的基进行转换而生成密文CTx,解密装置400对转换后的密文CTx执行Query算法。因此,没有转换装置300的帮助,无法对大量密文执行Query算法。由此,能够防止令牌tkv中设定的谓词向量v的信息泄露。
另外,在上述说明中,是合并基D^、保密参数λ和paramV并作为公开密钥pk公开。
但是,也可以不将基D^、保密参数λ和paramV作为公开密钥而作为与秘密密钥sk成对的另一个秘密密钥,秘密发送到加密装置200。该情况下,能够通过秘密密钥设置,设为可隐匿属性信息和谓词信息双方的内积谓词加密。
此外,在上述说明中,将u、w、z分别设为0以上的整数。例如,也可以设为u=3n、w=n、z=n。
此外,在上述说明中,对判定密文ctx是否满足令牌tkv中设定的条件的方法进行了说明。由此,能够构建可在将密文ctx加密后的状态下进行检索的隐匿检索系统。
但是,如非专利文献2等记载的那样,还能够构建如下狭义的加密系统:如果在密文ctx中埋入消息m,则通过令牌tkv提取密文ctx中埋入的消息m。
实施方式2
在实施方式2中,对通过在生成标准正交基B,B时使用稀疏矩阵而被高效化的IPE-CC方式进行说明。
在实施方式2中,对与实施方式1相同的部分省略说明,主要说明不同的部分。
实施方式2的密钥生成装置100、加密装置200、转换装置300、解密装置400的结构与图2~图5所示的各装置的结构相同。
此外,实施方式2的Setup算法、TokenGen算法、Enc算法、Conv算法、Query算法的流程与图6~图10所示的各算法的流程相同。
对在实施方式2中使用的稀疏矩阵和使用稀疏矩阵构成的线性变换X及其伴随矩阵ψ(X-1)T进行说明。
设N:=6n,H(n,Fq)如数式132所示,L(6,n,Fq)如数式133所示。
【数式132】

【数式133】
L(6,n,Fq):={X:=X1,1...X1,6&CenterDot;&CenterDot;&CenterDot;&CenterDot;&CenterDot;&CenterDot;X6,1...X6,6|Xi,j&Element;H(n,Fq)for i,j=1,...,6}GL(N,Fq)]]>
L(6,n,Fq)是GL(N,Fq)的部分集合。
线性变换X∈L(6,n,Fq)的伴随矩阵ψ(X-1)T用数式134所示的稀疏形式表示。
【数式134】
ψ(X-1)T:=Y1,1...Y1,6&CenterDot;&CenterDot;&CenterDot;&CenterDot;&CenterDot;&CenterDot;Y6,1...Y6,6]]>

这里,矩阵X、(X-1)T中的空白元素表示常数值0∈Fq。常数值0是指值被固定为0。
即,矩阵X∈L(6,n,Fq)用72n个非零元素{ui,j,u’i,j,2,...,u’i,j,n,u”i,j,1,...,u”i,j,n-1,u”’i,j}i,j=1,...,6表示,伴随矩阵ψ(X-1)T用72n个非零元素{vi,j,v’i,j,2,...,v’i,j,n,v”i,j,1,...,v”i,j,n-1,v”’i,j}i,j=1,...,6表示。另外,非零元素是还可取0的相同随机数。
对实施方式2的IPE-CC方式进行说明。
这里,假设输入的属性向量x:=(x1,...,xn)和谓词向量v:=(v1,...,vn)为x1≠0、v1≠0。
根据图6对Setup算法的处理进行说明。
(S101:标准正交基生成步骤)
主密钥生成部110通过处理装置计算数式135,生成参数paramV、基B和基B
【数式135】
(1)input1λ
(2)N:=6n
(3)

(4)
(5)X&LeftArrow;UL(6,n,Fq)]]>
(6)
(7){Bi,j:=μi,jg,B′i,j,2:=μ′i,j,2g,...,B′i,j,n:=μ′i,j,ng,
B″i,j,1:=μ″i,j,1g,...,B″i,j,n-1:=μ″i,j,n-1g,B″′i,j:=μ″′i,jg}i,j=1,...,6
(8){Bi,j*:=vi,jg,Bi,j,2*:=vi,j,2g,...,Bi,j,n*:=vi,j,ng,]]>
Bi,j,1*:=vi,j,1g,...,Bi,j,n-1*:=vi,j,m-1g,Bi,j*:=vi,jg}i,j=1,...,6]]>
(9)paramV:=(paramV',gT)
即,主密钥生成部110执行以下(1)~(9)的处理。
(1)、(3)、(4)、(9)与实施方式1相同,因而省略说明。
(2)主密钥生成部110通过处理装置在N中设定6n。另外,n是1以上的整数。
(5)主密钥生成部110通过处理装置将(2)中设定的N:=6n的n、Fq作为输入,随机生成线性变换X:=(χi,j)。
(6)主密钥生成部110通过处理装置,根据(4)中生成的随机数ψ和(5)中生成的线性变换X,生成(νi,j):=ψ·(X-1)T
另外以下,{ui,j,u’i,j,2,...,u’i,j,n,u”i,j,1,...,u”i,j,n-1,u”’i,j}i,j=1,...,6表示线性变换X中的非零元素。{vi,j,v’i,j,2,...,v’i,j,n,v”i,j,1,...,v”i,j,n-1,v”’i,j}i,j=1,...,6表示伴随矩阵ψ·(X-1)T中的非零元素。
(7)主密钥生成部110通过处理装置,根据(5)中生成的线性变换X生成基B。
(8)主密钥生成部110通过处理装置,根据(6)中生成的伴随矩阵ψ·(X-1)T生成基B
这里是数式136,且是基B:=(b1,...,b6n),基B:=(b1,...,b6n)。另外,矩阵中的空白元素是常数值0∈G。并且,基B,B是标准正交基。即,相对于1≦i≠j≦6n,e(bi,bi)=gT,e(bi,bj)=1。
【数式136】


(S102:转换密钥生成步骤)
主密钥生成部110通过处理装置,如数式137所示生成转换信息W。主密钥生成部110将转换信息W作为转换密钥ck。
【数式137】
W&LeftArrow;UL(6,n,Fq)]]>
(S103:公开密钥生成步骤)
主密钥生成部110通过处理装置,如数式138所示,利用转换密钥W对S101中生成的基B进行转换而生成基D:=(d1,...,d6n)。然后,主密钥生成部110通过处理装置,如数式138所示生成基D的部分基D^。这里,基D与数式136所示的基B同样,由{Di,j,D’i,j,2,...,D’i,j,n,D”i,j,1,...,D”i,j,n-1,D”’i,j}i,j=1,...,6构成。
【数式138】
D:=d1&CenterDot;&CenterDot;&CenterDot;d6n:=b1&CenterDot;&CenterDot;&CenterDot;b6n&CenterDot;W,]]>
using{Di,j,D′i,j,2,...,D′i,j,n,D″i,j,1,...,D″i,j,n-1,D″′i,j}i,j=1,...,6,
主密钥生成部110合并生成的部分基D^、S101中输入的保密参数λ、S101中生成的paramV,作为公开密钥pk。
(S104:秘密密钥生成步骤)
主密钥生成部110通过处理装置,如数式139所示生成S101中生成的基B的部分基B^
【数式139】
B^:={Bi,j*,Bi,j,2*,...,Bi,j,n*,Bi,j,1*,...,Bi,j,n-1*,Bi,j*}i=1,5;j=1,...,6]]>
主密钥生成部110将生成的部分基B^作为秘密密钥sk。
(S105:密钥存储步骤)
主密钥存储部120将S102中生成的转换密钥ck、S103中生成的公开密钥pk和S104中生成的秘密密钥sk存储在存储装置中。
即,在S101~S104中,密钥生成装置100执行数式140所示的Setup算法,生成转换密钥ck、公开密钥pk和秘密密钥sk。这里,GZIPE,SKob算法如数式141所示。然后,在S105中,密钥生成装置100将生成的转换密钥ck、公开密钥pk和秘密密钥sk存储在存储装置中。
【数式140】
Setup(1λ,n):
(paramV,{Bi,j,B′i,j,2,...,B′i,j,n,B″i,j,1,...,B″i,j,n-1,B″′i,j}i,j=1,...,6,
{Bi,j*,Bi,j,2*,...,Bi,j,n*,Bi,j,1*,...,Bi,j,n-1*,Bi,j*}i,j=1,...,6)]]>
&LeftArrow;RGobZIPE,SK(1λ,6,n),]]>
W&LeftArrow;UL(6,n,Fq),d1&CenterDot;&CenterDot;&CenterDot;d6n:=b1&CenterDot;&CenterDot;&CenterDot;b6n&CenterDot;W,]]>

returnpk:=(1λ,paramV,
{Di,j,D′i,j,2,...,D′i,j,n,D″i,j,1,...,D″i,j,n-1,D″′i,j}i=1,6;j=1,...,6),ck:=W,
sk:={Bi,j*,Bi,j,2*,...,Bi,j,n*,Bi,j,1*,...,Bi,j,n-1*,Bi,j*}i=1,5;j=1,...,6.]]>
【数式141】
GobZIPE,SK(1λ,6,n):]]>


paramV':=(q,V,GT,A,e):=Gdpvs(1λ,N,paramG),
paramV:=(paramV,gT),X&LeftArrow;UL(6,n,Fq),hereafter,]]>
i,j,μ′i,j,2,...,μ′i,j,n,μ″i,j,1,...,μ″i,j,n-1,μ″′i,j}i,j=1,…,6
denotesnon-zeroentriesofX,
dand{vi,j,v′i,j,2,...,v′i,j,n,v″i,j,1,...,v″i,j,n-1,v″′i,j}i,j=1,…,6
denotesnon-zeroentriesofψ(X-1)T,
{Bi,j:=μi,jg,B′i,j,2:=μ′i,j,2g,...,B′i,j,n:=μ′i,j,ng,
B″i,j,1:=μ″i,j,1g,...,B″i,j,n-1:=μ″i,j,n-1g,B″′i,j:=μ″′i,jg}i,j=1,...,6,
{Bi,j*:=vi,jg,Bi,j,2*:=vi,j,2g,...,Bi,j,n*:=vi,j,ng,]]>
Bi,j,1*:=vi,j,1g,...,Bi,j,n-1*:=vi,j,n-1g,Bi,j*:=vi,jg}i,j=1,...,6,]]>
return(paramV,{Bi,j,B′i,j,2,...,B′i,j,n,B″i,j,1,...,B″i,j,n-1,B″′i,j}i,j=1,...,6,
{Bi,j*,Bi,j,2*,...,Bi,j,n*,Bi,j,1*,...,Bi,j,n-1*,Bi,j*}i,j=1,...,6).]]>
根据图7对TokenGen算法的处理进行说明。
S201与实施方式1相同,因而省略说明。
(S202:随机数生成步骤)
令牌生成部140通过处理装置,如数式142所示生成随机数。
【数式142】
σ,η1,...,ηn&LeftArrow;UFq]]>
(S203:令牌元素生成步骤)
令牌生成部140通过处理装置,如数式143所示生成令牌tkv的元素k
【数式143】
forj=1,...,6,
Kj,1*:=ΣL=1n-1(σvLB1,j,L*+ηLB5,j,L*)+σvnB1,j*+ηnB5,j*,]]>
Kj,L*:=σ(vLB1,j*+vnB1,j,L*)+ηLB5,j*+ηLB5,j,L* for L=2,...,n-1,]]>
Kj,n*:=σvnB1,j,n*+ηnB5,j,n*,]]>
k*:=(K1,1*,...,K1,n*,...,K6,1*,...,K6,n*)&Element;G6n]]>
(S204:令牌发送步骤)
令牌发送部150通过例如通信装置经由网络向解密装置400秘密发送将S203中生成的k作为元素的令牌tkv。当然,令牌tkv也可以通过其它方法发送到解密装置400。
即,在S201~S203中,密钥生成装置100执行数式144所示的TokenGen算法,生成令牌tkv。然后,在S204中,密钥生成装置100将生成的令牌tkv发送到解密装置400。
【数式144】
TokenGen(pk,sk,v&RightArrow;&Element;Fqn\{0&RightArrow;}):]]>
σ,η1,...,ηn&LeftArrow;UFq,]]>
forj=1,...,6,
Kj,1*:=ΣL=1n-1(σvLB1,j,L*+ηLB5,j,L*)+σvnB1,j*+ηnB5,j*,]]>
Kj,L*:=σ(vLB1,j*+vnB1,j,L*)+ηLB5,j*+ηLB5,j,L* for L=2,...,n-1,]]>
Kj,n*:=σvnB1,j,n*+ηnB5,j,n*,]]>
k*:=(K1,1*,...,K1,n*,...,K6,1*,...,K6,n*)&Element;G6n,]]>
returntkv:=k*.
根据图8对Enc算法的处理进行说明。
S301和S302与实施方式1相同,因而省略说明。
(S303:随机数生成步骤)
密文生成部230通过处理装置,如数式145所示生成随机数。
【数式145】

(S304:密码元素生成步骤)
密文生成部230通过处理装置,如数式146所示生成密文ctx的元素f。
【数式146】
forj=1,...,6,



f:=(F1,1,...,F1,n,...,F6,1,...,F6,n)∈G6n
(S305:数据发送步骤)
数据发送部240通过例如通信装置经由网络向转换装置300发送包含S304中生成的元素f的密文ctx。当然,密文ctx也可以通过其它方法发送到转换装置300。
即,在S301~S304中,加密装置200执行数式147所示的Enc算法,生成密文ctx。然后,在S305中,加密装置200将生成的密文ctx发送到转换装置300。
【数式147】
Enc(pk,x&RightArrow;&Element;Fqn}):]]>

forj=1,...,6,



f:=(F1,1,...,F1,n,...,F6,1,...,F6,n)∈G6n,
returnctx:=f.
Conv算法和Query算法与实施方式1相同,因而省略说明。但是,在Conv算法的S403中,如数式148生成随机数y。
【数式148】
y&LeftArrow;Uspan<d5n+1,...,d6n>]]>
另外,作为Setup算法的输出的一部分的{Di,j,D’i,j,2,...,D’i,j,n,D”i,j,1,...,D”i,j,n-1,D”’i,j}i=1,6;i,j=1,...,6通过基D^:=(d1,...,dn,d5n+1,...,d6n)而被识别。基D:=(d1,...,d6n)通过{Di,j,D’i,j,2,...,D’i,j,n,D”i,j,1,...,D”i,j,n-1,D”’i,j}i,j=1,...,6而被识别。
{Bi,j,B’i,j,2,...,B’i,j,n,B”i,j,1,...,B”i,j,n-1,B”’i,j}i=1,5;i,j=1,...,6通过基B^:=(B1,...,Bn,B4n+1,...,B5n)而被识别。基B:=(d1,...,d6n)通过{Bi,j,B’i,j,2,...,B’i,j,n,B”i,j,1,...,B”i,j,n-1,B”’i,j}i,j=1,...,6而被识别。
并且,Query算法中的c和k分别如数式149所示地表示。
【数式149】



where η&RightArrow;:=(η1,...,ηn)&Element;Fqn]]>
如上所述,在实施方式2的加密系统10中,在生成标准正交基B、B时使用稀疏矩阵。由此,能够在确保安全性的同时减小公开参数和主秘密密钥的大小,并且缩短向用户给出的秘密密钥的生成处理和加密处理耗费的时间。
另外,在上述说明中,设为使用数式132所示的稀疏矩阵生成标准正交基B、B。但是,用于生成标准正交基B,B的稀疏矩阵不限于此。例如,也可以将数式132中的多个μ设为彼此不同的值。此外,在数式132中,将第n列的全部成分设为常数值0以外的随机数,但是,也可以不将第n列而将其它任意的至少1列的全部成分设为常数值0以外的随机数。同样,在数式132中,将第1行的全部成分设为常数值0以外的随机数,但是,也可以不将第1行而将其它任意的至少1行的全部成分设为常数值0以外的随机数。
更一般而言,稀疏矩阵只要是各行各列具有至少1个常数值0以外的值的稀疏矩阵即可。并且,稀疏矩阵在为n行n列的矩阵的情况下,作为常数值0以外的值至少具有n个不同的值即可。并且,对于稀疏矩阵,至少1列的全部成分为常数值0以外的值即可。进而,对于稀疏矩阵,至少1行的全部成分为常数值0以外的值即可。进 而,对于稀疏矩阵,对角成分、至少1列、至少1行的全部成分为常数值0以外的值即可。并且,对于稀疏矩阵,除了全部成分为常数值0以外的值的列以外,对角成分的值相同即可。
在使用这样的稀疏矩阵的情况下,与使用通常矩阵的情况相比,公开参数和秘密密钥的大小也被减小。此外,用户密钥的生成以及加密处理的处理时间也被缩短。
但是,根据线性变换X的形式,还存在无法减少配对运算的次数的情况。
此外,在上述说明中,对判定密文ctx是否满足令牌tkv中设定的条件的方法进行了说明。由此,能够构建可在将密文ctx加密后的状态下进行检索的隐匿检索系统。
但是,如非专利文献2等记载的那样,还能够构建如下的狭义的加密系统:如果在密文ctx中埋入消息m,则通过令牌tkv提取密文ctx中埋入的消息m。
实施方式3
在实施方式3中,对能够在不再次发行公开参数的情况下追加属性类别的IPE-CC方式进行说明。
在实施方式3中,对与实施方式1相同的部分省略说明,主要说明不同的部分。
属性类别例如是指所属机关、所属部门、职务、年龄、性别等各用户的属性分类或检索条件的属性分类。
通常,访问控制和检索条件中使用的属性类别是在系统设计时预先决定的。但是,此后,有时系统的运用被变更,需要追加访问控制和检索条件中使用的属性类别。
例如,假设仅在A公司内使用来构建加密系统。该情况下,作为访问控制中使用的属性类别,假设所属部门、职务、个人的ID等。但是,设此后运用被变更成不仅A公司使用加密系统,而且A公司的关联公司也使用加密系统。该情况下,作为访问控制中使用的属性类别,需要新追加所属公司。
在实施方式1的IPE-CC方式中,每个属性类别都需要基B和基B的基向量,在追加属性类别的情况下,需要生成增加维数后的新的基B和基B。并且,基B包含在公开参数中,因此需要再次发行公开参数并重新发布给用户。因此,不容易在此后追加属性类别,无法灵活采用系统设计时未假设的运用形式。
实施方式3的密钥生成装置100、加密装置200、转换装置300、解密装置400的结构与图2~图5所示的各装置的结构相同。
此外,实施方式3的Setup算法、Enc算法、Conv算法、Query算法的流程与图 6、图8~图10所示的各算法的流程相同。
图11是示出实施方式3的TokenGen算法的处理的流程图。
根据图6对Setup算法的处理进行说明。
(S101:标准正交基生成步骤)
主密钥生成部110通过处理装置计算数式150,生成参数paramV、基B和基B
【数式150】
(1)input1λ
(2)N0:=1+u0+w0+z0,N1:=4+u+w+z
(3)
(4)
针对t=0,1的各t执行(5)~(9)的处理。
(5)
(6)
(7)
(8)

(9)

(10)gT:=e(g,g)ψ,
param:=({paramVt}t=0,1,gT)]]>
即,主密钥生成部110执行以下(1)~(10)的处理。
(1)与实施方式1相同,因而省略说明。
(2)主密钥生成部110通过处理装置在N0中设定1+u0+w0+z0,在N1中设定4+u+w+z。另外,u0、w0、z0、u、w、z分别是0以上的整数。
(3)主密钥生成部110通过处理装置将(1)中输入的保密参数λ作为输入来执行算法Gbpg,生成双线性配对群的参数paramG
(4)主密钥生成部110通过处理装置生成随机数ψ。
接着,主密钥生成部110针对t=0,1的各t执行以下的(5)~(9)的处理。
(5)主密钥生成部110通过处理装置将(1)中输入的保密参数λ、(2)中设定的Nt、(3)中生成的paramG:=(q,G,GT,g,e)的值作为输入来执行算法Gdpvs,生成对偶配对向量空间的参数paramVt:=(q,Vt,GT,At,e)的值。
(6)主密钥生成部110通过处理装置将(2)中设定的Nt、Fq作为输入,随机生成线性变换Xt:=(χt,i,j)i,j。另外,(χt,i,j)i,j是指与矩阵χt,i,j的下标i、j有关的矩阵,其中,i、j=1,...,Nt
(7)主密钥生成部110通过处理装置,根据随机数ψ和线性变换Xt生成线性变换Xt:=(νt,i,j)i,j:=ψ·(XtT)-1。另外,(νt,i,j)i,j也与(χt,i,j)i,j同样,是指与矩阵νt,i,j的小标i、j有关的矩阵,其中,i、j=1,...,Nt
(8)主密钥生成部110通过处理装置,根据(6)中生成的线性变换Xt,从(5)中生成的标准基At生成基Bt。另外,xt,i表示线性变换Xt的第i行。
(9)主密钥生成部110通过处理装置,根据(7)中生成的(νt,i,j)i,j,从(5)中生成的标准基At生成基Bt。另外,vt,i表示线性变换Xt的第i行。
(10)主密钥生成部110通过处理装置在gT中设定e(g,g)ψ。此外,主密钥生成部110在param中设定(5)中生成的{paramVt}t=0,1、gT
另外,在以下说明中,为了简化,设基B1和基B1为基B和基
(S102:转换密钥生成步骤)
主密钥生成部110通过处理装置,如数式151所示生成转换信息W0、W。主密钥生成部110将转换信息W0、W作为转换密钥ck。
【数式151】
W0&LeftArrow;UGL(N0,Fq),]]>
W&LeftArrow;UGL(N1,Fq)]]>
(S103:公开密钥生成步骤)
主密钥生成部110通过处理装置,如数式152所示,利用转换密钥W0、W对S101中生成的基B0和基B进行转换而生成基D0和基D。然后,主密钥生成部110通过处理装置,如数式152所示生成基D0和基D的部分基D^0和部分基D^。
【数式152】
d0,i:=b0,iW0fori=1,...,1+u0+w0+z0,
D0:=(d0,1,...,d0,1+u0+w0+z0),]]>
D^0:=(d0,1,d0,1+u0+w0+1...,d1+u0+w0+z0),]]>
di:=biWfori=1,...,4+u+w+z,
D:=(d1,...,d4+u+w+z),
D^:=(d1,...,d4,d4+u+w+1...,d4+u+w+z)]]>
主密钥生成部110合并部分基D^0和部分基D^、S101中输入的保密参数λ以及S101中生成的paramV,作为公开密钥pk。
(S104:秘密密钥生成步骤)
主密钥生成部110通过处理装置,如数式153所示生成S101中生成的基B0和基B的部分基B^0和部分基B^
【数式153】
B^0*:=(b0,1*,b0,1+u0+1*,...,b0,1+u0+w0*),]]>
B^*:=(h1*,..,b4*,b4+u+1*,..,b4+u+w*)]]>
主密钥生成部110将生成的部分基B^0和部分基B^作为秘密密钥sk。
(S105:密钥存储步骤)
主密钥存储部120将S102中生成的转换密钥ck、S103中生成的公开密钥pk和S104中生成的秘密密钥sk存储在存储装置中。
即,在S101~S104中,密钥生成装置100执行数式154所示的Setup算法,生成转换密钥ck、公开密钥pk和秘密密钥sk。这里,GIPEob算法如数式155所示。然后,在S105中,密钥生成装置100将生成的转换密钥ck、公开密钥pk和秘密密钥sk存储在存储装置中。
【数式154】
Setup(1λ):
(param,(B0,B0*),(B,B*)&LeftArrow;RGobIPE(1λ)]]>
d0,i:=b0,iW0fori=1,...,1+u0+w0+z0,
D0:=(d0,1,...,d0,1+u0+w0+z0),]]>
D^0:=(d0,1,d0,1+u0+w0+1...,d1+u0+w0+z0),]]>
di:=biWfori=1,...,4+u+w+z,
D:=(d1,...,d4+u+w+z),
D^:=(d1,...,d4,d4+u+w+1...,d4+u+w+z),]]>
B^0*:=(b0,1*,b0,1+u0+1*,...,b0,1+u0+w0*),]]>
B^*:=(b1*,..,b4*,b4+u+1*,..,b4+u+w*),]]>
return pk:=(1λ,param,D^0,D^),sk:=(B^0*,B^*).]]>
【数式155】

N0:=1+u0+w0+z0,N1:=4+u+w+z,

fort=0,1,






gT:=e(g,g)ψ,param:=({paramVt}t=0,1,gT),]]>
return(param,{Bt,Bt*}t=0,1).]]>
根据图11对TokenGen算法的处理进行说明。
(S601:信息输入步骤)
信息输入部130通过输入装置输入谓词向量v:={(t,vt)|t∈Iv→}。即,谓词向量v是关于集合Iv→中包含的索引t,作为元素具有索引t和谓词信息vt的向量。作为谓词信息vt,例如设定有令牌tkv的使用者的属性信息和检索关键词等。
(S602:秘密信息生成步骤)
令牌生成部140通过处理装置,如数式156所示生成秘密信息st、s0
【数式156】
st&LeftArrow;UFq for (t,vt)&Element;v&RightArrow;,]]>
s0:=Σ(t,vt)&Element;v&RightArrow;st]]>
(S603:随机数生成步骤)
令牌生成部140通过处理装置,如数式157所示生成随机数。
【数式157】
η&RightArrow;0:=(η0,1,...,η0,w0)&LeftArrow;UFqw0,]]>
δ&LeftArrow;UFq,]]>
μt&LeftArrow;UFq for (t,vt)&Element;v&RightArrow;,]]>
η&RightArrow;t:=(ηt,1,...,ηt,w)&LeftArrow;UFqwfor(t,vt)&Element;v&RightArrow;]]>
(S604:令牌元素生成步骤)
令牌生成部140通过处理装置,如数式158所示生成令牌tkv的元素k0
【数式158】

此外,令牌生成部140通过处理装置,关于集合Iv→中包含的索引t,如数式159所示生成令牌tkv的元素kt
【数式159】

(S605:令牌发布步骤)
令牌发送部150通过例如通信装置经由网络向解密装置400秘密发布将S604中生成的k0、kt作为元素的令牌tkv。当然,令牌tkv也可以通过其它方法发布到解密装置400。
即,在S601~S604中,密钥生成装置100执行数式160所示的TokenGen算法,生成令牌tkv。然后,在S605中,密钥生成装置100将生成的令牌tkv发布到解密装置400。
【数式160】
TokenGen(pk,sk,v&RightArrow;:={(t,vt)|t&Element;Iv&RightArrow;}):]]>
δ,st&LeftArrow;UFqfor(t,vt)&Element;v&RightArrow;,]]>
η&RightArrow;0:=(η0,1,...,η0,w0)&LeftArrow;UFqw0,]]>
s0:=Σ(t,vt)&Element;v&RightArrow;st,]]>

for(t,vt)&Element;v&RightArrow;,]]>
μt&LeftArrow;UFq,]]>
η&RightArrow;t:=(ηt,1,...,ηt,w)&LeftArrow;UFqw,]]>

return skv:=(k0*,{kt*}(t,vt)&Element;v&RightArrow;).]]>
根据图8对Enc算法的处理进行说明。
S301与实施方式1相同,因而省略说明。
(S302:信息输入步骤)
信息输入部220通过输入装置输入属性向量x:={(t,xt)|t∈Ix→}。即,属性 向量x是关于集合Ix→中包含的索引t,作为元素具有索引t和属性信息xt的向量。对于属性向量x,例如设定有可检索的用户的属性信息和检索用的标签。
(S303:随机数生成步骤)
密文生成部230通过处理装置,如数式161所示生成随机数。
【数式161】
ω,ω~&LeftArrow;UFq,]]>

σt&LeftArrow;UFqfor(t,xt)&Element;x&RightArrow;,]]>

(S304:密码元素生成步骤)
密文生成部230通过处理装置,如数式162所示生成密文ctx的元素f0
【数式162】

此外,密文生成部230通过处理装置,关于集合Ix→中包含的索引t,如数式163所示生成密文ctx的元素ft
【数式163】

(S305:数据发送步骤)
数据发送部240通过例如通信装置经由网络向转换装置300发送将S304中生成的f0、ft作为元素的密文ctx。当然,密文ctx也可以通过其它方法发送到转换装置300。
即,在S301~S304中,加密装置200执行数式164所示的Enc算法,生成密文ctx。然后,在S305中,加密装置200将生成的密文ctx发送到转换装置300。
【数式164】
Enc(pk,x&RightArrow;:={(t,xt)|t&Element;Ix&RightArrow;}):]]>


for(t,xt)&Element;x&RightArrow;,]]>


return ctx:=(f0,{ft}(t,xt)&Element;x&RightArrow;).]]>
根据图9对Conv算法的处理进行说明。
(S401:转换密钥取得步骤)
转换密钥取得部310通过例如通信装置经由网络取得从密钥生成装置100发送的转换密钥ck:=(W0,W)。并且,转换密钥取得部310取得密钥生成装置100生成的公开密钥pk。
(S402:密文取得步骤)
密文取得部320通过例如通信装置经由网络接收加密装置200发送的密文ctx:=(f0,f)。
(S403:随机数生成步骤)
密文转换部330通过处理装置,如数式165所示生成随机数。
【数式165】
ρ0&LeftArrow;UFq,]]>
y0&LeftArrow;Uspan<d1+u0+w0+1,...,d1+u0+w0+z0>,]]>
ρ&LeftArrow;UFq,]]>
y&LeftArrow;Uspan<d4+u+w+1,...,d4+u+w+z>]]>
(S404:密文转换步骤)
密文转换部330通过处理装置,如数式166所示转换密文ctx,生成元素c0和元 素ct
【数式166】
c0:=(ρ0f0+y0)W0-1,]]>
ct:=(ρf+y)W-1
(S405:数据发送步骤)
数据发送部340通过例如通信装置经由网络向解密装置400发送包含S404中生成的元素c0和元素ct的密文CTx。当然,密文CTx也可以通过其它方法发送到解密装置400。
即,在S401~S404中,转换装置300执行数式167所示的Conv算法,生成密文CTx。然后,在S405中,转换装置300将生成的密文CTx发送到解密装置400。
【数式167】
Conv(pk,ck:=W,ctx:=f):
ρ0&LeftArrow;UFq,y0&LeftArrow;Uspan<d1+u0+w0+1,...,d1+u0+w0+z0>,]]>
ρ&LeftArrow;UFq,y&LeftArrow;Uspan<dn+u+w+1,...,dn+u+w+z>,]]>
c0:=(ρ0f0+y0)W0-1,ct:=(ρf+y)W-1]]>
returnCTx:=(c0,c).
根据图10对Query算法的处理进行说明。
(S501:令牌取得步骤)
令牌取得部410通过例如通信装置经由网络取得从密钥生成装置100发送的令牌tkv:=(k0,kt)。并且,令牌取得部410取得密钥生成装置100生成的公开参数pk。
(S502:密文取得步骤)
密文取得部420通过例如通信装置经由网络接收转换装置300发送的密文CTx:=(c0,ct)。
(S503:解密步骤)
解密部430通过处理装置,如果集合Iv→是集合Ix→的部分集合且计算配对运算e(c0,k0)·Πt∈Iv→e(ct,kt)的结果是1,则输出表示已解密的1,如果结果不是1,则输出表示未能解密的0。
即,在S501~S503中,解密装置400执行数式168所示的Query算法,判定是 否已解密。
【数式168】
Query(pk,tkv:=(k0*,kt*),CTx:=(c0,ct)):]]>
if Iv&RightArrow;&Subset;Ix&RightArrow;and e(c0,k0*)&CenterDot;Πt&Element;Iv&RightArrow;e(ct,kt*)=1,output1,]]>
otherwise,output0.
如上所述,在实施方式3的内积谓词加密方式中,即使属性向量x和谓词向量v的维度不同,如果集合Iv→为集合Ix→的部分集合且针对集合Iv→中包含的索引t而使vtxt的合计为0,则也能够利用令牌tkv对密文ctx进行解密。
并且,在实施方式3的内积谓词加密方式中,针对解密密钥skv的元素kt,分别设定有μtt和-μt作为基向量b1、b2(基向量bindex)的系数。并且,加密系统10针对密文ctx的元素ct,分别设定有σt和σtt作为基向量b1、b2(基向量bindex)的系数。
因此,当进行与对应的索引t有关的元素kt和元素ct的配对运算时,针对基向量b1、b2和基向量b1、b2的部分,内积为0而被抵消。即,当进行与对应的索引t有关的元素kt和元素ct的配对运算时,作为基向量的系数而设定的索引部(基向量b1、b2和基向量b1、b2的部分)被抵消,得到与其余部分有关的配对运算结果。
在实施方式3的内积谓词加密方式中,通过设置索引部,能够将各属性类别中使用的基为公共基(基B和基B)。其结果是,只要公开参数仅包含基B和基B即可,在此后追加属性类别的情况下,不需要再次发行公开参数。
另外,关于索引部,内积的结果为0即可。因此,在上述说明中,将基向量b1、b2和基向量b1、b2的2维作为索引部,但是不限于此,也可以将3维以上作为索引部。并且,向索引部分配值也不限于上述说明的,也可以是其它分配。
此外,在上述说明中,对与非专利文献4的Type1对应的IPE-CC方式且在集合Iv→是集合Ix→的部分集合的情况下能够进行解密的IPE-CC方式进行了说明。
但是,通过进行与上述算法同样的应用,还能够构成与非专利文献4的Type2对应的IPE-CC方式(在集合Ix→是集合Iv→的部分集合的情况下能够进行解密的IPE-CC方式)、与非专利文献4的Type0(在集合Iv→是集合Ix→的部分集合且集合Ix→是集合Iv→的部分集合的情况下能够进行解密的IPE-CC方式)对应的IPE-CC方式。
此外,在上述说明中,对判定密文ctx是否满足令牌tkv中设定的条件的方法进行了说明。由此,能够构建可在将密文ctx加密后的状态下进行检索的隐匿检索系统。
但是,如非专利文献2等记载的那样,还能够构建如下的狭义的加密系统:如果在密文ctx中埋入消息m,则通过令牌tkv提取密文ctx中埋入的消息m。
实施方式4
在实施方式4中,简单地说明构成IPE-CC方式的情况,该IPE-CC方式在上述实施方式中说明的IPE-CC方式中应用非专利文献2的结构,从而具有权限转让系统。
这里,示出使在实施方式1中说明的IPE-CC方式具有权限转让系统的一例。数式169~数式173表示使在实施方式1中说明的IPE-CC方式具有权限转让系统的情况下的Setup算法、TokenGen算法、Enc算法、Query算法、Delegate算法。另外,Conv算法与实施方式1相同,因而省略说明。
这里,为了简化,示出具有2层级权限转让系统的IPE-CC方式。但是,如果应用这里示出的方式,则能够容易地设为具有d层级(d是3以上的整数)权限转让系统的IPE-CC方式。
【数式169】
Setup(1λ,(n1,n2)):
n:=n1+n2,
(paramV,B:=(b1,...,bn+u+w+z),B*:=(b1*,...,bn+u+w+z*))&LeftArrow;RGobIPE(1λ,n),]]>
W&LeftArrow;UGL(N,Fq),]]>
di:=biWfori=1,...,n+u+w+z,D:=(d1,...,dn+u+w+z),
D^:=(d1,...,dn,dn+u+w+1...,dn+u+w+z),]]>
B^*:=(b1*,..,bn*,bn+u+1*,..,bn+u+w*),]]>
return pk:=(1λ,paramV,D^),ck:=W,sk:=B^*.]]>
GobIPE(1λ,n):]]>
N:=n+u+w+z,



GobZIPE,SK(1λ,6,n):]]>
paramV:=(paramV',gT),

bi*:=Σj=1Nθi,jaj,B*:=(b1*,...,bN*),]]>
return(paramV,B,B*).
【数式170】
TokenGen(pk,sk,v&RightArrow;1&Element;Fqn1\{0&RightArrow;}):]]>
δ,φ&LeftArrow;UFq,η&RightArrow;0,η&RightArrow;1,...,η&RightArrow;n2&LeftArrow;UFqw,]]>


where e&RightArrow;i:=(0i-1,1,0n2-i),]]>
return tkv1:=(k0*,k1*,...,kn2*).]]>
【数式171】
Enc(pk,x&RightArrow;1&Element;Fqn1\{0&RightArrow;},x&RightArrow;2&Element;Fqn2):]]>
τ1,τ2&LeftArrow;UFq,ξ&RightArrow;&LeftArrow;UFqz,]]>
if x&RightArrow;2=0&RightArrow;,x&RightArrow;2&LeftArrow;UFqn2,elsex&RightArrow;2:=x&RightArrow;2,]]>

returnctx:=f.
【数式172】
Query(pk,tk:=tkv1or tk(v1,v2),CTx:=c):]]>
if tk=tkv1=(k0*,k1*,...,kn2-n1*),]]>
if e(c,k0*)=1,output1,othewise,output0]]>
if tk=tk(v1,v2)=k~*,]]>
if e(c,k~*)=1,output1,othewise,output0.]]>
【数式173】
Delegate(pk,tkv1:=(k0*,k1*,...,kn2*),]]>
v&RightArrow;2:=(v2,1,...,v2,n2)&Element;Fqn2\{0&RightArrow;}):]]>
ξ,δ&LeftArrow;UFq,η&RightArrow;:=(η&RightArrow;1,...,η&RightArrow;n)&LeftArrow;UFqn,]]>
k~*:=ξk0*+δ(Σi=1n2v2,iki*)+Σi=1nη&RightArrow;ib4n+i*,]]>

实施方式5
在实施方式5中,对将在上述实施方式中说明的加密系统10应用到医疗信息DB(数据库)的隐匿检索系统500进行说明。
图12是实施方式5的隐匿检索系统500的结构图。
隐匿检索系统500具有PKG510、多个医院520、辅助者530、多个制药公司540、医疗信息DB550。
PKG通过密钥生成装置100执行Setup算法,生成公开密钥pk:=D^、秘密密钥sk:=B^和转换密钥ck:=W。
各医院520通过加密装置200执行Enc算法,生成对患者的DNA信息等进行加密后的密文ctx。然后,各医院520将生成的密文ctx登记在医疗信息DB550中。
辅助者530通过转换装置300执行Conv算法,对医疗信息DB550中登记的密文ctx进行转换,从而生成密文CTx。辅助者530将生成的密文CTx登记在医疗信息DB550中。
各制药公司540是检索的执行者,将设定有自身的属性信息的谓词向量v从PC(PersonalComputer:个人计算机)等终端发送到PKG510。于是,PKG510通过密钥生成装置100执行TokenGen算法,从而生成基于发送来的谓词向量v的令牌tkv。然后,PKG510将生成的令牌tkv发送到作为谓词向量v发送方的制药公司540。
制药公司540在接收到令牌tkv后,将在接收到的令牌tkv中设定有检索条件(ω)的令牌tkv∧ω从终端发送到医疗信息DB550,从而委托基于令牌tkv的检索。另外,作为在令牌tkv中设定检索条件(ω)的方法,例如存在应用实施方式4中说明的权限转让的方法。
医疗信息DB550在接收到检索的委托后,关于已登记的各密文CTx和发送来的令牌tkv,通过解密装置400执行Query算法,并将结果发送到作为委托方的制药公司540。在发送的结果中,可以包含已通过Query算法解密后的密文CTx的标识符等。
图13是与图12不同结构的隐匿检索系统500的结构图。
在图13所示的隐匿检索系统500中,在辅助者530位于制药公司540与医疗信息DB550之间这一点上与图12所示的隐匿检索系统500不同。
在图12所示的隐匿检索系统500中,辅助者530生成密文CTx并将其登记在医疗信息DB550中,医疗信息DB550在接收到检索的委托后,执行Query算法,并将结果发送到制药公司540。
在图13所示的隐匿检索系统500中,辅助者530在接收到检索的委托后,执行Conv算法,对医疗信息DB550中登记的各密文ctx进行转换而生成密文CTx。然后,辅助者530关于生成的各密文CTx和发送来的令牌tkv,通过解密装置400执行Query算法,并将结果发送到作为委托方的制药公司540。
另外,上述说明中的医院520、制药公司540只是一个例子,也可以是其它机构。
实施方式6
在以上的实施方式中说明了在对偶向量空间中实现密码处理的方法。在实施方式 6中,说明在对偶加群中实现密码处理的方法。
即,在以上的实施方式中,在素数位数q的循环群中实现了密码处理。但是,在使用合成数M如数式174所示地表示环R的情况下,在将环R作为系数的加群中,也可以应用上述实施方式中说明的密码处理。
【数式174】
R:=Z/MZ
其中,
Z是整数,
M是合成数。
如果将以上的实施方式中说明的算法中的Fq变更成R,则能够实现对偶加群中的密码处理。
图14是示出上述实施方式中示出的密钥生成装置100、加密装置200、转换装置300、解密装置400的硬件结构例的图。
密钥生成装置100、加密装置200、转换装置300、解密装置400是计算机,能够通过程序实现密钥生成装置100、加密装置200、转换装置300、解密装置400的各要素。
作为密钥生成装置100、加密装置200、转换装置300、解密装置400的硬件结构,在总线上连接有运算装置901、外部存储装置902、主存储装置903、通信装置904、输入输出装置905。
运算装置901是执行程序的CPU(CentralProcessingUnit:中央处理单元)等。外部存储装置902例如是ROM(ReadOnlyMemory:只读存储器)或闪存、硬盘装置等。主存储装置903是RAM(RandomAccessMemory:随机存取存储器)等。通信装置904是网卡等。输入输出装置905例如是鼠标、键盘、显示装置等。
程序通常被存储在外部存储装置902中,在被加载到主存储装置903的状态下,依次被读入到运算装置901中并执行。
程序是实现作为主密钥生成部110、主密钥存储部120、信息输入部130、令牌生成部140、令牌发送部150、公开密钥取得部210、信息输入部220、密文生成部230、数据发送部240、转换密钥取得部310、密文取得部320、密文转换部330、数据发送部340、令牌取得部410、密文取得部420、解密部430说明的功能的程序。
而且,在外部存储装置902中还存储有操作系统(OS),将OS的至少一部分加载到主存储装置903,运算装置901在执行OS的同时执行上述程序。
此外,在实施方式1~6的说明中,将表示作为“~的计算”、“~的接收”、“~的发送”等说明的处理结果的信息、数据、信号值、变量值作为文件存储到主存储装置903中。
另外,图14的结构只不过示出密钥生成装置100、加密装置200、转换装置300、解密装置400的硬件结构的一例,密钥生成装置100、加密装置200、转换装置300、解密装置400的硬件结构不限于图14中记载的结构,也可以是其它结构。
标号说明
10:加密系统;100:密钥生成装置;110:主密钥生成部;120:主密钥存储部;130:信息输入部;140:令牌生成部;150:令牌发送部;200:加密装置;210:公开密钥取得部;220:信息输入部;230:密文生成部;240:数据发送部;300:转换装置;310:转换密钥取得部;320:密文取得部;330:密文转换部;340:数据发送部;400:解密装置;410:令牌取得部;420:密文取得部;430:解密部;901:运算装置;902:外部存储装置;903:主存储装置;904:通信装置;905:输入输出装置。

加密系统、加密方法以及加密程序.pdf_第1页
第1页 / 共53页
加密系统、加密方法以及加密程序.pdf_第2页
第2页 / 共53页
加密系统、加密方法以及加密程序.pdf_第3页
第3页 / 共53页
点击查看更多>>
资源描述

《加密系统、加密方法以及加密程序.pdf》由会员分享,可在线阅读,更多相关《加密系统、加密方法以及加密程序.pdf(53页珍藏版)》请在专利查询网上搜索。

目的在于提供一种通过公开密钥设置也能够一并隐匿密文中设定的属性信息和解密密钥中设定的谓词信息的谓词加密。加密装置(200)生成作为基(D)的基向量的系数设定有属性信息(x)的密文(ctx)。中介装置(300)通过转换信息(W)将加密装置(200)生成的密文(ctx)的基(D)转换成基(B)来生成密文(CTx)。解密装置(400)通过作为与基(B)对应的基(B)的基向量的系数设定有谓词信息(v)的令。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 教育;密码术;显示;广告;印鉴


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1