CN103354984A - 密码处理系统、密钥生成装置、加密装置、解密装置、密钥移交装置、密码处理方法以及密码处理程序 - Google Patents

密码处理系统、密钥生成装置、加密装置、解密装置、密钥移交装置、密码处理方法以及密码处理程序 Download PDF

Info

Publication number
CN103354984A
CN103354984A CN201180067247XA CN201180067247A CN103354984A CN 103354984 A CN103354984 A CN 103354984A CN 201180067247X A CN201180067247X A CN 201180067247XA CN 201180067247 A CN201180067247 A CN 201180067247A CN 103354984 A CN103354984 A CN 103354984A
Authority
CN
China
Prior art keywords
integer
ran
key
del
key element
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.)
Granted
Application number
CN201180067247XA
Other languages
English (en)
Other versions
CN103354984B (zh
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.)
Mitsubishi Electric Corp
Nippon Telegraph and Telephone Corp
Original Assignee
Mitsubishi Electric Corp
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp, Nippon Telegraph and Telephone Corp filed Critical Mitsubishi Electric Corp
Publication of CN103354984A publication Critical patent/CN103354984A/zh
Application granted granted Critical
Publication of CN103354984B publication Critical patent/CN103354984B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • H04L9/3073Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • H04L9/0836Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

目的在于提供一种提高了运算等的效率的分层式内积谓词密码。密码处理系统(10)具备密钥生成装置(100)、加密装置(200)、以及解密装置(300)。密钥生成装置(100)生成在关于t=1,...,L的各整数t的基底B* t的基底矢量中嵌入了谓词信息v→t的矢量,作为解密密钥skL。加密装置(200)生成在关于t=1,...,L中的至少一部分的整数t的基底Bt的基底矢量中嵌入了属性信息x→t的矢量,作为加密数据ct。解密装置(300)针对密钥生成装置(100)生成的解密密钥skL和加密装置(200)生成的加密数据ct进行配对运算,对加密数据ct进行解密。

Description

