CN105743642A - 一种抗密钥连续辅助输入泄漏的基于属性加密方法 - Google Patents

一种抗密钥连续辅助输入泄漏的基于属性加密方法 Download PDF

Info

Publication number
CN105743642A
CN105743642A CN201610266492.8A CN201610266492A CN105743642A CN 105743642 A CN105743642 A CN 105743642A CN 201610266492 A CN201610266492 A CN 201610266492A CN 105743642 A CN105743642 A CN 105743642A
Authority
CN
China
Prior art keywords
private key
attribute
key
user
leakage
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
CN201610266492.8A
Other languages
English (en)
Other versions
CN105743642B (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.)
Shenzhen Housley Technology Co ltd
Original Assignee
Nantong University
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 Nantong University filed Critical Nantong University
Priority to CN201610266492.8A priority Critical patent/CN105743642B/zh
Publication of CN105743642A publication Critical patent/CN105743642A/zh
Application granted granted Critical
Publication of CN105743642B publication Critical patent/CN105743642B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/002Countermeasures against attacks on cryptographic mechanisms
    • 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]
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • 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/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供了一种抗密钥连续辅助输入泄漏的基于属性加密方法,包括以下步骤,私钥生成中心输入系统安全参数λ和合法属性集合U,构造一个m维向量,并将该m维向量嵌入到系统公钥PK和系统主密钥MSK;私钥生成中心认证用户拥有的属性集合ω,利用系统主密钥MSK和系统公钥PK,生成包含m维向量的用户私钥SKω;加密方利用系统公钥PK和设定的访问策略,对待加密处理的信息进行加密,生成包含mn1维向量的密文;仅在用户私钥SKω的属性满足密文的访问策略时,该用户才解密得到明文。在本发明中,系统主密钥MSK和用户私钥SKω可以连续无界泄漏,提高了用户私钥SKω兼容性,在保证加密信息安全性的前提下,减少了系统主密钥长度及用户私钥长度。

Description