密码处理系统、密钥生成装置、加密装置、解密装置、密钥移交装置、密码处理方法以及密码处理程序
技术领域
本发明涉及分层式谓词密码(Hierarchical PredicateEncryption)。
背景技术
在非专利文献21中,有关于分层式内积谓词密码(HierarchicalPredicate Encryption for Inner Products)的记载。另外,在非专利文献18中,有关于函数型密码(Functional Encryption)的记载。
非专利文献1:Beimel,A.,Secure schemes for secret sharing andkey distribution.PhD Thesis,Israel Institute of Technology,Technion,Haifa,Israel,1996.
非专利文献2:Bethencourt,J.,Sahai,A.,Waters,B.:Ciphertext-policy attribute-based encryption.In:2007IEEESymposium on Security and Privacy,pp.321·34.IEEE Press(2007)
非专利文献3:Boneh,D.,Boyen,X.:Efficient selective-IDsecure identity based encryption without random oracles.In:Cachin,C.,Camenisch,J.(eds.)EUROCRYPT2004.LNCS,vol.3027,pp.223·38.Springer Heidelberg(2004)
非专利文献4:Boneh,D.,Boyen,X.:Secure identity basedencryption without random oracles.In:Franklin,M.K.(ed.)CRYPTO2004.LNCS,vol.3152,pp.443·59.Springer Heidelberg(2004)
非专利文献5:Boneh,D.,Boyen,X.,Goh,E.:Hierarchicalidentity based encryption with constant size ciphertext.In:Cramer,R.(ed.)EUROCRYPT2005.LNCS,vol.3494,pp.440·56.SpringerHeidelberg(2005)
非专利文献6:Boneh,D.,Franklin,M.:Identity-basedencryption from the Weil pairing.In:Kilian,J.(ed.)CRYPTO2001.LNCS,vol.2139,pp.213·29.Springer Heidelberg(2001)
非专利文献7:Boneh,D.,Hamburg,M.:Generalized identitybased and broadcast encryption scheme.In:Pieprzyk,J.(ed.)ASIACRYPT2008.LNCS,vol.5350,pp.455·70.SpringerHeidelberg(2008)
非专利文献8:Boneh,D.,Katz,J.,Improved efficiency forCCA-secure cryptosystems built using identity based encryption.RSA-CT2005,LNCS,Springer Verlag(2005)
非专利文献9:Boneh,D.,Waters,B.:Conjunctive,subset,and range queries on encrypted data.In:Vadhan,S.P.(ed.)TCC2007.LNCS,vol.4392,pp.535·54.Springer Heidelberg(2007)
非专利文献10:Boyen,X.,Waters,B.:Anonymous hierarchicalidentity-based encryption(without random oracles).In:Dwork,C.(ed.)CRYPTO2006.LNCS,vol.4117,pp.290·07.SpringerHeidelberg(2006)
非专利文献11:Canetti,R.,Halevi S.,Katz J.:Chosen-ciphertext security from identity-basedencryption.EUROCRYPT2004,LNCS,Springer-Verlag(2004)
非专利文献12:Cocks,C.:An identity based encryption schemebased on quadratic residues.In:Honary,B.(ed.)IMA Int.Conf.LNCS,vol.2260,pp.360·63.Springer Heidelberg(2001)
非专利文献13:Gentry,C.:Practical identity-based encryptionwithout random oracles.In:Vaudenay,S.(ed.)EUROCRYPT2006.LNCS,vol.4004,pp.445·64.Springer Heidelberg(2006)
非专利文献14:Gentry,C.,Halevi,S.:Hierarchicalidentity-based encryption with polynomially many levels.In:Reingold,O.(ed.)TCC2009.LNCS,vol.5444,pp.437·56.Springer Heidelberg(2009)
非专利文献15:Gentry,C.,Silverberg,A.:HierarchicalID-based cryptography.In:Zheng,Y.(ed.)ASIACRYPT2002.LNCS,vol.2501,pp.548·66.Springer Heidelberg(2002)
非专利文献16:Goyal,V.,Pandey,O.,Sahai,A.,Waters,B.:Attribute-based encryption for fine-grained access control ofencrypted data.In:ACM Conference on Computer andCommunication Security2006,pp.89·8,ACM(2006)
非专利文献17:Katz,J.,Sahai,A.,Waters,B.:Predicateencryption supporting disjunctions,polynomial equations,and innerproducts.In:Smart,N.P.(ed.)EUROCRYPT2008.LNCS,vol.4965,pp.146·62.Springer Heidelberg(2008)
非专利文献18:Lewko,A.,Okamoto,T.,Sahai,A.,Takashima,K.,Waters,B.:Fully secure functionalencryption:Attribute-basedencryption and(hierarchical)inner product encryption,EUROCRYPT2010.LNCS,Springer Heidelberg(2010)
非专利文献19:Lewko,A.B.,Waters,B.:New techniques fordual system encryption and fully secure HIBE with short ciphertexts.In:Micciancio,D.(ed.)TCC2010.LNCS,vol.5978,pp.455·79.Springer Heidelberg(2010)
非专利文献20:Okamoto,T.,Takashima,K.:Homomorphicencryption and signatures from vector decomposition.In:Galbraith,S.D.,Paterson,K.G.(eds.)Pairing2008.LNCS,vol.5209,pp.57·4.Springer Heidelberg(2008)
非专利文献21:Okamoto,T.,Takashima,K.:Hierarchicalpredicate encryption for inner-products,In:ASIACRYPT2009,Springer Heidelberg(2009)
非专利文献22:Ostrovsky,R.,Sahai,A.,Waters,B.:Attribute-based encryption with non-monotonic access structures.In:ACM Conference on Computer and Communication Security2007,pp.195·03,ACM(2007)
非专利文献23:Pirretti,M.,Traynor,P.,McDaniel,P.,Waters,B.:Secure attribute-based systems.In:ACM Conferenceon Computer and Communication Security2006,pp.99·12,ACM,(2006)
非专利文献24:Sahai,A.,Waters,B.:Fuzzy identity-basedencryption.In:Cramer,R.(ed.)EUROCRYPT2005.LNCS,vol.494,pp.457·73.Springer Heidelberg(2005)
非专利文献25:Shi,E.,Waters,B.:Delegating capability inpredicate encryption systems.In:Aceto,L.,Damg“エard,I.,Goldberg,L.A.,Halldウエrsson,M.M.,Ingウエlfsdウエttir,A.,Walukiewicz,I.(eds.)ICALP(2)2008.LNCS,vol.5126,pp.560.578.Springer Heidelberg(2008)
非专利文献26:Waters,B.:Efficient identity based encryptionwithout random oracles.Eurocrypt2005,LNCS,vol.3152,pp.443·59.Springer Verlag,(2005)
非专利文献27:Waters,B.:Ciphertext-policy attribute-basedencryption:an expressive,efficient,and provably secure realization.ePrint,IACR,http://eprint.iacr.org/2008/290
非专利文献28:Waters,B.:Dual system encryption:realizingfully secure IBE and HIBE under simple assumptions.In:Halevi,S.(ed.)CRYPTO2009.LNCS,vol.5677,pp.619·36.SpringerHeidelberg(2009)
发明内容
在非专利文献21记载的分层式内积谓词密码方式中,使用1个大的空间构筑了密码处理。因此,在安装了该分层式内积谓词密码方式的情况下,存在密钥的尺寸变大、运算等的效率恶化的危险。
本发明的目的在于提供一种提高了运算等的效率的分层式内积谓词密码。
本发明所涉及的密码处理系统,使用关于t=1,...,L+1(L是1以上的整数)的各整数t的基底Bt和基底B* t进行密码处理,其特征在于,具备:
加密装置,生成在关于t=1,...,L中的至少一部分的整数t的基底Bt的基底矢量中嵌入了属性信息x→t的矢量,作为加密数据ct;
解密装置,将在关于t=1,...,L的各整数t的基底B* t的基底矢量中嵌入谓词信息v→t的矢量作为解密密钥skL,针对所述加密装置生成的加密数据ct和所述解密密钥skL进行配对运算而对所述加密数据ct进行解密;以及
密钥移交装置,根据在基底B* L+1的基底矢量中嵌入了谓词信息的矢量、和所述解密装置使用的解密密钥skL,生成所述解密密钥skL的下位的解密密钥skL+1
在本发明的密码处理系统中,使用多个空间构筑了分层构造。因此,能够减小密钥的尺寸,运算效率提高。
附图说明
图1是用于说明“权限移交(分层式权限移交)”这样的概念的图。
图2是用于说明跳过分层的权限移交的图。
图3是示出属性信息和谓词信息的分层构造的图。
图4是示出分层式基于ID的密码的例子的图。
图5是用于说明基底和基底矢量的图。
图6是用于说明矢量空间中的分层构造的实现方法的一个例子的图。
图7是执行分层式内积谓词密码方式的算法的密码处理系统10的结构图。
图8是示出密钥生成装置100的功能的功能框图。
图9是示出加密装置200的功能的功能框图。
图10是示出解密装置300的功能的功能框图。
图11是示出密钥移交装置400的功能的功能框图。
图12是示出Setup算法的处理的流程图。
图13是示出KeyGen算法的处理的流程图。
图14是示出Enc算法的处理的流程图。
图15是示出Dec算法的处理的流程图。
图16是示出DelegateL算法的处理的流程图。
图17是示出KeyGen算法的处理的流程图。
图18是示出Dec算法的处理的流程图。
图19是示出DelegateL算法的处理的流程图。
图20是示出密钥生成装置100、加密装置200、解密装置300的硬件结构的一个例子的图。
(符号说明)
10:密码处理系统;100:密钥生成装置;110:主密钥生成部;120:主密钥存储部;130:信息输入部;140:解密密钥生成部;141:随机数生成部;142:解密要素生成部;143:随机化要素生成部;144:移交要素生成部;150:密钥分发部;200:加密装置;210:主公开密钥取得部;220:信息输入部;221:属性信息输入部;222:消息输入部;230:加密数据生成部;231:随机数生成部;232:加密数据c1生成部;233:加密数据c2生成部;240:数据发送部;300:解密装置;310:解密密钥取得部;320:数据接收部;330:配对运算部;340:消息计算部;400:密钥移交装置;410:解密密钥取得部;420:信息输入部;430:移交密钥生成部;431:随机数生成部;432:下位解密要素生成部;433:下位随机化要素生成部;434:下位移交要素生成部;440:密钥分发部。
具体实施方式
以下,根据附图,说明发明的实施方式。
在以下的说明中,处理装置是后述的CPU911等。存储装置是后述的ROM913、RAM914、磁盘920等。通信装置是后述的通信板915等。输入装置是后述的键盘902、通信板915等。输出装置是后述的RAM914、磁盘920、通信板915、LCD901等。即,处理装置、存储装置、通信装置、输入装置、输出装置是硬件。
说明以下的说明中的记法。
在A是随机的变量或者分布时,式101表示依照A的分布从A随机地选择y。即,在式101中,y是随机数。
[式101]
Figure BDA00003644292100071
在A是集合时,式102表示从A均匀地选择y。即,在式102中,y是均匀随机数。
[式102]
式103表示y是通过z定义的集合、或者y是代入了z的集合。
[式103]
y:=z
在a是常数时,式104表示设备(算法)A针对输入x输出a。
[式104]
A(x)→a
例如、
A(x)→1
式105、即Fq表示位数q的有限域。
[式105]
Figure BDA00003644292100073
矢量标记表示有限域Fq中的矢量显示。即,式106。
[式106]
Figure BDA00003644292100081
表示
Figure BDA00003644292100082
式107表示式108所示的2个矢量x→与v→的式109所示的内积。
[式107]
x → · v →
[式108]
x → = ( x 1 , . . . , x n ) ,
v → = ( v 1 , . . . , v n )
[式109]
Σ i = 1 n x i v i
XT表示矩阵X的转置矩阵。
针对式110所示的基底B和基底B*,是式111。
[式110]
Figure BDA00003644292100087
Figure BDA00003644292100088
[式111]
Figure BDA00003644292100089
Figure BDA000036442921000810
e→t,j表示式112所示的标准基底矢量。
[式112]
Figure BDA000036442921000811
其中,j=1,...,nt
另外,是式113至式117。
[式113]
Figure BDA00003644292100091
Figure BDA00003644292100092
[式114]
Figure BDA00003644292100093
[式115]
Figure BDA00003644292100094
[式116]
Figure BDA00003644292100095
[式117]
e ( c , k * ) : = Π t = 0 d e ( c t , k t * ) ,
其中
Figure BDA00003644292100097
Figure BDA00003644292100098
另外,在为式118的情况下,是式119。
[式118]
Figure BDA00003644292100099
[式119]
Figure BDA000036442921000911
另外,在以下的说明中,Fq nt中的nt是nt
同样地,秘密密钥sk(v→1,...,v→L)中的(v→1,...,v→L)是(v→1,...,v→L),秘密密钥sk(v→1,...,v→L+1)中的(v→1,...,v→L+1)是(v→1,...,v→L+1)。
同样地,在上标中表示“δi,j”的情况下,该δi,j意味着δi,j
另外,在表示矢量的“→”被附加到下标文字或者上标文字的情况下,该“→”意味着对下标文字或者上标文字以上标附加。
另外,在以下的说明中,密码处理包括加密处理、解密处理、密钥生成处理、密钥移交处理。
实施方式1.
在该实施方式中,说明成为实现“分层式内积谓词密码”的基础的概念、和“分层式内积谓词密码”的结构。
第1,说明分层式内积谓词密码的概念。在说明分层式内积谓词密码这样的概念时,首先,说明“权限移交”这样的概念。另外,一并地,说明“分层(Hierarchial)式权限移交”这样的概念。接下来,说明“内积谓词密码”。然后,说明对内积谓词密码加上了分层式权限移交这样的概念的“分层式内积谓词密码”。进而,为了深化分层式内积谓词密码的理解,说明分层式内积谓词密码的应用例子。
第2,说明矢量空间中的分层式内积谓词密码。在该实施方式以及以下的实施方式中,在矢量空间中实现分层式谓词密码和分层式谓词密钥隐匿方式。此处,首先,说明“基底”和“基底矢量”。接下来,说明“矢量空间中的内积谓词密码”。然后,说明“矢量空间中的分层构造的实现方法”。进而,为了深化理解,说明分层构造的实现例子。
第3,说明作为用于实现分层式内积谓词密码的空间的“对偶配对矢量空间(Dual Pairing Vector Spaces,DPVS)”这样的具有丰富的数学性构造的空间。
第4,说明该实施方式所涉及的“分层式内积谓词密码方式”的基本结构。接下来,说明执行分层式谓词密码的“密码处理系统10”的基本结构。然后,详细说明该实施方式所涉及的分层式谓词密码方式以及密码处理系统10。
<第1.分层式内积谓词密码>
<第1-1.权限移交(分层式权限移交)这样的概念>
图1是用于说明“权限移交(分层式权限移交)”这样的概念的图。
权限移交是指,具有上位的密钥的利用者生成与该密钥(上位的密钥)相比功能被限制了的下位的密钥。
在图1中,Root(密钥生成装置)使用主秘密密钥,向第1层(Level-1)的利用者生成秘密密钥。即,Root向第1层的利用者1、2、3分别生成密钥1、2、3。然后,例如,如果是利用者1,则能够使用密钥1,向作为利用者1的下位(第2层)的利用者的利用者11、12、13分别生成密钥11、12、13。此处,与利用者1具有的密钥1相比,利用者11、12、13具有的密钥11、12、13的功能被限制。功能被限制是指,通过该秘密密钥可解密的密文被限定。即,意味着,利用下位的秘密密钥仅能够对可利用上位的秘密密钥解密的密文的一部分的密文进行解密。即,通过利用者11、12、13具有的密钥11、12、13仅能够对可通过利用者1具有的密钥1解密的密文中的一部分的密文进行解密。另外,通常,密钥11、密钥12、以及密钥13能够解密的密文是不同的。另一方面,关于密钥11、密钥12、以及密钥13能够解密的密文,能够通过密钥1来进行解密。
另外,如图1所示,将对各秘密密钥进行分层(等级)称为“分层式”。即,如图1所示,将分层式地生成下位的密钥称为“分层式权限移交”。
另外,在图1中,说明为Root向第1层的利用者生成秘密密钥,第1层的利用者向第2层的利用者生成秘密密钥,第2层的利用者向第3层的利用者生成秘密密钥。但是,如图2所示,Root不仅向第1层的利用者生成秘密密钥,而且还能够向第2层以下的层的利用者生成秘密密钥。同样地,第1层的利用者不仅向第2层的利用者生成秘密密钥,而且还能够向第3层以下的层的利用者生成秘密密钥。即,Root、利用者能够生成比自己具有的秘密密钥下位的层的秘密密钥。
<第1-2.内积谓词密码>
接下来,说明“内积谓词密码”。
首先,谓词密码是指,在谓词信息fv中输入了属性信息x的情况时成为1(True(真))的情况(成为fv(x)=1的情况)下,能够对密文进行解密的密码方式。通常,在密文中嵌入属性信息x,在秘密密钥中嵌入谓词信息fv。即,在谓词密码中,通过根据谓词信息fv生成的秘密密钥SKf对根据属性信息x加密了的密文c进行解密。谓词密码也可以说是如下密码方式:例如,谓词信息fv是条件式,属性信息x是向该条件式的输入信息,如果输入信息(属性信息x)满足条件式(谓词信息fv)(fv(x)=1),则能够对密文进行解密。
另外,关于谓词密码,在非专利文献17中详细记载。
内积谓词密码是指,在属性信息x与谓词信息fv的内积是规定的值的情况下成为fv(x)=1的谓词密码。即,仅在属性信息x与谓词信息fv的内积是规定的值的情况下,能够通过根据谓词信息fv生成的秘密密钥SKf对通过属性信息x加密了的密文c进行解密。
在实施方式1中,原则上,设为在属性信息x与谓词信息fv的内积是0的情况下成为fv(x)=1。
<第1-3.分层式内积谓词密码>
分层式内积谓词密码(分层式内积谓词密钥隐匿方式)是指,具有上述的“分层式权限移交”这样的概念的“内积谓词密码”。
关于分层式内积谓词密码,由于使内积谓词密码具有分层式权限移交系统,所以使属性信息和谓词信息具有分层构造。
图3是示出属性信息和谓词信息的分层构造的图。
在图3中,设为符号对应的属性信息和谓词信息是对应的(即,内积为0)。即,设为属性1与谓词1的内积为0,属性11与谓词11的内积为0,属性12与谓词12的内积为0,属性13与谓词13的内积为0。即,关于通过属性1加密了的密文c1,只要是根据谓词1生成的秘密密钥k1就能够解密。另外,关于通过属性11加密了的密文c11,只要是根据谓词11生成的秘密密钥k11就能够解密。可以说关于属性12和谓词12、属性13和谓词13也是同样的。
如上所述,分层式内积谓词密码具有分层式权限移交系统。因此,能够根据依据谓词1生成的秘密密钥k1、和谓词11,生成秘密密钥k11。即,具有上位的秘密密钥k1的利用者能够根据该秘密密钥k1和下位的谓词11,生成秘密密钥k1的下位的秘密密钥k11。同样地,能够根据秘密密钥k1和谓词12生成秘密密钥k12,能够根据秘密密钥k1和谓词13生成秘密密钥k13。
另外,能够利用上位的秘密密钥对利用与下位的秘密密钥对应的密钥(公开密钥)加密了的密文进行解密。另一方面,无法通过下位的秘密密钥对利用与上位的秘密密钥对应的密钥(公开密钥)加密了的密文进行解密。即,关于通过属性11、属性12、属性13加密了的密文c11、c12、c13,如果是根据谓词1生成的秘密密钥k1,则能够解密。另一方面,关于通过属性1加密了的密文c1,无法通过根据谓词11、谓词12、谓词13生成的秘密密钥k11、k12、k13来解密。即,属性11、属性12、属性13与谓词1的内积成为0。另一方面,属性1与谓词11、谓词12、谓词13的内积不成为0。
<第1-4.分层式内积谓词密码的应用例子>
图4是示出作为后述的分层式内积谓词密码的应用例子的分层式基于ID的密码(Hierarchial Identifier Based Encryption,HIBE)的例子的图。另外,分层式基于ID的密码是指,基于ID的密码成为分层式的密码处理。基于ID的密码是谓词密码的一种,是在密文中所包含的ID和秘密密钥中所包含的ID一致的情况下能够对密文进行解密的匹配谓词密码。
在图4所示的例子中,Root(密钥生成装置)根据主秘密密钥sk和作为A公司的ID的“A”,生成与ID“A”对应的秘密密钥(密钥A)。例如,A公司的保密工作人员根据密钥A和各部门的ID,生成与该ID对应的秘密密钥。例如,保密工作人员生成与营业部门的ID即“A-1”对应的秘密密钥(密钥1)。接下来,例如,各部门的管理者根据该部门的秘密密钥和属于该部门的各课的ID,生成与该ID对应的秘密密钥。例如,营业部门的管理者生成与营业1课的ID即“A-11”对应的秘密密钥(密钥11)。
此处,能够通过作为与营业1课的ID“A-11”对应的秘密密钥的密钥11,对通过营业1课的ID“A-11”加密了的密文进行解密。但是,无法通过密钥11对利用营业2课、营业3课的ID加密了的密文进行解密。另外,无法通过密钥11对利用营业部门的ID加密了的密文进行解密。
通过作为与营业部门的ID“A-1”对应的秘密密钥的密钥1,能够对通过营业部门的ID“A-1”加密了的密文进行解密。另外,能够通过密钥1对利用属于营业部门的课的ID加密了的密文进行解密。即,能够通过密钥1对利用营业1课、营业2课、营业3课的ID加密了的密文进行解密。但是,无法通过密钥1对利用制造部门(ID:A-2)、原料部门(ID:A-3)的ID加密了的密文进行解密。另外,无法通过密钥1对利用A公司的ID加密了的密文进行解密。
能够通过作为与A公司的ID“A”对应的秘密密钥的密钥A,对利用A公司的ID“A”加密了的密文进行解密。另外,能够对利用属于A公司的各部门、属于该部门的课的ID加密了的密文进行解密。
分层式内积谓词密码还可以实现向基于ID的密码以外的各种应用。特别,以下说明的密码处理不限于等号关系测试的级别,所以能够实现非常多的应用。例如,关于作为内积谓词密码的一种的可检索的密码等,也能够实现针对每个分层使用AND条件、OR条件等条件式来限定可检索的范围等在具有以往的权限移交系统的谓词密码中无法实现的应用。
即,在后面的实施方式中说明的分层式谓词密钥隐匿方式和分层式谓词密码能够向基于ID的密码、可检索的密码等广泛应用。
<第2.矢量空间中的分层式内积谓词密码>
分层式谓词密钥隐匿方式和分层式谓词密码在后述的对偶配对矢量空间这样的高维矢量空间中实现。因此,说明矢量空间中的分层式内积谓词密码。
<第2-1.基底和基底矢量>
首先,简单地说明在矢量空间的说明中使用的“基底”和“基底矢量”。
图5是用于说明基底和基底矢量的图。
图5示出二维矢量空间中的矢量v。矢量v是c1a1+c2a2。另外,矢量v是y1b1+y2b2。此处,将a1,a2称为基底A中的基底矢量,表示为基底A:=(a1,a2)。另外,将b1,b2称为基底B中的基底矢量,表示为基底B:=(b1,b2)。另外,c1,c2,y1,y2是针对各基底矢量的系数。在图5中,由于是二维矢量空间,所以各基底中的基底矢量是2个。但是,如果是N维矢量空间,则各基底中的基底矢量是N个。
<第2-2.矢量空间中的内积谓词密码>
接下来,说明矢量空间中的内积谓词密码。
如上所述,内积谓词密码是指,在属性信息x与谓词信息fv的内积是规定的值(此处为0)的情况下成为fv(x)=1的谓词密码。在属性信息x和谓词信息fv是矢量的情况、即是属性矢量x→和谓词矢量v→的情况下,内积谓词如式120那样定义。
[式120]
如果 x &RightArrow; &CenterDot; v &RightArrow; = &Sigma; i = 1 n x i v i = 0 , f v &RightArrow; ( x &RightArrow; ) = 1 ,
如果 x &RightArrow; &CenterDot; v &RightArrow; = &Sigma; i = 1 n x i v i &NotEqual; 0 , f v &RightArrow; ( x &RightArrow; ) = 0
其中,
x &RightArrow; = ( x 1 , . . . , x n ) ,
v &RightArrow; = ( v 1 , . . . , v n )
即,是如下谓语密码:在属性矢量x→与谓词矢量v→的内积、即每个要素的内积之和是0的情况下,在谓词信息fv中输入了属性信息x的结果成为1(True(真))。另外,在属性矢量x→与谓词矢量v→的内积不为0的情况下,在谓词信息fv中输入了属性信息x的结果成为0(False(假))。
<第2-3.矢量空间中的分层构造的实现方法>
接下来,说明矢量空间中的分层构造的实现方法。
图6是用于说明矢量空间中的分层构造的实现方法的一个例子的图。
此处,处理d个(d是1以上的整数)矢量空间。各矢量空间是高维(Nt维(t=1,...,d))矢量空间。即,在各矢量空间中的规定的基底Ct(t=1,...,d)中,存在基底矢量ci(i=1,...,Nt)这Nt个基底矢量。
另外,将基底C1设为用于设定第1层的属性信息、谓词信息的空间。另外,将基底C2设为用于设定第2层的属性信息、谓词信息的空间。以下同样地,将基底CL设为用于设定第L层的属性信息、谓词信息的空间。因此,此处能够表示d层的分层。
此处,关于第L层的秘密密钥,不仅是使用基底CL来设定第L层的谓词信息,而且还使用基底C1至基底CL-1设定第1层至第L-1层的谓词信息来生成。即,在下位的层的秘密密钥中,还设定对上位的层的秘密密钥设定的谓词信息。由此,使谓词信息具有分层构造。然后,利用使该谓词信息具有的分层构造,构成内积谓词密码中的权限移交系统。
另外,在以下的说明中,为了示出矢量空间中的分层式构造,使用分层信息n→:=(d;N1,...,Nd)。此处,d是表示上述的分层的深度的值。Ni(i=1,...,d)是表示对各层i分配的空间的维数、即基底矢量的数量的值。
<第2-4.分层构造的实现例>
此处,使用简单的例子来说明分层构造。此处,使用具备3个分层,对各分层分配的空间由二维构成的例子来说明。即,n→:=(d;N1,...,Nd)=(3;2,2,2)。
具有根据第1层的谓词矢量v→1:=(v1,v2)生成的第1层的秘密密钥sk1的利用者能够根据第1层的秘密密钥sk1和第2层的谓词矢量v→2:=(v3,v4)生成第2层的秘密密钥sk2。即,第2层的秘密密钥sk2是根据谓词矢量(v→1,v→2)生成的。同样地,具有第2层的秘密密钥sk2的利用者能够根据第2层的秘密密钥sk2和第3层的谓词矢量v→3:=(v5,v6)生成第3层的秘密密钥sk3。即,第3层的秘密密钥sk3是根据谓词矢量(v→1,v→2,v→3)来生成的。
根据第1层的谓词矢量v→1生成的第1层的秘密密钥sk1是通过(v→1,(0,0)、(0,0))生成的秘密密钥。因此,关于第1层的秘密密钥sk1,在v→1·x→1=0的情况下能够对通过属性矢量(x→1,(*,*)、(*,*)):=((x1,x2)、(*,*)、(*,*))加密了的密文进行解密。其原因为(*,*)·(0,0)=0。此处,“*”表示任意的值。
同样地,根据第2层的谓词矢量(v→1,v→2)生成的第2层的秘密密钥sk2是通过(v→1,v→2,(0,0))生成的秘密密钥。因此,关于第2层的秘密密钥sk2,在v→1·x→1=0并且v→2·x→2=0的情况下能够对通过属性矢量(x→1,x→2,(*,*)):=((x1,x2)、(x3,x4)、(*,*))加密了的密文进行解密。
但是,第2层的秘密密钥sk2无法对通过第1层的属性矢量x→1:=(x1,x2)(即,(x→1,(*,*)、(*,*))加密了的密文进行解密。其原因为如果不是v→2=(0,0),则(*,*)·v→2≠0,v→2·x→2≠0的缘故。因此,第2层的秘密密钥sk2可以说仅具有与作为父亲的秘密密钥密钥sk2相比被限定的能力。
<第3.对偶配对矢量空间>
首先,说明对称双线性配对群(Symmetric Bilinear PairingGroups)。
对称双线性配对群(q,G,GT,g,e)是素数q、位数q的循环加法群G、位数q的循环乘法群GT、g≠0∈G、以及可通过多项式时间来计算的非退化双线性配对(Nondegenerate Bilinear Pairing)e:G×G→GT的组。非退化双线性配对是e(sg,tg)=e(g,g)st,e(g,g)≠1。
在以下的说明中,使式121为如下算法:将1λ作为输入并输出将保密参数设为λ的双线性配对群的参数paramG:=(q,G,GT,g,e)的值。
[式121]
Figure BDA00003644292100171
接下来,说明对偶配对矢量空间。
对偶配对矢量空间(q,V,GT,A,e)能够通过对称双线性配对群(paramG:=(q,G,GT,g,e))的直积构成。对偶配对矢量空间(q,V,GT,A,e)是素数q、式122所示的Fq上的N维矢量空间V、位数q的循环群GT、空间V的标准基底A:=(a1,...,aN)的组,具有以下的运算(1)(2)。此处,ai如式123所示。
[式122]
[式123]
Figure BDA00003644292100182
运算(1):非退化双线性配对
空间V中的配对通过式124来定义。
[式124]
Figure BDA00003644292100183
其中,
Figure BDA00003644292100184
Figure BDA00003644292100185
其是非退化双线性。即,是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):失真映射
式125所示的空间V中的线性变换φi,j能够进行式126。
[式125]
是φi,j(aj)=ai
如果k≠j,则φi,j(ak)=0。
[式126]
Figure BDA00003644292100191
这里,
(g1,...gN):=x。
此处,将线性变换φi,j称为失真映射。
在以下的说明中,使式127为如下算法:将1λ(λ∈自然数)、N∈自然数、双线性配对群的参数paramG:=(q,G,GT,g,e)的值作为输入,输出保密参数是λ、且作为N维的空间V的对偶配对矢量空间的参数paramV:=(q,V,GT,A,e)的值。
[式127]
Figure BDA00003644292100192
另外,此处,说明通过上述的对称双线性配对群构成了对偶配对矢量空间的情况。另外,还能够通过非对称双线性配对群构成对偶配对矢量空间。易于将以下的说明应用于通过非对称双线性配对群构成了对偶配对矢量空间的情况。
<第4.分层式谓词密码的结构和密码处理系统10>
<第4-1.分层式内积谓词密码的基本结构>
简单说明分层式内积谓词密码方式的结构。
分层式内积谓词密码方式具备Setup、KeyGen、Enc、Dec、DelegateL(L=1,...,d-1)这5个概率性的多项式时间算法。
(Setup)
在Setup算法中,输入保密参式1λ和分层信息n→:=(d;N0,...,Nd),输出主公开密钥pk和主秘密密钥sk。主秘密密钥sk是最上位的密钥。
(KeyGen)
在KeyGen算法中,输入主公开密钥pk、主秘密密钥sk、以及谓词矢量(v→1,...,v→L)(1≤L≤d),输出第L层的秘密密钥sk(v→1,..., v→L)。
(Enc)
在Enc算法中,输入主公开密钥pk、属性矢量(x→1,...,x→h)(1≤h≤d)、以及明文信息m,输出加密数据ct(密文)。即,在Enc算法中,嵌入明文信息m,输出通过属性矢量(x→1,...,x→h)加密了的加密数据ct。
(Dec)
在Dec算法中,输入主公开密钥pk、第L层的秘密密钥sk(v→1,..., v→L)、以及加密数据ct,输出明文信息m或者识别信息⊥。识别信息⊥是指,表示解密失败了的信息。即,在Dec算法中,通过第L层的秘密密钥对加密数据ct进行解密,抽出明文信息m。另外,在解密失败了的情况下输出识别信息⊥。
(DelegateL
在DelegateL中,输入主公开密钥pk、第L层的秘密密钥sk(v→1,..., v→L)、以及第L+1层的谓词矢量v→L+1(L+1≤d),输出第L+1层的秘密密钥sk(v→1,...,v→L+1)。即,在DelegateL算法中,输出下位的秘密密钥。
<第4-2.密码处理系统10>
说明执行分层式内积谓词密码方式的算法的密码处理系统10。
图7是执行分层式内积谓词密码方式的算法的密码处理系统10的结构图。
密码处理系统10具备密钥生成装置100、加密装置200、解密装置300、密钥移交装置400。另外,此处,设为解密装置300具备密钥移交装置400进行说明,但密钥移交装置400也可以与解密装置300独立地设置。
密钥生成装置100将保密参数λ、和分层信息n→:=(d;N0,...,Nd)作为输入,执行Setup算法,生成主公开密钥pk和主秘密密钥sk。然后,密钥生成装置100公开所生成的主公开密钥pk。另外,密钥生成装置100将主公开密钥pk、主秘密密钥sk、以及谓词矢量(v→1,...,v→L)(1≤L≤d)作为输入,执行KeyGen算法,生成第L层的秘密密钥sk(v→1,...,v→L),秘密地分发到第L层的解密装置300。
加密装置200将主公开密钥pk、属性矢量(x→1,...,x→h)(1≤h≤d)、以及明文信息m作为输入,执行Enc算法,生成加密数据ct。加密装置200将所生成的加密数据ct发送到解密装置300。
解密装置300将主公开密钥pk、第L层的秘密密钥sk(v→1,...,v→L)、以及加密数据ct作为输入,执行Dec算法,输出明文信息m或者识别信息⊥。
密钥移交装置400将主公开密钥pk、第L层的秘密密钥sk(v→1,..., v→L)、以及第L+1层的谓词矢量v→L+1(L+1≤d)作为输入,执行DelegateL算法,生成第L+1层的秘密密钥sk(v→1,...,v→L+1),向第L+1层的解密装置300秘密地分发。
<第4-3.分层式内积谓词密码方式以及密码处理系统10的详细内容>
根据图8至图16,说明实施方式1所涉及的分层式内积谓词密码方式、以及执行分层式内积谓词密码方式的密码处理系统10的功能和动作。
图8是示出密钥生成装置100的功能的功能框图。图9是示出加密装置200的功能的功能框图。图10是示出解密装置300的功能的功能框图。图11是示出密钥移交装置400的功能的功能框图。
图12和图13是示出密钥生成装置100的动作的流程图。另外,图12是示出Setup算法的处理的流程图,图13是示出KeyGen算法的处理的流程图。图14是示出加密装置200的动作的流程图,是示出Enc算法的处理的流程图。图15是示出解密装置300的动作的流程图,是示出Dec算法的处理的流程图。图16是示出密钥移交装置400的动作的流程图,是示出DelegateL算法的处理的流程图。
另外,在以下的说明中,下标的“dec”是“decryption”的简称,在下标中有“dec”的部分是加密数据的解密中使用的解密要素。另外,下标的“ran”是“randomization”的简称,在下标中有“ran”的部分是用于使下位的解密密钥针对规定的基底矢量的系数随机化的随机化要素。另外,下标的“del”是“delegation”的简称,在下标中有“del”的部分是用于生成下位的解密密钥的移交要素。
说明密钥生成装置100的功能和动作。
如图8所示,密钥生成装置100具备主密钥生成部110、主密钥存储部120、信息输入部130(第1信息输入部)、解密密钥生成部140、密钥分发部150(解密密钥发送部)。
另外,解密密钥生成部140具备随机数生成部141、解密要素生成部142、随机化要素生成部143、移交要素生成部144。
首先,根据图12,说明Setup算法的处理。
(S101:标准正交基底生成步骤)
主密钥生成部110通过处理装置,计算式128,针对paramn→、和t=0,...,d的各整数t,随机地生成基底Bt以及基底B* t
[式128]
(1)input(输入)
1 &lambda; , n &RightArrow; : = ( d ; n &RightArrow; : = ( d ; n 1 , . . . , n d , u 0 , . . . , u d , w 0 , . . . , w d , z 0 , . . . , z d ) ) ,
N0:=1+u0+1+w0+z0;Nt:=nt+ut+wt+zt(t=1,…,d)
Figure BDA00003644292100231
Figure BDA00003644292100232
关于t=0......d的各t,执行(4)到(8)的处理
( 6 ) - - - ( v t , i , j ) i , j : = &psi; &CenterDot; ( X t T ) - 1
Figure BDA00003644292100236
Figure BDA00003644292100237
Figure BDA00003644292100238
Figure BDA00003644292100239
(9)    gT:=e(g,g)ψ,
Figure BDA000036442921002311
即,主密钥生成部110执行以下的处理。
(1)主密钥生成部110通过输入装置,输入保密参数λ(1λ)、和属性的格式n→:=(d;n1,...,nd,u0,...,ud,w0,...,wd,z0,...,zd)。此处,d是1以上的整数。关于t=1,...,d的各整数t,nt是1以上的整数。关于直至t=0,...,d的各整数t,ut,wt,zt是1以上的整数。另外,在主密钥生成部110中,设为N0:=1+u0+1+w0+z0,关于t=1,...,d的各整数t,设为Nt:=nt+ut+wt+zt
(2)主密钥生成部110通过处理装置,将在(1)中输入的保密参数λ(1λ)作为输入,执行算法Gbpg,随机地生成双线性配对群的参数paramG:=(q,G,GT,g,e)的值。
(3)主密钥生成部110通过处理装置,生成随机数ψ。
接下来,主密钥生成部110针对t=0,...,d的各整数t,执行以下的(4)至(8)的处理。
(4)主密钥生成部110通过处理装置,将在(1)中输入的保密参数λ(1λ)以及Nt、和在(2)中生成的paramG:=(q,G,GT,g,e)的值作为输入,执行算法Gdpvs,生成对偶配对矢量空间的参数paramVt:=(q,Vt,GT,At,e)的值。
(5)主密钥生成部110通过处理装置,将在(3)中设定的Nt、和Fq作为输入,随机地生成线性变换Xt:=(χt,i,ji,j。另外,GL是General Linear的简称。即,GL是一般线性群,是行列式非0的方阵的集合,关于乘法是群。另外,(χt,i,ji,j是与矩阵χt,i,j的下标i,j有关的矩阵这样的意思,此处,i,j=1,...,Nt
(6)主密钥生成部110通过处理装置,根据随机数ψ和线性变换Xt,生成(νt,i,ji,j:=ψ·(Xt T-1。另外,(νt,i,ji,j也与(χt, i,ji,j同样地,是与矩阵νt,i,j的下标i,j有关的矩阵这样的意思,此处,i,j=1,...,Nt
(7)主密钥生成部110通过处理装置,根据在(5)中生成的线性变换Xt,根据在(4)中生成的标准基底At生成基底Bt
(8)主密钥生成部110通过处理装置,根据在(6)中生成的(νt, i,ji,j,根据在(4)中生成的标准基底At生成基底B* t
(9)主密钥生成部110通过处理装置,对gT设定e(g,g)ψ。另外,主密钥生成部110对paramn→设定在(4)中生成的{paramVt}t=0,..., d、和gT。另外,关于t=0,...,d和i=1,...,Nt的各整数t,i,为gT=e(bt,i,b* t,i)。
即,在(S101)中,主密钥生成部110执行式129所示的算法Gob,针对paramn→、和t=0,...,d的各整数t,生成基底Bt以及基底B* t
[式129]
N0:=1+u0+1+w0+z0,Nt:=nt+ut+wt+zt其中t=1,..,d,
Figure BDA00003644292100252
Figure BDA00003644292100253
其中,t=0,...,d,
Figure BDA00003644292100254
Figure BDA00003644292100255
Figure BDA00003644292100256
Figure BDA00003644292100257
Figure BDA00003644292100258
Figure BDA00003644292100259
Figure BDA000036442921002510
gT:=e(g,g)ψ
Figure BDA000036442921002511
返回
Figure BDA000036442921002512
(S102:主公开密钥生成步骤)
主密钥生成部110通过处理装置,针对基底B0的部分基底B^0、和t=1,...,d的各整数t,如式130所示,生成基底Bt的部分基底B^t
[式130]
Figure BDA000036442921002513
其中,t=1,..,d
主密钥生成部110将所生成的部分基底B^0以及部分基底B^t、在(S101)中输入的保密参数λ(1λ)、在(S101)中生成的paramn→、基底矢量b* 0,1+u0+1+1,...,b* 0,1+u0+1+w0(此处u0、w0是u0,w0)、以及关于t=1,...,d的各整数t的基底矢量b* t,nt+ut+1,...,b* t,nt+ut+wt(此处nt,ut,wt是nt,ut,wt)合起来,设为主公开密钥pk。
(S103:主秘密密钥生成步骤)
主密钥生成部110通过处理装置,针对基底B* 0的部分基底B^* 0、和t=1,...,d的各整数t,如式131所示,生成基底B* t的部分基底B^* t
[式131]
Figure BDA00003644292100261
其中,t=1,..,d
主密钥生成部110将所生成的部分基底B^* 0以及部分基底B^* t设为主秘密密钥。
(S104:主密钥存储步骤)
主密钥存储部120将在(S102)中生成的主公开密钥pk存储于存储装置。另外,主密钥存储部120将在(S103)中生成的主秘密密钥sk存储于存储装置。
即,在(S101)至(S103)中,密钥生成装置100执行式132所示的Setup算法,生成主公开密钥pk和主秘密密钥sk。然后,在(S104)中,密钥生成装置100将所生成的公开参数pk和主密钥sk存储于存储装置。
另外,主公开密钥pk例如经由网络被公开,被设为解密装置300可取得的状态。
[式132]
Setup ( 1 &lambda; , n &RightArrow; : = ( d ; n 1 , . . . , n d , u 0 , . . . , u d , w 0 , . . . , w d , z 0 , . . . , z d ) ) :
Figure BDA00003644292100264
其中t=1,..,d,
其中t=1,..,d,
Figure BDA00003644292100269
Figure BDA000036442921002610
Figure BDA000036442921002611
返回pk,sk.
接下来,根据图13,说明密钥生成装置100执行的KeyGen算法的处理。
(S201:信息输入步骤)
信息输入部130通过输入装置,输入谓词信息(v→1,...,v→L):=((v1,i(i=1,...,n1)),...,(vL,i(i=1,...,nL)))。另外,作为谓词信息,输入使用密钥的人员的属性。
(S202:随机数生成步骤)
随机数生成部141通过处理装置,针对j=1,...,2L,τ=L+1,...,d,以及(τ,ι)=(τ,1),...,(τ,nτ)的各整数j,τ,ι,如式133所示,生成随机数ψ、随机数sdec,t,sran,j,t(t=1,...,L)、随机数θdec,t,θran,j,t,η→dec,t,η→ran,j,t(t=0,...,L)、随机数sran, (τ,ι),t,sdel,(τ,ι),t(t=1,...,L+1)、以及随机数θran,(τ,ι),t,θdel, (τ,ι),t,η→ran,(τ,ι),t,η→del,(τ,ι),t(t=0,...,L+1)。
[式133]
其中,j=1,…,2L;τ=L+l,...,d;(τ,ι)=(τ,1),...,(τ,nτ);
ψ,sdec,t
Figure BDA00003644292100271
θdec,t
Figure BDA00003644292100272
Figure BDA00003644292100273
Figure BDA00003644292100274
sran,(τ,ι),t
Figure BDA00003644292100275
θran,(τ,ι),t
Figure BDA00003644292100276
Figure BDA00003644292100277
Figure BDA00003644292100278
另外,如式134所示,设定sdec,0、sran,j,0、sran,(τ,ι),0、以及sdel,(τ,ι),0
[式134]
s dec , 0 : = &Sigma; t = 1 L s dec , t ,
s ran , j , 0 : = &Sigma; t = 1 L s ran , j , t ,
s ran , ( &tau; , &iota; ) , 0 : = &Sigma; t = 1 L + 1 s ran , ( &tau; , &iota; ) , t ,
s del , ( &tau; , &iota; ) , 0 : = &Sigma; t = 1 L + 1 s del , ( &tau; , &iota; ) , t
(S203:解密要素生成步骤)
解密要素生成部142通过处理装置,如式135所示,生成作为解密密钥skL的要素的解密要素k* L,dec
[式135]
Figure BDA00003644292100285
Figure BDA00003644292100286
另外,如上所述,相对于式110所示的基底B和基底B*,是式111。因此,式135意味着如以下那样,设定基底B* 0以及基底B* t(t=1,...,L)的基底矢量的系数,生成解密要素k* L,dec
首先,说明基底B* 0的部分。此处,简化标记,仅通过基底矢量b* 0,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* 0,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* 0,1,...,b* 0,3
作为基底B*0的基底矢量1的系数设定-sdec,0。作为基底矢量1+1,...,1+u0的系数设定0。作为基底矢量1+u0+1的系数设定1。作为基底矢量1+u0+1+1,...,1+u0+1+w0的系数设定ηdec,0,1,...,ηdec, 0,wo(此处,w0是w0)。作为基底矢量1+u0+1+w0+1,...,1+u0+1+w0+z0的系数设定0。
接下来,说明基底B* t(t=1,...,L)的部分。此处,简化标记,仅通过基底矢量b* t,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* t,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* t,1,...,b* t,3
作为基底B* t(t=1,...,L)的基底矢量1的系数设定sdec,tdec, tvt,1。作为基底矢量2,...,nt的系数设定θdec,tvt,2,...,θdec,tvt,nt(此处,nt是nt)。作为基底矢量nt+1,...,nt+ut的系数设定0。作为基底矢量nt+ut+1,...,nt+ut+wt的系数设定ηdec,t,1,...,ηdec,t,wt(此处,wt是wt)。作为基底矢量nt+ut+wt+1,...,nt+ut+wt+zt的系数设定0。
(S204:第1随机化要素生成步骤)
随机化要素生成部143通过处理装置,针对j=1,...,2L的各整数j,如式136所示,生成作为解密密钥skL的要素的第1随机化要素k* L,ran,j
[式136]
Figure BDA00003644292100291
另外,如上所述,针对式110所示的基底B和基底B*,是式111。因此,式136意味着如以下那样,设定基底B* 0、基底B* t(t=1,...,L)的基底矢量的系数,生成第1随机化要素k* L,ran,j
首先,说明基底B* 0的部分。此处,简化标记,仅通过基底矢量b* 0,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* 0,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* 0,1,...,b* 0,3
作为基底B* 0的基底矢量1的系数设定-sran,j,0。作为基底矢量1+1,...,1+u0+1的系数设定0。作为基底矢量1+u0+1+1,...,1+u0+1+w0的系数设定ηran,j,0,1,...,ηran,j,0,wo(此处,w0是w0)。作为基底矢量1+u0+1+w0+1,...,1+u0+1+w0+z0的系数设定0。
接下来,说明基底B* t(t=1,...,L)的部分。此处,简化标记,仅通过基底矢量b* t,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* t,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* t,1,...,b* t,3
作为基底B* t(t=1,...,L)的基底矢量1的系数设定sran,j,tran, j,tvt,1。作为基底矢量2,...,nt的系数设定θran,j,tvt,2,...,θran,j,tvt, nt(此处,nt是nt)。作为基底矢量nt+1,...,nt+ut的系数设定0。作为基底矢量nt+ut+1,...,nt+ut+wt的系数设定ηran,j,t,1,...,ηran,j, t,wt(此处,wt是wt)。作为基底矢量nt+ut+wt+1,...,nt+ut+wt+zt的系数设定0。
(S205:第2随机化要素生成步骤)
随机化要素生成部143通过处理装置,针对τ=L+1,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,如式137所示,生成作为解密密钥skL的要素的第2随机化要素k* L,ran,(τ,ι)
[式137]
Figure BDA00003644292100302
Figure BDA00003644292100303
另外,如上所述,针对式110所示的基底B和基底B*,是式111。因此,式137意味着如以下那样,设定基底B* 0、基底B* t(t=1,...,L)和基底B* τ的基底矢量的系数,生成第2随机化要素k* L,ran,(τ,ι)
首先,说明基底B* 0的部分。此处,简化标记,仅通过基底矢量b* 0,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* 0,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* 0,1,...,b* 0,3
作为基底B* 0的基底矢量1的系数设定-sran,(τ,ι),0。作为基底矢量1+1,...,1+u0+1的系数设定0。作为基底矢量1+u0+1+1,...,1+u0+1+w0的系数设定ηran,(τ,ι),0,1,...,ηran,(τ,ι),0,wo(此处,w0是w0)。作为基底矢量1+u0+1+w0+1,...,1+u0+1+w0+z0的系数设定0。
接下来,说明基底B* t(t=1,...,L)的部分。此处,简化标记,仅通过基底矢量b* t,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* t,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* t,1,...,b* t,3
作为基底B* t(t=1,...,L)的基底矢量1的系数设定sran,(τ,ι), tran,(τ,ι),tvt,1。作为基底矢量2,...,nt的系数设定θran,(τ,ι),tvt,2,...,θran,(τ,ι),tvt,nt(此处,nt是nt)。作为基底矢量nt+1,...,nt+ut的系数设定0。作为基底矢量nt+ut+1,...,nt+ut+wt的系数设定ηran,(τ, ι),t,1,...,ηran,(τ,ι),t,wt(此处,wt是wt)。作为基底矢量nt+ut+wt+1,...,nt+ut+wt+zt的系数设定0。
接下来,说明基底B* τ的部分。此处,简化标记,仅通过基底矢量b* τ,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* τ,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* τ,1,...,b* τ,3
作为基底B* τ的基底矢量1的系数设定sran,(τ,ι),L+1。作为基底矢量2,...,nτ,...,nτ+uτ的系数设定0。作为基底矢量nτ+uτ+1,...,nτ+uτ+wτ的系数设定ηran,(τ,ι),L+1,1,...,ηran,(τ,ι),L+1(此处,wτ是wτ)。作为基底矢量nτ+uτ+wτ+1,...,nτ+uτ+wτ+zτ的系数设定0。
(S206:移交要素生成步骤)
移交要素生成部144通过处理装置,针对τ=L+1,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,如式138所示,生成作为解密密钥skL的要素的移交要素k* L,del,(τ,ι)
[式138]
Figure BDA00003644292100311
Figure BDA00003644292100313
另外,如上所述,针对式110所示的基底B和基底B*,是式111。因此,式138意味着如以下那样,设定基底B* 0和基底B* t(t=1,...,L)和基底B* τ的基底矢量的系数,生成移交要素k* L,del,(τ,ι)
首先,说明基底B* 0的部分。此处,简化标记,仅通过基底矢量b* 0,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* 0,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* 0,1,...,b* 0,3
作为基底B* 0的基底矢量1的系数设定-sdel,(τ,ι),0。作为基底矢量1+1,...,1+u0+1的系数设定0。作为基底矢量1+u0+1+1,...,1+u0+1+w0的系数设定ηdel,(τ,ι),0,1,...,ηdel,(τ,ι),0,wo(此处,w0是w0)。作为基底矢量1+u0+1+w0+1,...,1+u0+1+w0+z0的系数设定0。
接下来,说明基底B* t(t=1,...,L)的部分。此处,简化标记,仅通过基底矢量b* t,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* t,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* t,1,...,b* t,3
作为基底B* t(t=1,...,L)的基底矢量1的系数设定sdel,(τ,ι), tdel,(τ,ι),tvt,1。作为基底矢量2,...,nt的系数设定θdel,(τ,ι),tvt, 2,...,θdel,(τ,ι),tvt,nt(此处,nt是nt)。作为基底矢量nt+1,...,nt+ut的系数设定0。作为基底矢量nt+ut+1,...,nt+ut+wt的系数设定ηdel,(τ,ι),t,1,...,ηdel,(τ,ι),t,wt(此处,wt是wt)。作为基底矢量nt+ut+wt+1,...,nt+ut+wt+zt的系数设定0。
接下来,说明基底B* τ的部分。此处,简化标记,仅通过基底矢量b* τ,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* τ,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* τ,1,...,b* τ,3
作为基底B* τ的基底矢量1,...,nτ的系数设定sdel,(τ,ι),L+1e→τ, 1+ψe→τ,ι。作为基底矢量nτ+1,...,nτ+uτ的系数设定0。作为基底矢量nτ+uτ+1,...,nτ+uτ+wτ的系数设定ηdel,(τ,ι),L+1,1,...,ηdel,(τ,ι), L+1,wτ(此处,wτ是wτ)。作为基底矢量nτ+uτ+wτ+1,...,nτ+uτ+wτ+zτ的系数设定0。
(S207:密钥分发步骤)
密钥分发部150将以解密要素k* L,dec、第1随机化要素k* L,ran,j(j=1,...,2L)、第2随机化要素k* L,ran,(τ,ι)(τ=L+1,...,d;(τ,ι)=(τ,1),...,(τ,nτ))、以及移交要素k* L,del,(τ,ι)(τ=L+1,...,d;(τ,ι)=(τ,1),...,(τ,nτ))为要素的解密密钥skL通过例如通信装置经由网络秘密地分发到解密装置300。当然,解密密钥skL也可以通过其他方法分发到解密装置300。
即,在(S201)至(S206)中,密钥生成装置100执行式139、式140所示的KeyGen算法,生成解密密钥skL。然后,在(S207)中,密钥生成装置100将所生成的解密密钥skL分发到解密装置300。
[式139]
KeyGen ( pk , sk , ( v &RightArrow; 1 , . . . , v &RightArrow; L ) : = ( v 1 , 1 , . . . , v 1 , n 1 ) , . . . , ( v L , 1 , . . . , v L , n L ) ) :
其中j=1,...,2L;τ=L+1,...,d;(τ,ι)=(τ,1),...,(τ,nτ);
Figure BDA00003644292100332
θdec,t
Figure BDA00003644292100333
Figure BDA00003644292100334
sran,(τ,t),t
Figure BDA00003644292100335
θran,(τ,ι),t
Figure BDA00003644292100336
Figure BDA000036442921003312
Figure BDA00003644292100337
(t=0,...,L+1);
s dec , 0 : = &Sigma; t = 1 L s dec , t , s ran , j , 0 : = &Sigma; t = 1 L s ran , j , t ,
s ran , ( &tau; , &iota; ) , 0 : = &Sigma; t = 1 L + 1 s ran , ( &tau; , &iota; ) , t , s del , ( &tau; , &iota; ) , 0 : = &Sigma; t = 1 L + 1 s del , ( &tau; , &iota; ) , t ,
[式140]
Figure BDA00003644292100342
Figure BDA00003644292100343
Figure BDA00003644292100345
Figure BDA00003644292100348
Figure BDA00003644292100349
Figure BDA000036442921003410
Figure BDA000036442921003411
Figure BDA000036442921003412
Figure BDA000036442921003413
sk L : = ( k L , dec * , { k L , ran , j * } j = 1 , . . . , 2 L ,
{ k L , ran , ( &tau; , &iota; ) * } &tau; = L + 1 , . . . , d ; ( &tau; , &iota; ) = ( &tau; , 1 ) , . . . , ( &tau; , n &tau; ) ,
{ k L , del , ( &tau; , &iota; ) * } &tau; = L + 1 , . . . , d ; ( &tau; , &iota; ) = ( &tau; , 1 ) , . . . , ( &tau; , n &tau; ) ) ,
返回skL.
说明加密装置200的功能和动作。
如图9所示,加密装置200具备主公开密钥取得部210、信息输入部220(第2信息输入部)、加密数据生成部230、数据发送部240。
另外,信息输入部220具备属性信息输入部221、消息输入部222。另外,加密数据生成部230具备随机数生成部231、加密数据c1生成部232、加密数据c2生成部233。
根据图14,说明加密装置200执行的Enc算法的处理。
(S301:主公开密钥取得步骤)
主公开密钥取得部210通过例如通信装置经由网络,取得密钥生成装置100生成的主公开密钥pk。
(S302:信息输入步骤)
属性信息输入部221通过输入装置,输入属性信息(x→1,...,x→L):=((x1,i(i=1,...,n1)),...,(xL,i(i=1,...,nL)))。另外,作为属性信息,输入能够对加密了的消息进行解密的人员的属性。
另外,消息输入部222通过输入装置,输入所加密的消息m。
(S303:随机数生成步骤)
随机数生成部231通过处理装置,如式141所示,生成随机数(x→L+1,...,x→d):=((xL+1,i(i=1,...,nL+1)),...,(xd,i(i=1,...,nd)))、和随机数ω,ζ,
Figure BDA00003644292100356
(t=0,...,d)。
[式141]
( x &RightArrow; L + 1 , . . . , x &RightArrow; d ) : = ( ( x L + 1,1 , &CenterDot; &CenterDot; &CenterDot; , x L + 1 , n L + 1 ) , &CenterDot; &CenterDot; &CenterDot; , ( x d , 1 , &CenterDot; &CenterDot; &CenterDot; , x d , n d ) )
Figure BDA00003644292100353
Figure BDA00003644292100354
(S304:加密数据c1生成步骤)
加密数据c1生成部232通过处理装置,如式142所示,生成作为加密数据ct的要素的加密数据c1
[式142]
Figure BDA00003644292100355
另外,如上所述,针对式110所示的基底B和基底B*,是式111。因此,式142意味着如以下那样,设定基底B0以及基底Bt(t=1,...,d)的基底矢量的系数,生成加密数据c1
首先,说明基底B0的部分。此处,简化标记,仅通过基底矢量b0,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b0,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b0,1,...,b0,3
作为基底B0的基底矢量1的系数设定ω。作为基底矢量1+1,...,1+u0的系数设定0。作为基底矢量1+u0+1的系数设定ζ。作为基底矢量1+u0+1+1,...,1+u0+1+w0的系数设定0。作为基底矢量1+u0+1+w0+1,...,1+u0+1+w0+z0的系数设定φ0,1,...,φ0,zo(此处,z0是z0)。
接下来,说明基底Bt(t=1,...,d)的部分。此处,简化标记,仅通过基底矢量bt,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量bt,1。另外,如果是基底矢量1,...,3,则意味着基底矢量bt,1,...,bt,3
作为基底Bt(t=1,...,d)的基底矢量1,...,nt的系数设定ωxt, 1,...,ωxt,nt(此处,nt是nt)。作为基底矢量nt+1,...,nt+ut+wt的系数设定0。作为基底矢量nt+ut+wt+1,...,nt+ut+wt+zt的系数设定φt,1,...,φt,zt(此处,zt是zt)。
(S305:加密数据c2生成步骤)
加密数据c2生成部233通过处理装置,如式143所示,生成作为加密数据ct的要素的加密数据c2
[式143]
c 2 : = g T &zeta; m
(S306:数据发送步骤)
数据发送部240将包括加密数据c1、和加密数据c2的加密数据ct通过例如通信装置经由网络发送到解密装置300。当然,加密数据ct也可以通过其他方法发送到解密装置300。
即,在(S301)至(S305)中,加密装置200执行式144所示的Enc算法,生成加密数据ct。然后,在(S306)中,加密装置200将所生成的加密数据ct发送到解密装置300。
[式144]
Figure BDA00003644292100362
Figure BDA00003644292100363
Figure BDA00003644292100364
Figure BDA00003644292100365
Figure BDA00003644292100366
Figure BDA00003644292100367
c 2 : = g T &zeta; m ,
ct:=(c1,c2),
返回ct.
说明解密装置300的功能和动作。
如图10所示,解密装置300具备解密密钥取得部310、数据接收部320、配对运算部330、消息计算部340。
根据图15,说明解密装置300执行的Dec算法的处理。
(S401:解密密钥取得步骤)
解密密钥取得部310通过例如通信装置经由网络,取得解密密钥skL。另外,解密密钥取得部310取得密钥生成装置100生成的公开参数pk。
(S402:数据接收步骤)
数据接收部320通过例如通信装置经由网络,接收加密装置200发送了的加密数据ct。
(S403:配对运算步骤)
配对运算部330通过处理装置,进行式145所示的配对运算,计算会话密钥K=gT ζ
[式145]
K : = e ( c 1 , k L , dec * )
另外,如果(v→1,...,v→L)与(x→1,...,x→L)的内积是0,则通过计算式145,计算会话密钥K。
(S404:消息计算步骤)
消息计算部340通过处理装置,将加密数据c2除以会话密钥K,从而计算消息m’(=m)。
即,在(S401)至(S404)中,解密装置300执行式146所示的Dec算法,计算消息m’(=m)。
[式146]
Dec ( pk , k L , dec * , ct ) : m &prime; : = c 2 / e ( c 1 , K L , dec * )
返回m'.
说明密钥移交装置400的功能和动作。
如图11所示,密钥移交装置400具备解密密钥取得部410、信息输入部420(第3信息输入部)、移交密钥生成部430、密钥分发部440(移交密钥发送部)。
另外,移交密钥生成部430具备随机数生成部431、下位解密要素生成部432、下位随机化要素生成部433、下位移交要素生成部434。
根据图16,说明密钥移交装置400执行的DelegateL算法的处理。
(S501:解密密钥取得步骤)
解密密钥取得部410通过例如通信装置经由网络,取得解密密钥skL。另外,解密密钥取得部410取得密钥生成装置100生成的公开参数pk。
(S502:信息输入步骤)
信息输入部420通过输入装置,输入谓词信息v→L+1:=(vL+1,i(i=1,...,nL+1))。另外,作为谓词信息,输入被移交密钥的人员的属性。
(S503:随机数生成步骤)
随机数生成部431通过处理装置,针对j=1,...,2L,j’=1,...,2(L+1)、τ=L+2,...,d、(τ,ι)=(τ,1),...,(τ,nτ)、t=0,...,L+1,τ、以及(t,i)=(t,1),...,(t,nt)的各整数j,j’,τ,ι,t,i,如式147所示,生成随机数αdec,j,σdec,αran,j’,j,σran,j’,αran, (τ,ι),j,σran,(τ,ι),φran,(τ,ι),αdel,(τ,ι),j,σdel,(τ,ι),φdel,(τ,ι),ψ’,ηdec,(t,i),ηran,j’,(t,i),ηran,(τ,ι)、(t,i),ηdel,(τ,ι)、(t,i)
[式147]
其中,j=1,...,2L;j'=1,...,2(L+1);τ=L+2,...,d;(τ,ι)=(τ,1),...,(τ,nτ);
t=0,...,L+1,τ;(t,i)=(t,1),...,(t,wt);
αdec,j,σdec,αran,j’,j,σran,j',αran,(τ,ι),j,σran,(τ,ι)
φran,(τ,ι),αdel,(τ,ι),j,σdel,(τ,ι),φdel,(τ,ι),ψ’,
ηdec,(t,i),ηran,i’,(t,i),ηran,(τ,ι),(t,i)
(S504:下位解密要素生成步骤)
下位解密要素生成部432通过处理装置,如式148所示,生成作为移交密钥skL+1的要素的下位解密要素k* L+1,dec
[式148]
k L + 1 , dec * : = k L , dec * + &Sigma; j = 1 2 L &alpha; dec , j k L , ran , j *
+ &sigma; dec ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * ) + &Sigma; i = 1 w t &eta; dec , ( 0 , i ) b 0,1 + u 0 + 1 + i *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 w t &eta; dec , ( t , i ) b t , n t + u t + i *
(S505:第1下位随机化要素生成步骤)
下位随机化要素生成部433通过处理装置,针对j’=1,...,2(L+1)的各整数j’,如式149所示,生成作为移交密钥skL+1的要素的第1下位随机化要素k* L+1,ran,j’
[式149]
k L + 1 , ran , j &prime; * : = &Sigma; j = 1 2 L &alpha; ran , j &prime; , j k L , ran , j *
+ &sigma; ran , j &prime; ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * )
+ &Sigma; i = 1 w t &eta; ran , j &prime; , ( 0 , i ) b 0,1 + u 0 + 1 + i *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 w t &eta; ran , j &prime; , ( t , i ) b t , n t + u t + i *
(S506:第2下位随机化要素生成步骤)
下位随机化要素生成部433通过处理装置,针对τ=L+2,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,如式150所示,生成作为移交密钥skL+1的要素的第2下位随机化要素k* L+1,ran,(τ, ι)
[式150]
k L + 1 , ran , ( &tau; , &iota; ) * : = &Sigma; j = 1 2 L &alpha; ran , ( &tau; , &iota; ) , j k L , ran , j *
+ &sigma; ran , ( &tau; , &iota; ) ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * )
+ &phi; ran , ( &tau; , &iota; ) k L , ran , ( &tau; , &iota; ) * + &Sigma; i = 1 w t &eta; ran , ( &tau; , &iota; ) , ( 0 , i ) b 0,1 + u 0 + 1 + i *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 w t &eta; ran , ( &tau; , &iota; ) , ( t , i ) b t , n t + u t + i *
+ &Sigma; i = 1 w &tau; &eta; ran , ( &tau; , &iota; ) , ( &tau; , i ) b &tau; , n &tau; + u &tau; + i *
(S507:下位移交要素生成步骤)
下位移交要素生成部434通过处理装置,针对τ=L+2,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,如式151所示,生成作为移交密钥skL+1的要素的下位移交要素k* L+1,del,(τ,ι)
[式151]
k L + 1 , del , ( &tau; , &iota; ) * : = &Sigma; j = 1 2 L &alpha; del , ( &tau; , &iota; ) , j k L , ran , j *
+ &sigma; del , ( &tau; , &iota; ) ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * ) + &psi; &prime; k L , del , ( &tau; , &iota; ) *
+ &phi; del , ( &tau; , &iota; ) k L , ran , ( &tau; , &iota; ) * + &Sigma; i = 1 w t &eta; del , ( &tau; , &iota; ) , ( 0 , i ) b 0,1 + u 0 + 1 + i *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 w t &eta; del , ( &tau; , &iota; ) , ( t , i ) b t , n t + u t + i *
+ &Sigma; i = 1 w &tau; &eta; del , ( &tau; , &iota; ) , ( &tau; , i ) b &tau; , n &tau; + u &tau; + i * ,
(S508:密钥分发步骤)
密钥分发部150将以下位解密要素k* L+1,dec、第1下位随机化要素k* L+1,ran,j’(j’=1,...,2(L+1))、第2下位随机化要素k* L+1,ran, (τ,ι)(τ=L+2,...,d;(τ,ι)=(τ,1),...,(τ,nτ))、以及下位移交要素k* L+1,del,(τ,ι)(τ=L+2,...,d;(τ,ι)=(τ,1),...,(τ,nτ))为要素的移交密钥skL+1(下位的解密密钥)通过例如通信装置经由网络秘密地分发到下位的解密装置300。当然,移交密钥skL+1也可以通过其他方法分发到下位的解密装置300。
即,在(S501)至(S507)中,密钥移交装置400执行式152、153所示的DelegateL算法,生成移交密钥skL+1。然后,在(S508)中,密钥移交装置400将所生成的移交密钥skL+1分发到下位的解密装置300。
[式152]
Delegate L ( pk , sk L , v &RightArrow; L + 1 : = ( v L + 1,1 , &CenterDot; &CenterDot; &CenterDot; , v L + 1 , n L + 1 ) ) :
其中,j=1,...,2L;j’=1,...,2(L+1);τ=L+2,...,d;(τ,ι)=(τ,1),...,(τ,nτ);
t=0,...,L+1,τ;(t,i)=(t,1),...,(t,wt);
αdec,j,σdec,αran,j’,j,σran,j’,αran,(τ,ι),j,σran,(τ,ι)
φran,(τ,ι),αdel,(τ,ι),j,σdel,(τ,ι),φdel,(τ,ι),ψ',
ηdec,(t,i),ηran,j’,(t,i),ηran,(τ,ι),(t,i)
Figure BDA00003644292100407
[式153]
k L + 1 , dec * : = k L , dec * + &Sigma; j = 1 2 L &alpha; dec , j k L , ran , j *
+ &sigma; dec ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * ) + &Sigma; i = 1 w t &eta; dec , ( 0 , i ) b 0,1 + u 0 + 1 + i *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 w t &eta; dec , ( t , i ) b t , n t + u t + i * ,
k L + 1 , ran , j &prime; * : = &Sigma; j = 1 2 L &alpha; ran , j &prime; , j k L , ran , j *
+ &sigma; ran , j &prime; ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * ) + &Sigma; i = 1 w t &eta; ran , j &prime; , ( 0 , i ) b 0,1 + u 0 + 1 + i *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 w t &eta; ran , j &prime; , ( t , i ) b t , n t + u t + i * ,
k L + 1 , ran , ( &tau; , &iota; ) * : = &Sigma; j = 1 2 L &alpha; ran , ( &tau; , &iota; ) , j k L , ran , j *
+ &sigma; ran , ( &tau; , &iota; ) ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * )
+ &phi; ran , ( &tau; , &iota; ) k L , ran , ( &tau; , &iota; ) * + &Sigma; i = 1 w t &eta; ran , ( &tau; , &iota; ) , ( 0 , i ) b 0,1 + u 0 + 1 + i *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 w t &eta; ran , ( &tau; , &iota; ) , ( t , i ) b t , n t + u t + i *
+ &Sigma; i = 1 w &tau; &eta; ran , ( &tau; , &iota; ) , ( &tau; , i ) b &tau; , n &tau; + u &tau; + i * ,
k L + 1 , del , ( &tau; , &iota; ) * : = &Sigma; j = 1 2 L &alpha; del , ( &tau; , &iota; ) , j k L , ran , j *
+ &sigma; del , ( &tau; , &iota; ) ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * ) + &psi; &prime; k L , del , ( &tau; , &iota; ) *
+ &phi; del , ( &tau; , &iota; ) k L , ran , ( &tau; , &iota; ) * + &Sigma; i = 1 w t &eta; del , ( &tau; , &iota; ) , ( 0 , i ) b 0,1 + u 0 + 1 + i *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 w t &eta; del , ( &tau; , &iota; ) , ( t , i ) b t , n t + u t + i *
+ &Sigma; i = 1 w &tau; &eta; del , ( &tau; , &iota; ) , ( &tau; , i ) b &tau; , n &tau; + u &tau; + i * ,
sk L + 1 : = ( k L + 1 , dec * , { k L + 1 , ran , j ' * } j ' = 1 , . . . , 2 ( L + 1 ) ,
{ k L + 1 , ran , ( &tau; , &iota; ) * , k L + 1 , del , ( &tau; , &iota; ) * } &tau; = L + 2 , . . . , d ; ( &tau; , &iota; ) = ( &tau; , 1 ) , . . . , ( &tau; , n &tau; ) ) ,
返回skL+1
另外,在下位的解密装置300使用移交密钥skL+1执行了Dec算法的情况下,在图15的(S403)中,如果(v→1,...,v→L+1)与(x→1,...,x→L+1)的内积是0,则通过计算式145,计算会话密钥K。
如以上那样,实施方式1所涉及的密码处理系统10使用d+1个Nt(t=0,...,d)维空间,实现d分层的分层式内积谓词密码方式。此处,第L层(1≤L≤d)的密码处理所需的空间是L+1个Nt(t=0,...,L)维空间。因此,能够减小密钥的尺寸,能够提高运算等的效率。另外,还能够减小记录密钥的存储器、寄存器等的区域。
另外,在上述说明中,ut、wt、zt(t=0,...,d)的维度是为了提高安全性而设置的维度。因此,虽然安全性变低,但也可以使ut、wt、zt(t=0,...,d)分别为0,而不设置ut、wt、zt(t=0,...,d)的维度。
另外,在上述说明中,对N0设定了1+u0+1+w0+z0,对Nt设定了nt+ut+wt+zt。但是,也可以使1+u0+1+w0+z0为1+1+1+1+1而对N0设定5,使nt+ut+wt+zt为nt+nt+nt+1而对Nt设定3nt+1。
在该情况下,式132所示的Setup算法如式154那样被置换。另外,Gob如式155那样被置换。
[式154]
Figure BDA00003644292100421
Figure BDA00003644292100423
Figure BDA00003644292100424
Figure BDA00003644292100425
Figure BDA00003644292100426
Figure BDA00003644292100427
返回pk,sk.
[式155]
Figure BDA00003644292100428
N0:=5,Nt:=3nt+1(t=1,...,d),
Figure BDA00003644292100429
Figure BDA000036442921004210
Fort=0,...,d,
Figure BDA000036442921004212
( v t , i , j ) i , j : = &psi; &CenterDot; ( X t T ) - 1 ,
Figure BDA000036442921004214
Figure BDA000036442921004216
Figure BDA000036442921004217
gT:=e(g,g)ψ
Figure BDA000036442921004218
返回
Figure BDA000036442921004219
另外,式139、式140所示的KeyGen算法如式156、式157那样被置换。
[式156]
KeyGen ( pk , sk , ( v &RightArrow; 1 , . . . , v &RightArrow; L ) : = ( v 1 , 1 , . . . , v 1 , n 1 ) , . . . , ( v L , 1 , . . . , v L , n L ) ) :
其中j=1,...,2L;τ=L+1,...,d;(τ,ι)=(τ,1),...,(τ,nτ);
ψ,sdec,t
Figure BDA00003644292100432
θdec,t
Figure BDA00003644292100433
Figure BDA000036442921004313
Figure BDA00003644292100434
sran,(τ,ι),t
Figure BDA00003644292100435
θran,(τ,ι),t
Figure BDA00003644292100436
Figure BDA00003644292100438
(t=0,...,L+1);
s dec , 0 : = &Sigma; t = 1 L s dec , t , s ran , j , 0 : = &Sigma; t = 1 L s ran , j , t ,
s ran , ( &tau; , &iota; ) , 0 : = &Sigma; t = 1 L + 1 s ran , ( &tau; , &iota; ) , t , s del , ( &tau; , &iota; ) , 0 : = &Sigma; t = 1 L + 1 s del , ( &tau; , &iota; ) , t ,
[式157]
Figure BDA00003644292100442
Figure BDA00003644292100443
Figure BDA00003644292100444
Figure BDA00003644292100445
Figure BDA00003644292100446
Figure BDA000036442921004410
Figure BDA000036442921004411
Figure BDA000036442921004412
Figure BDA000036442921004413
sk L : = ( k L , dec * , { k L , ran , j * } j = 1 , . . . , 2 L ,
{ k L , ran , ( &tau; , &iota; ) * } &tau; = L + 1 , . . . , d ; ( &tau; , &iota; ) = ( &tau; , 1 ) , . . . , ( &tau; , n &tau; ) ,
{ k L , del , ( &tau; , &iota; ) * } &tau; = L + 1 , . . . , d ; ( &tau; , &iota; ) = ( &tau; , 1 ) , . . . , ( &tau; , n &tau; ) ) ,
返回skL.
另外,式144所示的Enc算法如式158那样被置换。
[式158]
Figure BDA000036442921004417
Figure BDA000036442921004418
Figure BDA000036442921004419
Figure BDA000036442921004420
Figure BDA000036442921004421
c 2 : = g T &zeta; m ,
ct:=(c1,c2),
返回ct.
另外,式152、式153所示的DelegateL算法如式159、式160那样被置换。
[式159]
Delegate L ( pk , sk L , v &RightArrow; L + 1 : = ( v L + 1,1 , &CenterDot; &CenterDot; &CenterDot; , v L + 1 , n L + 1 ) ) :
其中j=1,...,2L;j’=1,...,2(L+1);τ=L+2,...,d;(τ,ι)=(τ,1),...,(τ,nτ);
t=0,...,L+1,τ;(t,i)=(t,1),...,(t,nt);
αdec,j,σdec,αran,j’,j,σran,j’,αran,(τ,ι),j,σran,(τ,ι)
φran,(τ,ι),αdel,(τ,ι),j,σdel,(τ,ι),φdel,(τ,ι),ψ',
ηdec,(t,i),ηran,j’(t,i),ηran,(τ,ι),(t,i)
Figure BDA00003644292100452
[式160]
k L + 1 , dec * : = k L , dec * + &Sigma; j = 1 2 L &alpha; dec , j k L , ran , j *
+ &sigma; dec ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * ) + &eta; dec , ( 0 , 1 ) b 0,4 *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 n t &eta; dec , ( t , i ) b t , 2 n t + i * ,
k L + 1 , ran , j &prime; * : = &Sigma; j = 1 2 L &alpha; ran , j &prime; , j k L , ran , j *
+ &sigma; ran , j &prime; ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * ) + &eta; ran , j &prime; , ( 0 , 1 ) b 0,4 *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 n t &eta; ran , j &prime; , ( t , i ) b t , 2 n t + i * ,
k L + 1 , ran , ( &tau; , &iota; ) * : = &Sigma; j = 1 2 L &alpha; ran , ( &tau; , &iota; ) , j k L , ran , j *
+ &sigma; ran , ( &tau; , &iota; ) ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * )
+ &phi; ran , ( &tau; , &iota; ) k L , ran , ( &tau; , &iota; ) * + &eta; ran , ( &tau; , &iota; ) , ( 0 , 1 ) b 0,4 *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 n t &eta; ran , ( &tau; , &iota; ) , ( t , i ) b t , 2 n t + i *
+ &Sigma; i = 1 n &tau; &eta; ran , ( &tau; , &iota; ) , ( &tau; , i ) b &tau; , 2 n &tau; + i * ,
k L + 1 , del , ( &tau; , &iota; ) * : = &Sigma; j = 1 2 L &alpha; del , ( &tau; , &iota; ) , j k L , ran , j *
+ &sigma; del , ( &tau; , &iota; ) ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * ) + &psi; &prime; k L , del , ( &tau; , &iota; ) *
+ &phi; del , ( &tau; , &iota; ) k L , ran , ( &tau; , &iota; ) * + &eta; del , ( &tau; , &iota; ) , ( 0 , 1 ) b 0,4 *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 n t &eta; del , ( &tau; , &iota; ) , ( t , i ) b t , 2 n t + i *
+ &Sigma; i = 1 n &tau; &eta; del , ( &tau; , &iota; ) , ( &tau; , i ) b &tau; , 2 n &tau; + i * ,
sk L + 1 : = ( k L + 1 , dec * , { k L + 1 , ran , j &prime; * } j &prime; = 1 , . . . , 2 ( L + 1 ) ,
{ k L + 1 , ran , ( &tau; , &iota; ) * , k L + 1 , del , ( &tau; , &iota; ) * } &tau; = L + 2 , . . . , d ; ( &tau; , &iota; ) = ( &tau; , 1 ) , . . . , ( &tau; , n &tau; ) ) ,
返回skL+1
另外,在式146所示的Dec算法中没有变更。
另外,关于Setup算法,在密码处理系统10的设置时执行一次即可,而无需每当生成解密密钥时执行。另外,在上述说明中,使密钥生成装置100执行Setup算法和KeyGen算法,但也可以使分别不同的装置执行Setup算法和KeyGen算法。
实施方式2.
在该实施方式中,说明使在实施方式1中说明的方式一般化了的分层式内积谓词密码方式。
在实施方式1中说明的分层式内积谓词密码方式中,原则上在对加密数据ct设定的属性信息、与对解密密钥设定的谓词信息的内积是0的情况下,能够通过解密密钥对加密数据ct进行解密。
但是,在实施方式2中说明的分层式内积谓词密码方式中,能够设定为即使在对加密数据ct设定的属性信息、与对解密密钥设定的谓词信息的内积未成为0的情况下也能够解密。
具体而言,在以下的说明中,在关于ρt(t=1,...,d)的值是0的整数t,属性信息x→t与谓词信息v→t的内积成为0,关于ρt(t=1,...,d)的值是1的整数t,属性信息x→t与谓词信息v→t的内积不为0的情况下,能够解密。
由此,例如,能够根据ρt(t=1,...,d)的值的设定,进行肯定形的条件式(例如,属性信息=谓词信息)和否定形的条件式(属性信息≠谓词信息)的设定。
根据图17至图19,说明实施方式2所涉及的分层式内积谓词密码方式、以及执行分层式内积谓词密码方式的密码处理系统10的功能和动作。
另外,关于实施方式2所涉及的密码处理系统10的功能结构,与图8至图11所示的实施方式1所涉及的密码处理系统10的功能结构相同。
图17是示出密钥生成装置100的动作的流程图,是示出KeyGen算法的处理的流程图。图18是示出解密装置300的动作的流程图,是示出Dec算法的处理的流程图。图19是示出密钥移交装置400的动作的流程图,是示出DelegateL算法的处理的流程图。
另外,实施方式2所涉及的Setup算法和Enc算法的处理与实施方式1所涉及的Setup算法和Enc算法的处理相同,所以省略说明。但是,在Enc算法中,在加密数据ct中,不仅包含加密数据c1,c2,而且还包含属性信息x→i(i=1,...,L),而发送到解密装置300。
根据图17,说明密钥生成装置100执行的KeyGen算法的处理。
(S601:信息输入步骤)
信息输入部130通过输入装置,输入谓词信息((v→1,ρ1),...,(v→L,ρL)):=((v1,i(i=1,...,n1),ρ1∈{0,1}),...,(vL, i(i=1,...,nL),ρL∈{0,1}))。另外,作为谓词信息,输入使用密钥的人员的属性。
(S602:随机数生成步骤)
随机数生成部141通过处理装置,针对j=1,...,2L、τ=L+1,...,d和(τ,ι)=(τ,1),...,(τ,nτ)的各整数j,τ,ι,如式161所示,生成随机数ψ、随机数sdec,t,sran,j,t(t=1,...,L)、随机数θdec,t,θran,j,t,η→dec,t,η→ran,j,t,η→ran,0,t,η→del,0,t,η→del,1,t(t=0,...,L)、随机数sran,0,t,sdel,0,t,sdel,1,t(t=0,...,L+1)、随机数θran, 0,t,θdel,0,t,θdel,1,t(t=0,...,L+1)、以及随机数η→ran,(τ,ι),η→del, 0,(τ,ι),η→del,1,(τ,ι)
[式161]
其中j=1,...,2L;τ=L+1,...,d;(τ,ι)=(τ,1),...,(τ,nτ);
Figure BDA00003644292100481
Figure BDA00003644292100482
Figure BDA00003644292100483
Figure BDA00003644292100484
Figure BDA00003644292100485
Figure BDA00003644292100486
Figure BDA00003644292100487
Figure BDA00003644292100488
Figure BDA00003644292100489
Figure BDA000036442921004810
Figure BDA000036442921004811
另外,如式162所示,设定sdec,0、sran,j,0、sran,0,0、sdel,0,0、以及sdel,1,0
[式162]
s dec , 0 : = &Sigma; t = 1 L s dec , t ,
s ran , j , 0 : = &Sigma; t = 1 L s ran , j , t ,
s ran , 0 , 0 : = &Sigma; t = 1 L s ran , 0 , t ,
s del , 0 , 0 : = &Sigma; t = 1 L + 1 s del , 0 , t ,
s del , 1 , 0 : = &Sigma; t = 1 L + 1 s del , 1 , t
(S603:解密要素生成步骤)
解密要素生成部142通过处理装置,如式163所示,生成作为解密密钥skL的要素的解密要素k* L,dec
[式163]
Figure BDA00003644292100495
Figure BDA00003644292100494
Figure BDA00003644292100493
另外,如上所述,针对式110所示的基底B和基底B*,是式111。因此,式163意味着如以下那样,设定基底B* 0以及基底B* t(t=1,...,L)的基底矢量的系数,生成解密要素k* L,dec
首先,说明基底B* 0的部分。此处,简化标记,仅通过基底矢量b* 0,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* 0,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* 0,1,...,b* 0,3
作为基底B* 0的基底矢量1的系数设定-sdec,0。作为基底矢量1+1,...,1+u0的系数设定0。作为基底矢量1+u0+1的系数设定1。作为基底矢量1+u0+1+1,...,1+u0+1+w0的系数设定ηdec,0,1,...,ηdec, 0,wo(此处,w0是w0)。作为基底矢量1+u0+1+w0+1,...,1+u0+1+w0+z0的系数设定0。
接下来,说明基底B* t(t=1,...,L)的部分。此处,简化标记,仅通过基底矢量b* t,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* t,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* t,1,...,b* t,3。另外,关于基底B* t(t=1,...,L),根据ρt的值是0还是1而划分情况。
在ρt的值是0的情况下,作为基底B* t(t=1,...,L)的基底矢量1的系数设定sdec,tdec,tvt,1。作为基底矢量2,...,nt的系数设定θdec,tvt,2,...,θdec,tvt,nt(此处,nt是nt)。作为基底矢量nt+1,...,nt+ut的系数设定0。作为基底矢量nt+ut+1,...,nt+ut+wt的系数设定ηdec,t,1,...,ηdec,t,wt(此处,wt是wt)。作为基底矢量nt+ut+wt+1,...,nt+ut+wt+zt的系数设定0。
另一方面,在ρt的值是1的情况下,作为基底B* t(t=1,...,L)的基底矢量1,...,nt的系数设定sdec,tvt,1,...,sdec,tvt,nt(此处,nt是nt)。作为基底矢量nt+1,...,nt+ut的系数设定0。作为基底矢量nt+ut+1,...,nt+ut+wt的系数设定ηdec,t,1,...,ηdec,t,wt(此处,wt是wt)。作为基底矢量nt+ut+wt+1,...,nt+ut+wt+zt的系数设定0。
(S604:第1随机化要素生成步骤)
随机化要素生成部143通过处理装置,针对j=1,...,2L的各整数j,如式164所示,生成作为解密密钥skL的要素的第1随机化要素k* L,ran,j
[式164]
Figure BDA00003644292100501
Figure BDA00003644292100502
Figure BDA00003644292100503
另外,如上所述,针对式110所示的基底B和基底B*,是式111。因此,式164意味着如以下那样,设定基底B* 0以及基底B* t(t=1,...,L)的基底矢量的系数,生成第1随机化要素k* L,ran,j
首先,说明基底B* 0的部分。此处,简化标记,仅通过基底矢量b* 0,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* 0,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* 0,1,...,b* 0,3
作为基底B* 0的基底矢量1的系数设定-sran,j,0。作为基底矢量1+1,...,1+u0+1的系数设定0。作为基底矢量1+u0+1+1,...,1+u0+1+w0的系数设定ηran,j,0,1,...,ηran,j,0,wo(此处,w0是w0)。作为基底矢量1+u0+1+w0+1,...,1+u0+1+w0+z0的系数设定0。
接下来,说明基底B* t(t=1,...,L)的部分。此处,简化标记,仅通过基底矢量b* t,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* t,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* t,1,...,b* t,3。另外,关于基底B* t(t=1,...,L),根据ρt的值是0还是1而划分情况。
在ρt的值是0的情况下,作为基底B* t(t=1,...,L)的基底矢量1的系数设定sran,j,tran,j,tvt,1。作为基底矢量2,...,nt的系数设定θran,j,tvt,2,...,θran,j,tvt,nt(此处,nt是nt)。作为基底矢量nt+1,...,nt+ut的系数设定0。作为基底矢量nt+ut+1,...,nt+ut+wt的系数设定ηran,j,t,1,...,ηran,j,t,wt(此处,wt是wt)。作为基底矢量nt+ut+wt+1,...,nt+ut+wt+zt的系数设定0。
另一方面,在ρt的值是1的情况下,作为基底B* t(t=1,...,L)的基底矢量1,...,nt的系数设定sran,j,tvt,1,...,sran,j,tvt,nt(此处,nt是nt)。作为基底矢量nt+1,...,nt+ut的系数设定0。作为基底矢量nt+ut+1,...,nt+ut+wt的系数设定ηran,j,t,1,...,ηran,j,t,wt(此处,wt是wt)。作为基底矢量nt+ut+wt+1,...,nt+ut+wt+zt的系数设定0。
(S605:第2随机化要素生成步骤)
随机化要素生成部143通过处理装置,针对τ=L+1,...,d的各整数τ、关于各整数τ的ι=1,...,nτ的各整数ι,如式165所示,生成作为解密密钥skL的要素的第2随机化要素k* L,ran,(τ,ι,0)
[式165]
Figure BDA00003644292100511
Figure BDA00003644292100514
Figure BDA00003644292100512
Figure BDA00003644292100513
另外,如上所述,针对式110所示的基底B和基底B*,是式111。因此,式165意味着如以下那样,设定基底B* 0、基底B* t(t=1,...,L)、以及基底B* τ的基底矢量的系数,生成第2随机化要素k* L,ran, (τ,ι,0)
首先,说明基底B* 0的部分。此处,简化标记,仅通过基底矢量b* 0,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* 0,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* 0,1,...,b* 0,3
作为基底B* 0的基底矢量1的系数设定-sran,0,0。作为基底矢量1+1,...,1+u0+1的系数设定0。作为基底矢量1+u0+1+1,...,1+u0+1+w0的系数设定ηran,0,0,1,...,ηran,0,0,wo(此处,w0是w0)。作为基底矢量1+u0+1+w0+1,...,1+u0+1+w0+z0的系数设定0。
接下来,说明基底B* t(t=1,...,L)的部分。此处,简化标记,仅通过基底矢量b* t,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* t,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* t,1,...,b* t,3。另外,关于基底B* t(t=1,...,L),根据ρt的值是0还是1而划分情况。
在ρt的值是0的情况下,作为基底B* t(t=1,...,L)的基底矢量1的系数设定sran,0,tran,0,tvt,1。作为基底矢量2,...,nt的系数设定θran,0,tvt,2,...,θran,0,tvt,nt(此处,nt是nt)。作为基底矢量nt+1,...,nt+ut的系数设定0。作为基底矢量nt+ut+1,...,nt+ut+wt的系数设定ηran,0,t,1,...,ηran,0,t,wt(此处,wt是wt)。作为基底矢量nt+ut+wt+1,...,nt+ut+wt+zt的系数设定0。
另一方面,在ρt的值是1的情况下,作为基底B* t(t=1,...,L)的基底矢量1,...,nt的系数设定sran,0,tvt,1,...,sran,0,tvt,nt(此处,nt是nt)。作为基底矢量nt+1,...,nt+ut的系数设定0。作为基底矢量nt+ut+1,...,nt+ut+wt的系数设定ηran,0,t,1,...,ηran,0,t,wt(此处,wt是wt)。作为基底矢量nt+ut+wt+1,...,nt+ut+wt+zt的系数设定0。
接下来,说明基底B* τ的部分。此处,简化标记,仅通过基底矢量b* τ,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* τ,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* τ,1,...,b* τ,3
作为基底B* τ的基底矢量1的系数设定sran,0,L+1。作为基底矢量2,...,nτ,...,nτ+uτ的系数设定0。作为基底矢量nτ+uτ+1,...,nτ+uτ+wτ的系数设定ηran,0,(τ,ι),1,...,ηran,0,(τ,ι)s,wτ(此处,wτ是wτ)。作为基底矢量nτ+uτ+wτ+1,...,nτ+uτ+wτ+zτ的系数设定0。
(S606:第1移交要素生成步骤)
移交要素生成部144通过处理装置,针对τ=L+1,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,如式166所示,生成作为解密密钥skL的要素的第1移交要素k* L,del,(τ,ι,0)
[式166]
Figure BDA00003644292100536
Figure BDA00003644292100533
Figure BDA00003644292100534
另外,如上所述,针对式110所示的基底B和基底B*,是式111。因此,式166意味着如以下那样,设定基底B* 0、基底B* t(t=1,...,L)、以及基底B* τ的基底矢量的系数,生成第1移交要素k* L,del,(τ, ι,0)
首先,说明基底B* 0的部分。此处,简化标记,仅通过基底矢量b* 0,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* 0,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* 0,1,...,b* 0,3
作为基底B* 0的基底矢量1的系数设定-sdel,0,0。作为基底矢量1+1,...,1+u0+1的系数设定0。作为基底矢量1+u0+1+1,...,1+u0+1+w0的系数设定ηdel,0,0,1,...,ηdel,0,0,wo(此处,w0是w0)。作为基底矢量1+u0+1+w0+1,...,1+u0+1+w0+z0的系数设定0。
接下来,说明基底B* t(t=1,...,L)的部分。此处,简化标记,仅通过基底矢量b* t,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* t,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* t,1,...,b* t,3。另外,关于基底B* t(t=1,...,L),根据ρt的值是0还是1而划分情况。
在ρt的值是0的情况下,作为基底B* t(t=1,...,L)的基底矢量1的系数设定sdel,0,tdel,0,tvt,1。作为基底矢量2,...,nt的系数设定θdel,0,tvt,2,...,θdel,0,tvt,nt(此处,nt是nt)。作为基底矢量nt+1,...,nt+ut的系数设定0。作为基底矢量nt+ut+1,...,nt+ut+wt的系数设定ηdel,0,t,1,...,ηdel,0,t,wt(此处,wt是wt)。作为基底矢量nt+ut+wt+1,...,nt+ut+wt+zt的系数设定0。
另一方面,在ρt的值是1的情况下,作为基底B* t(t=1,...,L)的基底矢量1,...,nt的系数设定sdel,0,tvt,1,...,sdel,0,tvt,nt(此处,nt是nt)。作为基底矢量nt+1,...,nt+ut的系数设定0。作为基底矢量nt+ut+1,...,nt+ut+wt的系数设定ηdel,0,t,1,...,ηdel,0,t,wt(此处,wt是wt)。作为基底矢量nt+ut+wt+1,...,nt+ut+wt+zt的系数设定0。
接下来,说明基底B* τ的部分。此处,简化标记,仅通过基底矢量b* τ,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* τ,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* τ,1,...,b* τ,3
作为基底B* τ的基底矢量1,...,nτ的系数设定sdel,0,L+1e→τ,1+ψe→τ, ι。作为基底矢量nτ+1,...,nτ+uτ的系数设定0。作为基底矢量nτ+uτ+1,...,nτ+uτ+wτ的系数设定ηdel,0,(τ,ι),1,...,ηdel,0,(τ,ι),wτ(此处,wτ是wτ)。作为基底矢量nτ+uτ+wτ+1,...,nτ+uτ+wτ+zτ的系数设定0。
(S607:第2移交要素生成步骤)
移交要素生成部144通过处理装置,针对τ=L+1,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,如式167所示,生成作为解密密钥skL的要素的第2移交要素k* L,del,(τ,ι,1)
[式167]
Figure BDA00003644292100541
Figure BDA00003644292100542
Figure BDA00003644292100544
另外,如上所述,针对式110所示的基底B和基底B*,是式111。因此,式167意味着如以下那样,设定基底B* 0、基底B* t(t=1,...,L)、以及基底B* τ的基底矢量的系数,生成第2移交要素k* L,del,(τ, ι,1)
首先,说明基底B* 0的部分。此处,简化标记,仅通过基底矢量b* 0,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* 0,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* 0,1,...,b* 0,3
作为基底B* 0的基底矢量1的系数设定-sdel,1,0。作为基底矢量1+1,...,1+u0+1的系数设定0。作为基底矢量1+u0+1+1,...,1+u0+1+w0的系数设定ηdel,1,0,1,...,ηdel,1,0,wo(此处,w0是w0)。作为基底矢量1+u0+1+w0+1,...,1+u0+1+w0+z0的系数设定0。
接下来,说明基底B* t(t=1,...,L)的部分。此处,简化标记,仅通过基底矢量b* t,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* t,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* t,1,...,b* t,3。另外,关于基底B* t(t=1,...,L),根据ρt的值是0还是1而划分情况。
在ρt的值是0的情况下,作为基底B* t(t=1,...,L)的基底矢量1的系数设定sdel,1,tdel,1,tvt,1。作为基底矢量2,...,nt的系数设定θdel,1,tvt,2,...,θdel,1,tvt,nt(此处,nt是nt)。作为基底矢量nt+1,...,nt+ut的系数设定0。作为基底矢量nt+ut+1,...,nt+ut+wt的系数设定ηdel,1,t,1,...,ηdel,1,t,wt(此处,wt是wt)。作为基底矢量nt+ut+wt+1,...,nt+ut+wt+zt的系数设定0。
另一方面,在ρt的值是1的情况下,作为基底B* t(t=1,...,L)的基底矢量1,...,nt的系数设定sdel,1,tvt,1,...,sdel,1,tvt,nt(此处,nt是nt)。作为基底矢量nt+1,...,nt+ut的系数设定0。作为基底矢量nt+ut+1,...,nt+ut+wt的系数设定ηdel,1,t,1,...,ηdel,1,t,wt(此处,wt是wt)。作为基底矢量nt+ut+wt+1,...,nt+ut+wt+zt的系数设定0。
接下来,说明基底B* τ的部分。此处,简化标记,仅通过基底矢量b* τ,i中的i的部分来确定基底矢量。例如,如果是基底矢量1,则意味着基底矢量b* τ,1。另外,如果是基底矢量1,...,3,则意味着基底矢量b* τ,1,...,b* τ,3
作为基底B* τ的基底矢量1,...,nτ的系数设定sdel,1,L+1e→τ,ι。作为基底矢量nτ+1,...,nτ+uτ的系数设定0。作为基底矢量nτ+uτ+1,...,nτ+uτ+wτ的系数设定ηdel,1,(τ,ι),1,...,ηdel,1,(τ,ι),wτ(此处,wτ是wτ)。作为基底矢量nτ+uτ+wτ+1,...,nτ+uτ+wτ+zτ的系数设定0。
(S608:密钥分发步骤)
密钥分发部150将以解密要素k* L,dec、第1随机化要素k* L,ran,j(j=1,...,2L)、第2随机化要素k* L,ran,(τ,ι,0)(τ=L+1,...,d;(τ,ι)=(τ,1),...,(τ,nτ))、第1移交要素k* L,del,(τ,ι,0)(τ=L+1,...,d;(τ,ι)=(τ,1),...,(τ,nτ))、以及第2移交要素k* L,del,(τ,ι,1)(τ=L+1,...,d;(τ,ι)=(τ,1),...,(τ,nτ))为要素的解密密钥skL,通过例如通信装置经由网络秘密地分发到解密装置300。当然,解密密钥skL也可以通过其他方法分发到解密装置300。
即,在(S601)至(S607)中,密钥生成装置100执行式168、式169所示的KeyGen算法,生成解密密钥skL。然后,在(S608)中,密钥生成装置100将所生成的解密密钥skL分发到解密装置300。
[式168]
Figure BDA00003644292100571
其中,j=1,...,2L;τ=L+1,...,d;(τ,ι)=(τ,1),...,(τ,nτ);
ψ,sdec,t
Figure BDA00003644292100574
θdec,t
Figure BDA00003644292100575
Figure BDA000036442921005722
Figure BDA000036442921005723
Figure BDA000036442921005724
Figure BDA00003644292100576
sran,0,t,sdel,0,t
Figure BDA00003644292100577
θran,0,t,θdel,0,t
Figure BDA00003644292100578
Figure BDA000036442921005725
Figure BDA000036442921005726
Figure BDA00003644292100579
(t=0,...,L+1);
s dec , 0 : = &Sigma; t = 1 L s dec , t , s ran , j , 0 : = &Sigma; t = 1 L s ran , j , t , s ran , 0 , 0 : = &Sigma; t = 1 L s ran , 0 , t ,
s del , 0 , 0 : = &Sigma; t = 1 L + 1 s del , 0 , t , s del , 1 , 0 : = &Sigma; t = 1 L + 1 s del , 1 , t ,
Figure BDA000036442921005715
Figure BDA000036442921005716
Figure BDA000036442921005718
Figure BDA000036442921005719
[式169]
Figure BDA000036442921005817
Figure BDA000036442921005816
Figure BDA00003644292100583
Figure BDA00003644292100586
Figure BDA00003644292100587
Figure BDA00003644292100588
Figure BDA00003644292100589
Figure BDA000036442921005810
Figure BDA000036442921005811
Figure BDA000036442921005812
sk L : = ( ( ( v &RightArrow; 1 , &rho; 1 ) , . . . , ( v &RightArrow; L , &rho; L ) ) ;
k L , dec * , { k L , ran , j * } j = 1 , . . . , 2 L , { k L , ran , ( &tau; , &iota; , 0 ) * , k L , del , ( &tau; , &iota; , 0 ) * , k L , del , ( &tau; , &iota; , 1 ) * }
&tau; = L + 1 , . . . , d ; ( &tau; , &iota; ) = ( &tau; , 1 ) , . . . , ( &tau; , n &tau; ) ) ,
返回skL.
根据图18,说明解密装置300执行的Dec算法的处理。
(S701:解密密钥取得步骤)
解密密钥取得部310通过例如通信装置经由网络,取得解密密钥skL。另外,解密密钥取得部310取得密钥生成装置100生成的公开参数pk。
(S702:数据接收步骤)
数据接收部320通过例如通信装置经由网络,接收加密装置200发送了的加密数据ct。
(S703:配对运算步骤)
配对运算部330通过处理装置,进行式170所示的配对运算,计算会话密钥K=gT ζ
[式170]
K : = e ( c 1,0 , k L , dec , 0 * ) .
&Pi; 1 &le; t &le; d ^ &rho; t = 0 e ( c 1 , t , k L , dec , t * ) .
&Pi; 1 &le; t &le; d ^ &rho; t = 1 e ( c 1 , t , k L , dec , t * ) 1 / ( v &RightArrow; t &CenterDot; x &RightArrow; t )
此处,是式171。
[式171]
Figure BDA00003644292100594
Figure BDA00003644292100595
另外,如果关于t=1,...,L的各整数t,针对ρt=0的整数t,v→t与x→t的内积是0,针对ρt=1的整数t,v→t与x→t的内积不是0,则通过计算式170,计算会话密钥K。
(S704:消息计算步骤)
消息计算部340通过处理装置,将加密数据c2除以会话密钥K,从而计算消息m’(=m)。
即,在(S701)至(S704)中,解密装置300执行式172所示的Dec算法,计算消息m’(=m)。
[式172]
Dec(pk,skL,ct):
K : = e ( c 1,0 , k L , dec , 0 * ) .
&Pi; 1 &le; t &le; d ^ &rho; t = 0 e ( c 1 , t , k L , dec , t * ) .
&Pi; 1 &le; t &le; d ^ &rho; t = 1 e ( c 1 , t , k L , dec , t * ) 1 / ( v &RightArrow; t &CenterDot; x &RightArrow; t ) ,
m’:=c2/K,
返回m'.
根据图19,说明密钥移交装置400执行的DelegateL算法的处理。
(S801:解密密钥取得步骤)
解密密钥取得部410通过例如通信装置经由网络,取得解密密钥skL。另外,解密密钥取得部410取得密钥生成装置100生成的公开参数pk。
(S802:信息输入步骤)
信息输入部420通过输入装置,输入谓词信息(v→L+1,ρL+1):=(vL+1,i(i=1,...,nL+1),ρL+1∈{0,1})。另外,作为谓词信息,输入被移交密钥的人员的属性。
(S803:随机数生成步骤)
随机数生成部431通过处理装置,针对j=1,...,2L、j’=1,...,2(L+1)、τ=L+2,...,d、(τ,ι)=(τ,1),...,(τ,nτ)、t=0,...,L+1,τ、以及(t,i)=(t,1),...,(t,nt)的各整数j,j’,τ,ι,t,i,如式173所示,生成随机数αdec,j,σdec,αran,j’,j,σran,j’,αran, (τ,ι,0),j,σran,(τ,ι,0),φran,(τ,ι,0),αdel,(τ,ι,0),j,σdel,(τ,ι,0),φdel, (τ,ι,0),αdel,(τ,ι,1),j,σdel,(τ,ι,1),φdel,(τ,ι,1),ηdec,(t,i),ηran,j’, (t,i),ηran,(τ,ι,0)、(t,i),ηdel,(τ,ι,0)、(t,i),ηdel,(τ,ι,1)、(t,i),ψ0,ψ1
[式173]
其中,j=1,...,2L;j’=1,...,(L+1);τ=L+2,...,d;(τ,ι)=(τ,1),...,(τ,nτ);
t=0,...,L+1,τ;(t,i)=(t,1),...,(t,wt);
αdec,j,σdec,αran,j’j,σran,j’,αran,(t,ι,0),j,σran,(t,ι,0)
φran,(τ,ι,0),αdel,(τ,ι,0),j,σdel,(τ,ι,0),φdel,(τ,ι,0),αdel,(τ,ι,1),j
σdel,(τ,ι,1),φdel,(τ,ι,1),ηdec,(t,i),ηran,j’,(t,i),ηran,(τ,ι,0),(t,i)
ηdel,(τ,ι,0),(t,i),ηdel,(τ,ι,1),(t,i)
Figure BDA00003644292100601
(S804:下位解密要素生成步骤)
下位解密要素生成部432通过处理装置,如式174所示,生成作为移交密钥skL+1的要素的下位解密要素k* L+1,dec
[式174]
Figure BDA00003644292100611
Figure BDA00003644292100612
(S805:第1下位随机化要素生成步骤)
下位随机化要素生成部433通过处理装置,针对j’=1,...,2(L+1)的各整数j’,如式175所示,生成作为移交密钥skL+1的要素的第1下位随机化要素k* L+1,ran,j’
[式175]
Figure BDA00003644292100614
Figure BDA00003644292100615
Figure BDA00003644292100616
Figure BDA00003644292100617
(S806:第2下位随机化要素生成步骤)
下位随机化要素生成部433通过处理装置,针对τ=L+2,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,如式176所示,生成作为移交密钥skL+1的要素的第2下位随机化要素k* L+1,ran,(τ, ι)
[式176]
Figure BDA00003644292100622
Figure BDA00003644292100623
Figure BDA00003644292100624
Figure BDA00003644292100625
(S807:第1下位移交要素生成步骤)
下位移交要素生成部434通过处理装置,针对τ=L+2,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,如式177所示,生成作为移交密钥skL+1的要素的第1下位移交要素k* L+1,del,(τ,ι,0)
[式177]
Figure BDA00003644292100626
Figure BDA000036442921006212
Figure BDA000036442921006213
Figure BDA00003644292100629
Figure BDA000036442921006210
Figure BDA000036442921006211
(S808:第2下位移交要素生成步骤)
下位移交要素生成部434通过处理装置,针对τ=L+2,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,如式178所示,生成作为移交密钥skL+1的要素的第2下位移交要素k* L+1,del,(τ,ι,1)
[式178]
Figure BDA00003644292100631
Figure BDA00003644292100632
Figure BDA00003644292100633
Figure BDA00003644292100634
Figure BDA00003644292100635
(S809:密钥分发步骤)
密钥分发部150将以下位解密要素k* L+1,dec、第1下位随机化要素k* L+1,ran,j’(j’=1,...,2(L+1))、第2下位随机化要素k* L+1,ran, (τ,ι,0)(τ=L+2,...,d;(τ,ι)=(τ,1),...,(τ,nτ))、第1下位移交要素k* L+2,del,(τ,ι,0)(τ=L+2,...,d;(τ,ι)=(τ,1),...,(τ,nτ))、以及第2下位移交要素k* L+2,del,(τ,ι,1)(τ=L+2,...,d;(τ,ι)=(τ,1),...,(τ,nτ))为要素的移交密钥skL+1通过例如通信装置经由网络秘密地分发到下位的解密装置300。当然,移交密钥skL+1也可以通过其他方法分发到下位的解密装置300。
即,在(S501)至(S507)中,密钥移交装置400执行式179、式180所示的DelegateL算法,生成移交密钥skL+1。然后,在(S508)中,密钥移交装置400将所生成的移交密钥skL+1分发到下位的解密装置300。
[式179]
Delegate L ( pk , sk L , ( v &RightArrow; L + 1 , &rho; L + 1 ) : = ( ( v L + 1,1 , &CenterDot; &CenterDot; &CenterDot; , v L + 1 , n L + 1 ) , &rho; L + 1 ) ) :
forj=1,...,2L;j’=1,...,2(L+1);τ=L+2,...,d;(τ,ι)=(τ,1),....,(τ,nτ);
t=0,...,L+1,τ;(t,i)=(t,1),...,(t,wt);
αdec,j,σdec,αran,j’,j,σran,j’,αran,(τ,ι,0),j,σran,(τ,ι,0),φran,(τ,ι,0)
αdel,(τ,ι,0),j,σdel,(τ,ι,0)del,(τ,ι,0),αdel,(τ,ι,1),j,σdel,(τ,ι,1),φdel,(τ,ι,1)
ηdec,(t,i),ηran,j’,(t,i),ηran,(τ,ι,0),(t,i),ηdel,(τ,ι,0),(t,i),ηdel,(τ,ι,1),(t,i)
Figure BDA00003644292100642
Figure BDA00003644292100643
Figure BDA00003644292100644
Figure BDA00003644292100645
Figure BDA00003644292100647
Figure BDA00003644292100648
Figure BDA00003644292100649
Figure BDA000036442921006410
Figure BDA000036442921006411
Figure BDA000036442921006413
Figure BDA000036442921006414
[式180]
Figure BDA00003644292100651
Figure BDA00003644292100652
Figure BDA00003644292100653
Figure BDA00003644292100654
Figure BDA00003644292100655
Figure BDA00003644292100657
Figure BDA00003644292100658
Figure BDA00003644292100659
Figure BDA000036442921006510
Figure BDA000036442921006511
sk L + 1 : = ( ( ( v &RightArrow; 1 , &rho; 1 ) , . . . , ( v &RightArrow; L + 1 , &rho; L + 1 ) ) ;
k L + 1 , dec * , { k L + 1 , ran , j ' * } j &prime; = 1 , . . . , 2 ( L + 1 ) ,
{ k L + 1 , ran , ( &tau; , &iota; , 0 ) * , k L + 1 , del , ( &tau; , &iota; , 0 ) * , k L + 1 , del , ( &tau; , &iota; , 1 ) * } &tau; = L + 2 , . . . , d ; ( &tau; , &iota; ) = ( &tau; , 1 ) , . . . , ( &tau; , n &tau; ) ) ,
返回skL+1.
另外,在下位的解密装置300使用移交密钥skL+1执行了Dec算法的情况下,在图15的(S403)中,如果(v→1,...,v→L+1)与(x→1,...,x→L+1)的内积是0,则通过计算式170,计算会话密钥K。
如以上那样,实施方式2所涉及的密码处理系统10在针对一部分,属性信息与谓词信息的内积成为0,针对剩余的部分,属性信息与谓词信息的内积不为0的情况下,实现可解密的分层式内积谓词密码方式。因此,例如,能够实现肯定形和否定形的条件设定等。
另外,在上述说明中,ut、wt、zt(t=0,...,d)的维度是为了提高安全性而设置的维度。因此,虽然安全性变低,但也可以使ut、wt、zt(t=0,...,d)分别为0,而不设置ut、wt、zt(t=0,...,d)的维度。
另外,在上述说明中,对N0设定了1+u0+1+w0+z0,对Nt设定了nt+ut+wt+zt。但是,也可以使1+u0+1+w0+z0设为1+1+1+1+1对N0设定5,使nt+ut+wt+zt设为nt+nt+nt+1对Nt设定3nt+1。
在该情况下,式168、式169所示的KeyGen算法如式181、式182那样被置换。
[式181]
Figure BDA00003644292100662
其中,j=1,...,2L;τ=L+1,...,d;(τ,ι)=(τ,1),...,(τ,nτ);
Figure BDA00003644292100663
Figure BDA00003644292100664
Figure BDA000036442921006619
Figure BDA000036442921006620
Figure BDA000036442921006621
Figure BDA000036442921006622
Figure BDA00003644292100665
Figure BDA00003644292100666
Figure BDA00003644292100667
Figure BDA000036442921006623
Figure BDA00003644292100668
(t=0,...,L+1);
s dec , 0 : = &Sigma; t = 1 L s dec , t , s ran , j , 0 : = &Sigma; t = 1 L s ran , j , t , s ran , 0,0 : = &Sigma; t = 1 L s ran , 0 , t ,
s del , 0,0 : = &Sigma; t = 1 L + 1 s del , 0 , t , s del , 1,0 : = &Sigma; t = 1 L + 1 s del , 1 , t ,
Figure BDA000036442921006614
Figure BDA000036442921006615
Figure BDA000036442921006616
Figure BDA000036442921006617
Figure BDA000036442921006618
[式182]
Figure BDA00003644292100671
Figure BDA00003644292100672
Figure BDA00003644292100673
Figure BDA00003644292100674
Figure BDA00003644292100675
Figure BDA00003644292100676
Figure BDA00003644292100678
Figure BDA00003644292100679
Figure BDA000036442921006710
Figure BDA000036442921006711
Figure BDA000036442921006712
sk L : = ( ( ( v &RightArrow; 1 , &rho; 1 ) , . . . , ( v &RightArrow; L , &rho; L ) ) ;
k L , dec * , { k L , ran , j * } j = 1 , . . . , 2 L , { k L , ran , ( &tau; , &iota; , 0 ) * , k L , del , ( &tau; , &iota; , 0 ) * , k L , del , ( &tau; , &iota; , 1 ) * }
&tau; = L + 1 , . . . , d ; ( &tau; , &iota; ) = ( &tau; , 1 ) , . . . , ( &tau; , n &tau; ) ) ,
返回skL.
另外,式179、式180所示的DelegateL算法如式183、式184那样被置换。
[式183]
Delegate L ( pk , sk L , ( v &RightArrow; L + 1 , &rho; L + 1 ) : = ( ( v L + 1,1 , &CenterDot; &CenterDot; &CenterDot; , v L + 1 , n L + 1 ) , &rho; L + 1 ) ) :
其中,j=1,...,2L;j’=1,...,2(L+1);τ=L+2,...,d;(τ,ι)=(τ,1),...,(τ,nτ);
t=0,...,L+1,τ;(t,i)=(t,1),...,(t,nt);
αdec,j,σdec,αran,j’,j,σran,j’,αran,(τ,ι,0),j,σran,(τ,ι,0),φran,(τ,ι,0)
αdel,(τ,ι,0),j,σdel,(τ,ι,0),φdel,(τ,ι,0),αdel,(τ,ι,1),j,σdel,(τ,ι,1),φdel,(τ,t,1)
ηdec,(t,i),ηran,j’,(t,i),ηran,(τ,ι,0),(t,i),ηdel,(τ,ι,0),(t,i),ηdel,(τ,ι,1),(t,i)
Figure BDA00003644292100682
Figure BDA00003644292100683
Figure BDA00003644292100684
Figure BDA00003644292100685
Figure BDA00003644292100687
Figure BDA00003644292100688
Figure BDA000036442921006810
Figure BDA000036442921006811
Figure BDA000036442921006812
[式184]
Figure BDA00003644292100691
Figure BDA00003644292100693
Figure BDA00003644292100694
Figure BDA00003644292100696
Figure BDA00003644292100698
Figure BDA00003644292100699
sk L + 1 : = ( ( ( v &RightArrow; 1 , &rho; 1 ) , . . . , ( v &RightArrow; L + 1 , &rho; L + 1 ) ) ;
k L + 1 , dec * , { k L + 1 , ran , j &prime; * } j &prime; = 1 , . . . , 2 ( L + 1 ) ,
{ k L + 1 , ran , ( &tau; , &iota; , 0 ) * , k L + 1 , del , ( &tau; , &iota; , 0 ) * , k L + 1 , del , ( &tau; , &iota; , 1 ) * } &tau; = L + 2 , . . . , d ; ( &tau; , &iota; ) = ( &tau; , 1 ) , . . . , ( &tau; , n &tau; ) ) ,
返回skL+1.
另外,在式172所示的Dec算法中无变更。
另外,Setup算法在密码处理系统10的设置时执行一次即可,而无需每当生成解密密钥时执行。另外,在上述说明中,使密钥生成装置100执行了Setup算法和KeyGen算法,但也可以使分别不同的装置执行Setup算法和KeyGen算法。
实施方式3.
在以上的实施方式中,说明了在对偶矢量空间中实现密码处理的方法。在该实施方式中,说明在对偶加法群中实现密码处理的方法。
即,在以上的实施方式中,在素数位数q的循环群中实现了密码处理。但是,在使用合成数M如式185那样表示了环R的情况下,即使在以环R为系数的加法群中,也能够应用在上述实施方式中说明的密码处理。
[式185]
Figure BDA00003644292100701
Figure BDA00003644292100702
整数
M:合成数
如果在以环R为系数的加法群中实现在实施方式1中说明的分层式谓词密码方式,则如式186至式193那样。
[式186]
Setup ( 1 &lambda; , n &RightArrow; : = ( d ; n 1 , . . . , n d , u 0 , . . . , u d , w 0 , . . . , w d , z 0 , . . . , z d ) ) :
Figure BDA00003644292100705
Figure BDA00003644292100707
其中,t=1,...,d,
Figure BDA00003644292100708
Figure BDA00003644292100709
Figure BDA000036442921007011
Figure BDA000036442921007012
返回pk,sk.
[式187]
Figure BDA00003644292100711
N0:=1+u0+1+w0+z0,Nt:=nt+ut+wt+zt其中,t=1,..,d,
Figure BDA00003644292100712
Figure BDA00003644292100713
其中,t=0,...,d,
Figure BDA00003644292100714
( v t , i , j ) i , j : = &psi; &CenterDot; ( X t T ) - 1 ,
Figure BDA00003644292100717
Figure BDA00003644292100718
Figure BDA00003644292100719
gT:=e(g,g)ψ
Figure BDA000036442921007111
返回
Figure BDA000036442921007112
[式188]
KeyGen ( pk , sk , ( v &RightArrow; 1 , . . . , v &RightArrow; L ) : = ( v 1 , 1 , . . . , v 1 , n 1 ) , . . . , ( v L , 1 , . . . , v L , n L ) ) :
其中j=1,...,2L;τ=L+1,...,d;(τ,ι)=(τ,1),...,(τ,nτ);
ψ,sdec,t
Figure BDA000036442921007114
θdec,t
Figure BDA000036442921007115
Figure BDA000036442921007124
Figure BDA000036442921007116
sran,(τ,ι),t
Figure BDA000036442921007117
θran,(τ,ι),t
Figure BDA000036442921007118
Figure BDA000036442921007125
Figure BDA000036442921007119
(t=0,...,L+1);
s dec , 0 : = &Sigma; t = 1 L s dec , t , s ran , j , 0 : = &Sigma; t = 1 L s ran , j , t ,
s ran , ( &tau; , &iota; ) , 0 : = &Sigma; t = 1 L + 1 s ran , ( &tau; , &iota; ) , t , s del , ( &tau; , &iota; ) , 0 : = &Sigma; t = 1 L + 1 s del , ( &tau; , &iota; ) , t ,
[式189]
Figure BDA00003644292100722
Figure BDA00003644292100723
Figure BDA00003644292100726
Figure BDA00003644292100727
Figure BDA00003644292100728
Figure BDA00003644292100729
Figure BDA000036442921007211
Figure BDA000036442921007212
Figure BDA000036442921007213
sk L : = ( k L , dec * , { k L , ran , j * } j = 1 , . . . , 2 L ,
{ k L , ran , ( &tau; , &iota; ) * } &tau; = L + 1 , . . . , d ; ( &tau; , &iota; ) = ( &tau; , 1 ) , . . . , ( &tau; , n &tau; ) ,
{ k L , del , ( &tau; , &iota; ) * } &tau; = L + 1 , . . . , d ; ( &tau; , &iota; ) = ( &tau; , 1 ) , . . . , ( &tau; , n &tau; ) ) ,
返回skL
[式190]
Figure BDA000036442921007217
Figure BDA000036442921007218
Figure BDA000036442921007219
Figure BDA000036442921007220
Figure BDA000036442921007221
Figure BDA000036442921007222
ct:=(c1,c2),
返回Ct·
[式191]
Dec ( pk , k L , dec * , ct ) : m &prime; : = c 2 / e ( c 1 , k L , dec * )
返回m'.
[式192]
Delegate L ( pk , sk L , v &RightArrow; L + 1 : = ( v L + 1,1 , &CenterDot; &CenterDot; &CenterDot; , v L + 1 , n L + 1 ) ) :
其中,j=1,...,2L;j’=1,...,2(L+1);τ=L+2,...,d;(τ,ι)=(τ,1),...,(τ,nτ);
t=0,...,L+1,τ;(t,i)=(t,1),...,(t,wt);
αdec,j,σdec,αran,j’,j,σran,j’,αran,(τ,ι),j,σran,(τ,ι)
φran,(τ,ι),αdel,(τ,ι),j,σdel,(τ,ι),φdel,(τ,ι),ψ',
ηdec,(t,i),ηran,j’,(t,i),ηran,(τ,ι),(t,i)
Figure BDA00003644292100732
[式193]
k L + 1 , dec * : = k L , dec * + &Sigma; j = 1 2 L &alpha; dec , j k L , ran , j *
+ &sigma; dec ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * ) + &Sigma; i = 1 w t &eta; dec , ( 0 , i ) b 0,1 + u 0 + 1 + i *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 w t &eta; dec , ( t , i ) b t , n t + u t + i * ,
k L + 1 , ran , j &prime; * : = &Sigma; j = 1 2 L &alpha; ran , j &prime; , j k L , ran , j *
+ &sigma; ran , j &prime; ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * ) + &Sigma; i = 1 w t &eta; ran , j &prime; , ( 0 , i ) b 0,1 + u 0 + 1 + i *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 w t &eta; ran , j &prime; , ( t , i ) b t , n t + u t + i * ,
k L + 1 , ran , ( &tau; , &iota; ) * : = &Sigma; j = 1 2 L &alpha; ran , ( &tau; , &iota; ) , j k L , ran , j *
+ &sigma; ran , ( &tau; , &iota; ) ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * )
+ &phi; ran , ( &tau; , &iota; ) k L , ran , ( &tau; , &iota; ) * + &Sigma; i = 1 w t &eta; ran , ( &tau; , &iota; ) , ( 0 , i ) b 0,1 + u 0 + 1 + i *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 w t &eta; ran , ( &tau; , &iota; ) , ( t , i ) b t , n t + u t + i *
+ &Sigma; i = 1 w &tau; &eta; ran , ( &tau; , &iota; ) , ( &tau; , i ) b &tau; , n &tau; + u &tau; + i * ,
k L + 1 , del , ( &tau; , &iota; ) * : = &Sigma; j = 1 2 L &alpha; del , ( &tau; , &iota; ) , j k L , ran , j *
+ &sigma; del , ( &tau; , &iota; ) ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * ) + &psi; &prime; k L , del , ( &tau; , &iota; ) *
+ &phi; del , ( &tau; , &iota; ) k L , ran , ( &tau; , &iota; ) * + &Sigma; i = 1 w t &eta; del , ( &tau; , &iota; ) , ( 0 , i ) b 0,1 + u 0 + 1 + i *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 w t &eta; del , ( &tau; , &iota; ) , ( t , i ) b t , n t + u t + i *
+ &Sigma; i = 1 w &tau; &eta; del , ( &tau; , &iota; ) , ( &tau; , i ) b &tau; , n &tau; + u &tau; + i * ,
sk L + 1 : = ( k L + 1 , dec * , { k L + 1 , ran , j &prime; * } j &prime; = 1 , . . . , 2 ( L + 1 ) ,
{ k L + 1 , ran , ( &tau; , &iota; ) * , k L + 1 , del , ( &tau; , &iota; ) * } &tau; = L + 2 , . . . , d ; ( &tau; , &iota; ) = ( &tau; , 1 ) , . . . , ( &tau; , n &tau; ) ) ,
返回skL+1
如果在以环R为系数的加法群中实现在实施方式2中说明的分层式谓词密码方式,则如式194至式199那样。另外,Setup算法和Gob算法是如式186和式187所示那样。
[式194]
Figure BDA00003644292100741
其中j=1,...,2L;τ=L+1,...,d;(τ,ι)=(τ,1),...,(τ,nτ);
ψ,sdec,t
Figure BDA00003644292100743
θdec,t
Figure BDA00003644292100744
Figure BDA000036442921007420
Figure BDA000036442921007421
Figure BDA000036442921007422
Figure BDA000036442921007423
Figure BDA00003644292100745
sran,0,t,sdel,0,t
Figure BDA00003644292100746
θran,0,t,θdel,0,t
Figure BDA00003644292100747
Figure BDA00003644292100748
(t=0,...,L+1);
s dec , 0 : = &Sigma; t = 1 L s dec , t , s ran , j , 0 : = &Sigma; t = 1 L s ran , j , t , s ran , 0 , 0 : = &Sigma; t = 1 L s ran , 0 , t ,
s del , 0 , 0 : = &Sigma; t = 1 L + 1 s del , 0 , t , s del , 1 , 0 : = &Sigma; t = 1 L + 1 s del , 1 , t ,
Figure BDA000036442921007414
Figure BDA000036442921007415
Figure BDA000036442921007416
Figure BDA000036442921007417
Figure BDA000036442921007418
[式195]
Figure BDA00003644292100751
Figure BDA00003644292100752
Figure BDA00003644292100753
Figure BDA00003644292100754
Figure BDA00003644292100755
Figure BDA00003644292100757
Figure BDA00003644292100759
Figure BDA000036442921007510
Figure BDA000036442921007511
Figure BDA000036442921007512
sk L : = ( ( ( v &RightArrow; 1 , &rho; 1 ) , . . . , ( v &RightArrow; L , &rho; L ) ) ;
k L , dec * , { k L , ran , j * } j = 1 , . . . , 2 L , { k L , ran , ( &tau; , &iota; , 0 ) * , k L , del , ( &tau; , &iota; , 0 ) * , k L , del , ( &tau; , &iota; , 1 ) * }
&tau; = L + 1 , . . . , d ; ( &tau; , &iota; ) = ( &tau; , 1 ) , . . . , ( &tau; , n &tau; ) ) ,
返回skL.
[式196]
Figure BDA000036442921007523
Figure BDA000036442921007524
Figure BDA000036442921007518
Figure BDA000036442921007519
Figure BDA000036442921007520
c 2 : = g T &zeta; m ,
ct : = ( ( x &RightArrow; 1 , . . . , x &RightArrow; L ) ; c 1 , c 2 ) ,
返回ct.
[式197]
Dec(pk,skL,ct):
Figure BDA00003644292100761
Figure BDA00003644292100762
Figure BDA00003644292100763
Figure BDA00003644292100764
Figure BDA00003644292100765
m’:=c2/K,
返回m'.
[式198]
Delegate L ( pk , sk L , ( v &RightArrow; L + 1 , &rho; L + 1 ) : = ( ( v L + 1,1 , &CenterDot; &CenterDot; &CenterDot; , v L + 1 , n L + 1 ) , &rho; L + 1 ) ) :
其中j=1,...,2L;j’=1,...,2(L+1);τ=L+2,...,d;(τ,ι)=(τ,1),...,(τ,nτ);
t=0,...,L+1,τ;(t,i)=(t,1),...,(t,wt);
αdec,j,σdec,αran,j’,j,σran,j’,αtan,(τ,ι,0),j,σran,(τ,ι,0),φran,(τ,ι,0)
αdel,(τ,ι,0),j,σdel,(τ,ι,0),φdel,(τ,ι,0),αdel,(τ,ι,1),j,σdel,(τ,ι,1),φdel,(τ,ι,1)
ηdec,(t,i),ηran,j’,(t,i),ηran,(τ,ι,0),(t,i),ηdel,(τ,ι,0),(t,i),ηdel,(τ,ι,1),(t,i)
Figure BDA00003644292100772
Figure BDA00003644292100773
Figure BDA00003644292100774
Figure BDA00003644292100775
Figure BDA00003644292100776
Figure BDA00003644292100777
Figure BDA00003644292100778
Figure BDA00003644292100779
Figure BDA000036442921007710
Figure BDA000036442921007711
Figure BDA000036442921007712
Figure BDA000036442921007713
Figure BDA000036442921007714
[式199]
Figure BDA00003644292100781
Figure BDA00003644292100783
Figure BDA00003644292100784
Figure BDA00003644292100785
Figure BDA00003644292100786
Figure BDA00003644292100788
Figure BDA00003644292100789
Figure BDA000036442921007810
Figure BDA000036442921007811
sk L + 1 : = ( ( ( v &RightArrow; 1 , &rho; 1 ) , . . . , ( v &RightArrow; L + 1 , &rho; L + 1 ) ) ;
k L + 1 , dec * , { k L + 1 , ran , j &prime; * } j &prime; = 1 , . . . , 2 ( L + 1 ) ,
{ k L + 1 , ran , ( &tau; , &iota; , 0 ) * , k L + 1 , del , ( &tau; , &iota; , 0 ) * , k L + 1 , del , ( &tau; , &iota; , 1 ) * } &tau; = L + 2 , . . . , d ; ( &tau; , &iota; ) = ( &tau; , 1 ) , . . . , ( &tau; , n &tau; ) ) ,
返回skL+1.
接下来,说明实施方式中的密码处理系统10(密钥生成装置100、加密装置200、解密装置300、密钥移交装置400)的硬件结构。
图20是示出密钥生成装置100、加密装置200、解密装置300、密钥移交装置400的硬件结构的一个例子的图。
如图20所示,密钥生成装置100、加密装置200、解密装置300、密钥移交装置400具备执行程序的CPU911(Central·Processing·Unit、还称为中央处理装置、处理装置、运算装置、微处理器、微型计算机、处理器)。CPU911经由总线912而与ROM913、RAM914、LCD901(Liquid Crystal Display)、键盘902(K/B)、通信板915、磁盘装置920连接,控制这些硬件设备。也可以代替磁盘装置920(固定盘装置),而使用光盘装置、存储卡读写装置等存储装置。磁盘装置920经由规定的固定盘接口连接。
ROM913、磁盘装置920是非易失性存储器的一个例子。RAM914是易失性存储器的一个例子。ROM913、RAM914、以及磁盘装置920是存储装置(存储器)的一个例子。另外,键盘902、通信板915是输入装置的一个例子。另外,通信板915是通信装置的一个例子。进而,LCD901是显示装置的一个例子。
在磁盘装置920或者ROM913等中,存储了操作系统921(OS)、视窗系统922、程序群923、文件群924。程序群923的程序由CPU911、操作系统921、视窗系统922执行。
在程序群923中,存储了执行在上述说明中作为“主密钥生成部110”、“主密钥存储部120”、“信息输入部130”、“解密密钥生成部140”、“密钥分发部150”、“主公开密钥取得部210”、“信息输入部220”、“加密数据生成部230”、“数据发送部240”、“解密密钥取得部310”、“数据接收部320”、“配对运算部330”、“消息计算部340”、“解密密钥取得部410”、“信息输入部420”、“移交密钥生成部430”、“密钥分发部440”等说明了的功能的软件、程序、其他程序。程序由CPU911读出并执行。
在文件群924中,在上述说明中,作为“文件”、“数据库”的各项目,存储“主公开密钥pk”、“主秘密密钥sk”、“解密密钥skL”、“移交密钥skL+1”、“加密数据ct”、“属性信息”、“谓词信息”、“消息m”等信息、数据、信号值、变量值、参数。“文件”、“数据库”存储于盘、存储器等记录介质中。关于盘、存储器等存储介质中存储的信息、数据、信号值、变量值、参数,经由读写电路,通过CPU911,读出到主存储器、高速缓存存储器,用于抽出、检索、参照、比较、运算、计算、处理、输出、印刷、显示等CPU911的动作。在抽出、检索、参照、比较、运算、计算、处理、输出、印刷、显示的CPU911的动作的期间,信息、数据、信号值、变量值、参数被临时地存储于主存储器、高速缓存存储器、缓冲存储器。
另外,上述说明中的流程图的箭头的部分主要表示数据、信号的输入输出,数据、信号值被记录于RAM914的存储器、其他光盘等记录介质、IC芯片。另外,数据、信号通过总线912、信号线、线缆等的传送介质、电波在线传送。
另外,在上述说明中说明为“~部”的部分既可以是“~电路”、“~装置”、“~设备”、“~单元”、“~功能”,并且,也可以是“~步骤”、“~阶段”、“~处理”。另外,说明为“~装置”的部分也可以是“~电路”、“~设备”、“~单元”、“~功能”,并且,也可以是“~步骤”、“~阶段”、“~处理”。进而,说明为“~处理”的部分也可以是“~步骤”。即,说明为“~部”的部分也可以通过ROM913中存储的固件来实现。或者,也可以仅通过软件、或者、仅通过元件、器件、基板、布线等硬件、或者、通过软件与硬件的组合、进而、通过与固件的组合来实施。固件和软件作为程序存储于ROM913等记录介质中。程序由CPU911读出并由CPU911执行。即,程序使计算机等作为在上述中叙述的“~部”发挥功能。或者,使计算机等执行在上述中叙述的“~部”的步骤、方法。

Claims (18)

1.一种密码处理系统,使用关于t=1,...,L+1的各整数t的基底Bt和基底B* t来进行密码处理,其中,L是1以上的整数,该密码处理系统的特征在于,具备:
加密装置,生成在关于t=1,...,L中的至少一部分的整数t的基底Bt的基底矢量中嵌入了属性信息x→t的矢量,作为加密数据ct;
解密装置,将在关于t=1,...,L的各整数t的基底B* t的基底矢量中嵌入谓词信息v→t的矢量作为解密密钥skL,针对所述加密装置生成的加密数据ct和所述解密密钥skL进行配对运算而对所述加密数据ct进行解密;以及
密钥移交装置,根据在基底B* L+1的基底矢量中嵌入了谓词信息v→L+1的矢量、和所述解密装置使用的解密密钥skL,生成所述解密密钥skL的下位的解密密钥skL+1
2.根据权利要求1所述的密码处理系统,其特征在于,
所述密码处理系统还具备密钥生成装置,该密钥生成装置生成所述解密密钥skL
所述密钥生成装置具备:
第1信息输入部,针对t=1,...,L的各整数t输入谓词信息v→t:=(vt,i)(i=1...,nt);
解密要素生成部,使用所述第1信息输入部输入的谓词信息v→t、规定的值Δ、关于t=1,...,L的各整数t的规定的值θdec,t、以及sdec0t=1 L sdec,t那样的关于t=0,...,L的各整数t的规定的值sdec,t,生成解密要素k* L,dec,该解密要素k* L,dec作为基底B* 0的基底矢量b* 0,p的系数设定了-sdec,0,作为基底B* 0的基底矢量b* 0,q的系数设定了所述Δ,作为关于t=1,...,L的各整数t的基底B* t的基底矢量b* t,i(i=1,...,nt)的系数设定了sdec,te→t,1dec,tvt,i(i=1,...,nt),其中,p是规定的值,q是规定的值;以及
解密密钥发送部,将包括所述解密要素生成部生成的解密要素k* L,dec的解密密钥skL发送到所述解密装置,
所述加密装置具备:
第2信息输入部,针对t=1,...,L的至少一部分的整数t,输入属性信息x→t:=(xt,i)(i=1,...,nt);
加密数据c1生成部,使用所述第2信息输入部输入的属性信息x→t、和规定的值ω,ζ,生成加密数据c1,该加密数据c1作为基底B0的基底矢量b0,p的系数设定了所述ω,作为基底B0的基底矢量b0,q的系数设定了所述ζ,作为关于所述至少一部分的整数t的基底Bt的基底矢量bt,i(i=1,...,nt)的系数设定了ωxt,i(i=1,...,nt);以及
数据发送部,将包括所述加密数据c1生成部生成的加密数据c1的加密数据ct发送到所述解密装置,
所述解密装置具备配对运算部,该配对运算部针对所述数据发送部发送了的加密数据ct所包含的加密数据c1、和所述解密密钥发送部发送了的所述解密密钥skL所包含的解密要素k* L,dec,进行配对运算e(c1,k* L,dec)。
3.根据权利要求2所述的密码处理系统,其特征在于,
所述加密装置还具备加密数据c2生成部,该加密数据c2生成部生成对消息m乘以根据值gT=e(b0,1,b* 0,1)、所述Δ以及所述ζ得到的gT Δζ而得到的加密数据c2
所述数据发送部将包括加密数据c1、和所述加密数据c2生成部生成的加密数据c2的加密数据ct发送到所述解密装置,
所述配对运算部进行所述配对运算e(c1,k* L,dec),计算会话密钥K:=gT Δζ
所述解密装置还具备消息计算部,该消息计算部将所述加密数据c2除以所述配对运算部计算出的会话密钥K来计算所述消息m。
4.根据权利要求2所述的密码处理系统,其特征在于,
所述密钥生成装置还具备移交要素生成部,
该移交要素生成部是针对作为τ=L+1的整数τ、和ι=1,...,nτ的各整数ι生成移交要素k* L,del,(τ,ι)的移交要素生成部,该移交要素生成部使用关于t=1,...,L的各整数t的规定的值θdel,(τ,ι),t、规定的值ψ、以及sdel,(τ,ι),0t=1 L+1sdel,(τ,ι),t那样的关于t=0,...,L+1的各整数t的规定的值sdel,(τ,ι),t,作为基底B* 0的基底矢量b* 0, p的系数设定-sdel,(τ,ι),0,作为关于t=1,...,L的各整数t的基底B* t的基底矢量b* t,i(i=1,...,nt)的系数设定sdel,(τ,ι),te→t1del,(τ,ι), tvt,i(i=1,...,nt),作为基底B* τ的基底矢量b* τ,i(i=1,...,nτ)的系数设定sdel,(τ,ι),L+1e→τ,1+ψe→τ,ι(i=1,...,nτ),生成移交要素k* L,del,(τ,ι)
所述解密密钥发送部将包括所述解密要素k* L,dec、和所述移交要素生成部生成的移交要素k* L,del,(τ,ι)的解密密钥skL发送到所述移交装置,
所述密钥移交装置具备:
第3信息输入部,输入谓词信息v→L+1:=(vL+1,i)(i=1,...,nL+1);
下位解密要素生成部,使用所述第3信息输入部输入的谓词信息v→L+1、和所述解密密钥发送部发送了的解密密钥skL,生成包括式1所示的矢量的下位解密要素k* L+1,dec;以及
移交密钥发送部,将包括所述下位解密要素生成部生成的下位解密要素k* L+1,dec的下位的解密密钥skL+1发送到下位的解密装置,
[式1]
k L , dec * + &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) *
                                                。