一种抗密钥连续辅助输入泄漏的基于属性加密方法
技术领域
本发明涉及密码学技术领域,尤其涉及一种抗密钥连续辅助输入泄漏的基于属性加密方法。
背景技术
公钥密码学作为现代密码学的一个重要分支,近年来得到了迅速发展。在公钥加密机制中,每个合法用户都拥有一对不同的加密密钥与解密密钥,且由已知加密密钥推导出解密密钥在计算上是不可行的。加密密钥可以公开,而解密密钥必须有用户自身秘密保存,即用户不能将任意一位的信息泄漏给他人,否则,系统的安全性将会被破坏。因此,公钥加密机制的安全性是建立在解密密钥必须秘密保存基础上的。
现代密码学假定所有攻击者均不能获知保密密钥的任何信息,但在实际应用中,攻击者可以通过边信道攻击(SideChannelAttack,SCA)[1],利用密码算法运行时的物理特征信息(例如时间、能耗、音频等)和内存泄露[2],获知关于密钥和系统内部秘密状态的部分信息。针对边信道攻击下的密钥泄露问题,抗泄露密码机制在允许攻击者获知密钥和系统保密状态泄露信息的前提下,仍然能够保障密码系统的安全性。为了模拟密钥泄露的程度,该机制定义了作用在密钥和系统内部秘密状态上的可计算泄露函数,并将该泄露函数的输出结果作为密钥泄露信息,显然,必要的限制是泄露函数不能完全暴露密钥。2010年,Dodis等人[3]提出了抗泄露密码机制中的一个重要公开难题“允许密钥的连续和整体无界泄露,且不限制密钥泄露的类型”。
近年来,学者们提出了许多抗密钥泄露模型,逐步减少对泄露函数的限制。2009年Akavia等人[4]在密码学理论会议(TCC)上首先提出了相对泄露模型,要求泄露函数输出信息的总长度不能超过预定上界值,该上界值必须小于密钥长度。2010年,Alwen等人[5]提出了有界检索泄露模型,减少了对泄露函数限制,允许攻击者获知更多的泄露信息。Dodis等人[6]在TCC会议上提出了辅助输入泄露模型,该模型对泄露函数的唯一限制是,任意攻击者利用泄露信息计算出保密密钥的概率都是可以忽略的。因此,辅助输入泄露模型能够考虑泄露能力更强的泄露函数,进一步减少了对泄露函数的限制。上述研究方案[5-9]仅考虑了密钥在其整个生命周期中的泄露问题。Brakershi等人[7]提出连续泄露模型,允许密钥进行更新,并限制在相邻两次更新之间密钥泄露信息不能超过预定上界值,但在系统的整个生命周期中密钥泄露的总量是整体无界的,解决了上述公开难题的第一部分。Yuen等人[8]将连续泄露模型和辅助输入泄露模型相结合,提出了抗连续辅助泄露的基于身份加密机制,有效解决了基于身份加密中抗密钥泄露的公开难题,但极大地增加了主密钥和用户私钥的长度及相应的计算开销。
2005年,Sahai和Waters[9]提出了一种新型公钥加密机制---基于属性加密机制(Attribute-BasedEncryption,ABE),在该ABE中,可信授权机构根据用户的属性集合为其颁发用户私钥,密文和属性集合相关,当用户私钥属性集合与密文属性集合的匹配度满足系统的门限策略时,用户私钥才能正确解密密文。为了在密文中表达更灵活的访问控制策略,2007年Bethencourt等人[10]提出了“密文策略”的ABE机制(CP-ABE),将访问控制策略嵌入在密文中,密钥与属性集合相关联,只有密钥的属性满足密文的访问策略时,才能正确恢复明文。然而,该CP-ABE方案仅满足选择安全性。Lewko等人[11]采用双系统加密技术实现了自适应安全的CP-ABE机制。由于ABE以属性为公钥,能够表示灵活的访问控制策略,显著减少加密节点的处理开销和传输共享数据的网络带宽,从而使它在细粒度访问控制、单向广播、群密钥管理、隐私保护等领域具有广泛的应用前景。然而,目前解决ABE中边信道攻击下的密钥泄露问题的研究还不多见。
针对ABE中存在边信道攻击下的密钥泄露问题,2011年Lewko等人[12]在TCC年会上将双系统加密和有界泄露模型相结合,提出一种自适应安全的抗连续内存泄露的ABE方案,同时支持主密钥和用户属性私钥的泄露,但仅允许密钥的有界泄露,要求旧版本的密钥必须从内存中完全清除,且该方案不能与其它密码学方案组合使用。然而,在实际应用中,由于ABE的密钥构造方法种类繁多,使得ABE较容易与其它密码系统结合使用,特别地,旧版本的密钥在更新后往往在内存中残留部分信息。因此,设计一种有效抵制边信道攻击下密钥泄露的ABE方法是保障ABE机制能够安全广泛使用的迫切要求,即解决基于属性加密机制中的抗密钥泄露的公开难题。
[1]KocherPC:Timingattacksonimplementationsofdiffie-hellman,rsa,dss,andothersystems[G]//LNCS1109:Procofthe16thAnnualLnternationalCryptologyConference。Berlin:Springer,1996:104-113
[2]HaldermanA,SchoenS,HeningerN,etal。Lestweremember:Coldbootattacksonencryptionkeys[C]//Procofthe17thUSENIXSecuritySymposium,SanJose,CA,ACM,2008:45-60
[3]DodisY,HaralambievK,L′opez-AltA,WichsD:Cryptographyagainstcontinuousmemoryattacks[C]//Procofthe51stannualsymposiumonfoundationsofcomputerscience,LasVegas,Nevada,IEEE,2010:511-520
[4]AkaviaA,GoldwasserS,VaikuntanathanV:Simultaneoushardcorebitsandcryptographyagainstmemoryattacks[G]//LNCS5444,Procofthe29thinternationalcryptologyconference。Berlin:Springer,2009:474-495
[5]AlwenJ,DodisY,NaorM,etal。Public-KeyEncryptionintheBounded-RetrievalModel[G]//LNCS6110:procofthe29thannualinternationalConferenceontheTheoryandApplicationofCryptographicTechniques。Berlin:Springer,2010:113-134。
[6]DodisY,GoldwasserS,KalaiYT,etal。Public-KeyEncryptionSchemeswithAuxiliaryInputs[G]//LNCS5978:Procofthetheoryofcryptographyconference。Berlin:Springer,2010:361-381
[7]BrakerskiZ,KalaiYT,KatzJ,etal。Overcomingtheholeinthebucket:Public-keycryptographyresilienttocontinualmemoryleakage[C]//Procofthe51stannualsymposiumonfoundationsofcomputerscience,LasVegas,Nevada,IEEE,2010:511-520
[8]YuenTH,ChowSSM,ZhangY,etal。Identity-BasedEncryptionResilienttoContinualAuxiliaryLeakage[G]//LNCS7237:procofthe31thannualinternationalConferenceontheTheoryandApplicationofCryptographicTechniques。Berlin:Springer,2012:117-134
[9]SahaiA,WatersB。Fuzzyidentitybasedencryption[G]//LNCS3494:ProcoftheEUROCRYPT2005。Berlin:Springer,2005:457-473
[10]BethencourtJ,SahaiA,WatersB:Ciphertext-policyattribute-basedencryption[C]//Procofthe2007IEEEsymposiumonSecurityandPrivacy。Washington,IEEE,2007:321-334
[11]LewkoA,OkamotoT,SahaiA,etal。Fullysecurefunctionalencryption:Attribute-Basedencryptionand(hierarchical)innerproductencryption[G]//LNCS6110:ProcoftheEUROCRYPT2010。Berlin:Springer,2010:62-91
[12]LewkoA,RouselakisY,WatersB。AchievingLeakageresiliencethroughdualsystemencryption[C]//Procofthe8ththeoryofcryptographyconference。RhodeIsland,ACM,2011:70-88
发明内容
本发明的目的在于公开一种抗密钥连续辅助输入泄漏的基于属性加密方法,用以提高抗密钥泄密容忍性,在保证加密信息的安全性的前提下降低系统主密钥长度及用户私钥的长度,并有效抵抗连续辅助输入泄漏攻击,且允许主密钥和用户私钥的连续无界泄漏,允许基于属性加密的属性密钥引用到其他密码系统中去,提高基于属性加密的属性密钥的兼容性,且主密钥更新后无需将旧版本的主密钥从内存中完全清除,即允许泄漏旧版本的主密钥信息。
为实现上述发明目的,本发明提供了一种抗密钥连续辅助输入泄漏的基于属性加密方法,包括以下步骤:
S1、私钥生成中心输入系统安全参数λ和合法属性集合U,构造一个m维向量,并将该m维向量嵌入到系统公钥PK和系统主密钥MSK,m=poly(log2λ),其中,poly(log2λ)为关于log2λ的多项式函数;
S2、私钥生成中心认证用户拥有的属性集合ω,利用系统主密钥MSK和系统公钥PK,生成包含一个m维向量的用户私钥SKω
S3、加密方利用系统公钥PK和设定的访问策略,对待加密处理的信息进行加密,生成包含一个mn1维向量的密文,其中,n1是访问策略中矩阵的行数;
S4、仅在用户私钥SKω的属性满足密文的访问策略时,该用户才解密得到明文。
在一些实施方式中,所述步骤S1具体为:
S11、选择阶为N=p1p2p3的循环群G和GT,其中,p1,p2,p3是3个互不相同的素数,选择双线性映射e:G×G→GT,令Gi是群G的阶为pi的子群;
S12、令0<ε<1,m=(3log2p2)1/ε,随机选择元素α12,…,αm,a1,a2,…,am∈ZN *,其中ZN *表示集合{1,2,…,N-1},构成随机向量α=<α12,…,αm>和a=<a1,a2,…,am>,从子群G1中随机选择生成元g1,h1,h2,…,hm,从子群G3中随机选择生成元g3,计算y=e(h1,y1)e(h2,y2)…e(hm,ym);
S13、对每个属性i∈U,选择一个随机元素si∈ZN *,计算输出系统公钥
S14、选取随机数t*∈ZN,从子群G3选择随机数ρ1 *2 *,…,ρm *m+1 *∈ZN *,其中ZN *表示集合{1,2,…,N-1},计算 构成向量K*=<k1 *,k2 *,…,km *>,对每个属性i∈U,从子群G3选择随机数ti *∈ZN,计算输出系统主密钥
在一些实施方式中,所述步骤S2具体为:
S21、假定用户具有属性集合私钥生成中心选择随机数t∈ZN *,从子群G3选择随机数ρ12,…,ρmm+1∈ZN *,其中ZN *表示集合{1,2,…,N-1},计算构成随机向量K=<k1,k2,…km>;
S22、对每个属性i∈ω,从子群G3选择随机数ti∈ZN,计算输出包含m维向量的用户私钥
在一些实施方式中,所述步骤S3具体为:
加密方利用系统公钥PK和设定的访问策略,选择随机数构成随机向量对矩阵A的每一行Ax和j=1,2,…,m,选择一个随机数rj,x∈ZN *,对待加密处理的信息进行加密得到密文,以生成包含mn1维向量的密文,其中,
所述“设定的访问策略”的访问结构为其中,A是一个n1×n2矩阵,ρ是一个从集合{1,…,n1}到合法属性集合U的映射;
所述加密计算公式为:
在一些实施方式中,所述步骤S4具体为:
S41、记A的第x行为Ax,计算一组常量cx∈ZN,使得∑cxAx=<1,0,…,0〉;
S42、计算密文中的盲化因子,其计算公式为:
&Pi; j = 1 m &lsqb; e ( k j , C 1 ) &Pi; &rho; ( x ) &Element; &omega; &lsqb; e ( C j , x , L ) e ( K &rho; ( x ) , D j , x ) &rsqb; c x &rsqb; = &lsqb; e ( h 1 , g 1 ) &alpha; 1 ... e ( h m , g 1 ) &alpha; m &rsqb; s = y s
S43、消去密文中的盲化因子,恢复消息M=C0/ys
在一些实施方式中,在步骤S1还包括执行如下步骤:
每经过一段时间后,私钥生成中心执行系统主密钥MSK更新算法,以生成新的系统主密钥MSK′,并具体为:
首先,私钥生成中心随机选择t*′,ρ1 *′,ρ2 *′,…,ρm *′,ρm+1 *′∈ZN,利用系统主密钥MSK,计算 构成随机向量K*′=<k1 *′,k2 *′,…,km *′>;
然后,对每个属性i∈U,从子群G3选择随机数ti *′∈ZN *,计算 输出新的系统主密钥
在一些实施方式中,所述步骤S2还包括如下步骤:
每经过一段时间后,私钥生成中心执行用户私钥更新算法,生成新的用户私钥SKω′,并具体为:
首先,用户随机选择t′,ρ1′,ρ2′,…,ρm′,ρm+1′∈ZN *,利用用户私钥SKω,计算构成随机向量K′=<k1′,k2′,…,km′>;
然后,对每个属性i∈ω,从子群G3选择随机数ti *′∈ZN *,计算输出新的用户私钥
与现有技术相比,本发明的有益效果是:本发明所示出的一种抗密钥连续辅助输入泄漏的基于属性加密方法,允许系统主密钥MSK和用户私钥SKω的连续无界泄露,在保证加密信息的安全性的前提下,对系统参数进行优化,减少系统主密钥长度及用户私钥的长度,并有效抵抗连续辅助输入泄漏攻击;同时,本发明允许基于属性加密(ABE)的用户私钥SKω引用到其他密码系统中去,提高基于属性加密的用户私钥SKω的兼容性,且系统主密钥MSK更新后,并生成新的系统主密钥MSK′后,无需将旧版本的系统主密钥MSK从内存中完全清除,以允许泄漏旧版本的系统主密钥MSK信息。因此,本发明能够有效抵抗连续辅助输入泄漏攻击,实现了在基于属性加密系统中主密钥和用户私钥的连续无界泄漏。
附图说明
图1为本发明一种抗密钥连续辅助输入泄漏的基于属性加密方法的示意图;
图2为本发明一种抗密钥连续辅助输入泄漏的基于属性加密方法的方法流程图。
具体实施方式
下面结合附图所示的各实施方式对本发明进行详细说明,但应当说明的是,这些实施方式并非对本发明的限制,本领域普通技术人员根据这些实施方式所作的功能、方法、或者结构上的等效变换或替代,均属于本发明的保护范围之内。
请参图1与图2所示出的本发明一种抗密钥连续辅助输入泄漏的基于属性加密方法的一种具体实施方式。
在本实施方式中所示出的一种抗密钥连续辅助输入泄漏的基于属性加密方法的实现有赖于一种基于属性加密的计算机系统,其包括:用户,其用作消息加密方或密文接收方;一个私钥生成中心,作为可信的第三方,对用户属性进行认证,并为合法用户生成属性私钥。该计算机系统可为公有云服务器或者私有云服务器或者分布式计算系统或者计算机集群服务器。
为了加深对本发明的理解,将结合示意图1与图2对本发明进行详细阐述,本发明抗密钥连续辅助泄露的基于属性加密方法包括步骤如下:
S1、私钥生成中心输入系统安全参数λ和合法属性集合U,构造一个m维向量,并将该m维向量嵌入到系统公钥PK和系统主密钥MSK,m=poly(log2λ),其中,poly(log2λ)为关于log2λ的多项式函数,其包括如下执行过程:
(1)选择阶为N=p1p2p3的循环群G和GT,其中,p1,p2,p3是3个互不相同的素数,选择双线性映射e:G×G→GT,令Gi是群G的阶为pi的子群,(2)令0<ε<1,m=(3log2p2)1/ε,随机选择元素α12,…,αm,a1,a2,…,am∈ZN *,其中ZN *表示集合{1,2,…,N-1},构成随机向量α=<α12,…,αm>和a=<a1,a2,…,am>,从子群G1中随机选择生成元g1,h1,h2,…,hm,从子群G3中随机选择生成元g3,计算y=e(h1,y1)e(h2,y2)…e(hm,ym);(3)对每个属性i∈U,选择一个随机元素si∈ZN *,计算输出系统公钥 (4)选取随机数t*∈ZN *,从子群G3中选择随机数ρ1 *2 *,…,ρm *m+1 *∈ZN *,其中ZN *表示集合{1,2,…,N-1},计算构成向量K*=<k1 *,k2 *,…,km *>,对每个属性i∈U,从子群G3中选择随机元素ti *∈ZN *,计算输出系统主密钥
本发明将一个m维向量嵌入到系统公钥PK和系统主密钥MSK中,根据Goldreich-Levin定理,攻击者在获知系统主密钥MSK和解密用户私钥SKω辅助输入泄漏信息的前提下,依然不能区分解密密钥和随机密钥。因此,攻击者利用系统主密钥MSK和解密用户私钥SKω辅助输入泄漏信息,将不能解密密文,从而确保了系统的安全性,即该发明能够有效的抵制连续辅助值输入泄漏攻击,实现了基于属性加密系统中的密钥连续无界泄漏。特别地,为了减少系统公钥PK和系统主密钥MSK的长度及其相应的计算开销,在保证安全性的前提下,通过共用m个子系统主密钥MSK中的关键盲化因子和m个子系统的属性公钥,大大缩减了系统主密钥MSK和系统公钥PK的长度。综上所述,本发明是第一个在基于属性加密环境中能够有效抵制连续辅助输入泄漏攻击的方法,且通过合理优化,使其增加的计算和存储开销达到最少。
优选的,在步骤S1中,每经过一段时间后,私钥生成中心执行系统主密钥更新算法,生成新的系统主密钥(即MSK′),其包括如下执行过程:(1)私钥生成中心随机选择t*′,ρ1 *′,ρ2 *′,…,ρm *′,ρm+1 *′∈ZN *,利用旧的主密钥(即步骤S1中由私钥生成中心所生成的系统主密钥MSK),计算 构成随机向量K*′=<k1 *′,k2 *′,…,km *′>;(2)对每个属性i∈U,从子群G3中选择随机数ti *′∈ZN *,计算 输出新的系统主密钥
S2、私钥生成中心认证用户拥有的属性集合ω,利用系统主密钥MSK和系统公钥PK,生成包含一个m维向量的用户私钥SKω,其包括如下执行过程:
(1)假定用户具有属性集合私钥生成中心选择随机数t∈ZN *,从子群G3选择随机数ρ12,…,ρmm+1∈ZN *,其中ZN *表示集合{1,2,…,N-1},计算构成随机向量K=<k1,k2,…km>;(2)对每个属性i∈ω,从子群G3中选择随机数ti∈ZN *,计算 输出用户私钥
优选的,在步骤S2中,每经过一段时间后,用户执行其私钥更新算法,生成新的用户私钥(即SKω′),其包括如下执行过程:(1)用户随机选择t′,ρ1′,ρ2′,…,ρm′,ρm+1′∈ZN *,利用旧的用户私钥(即SKω),计算 构成随机向量K′=<k1′,k2′,…,km′>;
(2)对每个属性i∈ω,从子群G3中选择随机数ti′∈ZN *,计算输出用户私钥
S3、加密方利用系统公钥PK和设定的访问策略,对待加密处理的信息进行加密,生成包含一个mn1维向量的密文,其中,n1是访问策略中矩阵的行数。该步骤S3具体包括如下执行过程:
(1)给定机密信息的访问策略,其对应的访问结构为其中,A是一个n1×n2矩阵,ρ是一个从集合{1,…,n1}到合法属性集合U的映射;(2)加密方选择随机数构成随机向量对矩阵A的每一行Ax和j=1,2,…,m,选择一个随机数rj,x∈ZN *;(3)该密文加密计算公式C如下所示:
S4、仅当用户私钥SKω的属性满足密文的访问策略时,该用户才能正确解密密文,获得明文,其包括如下执行过程:(1)记A的第x行为Ax,计算一组常量cx∈ZN *,使得∑cxAx=<1,0,…,0>;(2)为消去密文中盲化因子,其计算公式如下所示:
&Pi; j = 1 m &lsqb; e ( k j , C 1 ) &Pi; &rho; ( x ) &Element; &omega; &lsqb; e ( C j , x , L ) e ( K &rho; ( x ) , D j , x ) &rsqb; c x &rsqb; = &lsqb; e ( h 1 , g 1 ) &alpha; 1 ... e ( h m , g 1 ) &alpha; m &rsqb; s = y s
(3)恢复消息M=C0/ys
抗密钥泄露的容忍程度是衡量一种密码机制安全性的重要指标。总的来说,抗泄露密码机制的主要目标是尽可能预防和抵抗更多不同类型的边信道攻击(SCA),使系统在实际应用中的安全性得到可靠的保障。
为了证明本发明的安全性,下面给出合数阶群上子群判定假设。在这些假设中,令λ是系统的安全参数,Pr是概率函数,PPT表示一个概率多项式时间算法。
假设1给定合数阶双线性群(N=p1p2p3,G,GT,e),g1←G1,g3←G3,D=(N,G,GT,e,g1,g3),随机选择z,v∈ZN *,计算T1=g1 z,任意PPT攻击者区分元组(D,T1)和元组(D,T2)的优势是可以忽略的。
假设2给定合数阶双线性群(N=p1p2p3,G,GT,e);随机选取z,ν,μ,p∈ZN *,g1←G1,g3←G3,随机选取w,κ,σ∈ZN *,计算任意PPT攻击者区分元组(D,T1)和元组(D,T2)的优势是可以忽略的。
假设3给定合数阶双线性群(N=p1p2p3,G,GT,e),随机选择α,ν,μ,z∈ZN *,g1←G1;g2←G2,g3←G3,T1=e(g,g)αz,T2←GT,任意PPT攻击者区分元组(D,T1)和元组(D,T2)的优势是可以忽略的。
定义1(访问结构[24])设是n个属性的集合,由的某些非空子集构成的集族称其为设定的访问策略的访问结构,其中,集族是单调的,即对任意集合B,C,均有:如果那么 中的所有属性集合称为授权集,不在中的属性集合称为非授权集。
定义2(LSSS[24])称属性集合上的一个秘密共享方案Π是线性的,如果满足:(1)将Zp上的一个向量构造成属性的秘密分享值;(2)对于Π,存在一个秘密份额生成矩阵和行标号函数令s∈Zp *是待共享的秘密值,随机选择构成向量 令vT为v的转置,则A·vT是n1个秘密份额构成的向量,利用标号函数,将秘密份额λi=(Av)i(1≤i≤n1)分配给属性ρ(i)。
LSSS的可重构性质:假定Π是访问结构的线性秘密共享方案,令是授权集,定义则存在多项式时间算法计算{ci∈Zp}i∈I,使得对于秘密共享值s的任意有效份额{λi}i∈{1,…,n1},满足Σi∈Iciλi=s。
简要介绍域GF(q)上Goldreich-Levin定理:令q是一个大素数,H是GF(q)的任意子集,n是一个正整数,任意函数f:Hn→{0,1}*。令s←Hn,ξ←f(s),r←GF(q)n,如果存在区分器在t时间内使得 则存在一个可逆器在t′=t·poly(n,|H|,1/ε)时间内求得s的概率。
定义3.连续辅助输入函数族是一类概率多项式时间(PPT)可计算的函数族f:{0,1}*→{0,1}*,使得对所有的PK,S, 任意PPT算法输出一个SKω*∈S*的概率均不超过χ(k),其中,困难参数χ(k)≥2-k,且MSK,PK,SKω*,S,LMSK,都是随机生成的。
为了证明本发明的安全性,需要构造半功能私钥和半功能密文,半功能私钥分为Ⅰ型半功能私钥和Ⅱ型半功能私钥。为了生成半功能私钥和密文,对每个属性i∈U,随机选择qi∈ZN,半功能密文和半功能私钥定义如下:
KeygenSF1(MSK,ω)该Ⅰ型半功能私钥生成算法随机选择θ∈ZN,随机向量γ=(γ12,…,γm)∈[0,λ]m,利用正常私钥计算Ⅰ型半功能私钥SKω-Ⅰ如下:
K ~ = K &prime; * g 2 &gamma; , L ~ = L &prime; &CenterDot; g 2 &theta; , K ~ i = K i &prime; &CenterDot; g 2 q i &theta; , &ForAll; i &Element; &omega; .
keygenSF2(MSK,ω):该Ⅱ型半功能私钥生成算法选择随机向量γ=(γ12,…,γm)∈[0,λ]m,利用正常私钥,计算Ⅱ型半功能私钥SKω-Ⅱ如下:
K ~ = K &prime; * g 2 &gamma; , L ~ = L &prime; , K ~ i = K i &prime; , &ForAll; i &Element; &omega; .
注意:与Ⅰ型半功能私钥不同的是,该Ⅱ型半功能私钥中的θ=0。
该半功能密文生成算法随机选择δ∈ZN *,对访问矩阵A的每一行Ax和j=1,2,…,m,随机选择δj,x∈ZN *,随机向量利用正常密文,计算半功能密文C-SF如下:
如果用半功能密钥解密半功能密文,得到一个多余项:若用户私钥中的属性集合满足密文中访问结构,且δ·∑γj-θ·∑uj,1=0modp2(uj,1表示向量uj的第一个分量),则称该Ⅰ型半功能私钥对该半功能密文是名义半功能的。
基于合数阶群上的子群判定假设,采用混合争论技术,借助一系列相邻游戏(GameReal,Game0,Game1,1,Game1,2,…,Gamek-1,2,Gamek,1,Gamek,2,…,Gameq-1,2,Gameq,1,Gameq,2,GameFinal)的不可区分性,证明本文所提方案的安全性,其中,q表示在安全性游戏中询问KGO(·)预言机的次数。
GameReal:真实的安全性游戏,私钥和密文都是正常的。
Game0:与GameReal类似,除了挑战密文是半功能密文。
Gamek,1:挑战密文是半功能密文,前k-1次询问的私钥是II型半功能的,第k次询问私钥是I型半功能的,剩余的私钥是正常的。
Gamek,2:与Gamek,1类似,除了第k次询问的私钥是II型半功能的。
GameFinal:在这个安全性游戏中,所有询问私钥都是II型半功能的,且挑战密文是对一个随机明文加密生成的半功能密文。
引理1若假设1成立,对于任意PPT攻击者区分GameReal和Game0的优势均是可以忽略的。
证明:假定存在一个PPT攻击者以不可忽略的优势区分GameReal和Game0,则可以构造一个PPT算法 能以不可忽略的优势打破假设1。接收到假设1的条件{g1,g3,T},能够模拟GameReal或Game0执行初始化算法,令m=(3logp2)1/ε,选择随机向量 计算对每个属性i∈U,随机选择si∈ZN *生成系统公钥 并将其发送给其中,N,g1,g3由假设1给定。
询问阶段1:由于已知(α12,…,αm),执行初始化算法,生成系统正常系统主密钥MSK,可以回答攻击者的所有用户私钥生成询问、系统主密钥泄露和更新询问。
挑战阶段1:攻击者提交一个挑战访问结构A*是一个n1×n2的矩阵,选择一个属性集合ω*,使得ω*满足生成一个正常解密的用户私钥SKω*
询问阶段2:与询问阶段1类似,此外,可以回答对用户私钥SKω*的所有泄露信息和更新信息。
挑战阶段2:提交两个消息M0和M1 随机选择v2′,v3′,…,vn2′∈ZN,对A*的每一行Ax *和j=1,2,…,m,随机选择rj,x′∈ZN *,生成向量v=(1,v2,…,vn2)。选择一个随机位b∈{0,1},计算并输出挑战密文:
C * = ( ( A * , &rho; * ) , C 0 = M b &CenterDot; e ( T &Sigma; i = 1 m &alpha; j &beta; j , g 1 ) , C 1 = T , C j , x = T a j A x * &CenterDot; v &prime; T - r j , x &prime; s &rho; ( x ) , D j , x = T - r j , x &prime; , &ForAll; j , x ) ,
其中,T为假设中的挑战项。
询问阶段3:与询问阶段1相同,除了只能进行用户私钥的生成询问。
如果则密文是半功能的,其中
C 0 = M b &CenterDot; e ( ( g 1 z g 2 c ) &Sigma; &alpha; j &beta; j , g 1 ) = M b &CenterDot; e ( g 1 &Sigma; &alpha; j &beta; j , g 1 ) z = M b &CenterDot; e ( g 1 &alpha; j &beta; j &CenterDot; g 1 &alpha; 2 &beta; 2 ... g 1 &alpha; m &beta; m , g 1 ) z = M b &CenterDot; &lsqb; e ( h 1 , g 1 ) &alpha; 1 &CenterDot; e ( h 2 , g 1 ) &alpha; 2 ... e ( h m , g 1 ) &alpha; m &rsqb; z , C 1 = g 1 z g 2 v ,
C j , x = T a j A x * &CenterDot; v &prime; T - r j , x s &rho; ( x ) = ( g 1 z g 2 v ) a j A x * v &prime; ( g 1 z g 2 v ) - r j , x &prime; s &rho; ( x ) = g 1 a j A x * ( zv &prime; ) g 1 - zr j , x &prime; s &rho; ( x ) g 2 A x &CenterDot; ( a j v &CenterDot; v &prime; ) - vr j , x &prime; s &rho; ( x ) , D j , x = T - r j , x &prime; = ( g 1 z g 2 v ) - r j , x &prime; = g 1 - zr j , x &prime; g 2 - vr j , x &prime; .
对于G1部分,挑战密文隐式地设置s=z,v=zv′,rj,x=zrj,x′。因此,所有的G1部分是均匀分布的,特别地,v的第一个分量是z。对于G2部分,挑战密文隐式地设置δj,x=-vrj,x′,uj=ajvv′,qρ*(x)=sρ*(x)。所有这些项仅在G1部分出现过,因此,在攻击者看来,这些项与它们模p2的值是无关的,即半功能参数的均匀随机性来自于v,a1,a2,…,am,v2′,…,vn2′,rj,x′,sρ*(x)模p2的随机性。因此,这是一个均匀分布的半功能密文。此时完美仿真Game0。另一方面,如果T=g1 z,则挑战密文中没有G2中的项,该密文为正常的,此时,完美仿真GameReal。
因此,如果能以不可忽略的优势区分GameReal和Game0,则可以相同的优势打破假设1。
引理2.如果假设2成立,对于任意PPT攻击者区分Gamek-1,2和Gamek,1的优势均是可忽略的。
证明:接收到假设2的条件能够模拟Gamek-1,2或Gamek,1。初始化阶段:设置m=(3logp2)1/ε,选择随机向量 t∈ZN *,计算 对每个属性i∈U,随机选择si∈ZN *生成系统公钥 并将其发送给其中,N,g1,g3来自假设2的条件。
询问阶段1:当攻击者询问ωr的用户私钥,且询问次数r大于k时,利用(α12,…,αm)生成ωr的正常用户私钥;当的询问次数r小于k时,对G3部分随机选择ρm+1,t,ρi′∈ZN *,计算Ⅱ型半功能用户私钥其中,ωr提交的属性集合,来自假设2的条件。显然,这个Ⅱ型半功能用户私钥SKr-Ⅱ是均匀分布的。
当r等于k时,提交属性集合ωr 生成一个正常用户私钥或Ⅰ型半功能私钥,对G3部分随机选择ρm+1∈ZN *,ρi′∈ZN *,生成用户私钥显然,这个用户私钥的G3部分是均匀分布的。值得注意的是,或者则这个私钥的G1部分隐式地设置t=w。若则该私钥的G1和G2部分也是均匀分布的,且其Ⅰ型半功能参数γ=κ〈a1,a2,…,am〉,θ=κ,qi=si。由于κ,si,a1,a2,…,am模p2的值是随机的,该私钥是均匀分布的。若该用户私钥是均匀分布的正常用户私钥。
挑战阶段1:提交一个挑战访问结构(A**),选择一个满足访问结构(A**)的属性集合ω*,询问用户私钥生成预言机KGO(ω*),当该询问次数r小于k时,生成Ⅱ型半功能用户私钥SKω*-Ⅱ;当r等于k时,生成Ⅰ型半功能私钥SKω*-Ⅰ;当r大于k时,生成正常用户私钥SKω*。此时注意,不能直接获得该用户私钥。
询问阶段2:与询问阶段1类似,此外,可以回答的所有用户私钥SKω*的泄露信息。
挑战阶段2:提交等长消息M0和M1 选择随机数v2′,v3′,…,vn2′∈ZN *,对A*的每一行Ax *和j=1,2,…,m,随机选择rj,x′∈ZN *,生成向量v′=(1,v2′,…,vn2′)。选择一个随机位b∈{0,1},计算并输出挑战密文:
C = { ( A * , &rho; * ) , C 0 = M b &CenterDot; e ( ( g 1 z g 2 v ) &Sigma; &alpha; j &beta; j , g 1 ) , C 1 = g 1 z g 2 v , &ForAll; j , x , C j , x = ( g 1 z g 2 v ) a j A x &CenterDot; v &prime; ( g 1 z g 2 v ) - r j , x &prime; s &rho; ( x ) , D j , x = ( g 1 z g 2 v ) r j , x &prime; } ,
其中,来自假设条件。
该密文是半功能的,其中
C 0 = M b &CenterDot; e ( ( g 1 z g 2 v ) &Sigma; &alpha; j &beta; j , g 1 ) = M b &CenterDot; e ( g 1 z &CenterDot; &Sigma; &alpha; j &beta; j , g 1 ) = M b &CenterDot; &Pi; j = 1 m e ( h i , g 1 ) z&alpha; j = M b &CenterDot; y z , C 1 = g 1 z g 2 v , D j , x = ( g 1 z g 2 v ) r j , x &prime; ,
C j , x = ( g 1 z g 2 v ) a j A x &CenterDot; v &prime; ( g 1 z g 2 v ) - r j , x &prime; s &rho; ( x ) = g 1 a j A x zv &prime; T &rho; * ( x ) - zr j , x &prime; g 2 A x &CenterDot; ( a j vv &prime; ) - vr j , x &prime; s &rho; ( x ) ,
对于G1部分,该密文隐式地设置s=z,v=zv′,且为均匀分布的,此时注意,v的第一个分量是z对G2部分,该密文隐式地设置δ=v,uj=ajvv′,δj,x=-vrj,x′,qρ(x)=sρ(x)。此时,当挑战私钥是Ⅰ型半功能用户私钥时,则qρ(x)=sρ(x)。这个等式必须成立,因为KeygenSF1算法和EncSF算法中的qi值必须相同。当挑战私钥是Ⅱ型半功能用户私钥时,用户私钥没有qi项。
当挑战私钥是Ⅰ型半功能用户私钥时,用户私钥和挑战密文中的其余半功能参数如下:
私钥:γ=θ′〈a1,…,am〉,θ=θ′。
密文:δ=v,δj,x=-vrj,x′。
注意:uj的第一个分量总是等于ajv,而攻击者可以从γ的第j个分量和δ分别获知aj和v模p2的值,γ中的κ可从θ获知。若第k个用户私钥的属性满足挑战访问结构时,且δ·Σγj-θ·Σu=v·Σκaj-vκ·Σaj=0modp2,则该用户私钥是名义半功能用户私钥。
由安全性定义可知,只能对该解密钥进行泄露询问,而不能进行解密钥生成询问。使用下面引理3证明:当挑战用户私钥的属性集合满足挑战密文的访问策略时,攻击者区分第k个挑战私钥是名义半功能性或真正半功能的优势是可以忽略的。
引理3若域GF(p2)上的Goldreich-Levin定理成立,对任意PPT攻击者区分第k个挑战私钥是名义半功能的或真正半功能的优势均是可忽略的。
证明:Goldreich-Levin定理的挑战者选取Γ∈[0,λ]m,ξ=f(Γ),1=<1,1,…,1>∈GF(p2)m,随机数ζ∈GF(p2)。
仿真Gamek,1设置m=(3logp2)1/ε,选择随机向量<h1,h2,…,hm>∈G1 m,α=<α12,…,αm>∈ZN m,ρ=<ρ12,…,ρm>∈ZN m,a=<a1,a2,…,am>∈ZN mm+1,t∈ZN *。对每个属性i∈U,随机选择sii′∈ZN *计算:
M S K = ( < h 1 &alpha; 1 g 1 a 1 t , h 2 &alpha; 2 g 1 a 2 t , ... , g m &alpha; m g 1 a m t > * g 3 &rho; , g 1 t g 3 &rho; m + 1 , T i t g 3 &rho; i &prime; &ForAll; i &Element; U ) ,
P K = ( N , g 1 , g 3 , g 1 a 1 , g 1 a 2 , ... , g 1 a m , y = e ( h 1 , g 1 ) &alpha; 1 ... e ( h m , g 1 ) &alpha; m , T i = g 1 s i &ForAll; i &Element; U ) .
由于已知系统主密钥和所有子群的生成元,它既可以生成正常用户私钥也能生成半功能用户私钥。因此,可以回答询问阶段1中的所有用户私钥生成询问。
挑战阶段1:攻击者提交一个挑战访问结构(A**),A*是一个n1×n2的矩阵,选择一个属性集合ω*,使得ω*满足A*。注意:由安全性定义可知,不能得到与ω*对应的用户私钥,仅能获得该用户私钥的泄露信息。
询问阶段2:不生成与ω*对应挑战私钥,而是将对挑战用户私钥的泄露询问编码成定义域为[0,λ]m的一元PPT函数。通过固定其他私钥的所有值和固定挑战私钥的非半功能参数可以实现这种泄露,具体过程如下:收到一个实例(f(Γ),1,ζ),其中,1=<1,1,···,1>,ζ=Γ.1或是随机值。用f(Γ)来回答关于挑战用户私钥的泄露询问,并隐式地定义解密用户私钥。
随机选择定义令g2为G2的生成元,隐式地设置挑战用户私钥的G2部分为和g2θ,其中,γ=Γ+〈0,0,…,0,r1〉,θ=r3,注意,Γ的长度是m,将r1加到Γ的最后一个分量上。定义挑战用户私钥的非G2部分满足其合理的分布。
挑战阶段2:提交两个等长消息M0和M1 用向量ui和δ=r2∈Zp2,构造挑战密文,其中ui,1=ττ。如果ζ=Γ·1,则
&delta; &CenterDot; &Sigma; &gamma; i - &theta; &Sigma; u i , 1 = r 2 &lsqb; ( &Gamma; + < 0 0 ... r 1 > ) * 1 &rsqb; - r 3 &Sigma; &tau; i = r 2 ( &Gamma; * 1 ) + r 1 r 2 - r 3 &Sigma; &tau; i = r 2 &CenterDot; r 3 &Sigma; &tau; i - r 1 r 2 r 2 + r 1 r 2 - r 3 &Sigma; &tau; i = 0
此时,挑战用户私钥是名义半功能用户私钥。如果ζ≠Γ·1,则挑战用户私钥是真正半功能的,且是均匀分布的。
询问阶段3:可以回答的所有询问。
猜测阶段:可用的输出区分(f(Γ),1,Γ·1)和(f(Γ),1,ζ)。由Goldreich-Levin定理可知,若能以的优势区分上述的两个元组,能以至少
&delta; ~ 3 512 mq 2 = &delta; ~ 3 &CenterDot; q 512 mq 3 = &delta; ~ 3 &CenterDot; q 512 m &CenterDot; 1 q 3 &GreaterEqual; 1 q 3 = 2 - m &epsiv;
的概率输出Γ,与泄露函数f是不可逆函数矛盾,因此,不能区分该挑战私钥是名义半功能或真正半功能的。
当挑战用户私钥的属性不满足挑战访问结构时,可以询问该用户私钥。由于文中限制在访问结构中每个属性只能使用一次,我们可以断定uj,1=ajvmodp2在信息理论上是隐藏的。
由于挑战用户私钥的属性集合ω*不满足挑战访问结构(A**),A*中使得ρ*(x)∈ω*的所有行x生成的行空间R不包含向量<1,0,···,0>。因此,存在一个向量w,使得w正交于R,但w不正交于<1,0,···,0>,即<1,0,···,0>·w≠0。我们固定一个包含w的基,则存在dj∈ZN,使得uj=djw+uj′modp2,其中uj′属于除w外的基向量扩张的空间中,注意到uj′是均匀分布的,且无法揭露dj的任何信息。由于uj,1=uj·<1,0,…,0>=djw·<1,0,…,0>+uj′·<1,0,…,0〉,uj′不揭露dj的任何信息,且w与〈1,0,…,0>不正交,因此,uj,1的值与dj相关。
uj和相应的dj仅仅出现在矩阵A*的第x行的指数中,然而,并不是每一行的指数都影响dj的值。如果ρ*(x)∈ω*,则w与R正交。该行的值与dj无关。对其余的行来说,除了一个可以忽略的概率,所有的乘积因子δj,x≠0modp2,因此,dj的值被δj,x和qρ*(x)盲化。此时,限制访问结构中的每个属性只能出现一次。由于δj,xmodp2是随机的,qρ*(x)可以完全隐藏dj。文中访问结构中的属性只能出现一次,且只有挑战用户私钥(Ⅰ型半功能的)可以包含这些项,总之,uj,1的值对是均匀分布的。
询问阶段3:与询问阶段1相同,除了不能询问泄露预言机。
基于假设2,完美仿真了Gamek-1,2或以几乎为1的概率仿真Gamek,1。因此,如果存在一个攻击者能以不可忽略的优势区分Gamek-1,2和Gamek,1,则能以几乎相同的优势打破假设2。
引理4如果假设2成立,则任意PPT攻击者区分Gamek,1和Gamek,2的优势是可以忽略的。
证明:如果存在一个攻击者能以不可忽略的优势区分Gamek,1和Gamek,2,则我们将以相同的优势攻破假设2。算法除了挑战私钥的构造方式与引理2不同,其他构造阶段相同。本引理的挑战用户私钥构造如下,随机选取向量h∈[0,λ]m 与引理2中挑战用户私钥的区别是项其中,是由假设2给定的。
如果挑战用户私钥和挑战密文的半功能参数如下:
γ=k<a1,a2,…,am>+μh,θ=k,δ=v,uj=ajv·v′。
在半功能挑战用户私钥和半功能密文中qi=si,注意:现在的挑战用户私钥中半功能参数被向量μh重新随机化,因此,该挑战用户私钥不再是名义半功能的,即δ·Σγi–θ·Σui,1=0等式不再成立。显然,μh使得所有的半功能参数模p2的值完全随机化,且相互无关。所以,挑战用户私钥是均匀分布的Ⅰ型半功能私钥,完美仿真Gamek,1(攻击者询问的私钥是Ⅱ型半功能私钥、Ⅰ型半功能挑战用户私钥和正常用户私钥)。
如果则该挑战用户私钥是Ⅱ型半功能,且半功能参数γ=μh,此时,完美仿真Gamek,2(攻击者询问的私钥是Ⅱ型半功能用户私钥、Ⅱ型半功能挑战用户私钥和正常用户私钥)。因此,可以利用的输出,以相同的优势攻破假设2。
引理5如果假设3成立,则任意PPT攻击者区分Gameq,2和Gamefinal的优势是可以忽略的。
证明:如果存在一个攻击者能以不可忽略的优势区分Gameq,2和Gamefinal,则我们将以相同的优势攻破假设3。挑战者接收到假设3的条件{g1,g2,g3,g1 αg2 v,g1 zg2 μ,T},能够模拟Gameq,2和Gamefinal
初始化阶段:设置m=(3logp2)1/ε,选择随机向量<a1,a2,…,am>∈ZN m,<β12,…,βm>∈ZN m,对对每个属性i∈U,随机选择si∈ZN,<α1,…,αm-1>∈ZN m-1,隐式设置计算公钥PK并发送给其中,N,g1,g3是由给定的。
P K = ( N , g 1 , g 3 , g 1 a 1 , g 1 a 2 , ... , g 1 a m , y = e ( g 1 &alpha; g 2 v , g 1 ) = e ( g 1 , g 1 ) &alpha; = e ( g 1 , g 1 ) &Sigma; j = 1 m &alpha; j &beta; j = e ( h 1 , g 1 ) &alpha; 1 ... e ( h m , g 1 ) &alpha; m T i = g 1 s i , &ForAll; i &Element; U ) .
询问阶段1:的每次询问生成相应的Ⅱ型半功能用户私钥。即随机选取G3部分的指数t∈ZN,h∈[0,λ]m,ρ∈ZN m,i∈ω,随机选择ρi∈ZN,计算用户私钥SKω,计算公式如下所示:
SK &omega; = ( &omega; , g 1 t g 3 &rho; m + 1 , < h 1 &alpha; 1 g 1 a 1 t , ... , h m - 1 &alpha; m - 1 g 1 a m - 1 t , ( g 1 a g 2 v ) &CenterDot; g 1 - &Sigma; j = 1 m - 1 &alpha; j &beta; j > * g 2 h * g 3 &rho; , T i t g 3 &rho; i ~ , &ForAll; i &Element; &omega; ) ,
其中,ω由选择的,给定的。显然,这个具有参数γ=h+<0,…,0,v〉的Ⅱ型半功能用户私钥是均匀分布的。
挑战阶段1:攻击者提交一个挑战访问结构(A**),A*是一个n1×n2的矩阵,选择一个属性集合ω*,使得ω*满足A*,并使用询问阶段1相同的方法,为其生成一个Ⅱ型半功能挑战用户私钥。
询问阶段2:与询问阶段1相同,此外,还可以询问解密私钥的泄露信息。
挑战阶段2:提交两个等长的消息M0和M1随机选择v2′,v3′,…,vm′∈ZN *,对A*的每一行Ax *和j=1,2,…,m,随机选择rj,x′∈ZN *生成向量v′=(1,v2′,v3′,…,vm′),选择随机位b∈{0,1},计算密文如下:
C = ( ( A * , &rho; * ) , C 0 = M b &CenterDot; T , C 1 = g 1 z g 2 &mu; , &ForAll; j , x C j , x = ( g 1 z g 2 &mu; ) a j A x &CenterDot; v &prime; ( g 1 z g 2 &mu; ) - r j , x &prime; s &rho; ( x ) , D j , x = ( g 1 z g 2 &mu; ) r j , x x &prime; )
其中,是由假设3给定的,T是一个挑战项。半功能挑战密文:
C 1 = g 1 z g 2 &mu; , C j , x = ( g 1 z g 2 &mu; ) a j A x &CenterDot; v &prime; ( g 1 z g 2 &mu; ) - r j , x &prime; s &rho; ( x ) = g 1 a j A x &CenterDot; zv &prime; T &rho; * ( x ) - zr j , x &prime; g 2 A x &CenterDot; ( a j &mu;v &prime; ) - &mu;r j , x &prime; s &rho; ( x ) , D j , x = ( g 1 z g 2 &mu; ) r j , x &prime; .
对G1部分,该密文隐式设置s=z,v=zv′,rj,x=z·rj,x′。因此,G1部分是均匀分布的,值得注意的是,向量v的第一个分量必须是z。对G2部分,该密文隐式设置δ=μ,uj=ajμv′,δj,x=-μrj,x′,qρ(x)=sρ(x)。由于仅能看到s,μ,a1,a2,…,am,v2′,v3′,…,vn2′,rj,x′,sρ(x)模p1的值,所以它们模p2的值是均匀分布的,即挑战密文的G2部分是均匀分布的。
询问阶段3:与询问阶段1相同,除了不能询问主密钥的泄露信息。
如果T=e(g1,g1)αz,挑战密文为消息Mb的半功能密文。否则,挑战密文是随机消息的半功能密文。因此,可以利用的输出攻破假设3。
定理1.如果假设1,2,3成立,则该基于属性加密方法在攻击者获知系统主密钥和用户私钥连续辅助输入泄露的情况下,仍具有自适应安全性。
证明:由引理1-5可知,Gamereal和Gamefinal是不可区分的。在Gamefinal中由于挑战密文是随机消息的密文,因此,攻击者在Gamefinal的优势是0。综上所述,在Gamereal的优势是可以忽略的。
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

Claims (7)

1.一种抗密钥连续辅助输入泄漏的基于属性加密方法,其特征在于,包括以下步骤:
S1、私钥生成中心输入系统安全参数λ和合法属性集合U,构造一个m维向量,并将该m维向量嵌入到系统公钥PK和系统主密钥MSK,m=poly(log2λ),其中,poly(log2λ)为关于log2λ的多项式函数;
S2、私钥生成中心认证用户拥有的属性集合ω,利用系统主密钥MSK和系统公钥PK,生成包含一个m维向量的用户私钥SKω
S3、加密方利用系统公钥PK和设定的访问策略,对待加密处理的信息进行加密,生成包含一个mn1维向量的密文,其中,n1是访问策略中矩阵的行数;
S4、仅在用户私钥SKω的属性满足密文的访问策略时,该用户才解密得到明文。
2.根据权利要求1所述的抗密钥连续辅助输入泄漏的基于属性加密方法,其特征在于,所述步骤S1具体为:
S11、选择阶为N=p1p2p3的循环群G和GT,其中,p1,p2,p3是3个互不相同的素数,选择双线性映射e:G×G→GT,令Gi是群G的阶为pi的子群;
S12、令0<ε<1,m=(3log2p2)1/ε,随机选择元素α12,…,αm,a1,a2,…,am∈ZN *,其中ZN *表示集合{1,2,…,N-1},构成随机向量α=<α12,…,αm>和a=<a1,a2,…,am>,从子群G1中随机选择生成元g1,h1,h2,…,hm,从子群G3中随机选择生成元g3,计算y=e(h1,y1)e(h2,y2)…e(hm,ym);
S13、对每个属性i∈U,选择一个随机元素si∈ZN *,计算输出系统公钥
S14、选取随机数t*∈ZN *,从子群G3中选择随机数ρ1 *2 *,…,ρm *m+1 *∈ZN *,其中ZN *表示集合{1,2,…,N-1},计算 构成向量K*=<k1 *,k2 *,…,km *>,对每个属性i∈U,从子群G3选择一个随机元素ti *∈ZN,计算输出系统主密钥
3.根据权利要求1所述的抗密钥连续辅助输入泄漏的基于属性加密方法,其特征在于,所述步骤S2具体为:
S21、假定用户具有属性集合私钥生成中心选择随机数t∈ZN *,从子群G3中选择随机数ρ12,…,ρmm+1∈ZN *,其中ZN *表示集合{1,2,…,N-1},计算构成一个随机向量K=<k1,k2,…km>;
S22、对每个属性i∈ω,从子群G3中选择随机数ti∈ZN *,计算 输出包含一个m维向量的用户私钥
4.根据权利要求1所述的抗密钥连续辅助输入泄漏的基于属性加密方法,其特征在于,所述步骤S3具体为:
加密方利用系统公钥PK和设定的访问策略,选择随机数构成随机向量对矩阵A的每一行Ax和j=1,2,…,m,选择一个随机数rj,x∈ZN *,对待加密处理的信息进行加密,生成包含一个mn1维向量的密文;其中,
所述“设定的访问策略”的访问结构为其中,A是一个n1×n2矩阵,ρ是一个从集合{1,…,n1}到合法属性集合U的映射;
所述加密计算公式为:
5.根据权利要求1所述的抗密钥连续辅助输入泄漏的基于属性加密方法,其特征在于,所述步骤S4具体为:
S41、记A的第x行为Ax,计算一组常量cx∈ZN,使得∑cxAx=<1,0,…,0>;
S42、计算密文中的盲化因子,其计算公式为:
&Pi; j = 1 m &lsqb; e ( k j , C 1 ) &Pi; &rho; ( x ) &Element; &omega; &lsqb; e ( C j , x , L ) e ( K &rho; ( x ) , D j , x ) &rsqb; c x &rsqb; = &lsqb; e ( h 1 , g 1 ) &alpha; 1 ... e ( h m , g 1 ) &alpha; m &rsqb; s = y s
S43、消去密文中的盲化因子,恢复消息M=C0/ys
6.根据权利要求1所述的抗密钥连续辅助输入泄漏的基于属性加密方法,其特征在于,在步骤S1还包括执行如下步骤:
每经过一段时间后,私钥生成中心执行系统主密钥MSK更新算法,以生成新的系统主密钥MSK',并具体为:
首先,私钥生成中心随机选择t*',ρ1 *',ρ2 *',…,ρm *',ρm+1 *'∈ZN *,利用系统主密钥MSK,计算 构成一个随机向量K*'=<k1 *',k2 *',…,km *'>;
然后,对每个属性i∈U,从子群G3中选择随机数ti *'∈ZN,计算 输出新的系统主密钥
7.根据权利要求3所述的抗密钥连续辅助输入泄漏的基于属性加密方法,其特征在于,所述步骤S2还包括如下步骤:
每经过一段时间后,私钥生成中心执行用户私钥更新算法,生成新的用户私钥SKω',并具体为:
首先,用户随机选择t',ρ1',ρ2',…,ρm',ρm+1'∈ZN *,利用用户私钥SKω,计算构成一个随机向量K′=<k1′,k2′,…,km′>;
然后,对每个属性i∈ω,选择G3部分随机数ti′∈ZN,计算输出新的用户私钥
CN201610266492.8A 2016-04-26 2016-04-26 一种抗密钥连续辅助输入泄漏的基于属性加密方法 Active CN105743642B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610266492.8A CN105743642B (zh) 2016-04-26 2016-04-26 一种抗密钥连续辅助输入泄漏的基于属性加密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610266492.8A CN105743642B (zh) 2016-04-26 2016-04-26 一种抗密钥连续辅助输入泄漏的基于属性加密方法