5.根据权利要求2所述的密码处理系统,其特征在于,
所述密码处理系统使用
至少具有基底矢量b0,i(i=1,...,1+n0,1+n0+1,...,1+n0+1+u0,...,1+n0+1+u0+w0,...,1+n0+1+u0+w0+z0)(n0,u0,w0,z0是1以上的整数)的基底B0
至少具有基底矢量b* 0,i(i=1,...,1+n0,1+n0+1,...,1+n0+1+u0,...,1+n0+1+u0+w0,...,1+n0+1+u0+w0+z0)(n0,u0,w0,z0是1以上的整数)的基底B* 0
至少具有基底矢量bt,i(i=1,...,nt,...,nt+ut,...,nt+ut+wt,...,nt+ut+wt+zt)(ut,wt,zt是1以上的整数)的基底Bt(t=1,...,L+1)、以及
至少具有基底矢量b* t,i(i=1,...,nt,...,nt+ut,...,nt+ut+wt,...,nt+ut+wt+zt)的基底B* t(t=1,...,L+1)
来进行密码处理,
所述解密要素生成部根据关于t=0,...,L的各整数t的随机数η→dec,t:=(ηdec,t,i)(i=1,...,wt),生成式2所示的解密要素k* Ldec
所述加密数据c1生成部根据关于t=0,...,L的各整数t的随机数φ→t:=(φt,i)(i=1,...,zt),生成式3所示的加密数据c1
[式2]
Figure FDA00003644292000042
[式3]
Figure FDA00003644292000043
6.根据权利要求5所述的密码处理系统,其特征在于,
所述密钥生成装置还具备随机化要素生成部,该随机化要素生成部针对j=1,...,2L的各整数j,生成第1随机化要素k* L,ran,j,并且针对τ=L+1,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,生成第2随机化要素k* L,ran,(τ,ι),其中,d是L+1以上的整数,并且,
该随机化要素生成部根据关于t=1,...,L的各整数t的规定的值θran,j,t、sran,j,0t=1 Lsran,j,t那样的关于t=0,...,L的规定的值sran,j, t、以及关于t=0,...,L的各整数t的随机数η→ran,j,t:=(ηran,j,t,i)(i=1,...,wt),生成式4所示的第1随机化要素k* L,ran,j
该随机化要素生成部根据关于t=1,...,L的各整数t的规定的值θran,(τ,ι),t、sran,(τ,ι),0t=1 L+1sran,(τ,ι),t那样的关于t=0,...,L+1的规定的值sran,(τ,ι),t、和关于t=0,...,L+1的各整数t的随机数η→ran, (τ,ι),t:=(ηran,(τ,ι),t,i)(i=1,...,wt),生成式5所示的第2随机化要素k* L,ran,(τ,ι)
所述移交要素生成部针对τ=L+1,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,根据关于t=0,...,L+1的各整数t的随机数η→del,(τ,ι),t:=(ηdel,(τ,ι),t,i)(i=1,...,wt),生成式6所示的移交要素k* L,del,(τ,ι)
所述解密密钥发送部将包括所述解密要素k* L,dec、所述随机化要素生成部生成的第1随机化要素k* L,ran,j以及第2随机化要素k* L,ran, (τ,ι)、和所述移交要素生成部生成的移交要素k* L,del,(τ,ι)的解密密钥skL发送到所述移交装置,
所述下位解密要素生成部使用所述谓词信息v→L+1、所述解密密钥发送部发送了的解密密钥skL、关于j=1,...,2L的各整数j的随机数αdec,j、随机数σdec、以及关于t=0,...,L+1的各整数t和i=1,...,wt的各整数i的随机数ηdec,(t,i),生成式7所示的下位解密要素k* L+1, dec
[式4]
Figure FDA00003644292000052
Figure FDA00003644292000053
[式5]
Figure FDA00003644292000054
Figure FDA00003644292000055
Figure FDA00003644292000056
Figure FDA00003644292000057
[式6]
Figure FDA00003644292000062
Figure FDA00003644292000064
[式7]
k L + 1 , dec * : = k L , dec * + &Sigma; j = 1 2 L + 1 &alpha; dec , j k L , ran , j *
+ &sigma; dec ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * ) + &Sigma; i = 1 w t &eta; dec , ( 0 , i ) b 0,1 + u 0 + 1 + i *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 w t &eta; dec , ( t , i ) b t , n t + u t + i *
                                          。