Publications (2)

Publication Number Publication Date
CN105743642A true CN105743642A (zh) 2016-07-06
CN105743642B CN105743642B (zh) 2018-08-14

Family

ID=56285579

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610266492.8A Active CN105743642B (zh) 2016-04-26 2016-04-26 一种抗密钥连续辅助输入泄漏的基于属性加密方法

Country Status (1)

Country Link
CN (1) CN105743642B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106790312A (zh) * 2017-03-31 2017-05-31 山东超越数控电子有限公司 一种基于abe的云存储数据安全共享实现方法
CN106878322A (zh) * 2017-03-10 2017-06-20 北京科技大学 一种基于属性的定长密文与密钥的加密、解密方法
CN109214160A (zh) * 2018-09-14 2019-01-15 温州科技职业学院 一种计算机网络身份验证系统及方法、计算机程序
CN109474425A (zh) * 2018-12-25 2019-03-15 国科量子通信网络有限公司 一种基于多个共享密钥获得任意指定长度派生密钥的方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
TH YUEN,SSM CHOW,Y ZHANG,SM YIU: "identity-based encryption resilient to continual auxiliary leakage", 《INTERNATIONAL CONFERENCE ON THEORY & APPLICATIONS OF CRYPTOGRAPHIC TECHNIQUES》 *
ZHIWEI WANG,: "Attribute-based Encryption Leakage Resilient to Auxiliary Input", 《INTERNATIONAL CONFERENCE ON PROVABLE SECURITY》 *
ZVIKA BRAKERSKI,YAEL TAUMAN KALAI,JONATHAN KATZ,VINOD VAIKUNTANA: "Overcoming the Hole in the Bucket:Public-Key Cryptography Resilient to Continual Memory Leakage", 《IEEE》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106878322A (zh) * 2017-03-10 2017-06-20 北京科技大学 一种基于属性的定长密文与密钥的加密、解密方法
CN106878322B (zh) * 2017-03-10 2019-06-07 北京科技大学 一种基于属性的定长密文与密钥的加密、解密方法
CN106790312A (zh) * 2017-03-31 2017-05-31 山东超越数控电子有限公司 一种基于abe的云存储数据安全共享实现方法
CN109214160A (zh) * 2018-09-14 2019-01-15 温州科技职业学院 一种计算机网络身份验证系统及方法、计算机程序
CN109474425A (zh) * 2018-12-25 2019-03-15 国科量子通信网络有限公司 一种基于多个共享密钥获得任意指定长度派生密钥的方法
CN109474425B (zh) * 2018-12-25 2021-06-25 国科量子通信网络有限公司 一种基于多个共享密钥获得任意指定长度派生密钥的方法

Also Published As

Publication number Publication date
CN105743642B (zh) 2018-08-14

Similar Documents

Publication Publication Date Title
Li et al. Hierarchical attribute based encryption with continuous leakage-resilience
Das et al. Multiauthority CP-ABE-based access control model for IoT-enabled healthcare infrastructure
Brakerski et al. Overcoming the hole in the bucket: Public-key cryptography resilient to continual memory leakage
Han et al. Improving privacy and security in decentralized ciphertext-policy attribute-based encryption
Katz et al. Predicate encryption supporting disjunctions, polynomial equations, and inner products
Goldwasser et al. Securing computation against continuous leakage
Yu et al. LH-ABSC: A lightweight hybrid attribute-based signcryption scheme for cloud-fog-assisted IoT
Guo et al. TABE-DAC: Efficient traceable attribute-based encryption scheme with dynamic access control based on blockchain
CN104320393B (zh) 重加密可控的高效属性基代理重加密方法
Cui et al. Key regeneration-free ciphertext-policy attribute-based encryption and its application
CN105743642B (zh) 一种抗密钥连续辅助输入泄漏的基于属性加密方法
Guo et al. Provably secure certificate-based encryption with leakage resilience
US10511588B2 (en) Forward-secure crash-resilient logging device
Koko et al. Comparison of Various Encryption Algorithms and Techniques for improving secured data Communication
Zhang et al. Leakage-resilient attribute-based encryption with fast decryption: models, analysis and constructions
CN101321058B (zh) 一种用于编码和译码数字消息的方法和系统
Zhang et al. Secure and efficient data deduplication in jointcloud storage
Zhou et al. CCA2 secure public‐key encryption scheme tolerating continual leakage attacks
Bhardwaj et al. Study of different cryptographic technique and challenges in future
Aloufi et al. Computing blindfolded on data homomorphically encrypted under multiple keys: An extended survey
Zhang et al. Tolerating sensitive-leakage with larger plaintext-space and higher leakage-rate in privacy-aware Internet-of-Things
Zhang et al. Data owner based attribute based encryption
Shen et al. Secure access control for eHealth data in emergency rescue case based on traceable attribute-based encryption
Zhang et al. Improving the leakage rate of ciphertext-policy attribute-based encryption for cloud computing
Wang et al. An efficient ciphertext-policy attribute-based encryption scheme with policy update

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20211213

Address after: 521000 No. 7, 12heng, xianyeqian Second District, stork nest third village, Longhu Town, Chao'an county, Chaozhou City, Guangdong Province

Patentee after: Li Junliang

Address before: 226000 No. 9 Siyuan Road, Chongchuan District, Nantong City, Jiangsu Province

Patentee before: NANTONG University

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220308

Address after: 518052 room 703, T1 office building, Qianhai Kerry business center, Qianwan 1st Road, Nanshan street, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong

Patentee after: SHENZHEN HOUSLEY TECHNOLOGY Co.,Ltd.

Address before: 521000 No. 7, 12heng, xianyeqian Second District, stork nest third village, Longhu Town, Chao'an county, Chaozhou City, Guangdong Province

Patentee before: Li Junliang

TR01 Transfer of patent right