7.根据权利要求6所述的密码处理系统,其特征在于,
所述移交装置还具备:
下位随机化要素生成部,针对j’=1,...,2(L+1)的各整数j’,生成第1下位随机化要素k* L+1,ran,j’,并且针对τ=L+2,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,生成第2下位随机化要素k* L+1,ran,(τ,ι),其中,d是L+2以上的整数,并且,该下位随机化要素生成部根据所述谓词信息v→L+1、所述解密密钥skL、关于j=1,...,2L的各整数j和j’=1,...,2(L+1)的各整数j’的随机数αran, j’,j、关于j’=1,...,2(L+1)的各整数j’的随机数σran,j’、以及关于t=0,...,L+1的各整数t和i=1,...,wt的各整数i的随机数ηran,j’,(t, i),生成式8所示的第1下位随机化要素k* L+1,ran,j’,根据所述谓词信息v→L+1、所述解密密钥skL、关于j=1,...,2L的各整数j的随机数αran, (τ,ι),j、随机数σran,(τ,ι)、随机数φran,(τ,ι)、以及关于t=0,...,L+1,τ的各整数t和i=1,...,wt的各整数i的ηran,(τ,ι)、(t,i),生成式9所示的第2下位随机化要素k* L+1,ran,(τ,ι);以及
下位移交要素生成部,针对τ=L+2,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,生成下位移交要素k* L+1,del,(τ,ι),并且,该下位移交要素生成部根据所述谓词信息v→L+1、所述解密密钥skL、关于j=1,...,2L的各整数j的随机数αdel,(τ,ι),j、随机数σdel, (τ,ι)、随机数ψ’、随机数φdel,(τ,ι)、以及关于t=0,...,L+1,τ的各整数t和i=1,...,wt的各整数i的ηdel,(τ,ι)、(t,i),生成式10所示的下位移交要素k* L+1,del,(τ,ι),其中,d是L+2以上的整数,
所述移交密钥发送部将包括所述下位解密要素生成部生成的下位解密要素k* L+1,dec、所述下位随机化要素生成部生成的第1下位随机化要素k* L+1,ran,j’以及第2下位随机化要素k* L+1,ran,(τ,ι)、和所述下位移交要素生成部生成的下位移交要素k* L+1,del,(τ,ι)的下位的解密密钥skL+1发送到下位的移交装置,
[式8]
k L + 1 , ran , j &prime; * : = &Sigma; j = 1 2 L + 1 &alpha; ran , j &prime; , j k L , ran , j *
+ &sigma; ran , j &prime; ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * )
+ &Sigma; i = 1 w t &eta; ran , j &prime; , ( 0 , i ) b 0,1 + u 0 + 1 + i *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 w t &eta; ran , j &prime; , ( t , i ) b t , n t + u t + i *
[式9]
k L + 1 , ran , ( &tau; , &iota; ) * : = &Sigma; j = 1 2 L + 1 &alpha; ran , ( &tau; , &iota; ) , j k L , ran , j *
+ &sigma; ran , ( &tau; , &iota; ) ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * )
+ &phi; ran , ( &tau; , &iota; ) k L , ran , ( &tau; , &iota; ) * + &Sigma; i = 1 w t &eta; ran , ( &tau; , &iota; ) , ( 0 , i ) b 0,1 + u 0 + 1 + i *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 w t &eta; ran , ( &tau; , &iota; ) , ( t , i ) b t , n t + u t + i *
+ &Sigma; i = 1 w t &eta; ran , ( &tau; , &iota; ) , ( &tau; , i ) b &tau; , n &tau; + u &tau; + i *
[式10]
k L + 1 , del , ( &tau; , &iota; ) * : = &Sigma; j = 1 2 L + 1 &alpha; del , ( &tau; , &iota; ) , j k L , ran , j *
+ &sigma; del , ( &tau; , &iota; ) ( &Sigma; i = 1 n L + 1 v L + 1 , i k L , del , ( L + 1 , i ) * ) + &psi; &prime; k L , del , ( &tau;&iota; ) *
+ &phi; del , ( &tau; , &iota; ) k L , ran , ( &tau; , &iota; ) * + &Sigma; i = 1 w t &eta; del , ( &tau; , &iota; ) , ( 0 , i ) b 0,1 + u 0 + 1 + i *
+ &Sigma; t = 1 L + 1 &Sigma; i = 1 w t &eta; del , ( &tau; , &iota; ) , ( t , i ) b t , n t + u t + i *
+ &Sigma; i = 1 w t &eta; del , ( &tau; , &iota; ) , ( &tau; , i ) b &tau; , n &tau; + u &tau; + i * ,
                                     。
8.根据权利要求2所述的密码处理系统,其特征在于,
所述第1信息输入部针对t=1,...,L的各整数t输入谓词信息(v→t:=(vt,i)(i=1,...,nt),ρt∈{0,1}),
所述解密要素生成部生成解密要素k* L,dec,该解密要素k* L,dec作为基底矢量b* 0,p的系数设定了-sdec,0,作为基底矢量b* 0,q的系数设定了所述Δ,作为关于t=1,...,L的各整数t的基底矢量b* t,i的系数,在ρt是0的情况下设定了sdec,te→t,1dec,tvt,i(i=1,...,nt),在ρt是1的情况下设定了sdec,tvt,i(i=1,...,nt)。
9.根据权利要求8所述的密码处理系统,其特征在于,
所述密钥生成装置还具备移交要素生成部,该移交要素生成部针对作为τ=L+1的整数τ、和ι=1,...,nτ的各整数ι生成第1移交要素k* L,del,(τ,ι,0)和第2移交要素k* L,del,(τ,ι,1),并且,
该移交要素生成部使用关于t=1,...,L的各整数t的规定的值θdel, 0,t、规定的值ψ、以及sdel,0,0t=1 L+1sdel,0,t那样的关于t=0,...,L+1的规定的值sdel,0,t,作为基底B* 0的基底矢量b* 0,p的系数设定-sdel, 0,0,作为关于t=1,...,L的各整数t的基底B* t的基底矢量b* t,i(i=1,...,nt)的系数,在ρt是0的情况下设定sdel,0,te→t,1del,0,tvt,i(i=1,...,nt),在ρt是1的情况下设定sdel,0,tvt,i(i=1,...,nt),作为基底B* τ的基底矢量b* τ,i(i=1,...,nτ)的系数设定sdel,0,L+1e→τ,1+ψe→τ, ι(i=1,...,nτ),来生成第1移交要素k* L,del,(τ,ι,0)
该移交要素生成部使用关于t=1,...,L的各整数t的规定的值θdel, 1,t、和sdel,1,0t=1 L+1sdel,1,t那样的关于t=0,...,L+1的规定的值sdel, 1,t,作为基底B* 0的基底矢量b* 0,p的系数设定-sdel,1,0,作为关于t=1,...,L的各整数t的基底B* t的基底矢量b* t,i(i=1,...,nt)的系数,在ρt是0的情况下设定sdel,1,te→t,1del,1,tvt,i(i=1,...,nt),在ρt是1的情况下设定sdel,1,tvt,i(i=1,...,nt),作为基底B* τ的基底矢量b* τ,i(i=1,...,nτ)的系数设定sdel,1,L+1e→τ,1(i=1,...,nτ),来生成第2移交要素k* L,del,(τ,ι,1)
所述解密密钥发送部将包括所述解密要素k* L,dec、和所述移交要素生成部生成的第1移交要素k* L,del,(τ,ι,0)以及第2移交要素k* L,del, (τ,ι,1)的解密密钥skL发送到所述移交装置,
所述密钥移交装置具备:
第3信息输入部,输入谓词信息(v→L+1:=(vL+1,i)(i=1,...,nL+1),ρL+1∈{0,1});以及
下位解密要素生成部,使用所述第3信息输入部输入的谓词信息v→L+1、和所述解密密钥发送部发送了的解密密钥skL,生成包括式11所示的矢量的下位解密要素k* L+1,dec
[式11]
Figure FDA00003644292000091
                                   。
10.根据权利要求8所述的密码处理系统,其特征在于,
所述密码处理系统使用
至少具有基底矢量b0,i(i=1,...,1+n0,1+n0+1,...,1+n0+1+u0,...,1+n0+1+u0+w0,...,1+n0+1+u0+w0+z0)的基底B0
至少具有基底矢量b* 0,i(i=1,...,1+n0,1+n0+1,...,1+n0+1+u0,...,1+n0+1+u0+w0,...,1+n0+1+u0+w0+z0)的基底B* 0
至少具有基底矢量bt,i(i=1,...,nt,...,nt+ut,...,nt+ut+wt,...,nt+ut+wt+zt)的基底Bt(t=1,...,L+1)、以及
至少具有基底矢量b* t,i(i=1,...,nt,...,nt+ut,...,nt+ut+wt,...,nt+ut+wt+zt)的基底B* t(t=1,...,L+1)
来进行密码处理,其中,n0,u0,w0,z0是1以上的整数,ut,wt,zt是1以上的整数,
所述解密要素生成部根据关于t=0,...,L的各整数t的随机数η→dec,t:=(ηdec,t,i)(i=1,...,wt),生成式12所示的解密要素k* Ldec
所述加密数据c1生成部根据关于t=0,...,L的各整数t的随机数φ→t:=(φt,i)(i=1,...,zt),生成式13所示的加密数据c1
[式12]
Figure FDA00003644292000101
[式13]
Figure FDA00003644292000102
11.根据权利要求10所述的密码处理系统,其特征在于,
所述密钥生成装置还具备随机化要素生成部,
该随机化要素生成部针对j=1,...,2L的各整数j,生成第1随机化要素k* L,ran,j,并且针对τ=L+1,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,生成第2随机化要素k* L,ran,(τ,ι,0),其中d是L+1以上的整数,并且,
该随机化要素生成部根据关于t=1,...,L的各整数t的规定的值θran,j,t、sran,j,0t=1 Lsran,j,t那样的关于t=0,...,L的规定的值sran,j, t、以及关于t=0,...,L的各整数t的随机数η→ran,j,t:=(ηran,j,t,i)(i=1,...,wt),生成式14所示的第1随机化要素k* L,ran,j
该随机化要素生成部根据关于t=1,...,L的各整数t的规定的值θran,0,t、sran,0,0t=1 L+1sran,0,t那样的关于t=0,...,L+1的规定的值sran,0,t、关于t=0,...,L的各整数t的随机数η→ran,0,t:=(ηran,0,t, i)(i=1,...,wt)、以及随机数η→ran,0,(τ,ι):=(ηran,0,(τ,ι),i)(i=1,...,wt),生成式15所示的第2随机化要素k* L,ran,(τ,ι,0)
所述移交要素生成部针对τ=L+1,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,根据关于t=0,...,L的各整数t的随机数η→del,0,t:=(ηdel,0,t,i)(i=1,...,wt)、和随机数η→del,0, (τ,ι):=(ηdel,0,(τ,ι),i)(i=1,...,wt),生成式16所示的第1移交要素k* L,del,(τ,ι,0),并且针对τ=L+1,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,根据关于t=0,...,L的各整数t的随机数η→del,1,t:=(ηdel,1,t,i)(i=1,...,wt)、和随机数η→del,1, (τ,ι):=(ηdel,1,(τ,ι),i)(i=1,...,wt),生成式17所示的第2移交要素k* L,del,(τ,ι,1)
所述解密密钥发送部将包括所述解密要素k* L,dec、所述随机化要素生成部生成的第1随机化要素k* L,ran,j以及第2随机化要素k* L,ran, (τ,ι,0)、和所述移交要素生成部生成的第1移交要素k* L,del,(τ,ι,0)以及第2移交要素k* L,del,(τ,ι,1)的解密密钥skL发送到所述移交装置,
所述下位解密要素生成部使用所述谓词信息v→L+1、所述解密密钥发送部发送了的解密密钥skL、关于j=1,...,2L的各整数j的随机数αdec,j、随机数σdec、以及关于t=0,...,L+1的各整数t和i=1,...,wt的各整数i的随机数ηdec,(t,i),生成式18所示的下位解密要素k* L+1, dec
[式14]
[式15]
Figure FDA00003644292000121
[式16]
Figure FDA00003644292000122
[式17]
Figure FDA00003644292000123
[式18]
Figure FDA00003644292000124
12.根据权利要求11所述的密码处理系统,其特征在于,
所述移交装置还具备:
下位随机化要素生成部,针对j’=1,...,2(L+1)的各整数j’,生成第1下位随机化要素k* L+1,ran,j’,并且针对τ=L+2,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,生成第2下位随机化要素k* L+1,ran,(τ,ι,0),其中,d是L+2以上的整数,并且,该下位随机化要素生成部根据所述谓词信息v→L+1、所述解密密钥skL、关于j=1,...,2L的各整数j和j’=1,...,2(L+1)的各整数j’的随机数αranj’,j、关于j’=1,...,2(L+1)的各整数j’的随机数σran,j’、以及关于t=0,...,L+1的各整数t和i=1,...,wt的各整数i的随机数ηran,j’,(t, i),生成式19所示的第1下位随机化要素k* L+1,ran,j’,根据所述谓词信息v→L+1、所述解密密钥skL、关于j=1,...,2L的各整数j的随机数αran,(τ,ι),j、随机数σran,(τ,ι,0)、随机数φran,(τ,ι,0)、以及关于t=0,...,L+1的各整数t和i=1,...,wt的各整数i的ηran,(τ,ι,0)、(t, i),生成式20所示的第2下位随机化要素k* L+1,ran,(τ,ι,0);以及
下位移交要素生成部,针对τ=L+2,...,d的各整数τ、和关于各整数τ的ι=1,...,nτ的各整数ι,生成第1下位移交要素k* L+1,del, (τ,ι,0)和第2下位移交要素k* L+1,del,(τ,ι,1),其中,d是L+2以上的整数,并且,该下位移交要素生成部根据所述谓词信息v→L+1、所述解密密钥skL、关于j=1,...,2L的各整数j的随机数αdel,(τ,ι,0),j、随机数σdel,(τ,ι,0)、随机数ψ0、随机数φdel,(τ,ι,0)、以及关于t=0,...,L+1的各整数t和i=1,...,wt的各整数i的ηdel,(τ,ι,0)、(t,i),生成式21所示的第1下位移交要素k* L+1,del,(τ,ι,0),根据所述谓词信息v→L+1、所述解密密钥skL、关于j=1,...,2L的各整数j的随机数αdel,(τ,ι,1), j、随机数σdel,(τ,ι,1)、随机数ψ1、随机数φdel,(τ,ι,1)、以及关于t=0,...,L+1的各整数t和i=1,...,wt的各整数i的ηdel,(τ,ι,1)、(t,i),生成式22所示的第2下位移交要素k* L+1,del,(τ,ι,1)
[式19]
[式20]
Figure FDA00003644292000142
[式21]
[式22]
Figure FDA00003644292000151
13.一种密钥生成装置,在使用关于t=1,...,L的各整数t的基底Bt和基底B* t来进行密码处理的密码处理系统中,生成解密密钥skL,其中,L是1以上的整数,该密钥生成装置的特征在于,具备:
第1信息输入部,针对t=1,...,L的各整数t,输入谓词信息v→t:=(vt,i)(i=1,...,nt);
解密要素生成部,使用所述第1信息输入部输入的谓词信息v→t、规定的值Δ、关于t=1,...,L的各整数t的规定的值θdec,t、以及sdec, 0t=1 Lsdec,t那样的关于t=0,...,L的各整数t的规定的值sdec,t,生成解密要素k* L,dec,该解密要素k* L,dec作为基底B* 0的基底矢量b* 0,p的系数设定了-sdec,0,作为基底B* 0的基底矢量b* 0,q的系数设定了所述Δ,作为关于t=1,...,L的各整数t的基底B* t的基底矢量b* t,i(i=1,...,nt)的系数设定了sdec,te→t,1dec,tvt,i(i=1,...,nt),其中p是规定的值,q是规定的值;以及
解密密钥发送部,将包括所述解密要素生成部生成的解密要素k* L,dec的解密密钥skL发送到解密装置。
14.一种加密装置,在使用关于t=1,...,L的各整数t的基底Bt和基底B* t来进行密码处理的密码处理系统中,生成加密数据ct,其中,L是1以上的整数,该加密装置的特征在于,具备:
第2信息输入部,针对t=1,...,L的至少一部分的整数t输入属性信息x→t:=(xt,i)(i=1,...,nt);
加密数据c1生成部,使用所述第2信息输入部输入的属性信息x→t、和规定的值ω,ζ,生成加密数据c1,该加密数据c1作为基底B0的基底矢量b0,p的系数设定了所述ω,作为基底B0的基底矢量b0,q的系数设定了所述ζ,作为关于所述至少一部分的整数t的基底Bt的基底矢量bt,i(i=1,...,nt)的系数设定了ωxt,i(i=1,...,nt),其中,p是规定的值,q是规定的值;以及
数据发送部,将包括所述加密数据c1生成部生成的加密数据c1的加密数据ct发送到解密装置。
15.一种解密装置,在使用关于t=1,...,L的各整数t的基底Bt和基底B* t来进行密码处理的密码处理系统中,通过解密密钥skL对加密数据c1进行解密,其中,L是1以上的整数,该解密装置的特征在于,具备:
数据接收部,从加密装置接收加密数据c1,该加密数据c1使用属性信息x→t:=(xt,i)(i=1,...,nt)、和规定的值ω,ζ,作为基底B0的基底矢量b0,p的系数设定了所述ω,作为基底B0的基底矢量b0, q的系数设定了所述ζ,作为关于所述至少一部分的整数t的基底Bt的基底矢量bt,i(i=1,...,nt)的系数设定了ωxt,i(i=1,...,nt),其中,p是规定的值,q是规定的值;
解密密钥取得部,从密钥生成装置取得包括解密要素k* L,dec的解密密钥skL,该解密要素k* L,dec使用谓词信息v→t:=(vt,i)(i=1,...,nt)、规定的值Δ、关于t=1,...,L的各整数t的规定的值θdec,t、以及sdec,0t=1 Lsdec,t那样的关于t=0,...,L的各整数t的规定的值sdec, t,作为基底B* 0的基底矢量b* 0,p的系数设定了-sdec,0,作为基底B* 0的基底矢量b* 0,q的系数设定了所述Δ,作为关于t=1,...,L的各整数t的基底B* t的基底矢量b* t,i(i=1,...,nt)的系数设定了sdec,te→t, 1dec,tvt,i(i=1,...,nt),其中,p是规定的值,q是规定的值;以及
配对运算部,针对所述数据接收部接收到的加密数据c1、和所述解密密钥取得部取得的所述解密密钥skL所包含的解密要素k* L,dec,进行配对运算e(c1,k* L,dec),对所述加密数据c1进行解密。
16.一种密钥移交装置,在使用关于t=1,...,L+1的各整数t的基底Bt和基底B* t来进行密码处理的密码处理系统中,生成解密密钥skL的下位的解密密钥skL+1,其中,L是1以上的整数,该密钥移交装置的特征在于,具备:
解密密钥取得部,取得在关于t=1,...,L的各整数t的基底B* t的基底矢量中嵌入了谓词信息v→t的矢量,作为解密密钥skL;以及
移交密钥生成部,根据所述解密密钥取得部取得的解密密钥skL、和在基底B* L+1的基底矢量中嵌入了谓词信息v→L+1的矢量,生成所述解密密钥skL的下位的解密密钥skL+1
17.一种密码处理方法,使用了关于t=1,...,L+1的各整数t的基底Bt和基底B* t,其中,L是1以上的整数,该密码处理方法的特征在于,具备:
加密工序,加密装置生成在关于t=1,...,L中的至少一部分的整数t的基底Bt的基底矢量中嵌入了属性信息x→t的矢量,作为加密数据ct;
解密工序,解密装置将在关于t=1,...,L的各整数t的基底B* t的基底矢量中嵌入了谓词信息v→t的矢量作为解密密钥skL,针对在所述加密工序中生成的加密数据ct和所述解密密钥skL,进行配对运算而对所述加密数据ct进行解密;以及
密钥移交工序,密钥移交装置根据在基底B* L+1的基底矢量中嵌入了谓词信息的矢量v→L+1、和在所述解密工序中使用的解密密钥skL,生成所述解密密钥skL的下位的解密密钥skL+1
18.一种密码处理程序,使用关于t=1,...,L+1的各整数t的基底Bt和基底B* t来执行密码处理,其中,L是1以上的整数,该密码处理程序的特征在于,具备:
加密处理,生成在关于t=1,...,L中的至少一部分的整数t的基底Bt的基底矢量中嵌入了属性信息x→t的矢量,作为加密数据ct;
解密处理,将在关于t=1,...,L的各整数t的基底B* t的基底矢量中嵌入了谓词信息v→t的矢量作为解密密钥skL,针对所述加密装置生成的加密数据ct和所述解密密钥skL,进行配对运算而对所述加密数据ct进行解密;以及
密钥移交处理,根据在基底B* L+1的基底矢量中嵌入了谓词信息的矢量v→L+1、和在所述解密处理中使用的解密密钥skL,生成所述解密密钥skL的下位的解密密钥skL+1
CN201180067247.XA 2011-02-09 2011-12-12 密码处理系统、密钥生成装置、加密装置、解密装置、密钥移交装置以及密码处理方法 Active CN103354984B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2011-026216 2011-02-09
JP2011026216A JP5606351B2 (ja) 2011-02-09 2011-02-09 暗号処理システム、鍵生成装置、暗号化装置、復号装置、鍵委譲装置、暗号処理方法及び暗号処理プログラム
PCT/JP2011/078668 WO2012108100A1 (ja) 2011-02-09 2011-12-12 暗号処理システム、鍵生成装置、暗号化装置、復号装置、鍵委譲装置、暗号処理方法及び暗号処理プログラム

Publications (2)

Publication Number Publication Date
CN103354984A true CN103354984A (zh) 2013-10-16
CN103354984B CN103354984B (zh) 2015-11-25

Family

ID=46638329

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180067247.XA Active CN103354984B (zh) 2011-02-09 2011-12-12 密码处理系统、密钥生成装置、加密装置、解密装置、密钥移交装置以及密码处理方法

Country Status (7)

Country Link
US (1) US9385867B2 (zh)
EP (1) EP2675107B1 (zh)
JP (1) JP5606351B2 (zh)
KR (1) KR101432462B1 (zh)
CN (1) CN103354984B (zh)
ES (1) ES2699535T3 (zh)
WO (1) WO2012108100A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112236974A (zh) * 2018-06-11 2021-01-15 三菱电机株式会社 解密装置、加密装置以及密码系统

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5901803B2 (ja) * 2013-01-16 2016-04-13 三菱電機株式会社 情報処理装置及び情報処理方法及びプログラム
CN107005406B (zh) * 2014-12-05 2020-07-17 三菱电机株式会社 函数型加密系统、主密钥更新装置和存储介质
JP6494893B2 (ja) * 2017-01-12 2019-04-03 三菱電機株式会社 暗号化タグ生成装置、検索クエリ生成装置及び秘匿検索システム
JP6885325B2 (ja) * 2017-12-26 2021-06-16 日本電信電話株式会社 暗号化装置、復号装置、暗号化方法、復号方法、プログラム
JP7233265B2 (ja) * 2019-03-15 2023-03-06 三菱電機株式会社 署名装置、検証装置、署名方法、検証方法、署名プログラム及び検証プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003081780A2 (en) * 2002-03-21 2003-10-02 Docomo Communications Laboratories Usa, Inc. Hierarchical identity-based encryption and signature schemes
WO2008099831A1 (ja) * 2007-02-13 2008-08-21 Nec Corporation 鍵生成装置、鍵導出装置、暗号化装置、復号化装置、方法、及び、プログラム
US20090080658A1 (en) * 2007-07-13 2009-03-26 Brent Waters Method and apparatus for encrypting data for fine-grained access control
US20090225986A1 (en) * 2008-03-06 2009-09-10 International Business Machines Corporation Non-Interactive Hierarchical Identity-Based Key-Agreement

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5214698A (en) * 1991-03-20 1993-05-25 International Business Machines Corporation Method and apparatus for validating entry of cryptographic keys
JP5349261B2 (ja) * 2009-04-23 2013-11-20 三菱電機株式会社 暗号処理システム、鍵生成装置、鍵委譲装置、暗号化装置、復号装置、暗号処理方法及び暗号処理プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003081780A2 (en) * 2002-03-21 2003-10-02 Docomo Communications Laboratories Usa, Inc. Hierarchical identity-based encryption and signature schemes
WO2008099831A1 (ja) * 2007-02-13 2008-08-21 Nec Corporation 鍵生成装置、鍵導出装置、暗号化装置、復号化装置、方法、及び、プログラム
US20090080658A1 (en) * 2007-07-13 2009-03-26 Brent Waters Method and apparatus for encrypting data for fine-grained access control
US20090225986A1 (en) * 2008-03-06 2009-09-10 International Business Machines Corporation Non-Interactive Hierarchical Identity-Based Key-Agreement

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112236974A (zh) * 2018-06-11 2021-01-15 三菱电机株式会社 解密装置、加密装置以及密码系统
CN112236974B (zh) * 2018-06-11 2024-02-23 三菱电机株式会社 解密装置、加密装置以及密码系统

Also Published As

Publication number Publication date
CN103354984B (zh) 2015-11-25
ES2699535T3 (es) 2019-02-11
EP2675107B1 (en) 2018-10-24
JP2012163917A (ja) 2012-08-30
WO2012108100A1 (ja) 2012-08-16
US9385867B2 (en) 2016-07-05
JP5606351B2 (ja) 2014-10-15
KR101432462B1 (ko) 2014-08-20
EP2675107A1 (en) 2013-12-18
KR20130122678A (ko) 2013-11-07
US20130336474A1 (en) 2013-12-19
EP2675107A4 (en) 2017-07-19

Similar Documents

Publication Publication Date Title
CN103038805B (zh) 密码处理系统、密钥生成装置、密钥转让装置、加密装置、解密装置、密码处理方法以及密码处理程序
JP5424974B2 (ja) 暗号処理システム、鍵生成装置、暗号化装置、復号装置、署名処理システム、署名装置及び検証装置
JP5693206B2 (ja) 暗号処理システム、鍵生成装置、暗号化装置、復号装置、暗号処理方法及び暗号処理プログラム
JP5618881B2 (ja) 暗号処理システム、鍵生成装置、暗号化装置、復号装置、暗号処理方法及び暗号処理プログラム
CN102822883B (zh) 密码处理系统、密钥生成装置、密钥转让装置、加密装置、解密装置、密码处理方法以及密码处理程序
CN104160437A (zh) 密码系统、密码方法以及密码程序
WO2012101913A1 (ja) 署名処理システム、鍵生成装置、署名装置、検証装置、署名処理方法及び署名処理プログラム
CN104718566B (zh) 密码系统
CN103354984B (zh) 密码处理系统、密钥生成装置、加密装置、解密装置、密钥移交装置以及密码处理方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant