基于身份的可验证密钥的公钥内积函数加密算法 |
来源:一起赢论文网 日期:2022-01-30 浏览数:991 【 字体: 大 中 小 大 中 小 大 中 小 】 |
第44 卷 第1 期2021 年1 月计 算机 学 报CHINESEJOURNALOFCOMPUTERSVol .44No.1Jan. 2021基于身份的可验证密钥的公钥内积函数加密算法邓宇乔n’2)宋 歌3)杨 波4)彭长根5)唐春明6)温雅敏^?(广东财经大学大数据与教育统计应用实验室 广州510120 )2)(广东财经大学统计与数学学院 广州510 120)3 )(华南农业大学数学与信息学院 广州 510 120 )4 )(陕西师范大学计算机科学学院 西安710 062)5 )( 贵州省公共大数据重点实验室( 贵州大学) 贵阳5 50 025)6 )(广州大学数学与信息科学学院 广州 510 006)摘 要 函数加密(Functional Encryption, FE) 是一种多功能的加密原语, 最早由Boneh 等人正式提出. 自从FE出现以来, 许多研究者考虑如何实现通用的FE的构造. 但是, 这些工作使用了较为复杂的理论工具: 例如, 不可区分性的混淆和多线性映射等, 实用性存疑. 因此, 构造特殊的、 高效的FE以满足特定应用场合的需要成为了许多学者探索的热点.本文对近来较为热门的一种FE: 内积函数加密方案(InnerProductFunctionalEncryption, IPFE)进行研究, 以解决目前的IPFE无法指定接收者身份, 以及无法认证密钥颁发者身份的问题.内积函数加密(InnerProductFunctionalEncrypti on,IPFE)作为一种新颖的加密原语, 可以分为公钥IPFE(PK IPFE) 和私钥IPFE(SKIPFE). 目前提出的PKIPFE有两点可改进之处:一方面, 不能为密文指定接收者的身份, 这将可能在一些应用场景下外泄密文的敏感信息; 另一方面, 它不能抵抗以下密钥的修改攻击: 持有向量密钥的恶意敌手可以将此向量进行修改.因为现存的PKIPFE方案无法提供密钥的验证功能, 因此, 该攻击也将可能导致安全性的危害. 提出一种标准模型下的基于身份的可验证密钥的PKIPFE方案ID PKIPFE, 形式化地给出针对该方案的三种攻击模型s CPA、 s IMA和s VMA, 其中s CPA模型展示选择性的密文不可区分性; s IMA模型展示密钥中身份的不可修改性; s VMA模型展示密钥中向量的不可修改性. 提出了两个新的困难性假设: CBDH和DBDHv, 其中CBDH假设的安全性可归约到CDH假设上, DBDHv的安全性可归约到DBDH假设上. 把ID PKIPFE的s CPA、s IMA和s VM八安全性归约到CBDH和DBDHv这两个假设中. 把ID PKIPFE的理论效率与Abdal la 和Agrawal 等人提出的两个PKIPFE方案进行了对比, 得出了ID PKIPFE的效率稍低, 但在权限控制和抵御密钥修改攻击方面存在优势的结论.为进一步检验方案的实用性, 使用JPBC库在一台CPU为i7 67003. 40GHz, 内存为8.00GB, 操作系统为Windows764bit 的个人PC机上实现了本文的方案. 在Setup算法中添加了预处理阶段: 在该阶段, 程序将预先计算多个消息的值, 并将预先计算的结果存放到hash表中, 待解密消息时可供查询. 分别进行了两组实验, 在第一组实验中, 消息的范围为(〇, 1〇〇〇) , 而在第二组实验中, 消息的范围为(〇, 1〇〇〇〇).在(〇, 1〇〇〇〇) 范围内时, 大多数数据统计应用程序的需求都可以满足.设定实验中向量的长度均从10 增加到1 5, 实验证明,ID PKIPFE方案是实用的.关键词 公钥内积函数加密; 基于身份的加密; 标准模型; 可验证的密钥中图法分类号TP309DOI号1 0.1 189 7/SP.J.101 6.2021.00209Identity-BasedInnerProductFunctionalEncryptionwi thVerifiedSecretKeyDENGYu Qiao1) ,2)SONGGe3)YANGBo4)PENGChangGen5)TANGChunMing?WENYa Min1) ,2)1 :)(. GuangdongUni versi tyofFinanceandEconomi cs?BigDataandEducat ionSiai i sii csAppl icai ionLaboratory? Guangzhou510120)2)(_ GuangdongUni versi tyofFinanceandEconomi cs^SchoolofMai hemai i csandSiaLi sL ics?Guangzhou510 120)3)( Coll ege ofMaihemaiicsandInformat ics^ SouthChinaAgriculturalUniversity?Guangzhou510120)4){School ofComput erSci ence?ShanxiNormalUni versity^Wan710062)5){GuizhouProvincialKeyLaboratoryofPublicBigData{ GuizhouUniversiLy) ?Guiyang55002 5)6){School ofMai hemaii csandComput erSci ence?GuangzhouUni versi ty?Guangzhou510006)AbstractFuncti onalencrypti on( FE)isamul ti functi onalencrypti onpri miti vethatwasfirst收稿日期:20 19 10 18; 在线发布日期:2020 0 7 10. 本课题得到国家重点研发计划( 2017YFB0802000 )、 国家自然科学基金( 61772147 ,61300204 , 6200 2122) 、 广东省自然科学基金( 2017A030313373 , 2019A15150 117 97 ) 、 国家密码发展基金( MMJJ20170117) 、 广州市教育局协同创新重大项目(1201610005)、 广东省普通髙校特色创新类项目(2019KTSCX014) 资助. 邓宇乔, 博士, 副教授, 主要研究方向为密码学、 云计算. Email : 425478541@qq.com. 宋 歌( 通信作者) , 博士, 讲师, 主要研究方向为密码学. 杨 波, 博士, 教授, 主要研究领域为信息安全和密码学. 彭长根, 博士, 教授, 主要研究领域为密码学. 唐春明, 博士, 教授, 主要研究领域为信息安全与密码学. 温雅敏, 博士,副教授, 主要研究方向为密码学、 云计算.210 计 算机 学 报 2021年formal l yproposedbyBonehetal.Si ncetheadventofFE,manyresearchershaveconsi deredhowtoi mpl ementageneralFEstructure. However,theseworksusemorecomplicatedtheoreticaltool s.Forexampl e,i ndi sti ngui shabl econfusi onandmul ti l inearmap,etc.,andthei rpracti cali tyi sdoubtful .Therefore,theconstructi onofspeci alandeffi ci entFEtomeettheneedsofspecifi capplicati onshasbecomeahottopicexpl oredbymanyschol ars. Inthispaper,apopul arFE:InnerProductFuncti onalEncrypti on(IPFE)isstudiedtosol vetheprobl emthatthecurrentIPFEcannotspecifytheidenti tyofthereceiverandcannotauthenti cat ethei denti tyofthesender.IPFEcanbeclassifi edi ntopubl ic keyIPFE( PKIPFE)andsecret keyIPFE( SKIPFE) . However,theproposedPKIPFEsdemonstratetwodrawbacks.Ontheonehand,recipientcannotbedesignedforaciphertext;thisl eadstol eakingsensi ti vei nformati oni nseveralapplicati ons. Ontheotherhand,itcannotresi stthefol l owingsecretkeymodifi edattack:amali ci ousadversarythathol dsapri vatekeyofacertainvectorcanmodifythisvectortobeanother.ThisattackthreatensthesecurityofPKIPFEbecauseitmakesthesecretkeyauthenticati oninfeasi bl e.Ani dentitybasedPKIPFEscheme,cal l edID PKIPFE,supportingverifiabl ekeyunderthestandardmodelisproposed.Threeattackmodels,namel y,s CPA,sIMA,ands VMAforthisschemeareformal lygi ven.Thes CPAmodelshowssel ecti veciphertexti ndisti nguishability;thesIMAmodelshowstheunmodi fiabilityofi denti tiesinsecretkeys;andthes VMAmodelshowstheunmodifiabi l i tyofvectorsi nsecretkeys. Twonewdi ffi cul tassumpti onsareproposed:CBDHandDBDHv.Thesecuri tyoftheCBDHassumpti oncanbereducedtotheCDHassumpti on,andthesecurityofDBDHvcanbereducedtotheDBDHassumpti on. WereducethesecurityofID PKIPFE’ss CPA,sIMAands VMAtotheCBDHandDBDHvassumpti ons. Wecomparethetheoreti cal effi ci encyofIDPKIPFEwi ththetwoPKIPFEschemesproposedbyAbdal l aandAgrawal . Iti sconcl udedthattheefficiencyofID PKIPFEisl ower,however,ID PKIPFEhasadvantagesi ntermsofpermissi oncontrolandresistancetokeymodi ficati onattacks. Tofurtherveri fythepracticalityofourscheme,theJPBCl i braryi susedtoimpl ementthesol uti oni nthi sarti cl eonapersonalPCwi thaCPUof1 7 67003.40 GHz,amemoryof8.00GB,andanoperati ngsystemofWi ndows764 bi t.Apreprocessi ngstageisaddedtotheSetupalgorithm:atthisstage,theprogramwil lpre cal cul atetheval uesofmultiplemessagesandstorethepre calculatedresultsi nahashtable,whichcanbequeri edwhenthemessagesaredecrypted. Twogroupsofexperi mentsareconductedseparatel y. Inthefirstgroupofexperi ments,therangeofmessagesis(0 , 1000) ,whil einthesecondgroupofexperiments, therangeofmessagesis( 0,10 000). Intherangeof( 0 ,10 000) , theneedsofmostdatastati sticsappli cati onscanbemet.Intheexperiment,thel engthofthevectori si ncreasedfrom10to15,andtheexperi mentprovesthattheIDPKIPFEschemei spracti cal .Keywordspublickeyinnerproductfunctional encrypti on;i dentitybasedencrypti on;standardmodel;veri fi edsecretkeyi 引 言函数加密(Functional Encrypti on, FE) 是一■种多功能的加密原语, 最早由Boneh 等人正式提出[1].自从FE出现以来, 许多研究者考虑如何实现通用的FE的构造 . 但是, 这些工作使用了较为复杂的理论工具. 例如, 不可区分性的混淆(Indisti nguishabilityObfuscati on,IO) 和多线性映射( Multili nealMap)等, 实用性存疑. 因此, 构造特殊的、 高效的FE以满足特定应用场合的需要成为了许多学者探索的热点. 本文对近来较为热门的一种FE: 内积函数加密方案(InnerProductFuncti onalEncrypti on,IPFE)进行研究, 以解决目前的IPFE无法指定接收者身邓宇乔等: 基于身份的可验证密钥的公钥内积函数加密算法 21 11 期份, 以及无法认证密钥颁发者身份的问题.1. 1 相关工作在PKC2015 中, Abdal l a等人[ 6]提出了一种新的加密原语, 即IPFE. 此外, Abdal l a等人构造了具体的PKIPFE方案( 即ABCP方案) , 并证明了其基于不可区分性的安全性. 但是, ABCP方案仅被证明具有选择性的安全性, 因此不能抵抗自适应敌手.Abdal la等人[7]进一步提出了一种可抗自适应敌手的PKIPFE. 最近, Agrawal等人[8]在CRYPTO16中提出了一种完全安全的PKIPFE方案. Benhamouda等人[ 9 ]提出了一种使用投影哈希函数构造的、CCA安全的PKIPFE.在另一个研究方向SKIPFE上, 学者们也做了很多的工作. Bi shop等人[ 1 °]提出了具有函数隐藏功能的IPFE. 与PKIPFE不同, SKIPFE 的方案要求在加密期间引人一个秘密向量. 该方案被证明是完全安全的, 但是, 文献[10]指出, 这种完全安全性存在缺陷, 因为它为攻击者引人了特殊的限制.Datta 等人[ 1 1 ]提出了一种新的SKIPFE, 以提高安全性并消除上述限制. 他们采用了文献[12]中的技术, 并更新了对攻击者的限制. 最近, Zhao 等人[ 1 3 ]提出了具有模拟安全性的SKIPFE.1. 2 本文的贡献本文主要有三个贡献, 分述如下:(1) 本文提出了ID PKIPFE. 加密者可以指定密文接收者的身份, 并且解密者的密钥可以由任何人公开地验证( 即密钥不可改) .(2) 本文提出了IDPKIPFE的安全模型, 包括选择性CPA安全模型和可抗修改的安全模型.(3) 本文基于标准模型, 严格地证明了ID PKIPFE的安全性.2 背景知识在本节中, 我们首先介绍将使用到的技术基础,随后, 约定一些方便文章描述的记号.2.1 双线性映射假定G和Gt是两个阶为 的乘法素阶群,e 是具有以下属性的双线性映射:(1) 双线性. 以下等式对G和 中的所有的m, g和a 均成立_(2) 非退化性.2. 2 困难性假设本节将提出两个新的假设, 分别是计算性双线性Diffie Hei lman{良设( Computati onalBilinearDiffieHell manAssumpti on, CBDH) 和判定性双线性Di ffieHel lman假设白句变体( VariantofDeci si onalBi l i nearDi ffie Hel l manAssumpti on,DBDHv)? 详细描述请参见附录1.2. 3 术 语本文给定以下的术语. 令SKf表示身份为JD的接收者持有的与向量J 相关联的密钥. 令CTf表示接收者身份为H?, 与向量x关联的密文. 令[w]表亦{l,2,"’, w} 的集合?3ID-PK-IPFE的构造动机本文将提出的IDPKIPFE主要具有以下的两个新功能: 可指定密文接收者的身份以及密钥的可验证性. 本节将首先展示PKIPFE的一个应用场景, 随后, 说明这两个功能在该应用场景中的作用.3.1PK-IPFE的一个应用场景考虑在云环境中应用安全的々 近邻算法(Secure々NN, SkNN) 对数据进行挖掘和查询[ 1 4 1 6 ] JNN是数据挖掘领域的经典分类算法. 々NN查询的原理简要描述如下: 数据拥有者(DataOwner,DO) 拥有一个数据库D, 而D由?个点( 即?个向量) Pi,Pz,…, 组成? 查询用户( Queri edUser, QU) 拥有一个需要查询的点( 即向量)9, 它需要检索D中最接近点9 的々 个点. 本质上, 如文献[14] 中所述, 上述ANN查询可以转换为两个向量的内积计算.如果DO将其数据库D上传到云服务提供商( Cl oudServi ceProvi der, CSP), 而CSP将利用这些数据为大量的QU提供查询服务. 在传统的ANN模型中, DO的数据隐私无法得到保护.因此, 通常的做法是, DO逐一加密其向量扒,/^,…,pm, 然后将其上传到CSP以保护数据隐私. QU将其需要查询的向量9发送到CSP. CSP通过执行内积计算获得ANN结果, 并将该结果发送到QU.综上, 可以采用PKIPFE来实现SkNN: DO使用加密算法对向量进行加密, 并将其上传到CSP;QU将查询密钥(密钥内包含有QU的查询向量) 发送给CSP; PKIPFE的安全性将可保证DO的数据隐私不会外泄( 在此模型中我们不考虑QU的查询隐私).212 计導机攀报: _1苹3. 2 以上方案中存在的问题上述方案存在以下两个问题:(1)DO无法楫定其密文的接收者? 这将在一些应用中带来不便. 例如. 假设DO仅向已付费的QU提供查询服务, 如果DO不能指定密文的接收者, 它就不能阻止未付费的QU查询数据,库(2: 3 恶#攻击者可能会修魂查询密铒. 在下节将揞出. 在」般的PKIPFE方案中》 密钥内嵌人的向量可以被修改? 这种修改会对StNN模型造成威胁. 例如, 如图1 所示, 假设QU向CSP发送J与向量关联的查谢密钥,聲且该密钥被敌手捕获>则敌手可轉: _鲁:玫为6々为戆手迤衆的螯載5?參=后将此修改的聋询密钥发送到CSP.CSP将向.QU返0错误的处W查询緒杲? 以下的例1 将更加潆楚地表明, CSP返回的错误绾果将会导致严重的后擧?例1?假设DO上传加密点( 和=<—1,一 1) ,fth0 J#fC4k ?s厂C5, S)] 到CJSP?QU的查询J;皋g=(1,1>?QU_黌每到麵N的结粟即査询在DO的数据库中. 与点(1, 1)的欧几凰禱距离最近的两个点, 实际上, 距离点g 最近的2 个点应为h,p2. 然而, 如果敌手截莸了QU的查询密钥; 并将密衝中的点g=Cl,i:) 修政为=g=(: L, 则CSP返回的2 个最近的点将变成办,, 而不再: 是Pl,p2. 由此可见,一旦激手V以修改密钥中嵌人的阿董, 将有可能导致.严重的后果.3. 3 密钥修改攻击本文先简要回顧ABCP方案的KeyDer算法(有关整个方案的详细说明 審参见文献16]的第3 节>?震奠難使用MSK, 即向量s=(: 巧,…,%), 将向量j=(Mf…, _vJ编码进密钥中: SK,=d, SK2)=(.y.{ y, sY).规在介绍如何修改密钥. 假设Alkd即敌手)获得了i个密钥(, SKVi)i 6 [ 1 .. . .,i)—( SK^ , i ?SKi, 2) ie ti , I ̄Cyi^(yi^s)?则她可以通过以下计算生成一个新的、 关于向量h心h的密钥, 其中仏,…上}为Al ice自行选择的整数:iiSKy=(SK{,5A1)=(SK-i'- 2* SK^)i-1i ̄l=(y\(y\sy):在SkNN场蕈中, 假设QU拥有关于向量的密钥, 并期震查询向量y 与保書在CSP上的秘密向的内积.但是.QU向CSP传输密钥的过程被教手所戴获, 敌手将QU的密钥改为与向量/相关(/乒.V), 随后发送到CSP, 则将导致如下后果: CSP将向QU返回酔密得到内积〈/?x> (而QU要查询的内积病除为:Lv**:?此种密钥申询;*的修改技术可以被类似地?甩TALS方寒[7 ]中,由f篇値所限, 我们省赂了对其齡描述.综上所述,一般的PK-IPFE方案中, 密■里嵌入的询量可被敌手修改, 这将给一趋应用带来安,全.威胁?4ID-PK-IPFE的定义和安全性模型本节介_ID.-PK-IPFE的寅久和実全他模龜?4.1ID-PK-IPFE的定义定义1(ID-PKIPFE的變义;ID-PKIPFE減■儀式化地_为PKIPFE=<Setup,Encrypt,KeyOen;Verify,Deerypt)的稱逑如下:Setup (1', w) { 属:算藤的输人: 为售蠢参数;l 和系统中向鐘的长度 该箅法的输出是公钥 和MSK.邓宇乔等: 基于身份的可验证密钥的公钥内积函数加密算法 21 31 期EncryptC PK,JD, x): 该算法的输人为公钥PK, 接收者的身份JD和待加密向量x. 该算法的输出为密文C7T.KeyGen(MSK,JD,3〇: 该算法的输人为主密钥MSK, 密钥持有者的身份JD和向量^该算法输出密钥SK;d.Verify(TK, SK): 该算法的输人为公钥PK和密钥SK. 算法输出1 表示密钥验证通过, 即密钥未被改动; 否则输出〇 表示验证不通过, 即密钥已被改动.Decrypt(TK, CTf, SKf): 解密算法将PK,CTf和SKf作为输人. 如果ro乒nr, 则解密以极大的概率失败; 否则, 解密算法输出内积值〈 x,:v 〉.在ID PKIPFE方案中,一个接收者JD仅允许与一个向量进行绑定. 例如, 如果已形成密钥, 则不允许形成密钥SKf, 其中 因为JD已经和向量^ 绑定, 则不再允许与另一个向量/绑定. 我们将在第4 节中说明原因. 如果接收者M需要同时绑定多个( 例如《) 个不同的向量, 从技术上讲, 我们可以为接收者M创建〃 个不同的接收者例如,JA,JA,…,JDJ, 并为 绑定一个唯一的向量I即可.本文以下提出关于ID PKIPFE的三个安全性模型: 包括选择性明文攻击模型( sel ecti veChosenPlai ntextAttack, s CPA) , 选择性ID修改攻击模型( sel ecti veIDModi fiedAttack,sIMA) 和选择性向量修改攻击模型( sel ecti veVectorModifi edAttack, s VMA).4. 2ID-PK-IPFE的安全性模型s CPA安全性模型展示密文的不可区分性, 并且这些密文与选择性向量和选择性接收者身份相关联.定义2(ID PKIPFE的s CPA安全性模型).IDPKIPFE的s CPA安全性模型主要包括如下白句Init、Setup、 Queriesl、 Queries2、Chal l enge和Guess六个阶段, 是挑战者C和敌手^之间进行的游戏. 该模型的描述如下:111比_4选择并向C发布一个挑战身份 和两个挑战向量<, iiK ).Setup:C生成并发布公钥PK.Queries1:可以向C提出任何密钥查询SKf,但有以下限制:(1) 对同一个 不能重复查询.(2) 如果 , 即查询的身份JD等于挑战的身份 则需满足:〈< <,3^=0.Chal lenge掷硬币 {〇 , 1}, 生成挑战密文然后将其发送给_4.Queries2: 与“Queri es1”阶段操作相同.Guess:输出对/? 的猜测以上的限制1 确保一个身份 仅与一个向量相关联; 而若无限制2 , 则_4可能知道密钥 满足以下式子:因此, >4可以使用密钥SKr来解密挑战密文C, 从而得到〈<, y〉. 若〈<, y〉=〈<, y 输出〇, 否则, 输出1. 因此, 若无限制2 ,_A可以频繁地赢得该游戏.当 时, 可以查询密钥sk;d, 其中:v可以是任意向量. 这是因为, >4无法使用此密钥来解密挑战密文CTg'定义>4赢得S CPA游戏的优势为Advs CPA=Pr[/?,=/?]Y.定义3(IDPKIPFE的s CPA的安全性定义).如果对于任何的PPT算法 而言, 优势是可以忽略的, 则ID PKIPF是s CPA安全的.以下提出的两种安全性模型, 是用来确保密钥的不可修改性. 具体而言, 如果密钥SK)D被生成, 则密钥中的身份 和向量y 都不能被任何人修改.如果敌手试图修改密钥SKf, 则他可以从以下两种方式中进行选择: 首先, 他可以修改密钥中的身份JD, 例如, 将JD修改为JD'; 其次, 他可以修改密钥中的向量, 例如, 将_v 修改成/. 以下定义的安全模型sIMA用以捕获敌手修改密钥中的身份JD的行为, 而sVM A模型用以捕获敌手修改密钥中的向量的行为.定义4(ID PKIPFE的sIMA安全性模型).sIMA模型是挑战者C和敌手 之间进行的游戏,它包括Ini t、Setup、 Queries 和Forge 四个阶段.Init :选择并发布挑战的身份Setup:C生成并发布公钥PK, 然后将其发送给>4.Queries:可以进行Q个密钥查询SKf:( 沒[Q]), 但限制为ro, 乒j马和ro, 乒nr, 其中…e[Q]_Forge: _A选择挑战向量_y*, 并生成密钥SK?* *,然后将其提交给C.214 计 算机 学 报 2021年定义>4赢得sIMA游戏的优势为Advs iMA=PrlA( PK,VSK?-:JD! ^:D*)=SK?*:( Vj*)].定义5(ID PKIPFE的sIMA安全性定义).如果对于任意的PPT算法 而言, 优势/WtvIMA均可以忽略, 则ID PKIPFE对sIMA是安全的.s IMA模型是一种选择性的安全模型, 即敌手?A需要在收到公钥之前公开挑战身份 可以查询Q个秘密密钥{ SKf} , e[Q], 唯一的限制是JA乒HT.如果可以根据其已知的密钥集合, 推导出新的密钥SK3%则可以赢得游戏.定义6(IDPKIPFE的s VMA安全性模型).IDPKIPFE 的s VMA安全性模型包括Ini t、Set up、 Queri es 和Forge 四个阶段. 该模型是在挑战者C和敌手^之间进行的游戏.s VMA的详细说明如下:init:选择挑战身份nr和挑战向量,, 并将其发送给C.^的目标是生成新的密钥SKf%其中/W?Setup:C生成公钥PK, 然后将其发送给_4.Queries1:可以向C询问Q个密钥SKf:G'e[Q]) , 其唯一的限制是ja乒jd,, 其中ye[Q], 并且挑战身份 必须与挑战向量:r绑定.Forge:_4伪造密钥SKf, 其中 乒,.定义>4赢得s VMA游戏的优势如下:AdfosVMA=Pr[_A(TK, VSKf:(JD乒JD*) , SKf*)=sW: /W]_定义7(IDPKIPFE的s VMA的安全性定义).如果对于任意的PPT算法而言, 优势/WtVvMA 都可以忽略不计, 则IDPKIPFE是s VMA安全的.可以从s VMA模型中观察到以下特点. 在Init阶段, 敌手应首先声明挑战身份 和挑战向量,.其次, 在询问过程中,当敌手询问关于挑战身份nr的密钥时, 该密钥必须与挑战向量,绑定. 再次,的目标是将密钥SKf修改为SKf, 其中因此, 如果IDPKIPFE方案在s VMA模型中是安全的, 则敌手无法选择性地修改密钥中的向量.5ID-PK-IPFE的构造5. 1ID-PK-IPFE的构造SetupCl1, 《): 该算法以安全参数A, 向量的长度w为输人. 选择素数阶为f的乘法群G和GT, 双线性映射e: GXG—Gt, 以及防碰撞的哈布函数 选择m!, m2, 》!, 》2eG和整数,? ? ?, &, 计算},eH? 该算法公布以下公钥:PK=(. G,, G,T, g,p,e, v1, v2, h,{hi }主密钥为MSK=〇, kheH).Encrypt(PK, JD, x): 该算法将PK, 接收者的身份ID和向量x作为输人. 选择re厶, 并生成以下密文:CI,1=e( g, g)^e(uI1Du2 , hi)r: (iG[n]) ,Cr=gr,cv=(vrm)v2 y,Ch=e(ulDu2 , h)r.该算法生成的密文为CT={ID, Cr , Cv , Ck, (Cu,…, CJlKeyGen(MSK,JD,3O: 该算法将身份JD, MSK=O, &,? ? ?, &) 和向量_y={3^ ,_y2,…,_y?} 作为输人. 选择 并计算:nW| ¥Kt=gl.密钥为SK={:v , M,}.Verify(TK, SK) : 该算法以PK=( G, GT, g,f,e,m!,m2 , w! , w2 ,/i, { &} , eh, W) 和SK={ _y ,,K, } 作为输人. 如果下式成立则输出1:e( g, Kh)'e(v^(l mv2, Kt )=e(ulDu2,/i^? ■ ?hynn?h) ,否则, 输出〇.上述验证算法的正确性如下所示:e(g, Kh)-e(v^aD)v2, Kl )=e(g, (u[Du2)^,y,+i(:v^(lmv2)l)-e(. v^(l mv2, gl)=e{u{°u2,X)gs>y>'gs)'e(v^amv2 , g1)-厂1e( v^UD>v2, gl)=e(ulDu2j/ii1? ? ?hynn'h).Decrypt(PK, CT, SK): 该算法以PK、 CT和SK作为输人. 如果包含在CT和SK中的身份不同, 则算法输出丄并中止.如果包含在CT和SK中的身份相同, 设该接收者身份为H?, 并设与CT和SK关联的向量分别为x=(而,…, :r? ) 和_y=(_yi,…,3〇, 计算:JXC^]t=e(g, g)u'y>Y[e( u^DU2, ht )ry'i li 1和邓宇乔等: 基于身份的可验证密钥的公钥内积函数加密算法 21 51 期nx' S| ¥=e( g^,y,', uI1Du2 y-e(g, v]t( m>v2)rl=JJe(u{Du2 y gs^)y"?e(uI1Du2 y gs')r?e(gy v^( ID) v2)ni i= JJ^(w[dw2 j ht )y^r?e(u[Du2 y hY?e(g^〇^( 1 £> ) v2)ri.i 1该算法通过以下方式得到 :e(Cr, Kh r1?Ch?e( Cvi l=(e(g, g)u,y)Y\e(ulDU2 j hi Y^)?i i{ \\_e( u[Du2^ hi)y^r?e(u[Du2^ h)r?e(. g^ v^( ID)v2)rl)?i iei u\Du2,fi)r.ei i v^umv2 y=e(g-,g-)< ^>.该算法寻找 满足以下方程式:e( g, g), x'y>=(e(g, g) )M,算法输出 作为恢复的明文. 最后这步解密过程涉及到求离散对数问题, 但是,当把 可能的取值限制在固定的多项式大小范围内时, 解密算法能以多项式的时间对密文解密, 目前提出的所有的IPFE方案均采用这种解密方式+9 ].本文在第3 节中讨论了ID PKIPFE方案必须设置以下的限制:一个身份 只能与一个向量绑定. 假定存在两个向量, 设为h 都与一个身份ro相关联. 这两个密钥设为二G4W严V2)K":二f,Kk,2--(.uTu2 )^,y^"?aD)V2 )kl,2=二z,其中,z, /ez# 是两个整数. 则此时敌手可对密钥进行修改, 因为以上两个密钥可用于生成关于同一个身份 , 且关联一个新的向量的密钥. 例如, 可以通过以下计算生成关于身份ID和向量_y=2_yi_y 2 的新密钥:KdL.d) WK(=( Ku)2.( Ka,2 )1=( Ml')2(务1( Ml')(聲2’ ,+S)因此, 本文的ID PKIPFE方案要求,一个身份必须仅能与一个向量进行绑定, 以防止敌手对密钥的修改攻击.5.2 安全性分析在本节中将证明IDPKIPFE的s CPA、sIMA和s VMA的安全性. 具体证明过程请参见附录.5. 3 效率分析具体的理论和实验效率分析请参见附录.6 结 论本文通过使用双线性映射技术, 提出了IDPKIPFE方案, 该方案主要解决了一般的PKIPFE方案中无法指定接收者, 并且密钥可修改的问题. 我们定义了s CPA、s IMA和s VMA模型, 并在这些模型下证明了ID PKIPFE的安全性. 最后, 我们对ID PKIPFE方案进行了理论和实验的效率分析.致 谢 我们诚挚感谢编辑老师和匿名审稿专家对稿件提出的中肯意见!参 考 文 献[1]BonehD,SahaiA,WatersB. Functionalencrypt ion: Def init ionsandchallenges//ProceedingsoftheTheoryof Cryptography8thTheoryof CryptographyConference. RI , USA,201 1:253 273[2]GargS?Gent ryC? HaleviS? etal. Candidate indistinguishabilityobfuscationandfunct ionalencrypt ionforallci rcuits//Proceedingsoft he2013IEEE54t hAnnualSymposiumonFoundat ionsofComput erScience. Berkeley, USA, 2013:40 49[3]Att rapadungN. Dualsyst emencrypt ionviadoublyselect ivesecurity : Framework?f ullysecurefunct ionalencrypt ionforregularlanguages,andmore//ProceedingsoftheEUROCRYPT2014. Copenhagen, Denmark,2014: 557 577[4]WatersB. Apunct uredprogrammingapproacht oadapt ivelysecurefunct ionalencrypt ion//ProceedingsoftheCRYPTO2015. CA, USA, 2015: 678 697[5]AsharovG?SegevG. Limitsonthepowerofindist inguishabilityobfuscationandfunctionalencryption/ /Proceedi ngsoftheIEEE56thAnnualSymposiumonFoundationsofComput erScience. CA, USA, 2015; 191 209[6]Abdal laM,BourseF,CaroAD,etal. Simplefunctionalencryptionschemesf orinnerproducts//Proceedi ngsofthePublicKeyCrypt ography20 15. MD, USA,2015: 733 75 1[7]Abdal laM,BourseF, CaroAD,et al. Bet t ersecurityforfunct ionalencrypt ionforinnerproduct evaluat ions. CryptologyePrint Archive,2016 , ht tp: //eprint. iacr. org/201 6/011216 计 算机 学 报 2021年[8]AgrawalS, Libert B, St ehlD. Fullysecurefunct ionalencrypt ionf orinnerproducts?fromst andardassumpt ions//ProceedingsoftheCRYPTO2016. CA,USA,2016; 333 362[9]BenhamoudaF? BourseF, LipmaaI I . CCAsecureinnerproductf unct ionalencrypt ionf romproject ivehashf unctions//Proceedingsofthe2 0thIACRInternationalConferenceonPract iceandTheoryinPublic KeyCryptography. Amst erdam,TheNetherlands,2017; 36 66[10]BishopA,JainA,KowalczykL. Functionhidinginnerproductencrypt ion//Proceedingsof theASI ACRYPT2015. Auckland,NewZealand, 2015; 4 70491[11]Dat taP?Dut taR?MukhopadhyayS. Functionalencryptionforinnerproductwithfullfunct ionprivacy//Proceedingsoft hePublic KeyCryptography2016. Taiwan, Chi na,2016;164 195[12]OkamotoT?TakashimaK. Fullysecurefunct ionalencrypt ionwithgeneralrelat ionsfromthedecisionallinearassumption//Proceedingsof theCRYPTO2010. CA,USA,2010: 191 208附 录.i. 困难性假设ID PKIPFE方案的安全性将基于以下所提的两个新的假设: 分别为CBDH假设和DBDHv假设. 这两个假设的安全性分别可归约到两个经典假设CDH和DBDH的安全性上.即若CDH假设是难解的, 则CBDH假设也难解; 若DBDH假设是难解的, 则DBDHv假设也难解.以下的安全性归约均遵守同样的原理: 使用反证法对结论进行证明, 具体证明思路如下. 若要证明假设/I 难解, 则假设B也难解, 可设定一个算法 来解决假设/I , 设定一个算法6来解决假设B. 利用反证法, 首先假定假设B可解, 若可以推导出假设A也可解, 由于我们已知假设/I 是难解的(前提条件) , 根据逆反定理, 可知假设B是难解的.以下为CBDH和DBDHv的归约过程.定义1 CCBDH的定义).令G*GT均为阶为素数户 的乘法群,e是双线性映射.令x,;y,Ze2f 为随机选择的整数, g为G的生成元. 定义可解决CBDH假设的敌手>4的优势为Advcmn=Pr\ A(G, GT^,g,gx,gy,gz, gyz)=gxy|.如果对于任何概率多项式时间(Probabil ityPolynomialTi me , PPT)算法J而言, /I如CBDH都可忽略, 则认为CBDH假设是难解的.以下证明, 若经典的CDH[17]问题是难解的, 则本文提出的CBDH问题也是难解的.定理1 . 如果CDH是难解的, 则CBDH也是难解的.证明.假设PPT算法B可以以不可忽略的概率求解CBDH假设, 构造一个PPT算法>4来解决CDH假设.为?4创建一个CDH实例CDH=(G, 户, ) , >4的目标是计算 选择一个阶为素数f 的群GT,一个双线性映射e : GXG—GT和整数 , 生成元组CSDH=(G, GT,e, g, f ) 0, 将CSDH作为输人提交给B.6将CBDH的解 发送给>4 , 此结果也是CDH实例的解.[13]ZhaoQi ngsong,ZengQingkai, LiuXimeng, XuI l uanliang.Simulat ionbasedsecurityoffunct ionhidinginnerproductencrypti on. SCIENCECHINAInf ormationSciences,2018 ,61( 4) : 048102[14]WongWaiKit , CheungDavidWai Lok, KaoBen, etal.Secure^NNcomputationonencrypteddatabases//Proceedingsof theACMSIGMODInt ernat ionalConferenceonManagementof Data. RI ,USA,200 9; 139 152[15]YaoBi n,LiFeif ei ? Xi aoXiaokui. Securenearestneighborrevisit ed//Pro ceedingsof the2 9t hIEEEInternationalConferenceonDat aEngineering. Brisbane, Australia,2013 :733744[16]GuChunsheng?GuJixing. Knownplaint ext at t ackonsecure是NNcomput ationonencrypt eddatabases. SecurityandCommunicat ionNet works, 2014 , 7 ( 12) : 2432 24 41[17]Dif fieW? HeilmanME. Newdirect ionsincryptography.IEEETransact ionsonInf ormat ionTheory,1976,22(5) :644 654因此, 如果CBDH是可解的, 则CDH是可解的; 反过来, 如果CDH不可解, 则CBDH不可解.定义2(DBDHv的定义). DBDHv假设是DBDH假设[17]的变体. 令G*GT是阶为素数f 的两个乘法群, e 为双线性映射. 令x,;y,z 为随机选择的元素, g为G的生成元, GT. 定义敌手>4解决DBDHv假设的优势为人如應?=Pr\ A(G, GT< e,g,gx,gy,gz,gl,gyl, T=e(g, gYyz)=1| Pr\ A(G, GT,e, g, gx, gy, g%gt, gyt, T=K)=1\ ,其中,i? 是Gt中的随机元素.我们通过以下定理证明, 假设DBDH难解, 则DBDHv亦难解.定理2. 如果DBDH难解, 则DBDHv也难解.证明. 假设PPT算法6可以以不可忽略的概率求解DBDHv假设, 我们构造一个PPT算法>4来解决DBDH假设. 首先, 给*4一个DBDH实例DSDH=(G, GT,户, g, <,f, <, 了), 其目标是确定T=e(g, gf或T是Gt中的随机元素.*4选择一个整数A6, 并生成DBDHv 实例:DBDHV=(G, GT,e, g, gx, gy, gz, gk,(gy)k)DBDHv实例提交给6.6向J发送/9=1 表示了=容《或/9=0 表示了把/9 作为它对DBDH假设的输出. 如果DBDHv是可解的, 则DBDH是可解的; 因此, 如果DBDH难解, 则DBDHv也难解.2. 安全性分析2.1s-CPA的安全性分析本文通过以下定理证明ID PKIPFE的s CPA安全性.定理3. 如果DBDHv的假设是困难的, 则ID PKIPFE是s CPA安全的.证明. 如果敌手J以不可忽略的优势e 攻破ID PKIPFE的s CPA安全性, 则可以构造挑战者C以不可忽略的邓宇乔等: 基于身份的可验证密钥的公钥内积函数加密算法 21 71 期优势e/2 解决DBDHv假设, 以下为^和( : 之间的交互过程.Init: ^选择一个挑战身份JIT和两个挑战向量:X〇= (XqA,X〇#l2?* * ?jX〇,n), X{= (x{A,X{,Z >* * ?>x{,n),其中,Xo*.Setup:C以DBDHv假设的挑战项( G, G t, e , g, >, g'f , 了)作为输人, 其任务是判定是否有T=e(g, W成立.C选择向量的长度n, 安全参数A 和抗碰撞哈希函数片.此外, C随机选取外, %4,/2e厶, 并设置ui=gxgkgp、,u2= (gk) wY2,'V\=gXgl1^ VZ=(gX)naD^gl2.C选择n+1 个随机数A/,/i! ,/4,…, <并设置:h=gh\^=gh,1(gy)(x〇^x^^: (z G[n]).C实际上隐含地设置了a5=A 和{hh(xLOyhe M.最后, C将以下PK发送给^:PK=(Gy Gr y gy pyeyUlyU2yVlyV2 yhyh^y- "yhn).Qiieries1 : 在该阶段中, d向(: 询问密钥. 对于查询SKf1, C首先执行以下有效性检查:1. 如果^已查询过身份ID, 则检查返回 1 .2. 如果ID=ID*和〈 < xT , #0 同时成立, 则检查返回0.3. 如果通过以上检查未返回结果, 则检查返回1 .第一步和第二步检查可确保满足s CPA定义中的限制. 其中第一步检查要求敌手不能询问一个身份ID两次,因为一个身份ID仅能与一个向量进行绑定; 第二个检查本文在此进行简单解释: s CPA的安全性要求, 如果敌手查询密钥 , 则向量^必须满足以下等式:〈 4巧> =〈 4,^>.因此, 如果 和〈xQ#同时成立, 贝[J 该查询不满足s CPA的安全性模型的限制要求.C执行以下操作以响应来自^的密钥查询SKf1.1. 如果有效性检查返回 1 或〇, 则C拒绝生成密钥, 并继续监听来自^的下一个密钥查询.2. 如果有效性检查返回1 并且ID#ID#成立, 则以下式子将以极大的概率成立: 片(ID) #片(JIT) , 因为片具有抗碰撞性. 在这个情况下, 敌手^可以查询与任何向量J 相关的秘密密钥. C随机选择; Zp并隐含地设置f=ID?^(xo , ,^ e^n]HUD) HUD")+心随后, C推导如下的密钥:ir?-2(x〇,2xi,2^y2^e MJ<[i=gl = (gy)naD) naD*)2^,Kh=(u{Du2 )^(v7(id)v2 )*y'S Z, )y+y]h'y+h'((gr,yD.(^yD W.gPlw+p2)b、息]".n( iD) n(w*)^,r ri , ,((#).gn( ^yhID?2(2^e Mn(w) n(iDID?2(5, ,一=(gxy)-6 WU "* "Ag"?Bgyk?Cgy?Dgk?E=八gx?Bgyk?Cgy?Dgk?E,其中, 儿_8, 0, 〇,£: 是可由(: 计算得出的整数, 而项#, ^,g%#为已知项. 挑战者C不知道项 而它分别出现在id?2J(;^e [n]xl ,2)y2vn Jy) s、?( 10)%)1这两项中, 但是, 如上所示, 该项在计算中被抵消了.3. 如果有效性检查返回1, 且ID=JIT和《xr , W=0同时成立, C随机选择; 厶并设置f=;r, 并如下地推导出密钥:K,=gl=g%Kh=(_ u[Duz )^ ^3(_ v^<JD)v2 )l=((gxyD'gpi!D+p〇y.暴卜'i)y!'勤y!+h?^^x'^naD^y naD*).^nao*+iz^=((gxyD'gp,+p2>^l!yi+h?( gn(jD、、+i2Y= A/gx- B/.在上式中, /V'B'是可以由C计算出来的整数, 而C未知的项g”被抵消掉了, 因为1)?厂:^ 4,^>=^e[n]0 成立.Chall enge:^拋掷硬币/3£ {〇, 1}, 并如下地加密向量?V, x/5:2 ,…, 和挑战的接收者ID'C隐含地设置:r=z.生成:C,==g%=(g2)n(id+uCh=e(_ ufuiyhy=e(gxI D^+k I D^+piID^gk ID^+p2y gh,)z=e(gx,gz)lD^k,e (g,gz)(^l D^p2)k,.对于K[n] , C设置:々, 0(VI) XA).dgW2、(7 . 1)1. 如果T=Kg, g)^, 则上式中设置的Cw:(i e[n])均为合法的密文分布, 因为有以下式子成立:Cx,, =e(.g,g)xf^e (.u[Du2yh! )r:e(.g, g)WgxL^+pyID*+p2=e(g,gy^■(e(g,gryz)m'(<- <-)■e (g%g^),D'h'- ?y gz)(piw^+p2) (x〇 ^xi ^?e(gz, g)p^=e(g. g)x^-(T)wi t(x〇 ^xLy?心.e (#,g)M(7 . 2)2. 如果T=e(g, g)^7(g,gy, 其中/e石是一个随机数(表明了是Gt中的随机元素), 则有218 计 算机 学 报 2021年.e(gx,gz)w、?e(gyy gz')(piw^+H)(x〇 ^xi ^>e(gz, g)p^=e{g,gyxP^?(e(g,gYyz?e ig^gY)lD(xQ ^xi ,i}?ei^y gz)ir>i t^?e(gy, gz')(p^+p2) (xLxi ^^eig^, g)p^=e(.g, g)xl,r’I D、x^xG?e (.ufu2AY.上式表示被加密的向量为=(x^^rlD^(.x〇 AXi A)\rW^{xlzx{,2) r"^x^n+rID#(x〇,nx{,n) ).因为/是随机整数, 因此, 向量V以极大概率不等于挑战向量因此, C无法成功地模拟S CPA的游戏; 从而, 敌手^也无法从该游戏获得任何有用信息, 敌手^只能随机地猜测C拋掷硬币的结果.Queries2: 与Queri es1阶段相同.Giiess : 最后, d输出他对0的猜测 如果,=仏则C输出1 表示了 , 否则C输出0 表示了=兄以下分析C成功解决DBDHV假设的概率. 假设5WCC655事件表示C成功解决DBDHV假设,y=0 表示了=e(g,g)—成立,y=l 表示T=只成立. 则有Pr[successJ=Pr[success| y=〇]Pr[y=〇]+Pr[success| y= l]Pr[y=1]=丄.(丄+e)+丄. 丄2V2/2222在上式中, 如果了( 此事件的发生概率为y) , 则C完美地模拟游戏, 以y+e 的概率赢得本游戏;如果T=只, 则C无法模拟游戏, ^仅以+的概率赢得游戏.综上所述, C解决DBDHv假设的优势为yWrDBDHv = Pr[5wcce55]j=音.因为在我们的假设中e 是不可忽略的, 因此/WrDBDHv是不可忽略的. 因此, 如果敌手*4 以不可忽略的优势攻破ID PKIPFE的S CPA安全性, 则挑战者C将以不可忽略的优势解决DBDHv假设.2. 2s-IMA的安全性分析定理4. 如果CBDH假设是困难的, 则ID PKIPFE是s IMA安全的.证明. 若敌手J可以以不可忽略的优势攻破ID PKIPFE的s IMA安全性, 则可构造一个挑战者C解决CBDH假设. 以下为*4和C之间的交互过程.选择并公布挑战身份ID'SetUp: C以CBDH假设的实例( G, GT,e, g, f作为输人, 其任务是输出C选择向量的长度n, 安全参数A 和抗碰撞哈希函数H.此外, C随机选择外, 九, 厶, 并设置u,=g^g^g^, u2=(.g^),D'gp2,, v2= (gx)n(w',g1^.c选择随机数fc',…, < 6 中, 并设置h=(gHht =(gy)h^ ?g*-: (i 6[n]).C实际上设置了5=//:y+/i〃和〇, =fc丨:y +/t:〇,e H.最后, C将以下RK发送给>4:PK= (G, GT, g, p,e,Ui,?2,vi,V2,? ? ?,hn).Queries: J可以对C进行Q次密钥查询, 但是, 存在以下限制: ID, 乒ID, 和ID, 乒ID%其中以e[Q]. C执行以下操作以响应来自*4的密钥查询SKf.ro?(2y,h,. +h,)C选择k厶, 隐含地设置t=片(iDf片(1〇.)y +f , 并生成Kt =gt=igy)n(i D) n( iD*)gL,,Kk=?u2+,(v?< w)v2 )l*y'i2?4+"’)+(2=(-(- ^Y0*(gZ)ID W*?gPlW+P2)^^ e[n]! ’、6[n]"'.Ey^+h'^)—lie w:y+t.( )w( id )w+ z2)naD) naD*)ID-(^y2h+h,)jd.(2=(gxy)v^ e[n]’(gzy)、e[n]’?Agzy- Bgz- Cgx- Dgy- Ey其中, 儿_8,0,〇,£:是( :能计算得到的整数, 而#^, <, ^为实例中给出的已知数. C所未知的项 在上面的计算中被抵消了.Forge: ^向〔提交伪造的密钥=( ,, ) ,其中,=?, 力#,…, 是嵌人到密钥中的挑战向量.若^>/7^+//=〇111〇办, 则 无法解决CBDH假设, 并且中止!e [n]游戏; 否则, 我们有K:=gl\Ki=Ufu2)^,y!+\vrjJ'xv2 rl****y'(S+/ i’)+(y]h"yJrh"' '\=((g-y^-{g^yD w-ghw+p2)y. itn]1 1)2)?^gX(ID*) H (ID*)9 gH(ID#)^+?2i#= mr(』』》■)+(??").(#(id、i+;2),=(.g^n,D'-(.gi'yH,JD')h h - Ag^B'gy- c,其中, 是可由C计算得到的整数. C输出:gxy=1(K-(. K:)H( ,D5 ii+i2 ?(AV?BV-C')1)v-e w' ''.现在分析C成功解决CBDH假设的概率. 显然, 游戏唯一的终止条件是I]+Y=〇 moc^, 但是, 此事件可以忽^e W略不计. 考虑以下情况: 即使敌手^可以解决DL假设, 并知邓宇乔等: 基于身份的可验证密钥的公钥内积函数加密算法 21 91 期道值:V , 也无法以不可忽略的概率生成满足 +=?e WOmoc^的向量 如果J可以解决DL假设, 则其可以从PK知道5= /t';y+/t"和(5, =/(丨;y +, 即使>4还知道;y,其也无法从上述等式导出/^4〃,{ <, <},6[?], 因为在《+1个两两独立的方程中有2n +2 个未知数. 给定W或&), 就有满足上面等式的力对^,/1"> (或〈 <,/1了 > ). ^仅能以1/户 的概率“猜测”出正确的对, 这个概率是可以忽略不计的.因此,A生成满足U丨 + Y=〇mod/)的向量J* *的概率是可忽■ eH略的.因此, 如果对手J以不可忽略的优势e 攻破了ID PKIPFE的s IMA安全性, 则可以构造算法以不可忽略的优势e 解决CBDH假设.2. 3s-VMA的安全性分析定理5. 如果CBDH假设是困难的, 则ID PKIPFE是s VMA安全的.证明. 如果对手J可以以不可忽略的优势e 攻破IDPKIPFE的s VMA安全性, 则可以构造挑战者C以不可忽略的优势解决CBDH假设. 以下为>4和£之间的交互过程.选择并公布挑战身份ID-和挑战向量,=(^1*> ? ? ?> yn ).Setup:C以CBDH假设的实例( G, GT^g? >gX? >gy? >gZ? >作为输人, 其任务是输出C选择一个安全参数A 和一个防碰撞哈希函数片. 此外, C随机选择內, 外, 々,/2e厶, 并设置Ul=gXgZgP^, U2=(gZ)WgP2,奶=(#) #, 访=(f)HaD? f:V2.C选择, //( , /4 ,…, M , 并设置2^ y*?h=(gy)^e[?]?g,h^i g^Y1'^ ?g}^:(i G[n] ).在上式中, C实际上隐含地设置了5=/^":y^ e[n]fn{5, =hy+/ij}ze[n]?最后, C将以下PK发送给^:PK=( Gy GTygypyeyUlyU2yVlyV2yhyh-^y- - 'yhn).Queries: d可以向C查询Q个密钥SKf:(ie[Q]) , 其限制为 ID,, 其中 [ Q] , 以及当查询挑战身份ID#时, 该身份必须与挑战矢量,绑定. C执行以下操作以响应来自^的密钥查询SKf1.1. 若ID#JIT, C选择, e厶, 并隐含地设置f=ID?2(y! y!〇h^ e[n]kud) huit):y+^, 然后生成ID-2te [n]Kh={u[Du2 )^'(^ai)) v2)l*yY; h'(y y*-)+(Y\U'y+h"=((^y0?(^yD lD?ghw+p2)^e [?]2 2 !( (gz)nUD) n( id*)gH(JD)^+l2n(i D) n( w*)W.(、⑴.( !>X))=(gxy)、e M}(gxy)、e M’?Agzy-Bgz-Cgx-Dgy-Ey其中, /1 ,_8, 0, 〇,£: 是(: 可以通过计算得到的整数, 而#,则是假设实例中给出的已知项. 注意到W未知的项 在上式中被抵消了.2. 若ID=JIT且y=f成立, 选择Z并设置f =^, 然后生成KL=gL=g1',Kh=((g")ir,-(g2)1?ghir)i t+p2)!e [n]((gx^n(id* y n( id* y, ^naD*yil+i2={ {gX),D'?gPlW'+P2)^n]'y' +k ?(gn(JD' '> ll+l2)1'=A,g^-B,,其中, /l', B'是C可以通过计算得到的整数.Forge:设J提交的伪造密钥为SKf=(/*, &*, 《) ,其中/* *乒,. 若 (/,* *3^) <=〇111 〇办, 则(: 无法解决^6 [n]CBDH假设, 并且中止游戏; 否则, 我们有K;=gl\K:=(uiDW)Sjyr+\vri^W)^((gx')w'(gz产m'gh10、2/】n]!(y! ()((ID*)H( ID*).( ?0*)&),*(2Wy,))#=(〇v^ewy*(^yH<JD)ll h? A/gx?I^/gy'Cr>,其中, /V", B", C"可由C计算得到. C输出:以下分析C成功解决CBDH假设的概率. 显然, 该游戏唯一可能终止的条件是 :y,-)f=〇m〇c^, 与上一部?6 W分的sIMA安全证明的分析类似, 此事件发生的概率可以忽略不计.因此, 如果敌手J以不可忽略的优势e 攻破了IDPKIPFE的SVMA安全性, 则可以构造算法以不可忽略的优势e 解决CBDH假设.3. 效率分析本节将对ID PKIPFE方案效率进行理论和实验分析.3. 1 理论效率分析令Mf, ]\4, M, 分别表示群 , G, GT上的模乘运算消耗的时间;£;, £, 分别表示在群G, GT中的幂运算所消耗的时间; BM表示双线性映射运算所消耗的时间; M表示普通乘法计算所消耗的时间;《表示系统中设定的向量的长度, DL表示解离散对数所消耗的时间. 以下的附表1 列举出本文方案与文献[6]和文献[7] 方案的效率对比.220 计 算 机 学报 2021年附表1 本文方案与文献[61和文献[tl方案的效率对比表算法 本cti :霜幻: 減 :雜[7]貪Setup (n-\ ̄l)Eg Cn-\ ̄l)Eg (n+2) EgEncrypt 2nBM-\-nEt+(m+4)E'^+(m+2s) Mg (2n ̄h1) Eg ̄\ ̄ Mg (2?H-1) Eg-\-MgKeyGen 3Mg-\ ̄AKgnM 2nMVerify3 BiVf-h(w2)2) JVfg— —Decrypt (nH- 2 )DL (nH-1) ^ ̄h ̄\ ̄ DL (nH- 2 ) K/ ̄\ ̄Mi-\ ̄DL指定接收者 Y N N密钥可更改 N Y Y从附表1 可以看出, 文献[6]和文献[7]方案的效率几乎相同, 但文献[7]方案的效率稍低, 这是由于文献[7]方案对文献[6]方案进行了改进, 把其安全性从选择性的安全性改成了适应性的安全性.本文方案与文献[6]和文献[7]方案相比, 效率偏低. 然而, 本文的方案在牺牲效率的前提下增加了两个功能: 其一, 可以指定密文的接收者; 其二, 本文方案的密钥不可更改, 而文献[6]和文献[7]方案的密钥均可被改变. 因此, 与文献[6]和文献[7]方案相比, 本文方案具有更灵活的授权访问机制, 且在一些应用场景下, 可抵抗敌手的密钥修改攻击.3.2实验效率分析尽管本文方案和文献[6] 和文献[7]方案相比, 效率稍低, 但本文方案在应用场景下是实用的. 本文使用JPBC库(http://gas.dia.unisa.it/projects/j pbc/) 在一'台CPU为i7-67003. 40GHz, 内存为8. 00GB, 操作系统为Windows764-bit 的个人PC机上实现了本文的方案.本文在Setup算法中添加了预处理阶段: 在该阶段, 程序将预先计算 的值, 并将预先计算的结果存放到hash表中, 待解密消息时可供查询. 我们分别进行了两组实验, 在第一组实验中, m的范围为(0,1 000) , 而在第二组实验中, m的范围为(0,1 0000) . 在(0,10000) 范围内时, 大多数数据统计应用程序的需求都可以满足. 本文设定实验中向量的长度均从1 0增加到15. 在以下的附表2 中列出了各个算法在这两组实验中花费的时间. 在附图1 中分别比较了(〇, l ooo) 和me(〇, 1〇〇〇〇) 时算法所花费的时间.从附表2可以看出, Encrypt、KeyGen、Verify和Decrypt这四种算法所花费的时间是可以接受的. 在附图1中展示了Setup、KeyGen、Encrypt和Decrypt这四个算法在两个实验里的效率对比图. 根据提供的数据可知, 仅Setup算法需要附表2m6(〇,l〇〇〇) 和m6(〇,l〇〇〇〇) 时各个算法消耗的时间(单位: ms)me(0, 1000)me(0, 10 000)弁依1011 12 13 14 15 1011 12 13 14 15Setup 5804 5847 5925 59396012 61 13 54533 54788 54912 55 321 55977 56 143Encrypt 139151 159164 169172 142 159165 173 179180KeyGen 75 7986 8897 102 78 83 89 94 101 110Verify 86 89 939599101 89 9497 103 108 115Decrypt 17 21 22 243032 20 23273033 3911 12 13 14 15vectors(a)Setup(b)Encrypt附图1 本文方案Setup、Encrypt、KeyGen和Decrypt 算法两组实验效率比较邓宇乔等: 基于身份的可验证密钥的公钥内积函数加密算法 221 1 期较长时间, 因为在该算法中的预处理计算并将计算结果保存到hash表的过程将消耗一定的时间成本. 然而, 在解密时,算法并不需要解决离散对数问题, 而只需要在哈希表中搜索数据, 解密时间被大大缩短了. 另一方面, 尽管Setup算法花费的时间较长, 但系统只需要运行一次该算法, 在以后的处理过程中无需再运行该算法, 因此这种时间消耗是可以接受的.DENGYu-Qiao,Ph.D.,associateprofessor.Hisresearchinterestsi ncl udecryptographyandcloudcomputing.SONGGe, Ph.D. ,l ecturer.Herresearchinterestsfocusoncryptography.YANGBo,Ph.D. ,professor.Hisresearchinterestsincl udei nformations ecuri tyandcryptography.PENGChang-Gen,Ph.D.,professor.Hisresearchinterestiscryptography.TANGChun-Ming,Ph.D.,professor.Hisresearchinterestsincludeinformationsecurityandcryptography.WENYa-Min,Ph.D. ,associateprofessor.Herresearchinterestsincludecryptographyandcloudcomputing.BackgroundFunctionalencryption(FE)isaversatilecryptographicprimitivefirstformal izedbyBonehetal..AnincreasingnumberofstudieshaveconsideredtheconstructionofgenericFEthatimpl ementsuniversalcircuitssincetheemergenceofFE.However,theseworksonlyintroducedtherequirementforheavy-dutytool s,suchasindistinguishabl eobfuscationandmultil inearmaps;therefore, thepracticalityoftheseworksremainsuncertain.InPKC2015,Abdallaetal.proposedanewprimitive,namely,innerproductencryption(IPE).IPEisaspecialcaseofFEthatexecutesthecomputationfortheinnerproductofvectors;IPEisremarkablyusefulinapplications,suchasprivacy-preservingstatisticalanalysisandconjunctive/disjunctivenormal-formformulas.IPEcanbeclassifiedintotwocategori es ,namely,publ ic-keyIPE( PK-IPE)andsecret-keyIPE( SK-IPE) .InthePK-IPEsetting,onevectorisencodedbytheciphertext,whereastheothervectorisencodedbytheprivatekey.Ausercanderivetheinnerproduct,i fheholdstheciphertextandsecretkey.IntheSK-IPEsetting,thesituationissimilar,exceptthatamastersecretkey( MSK)( i.e. ,asecretkeymaintainedbytheauthority)shouldbeusedingeneratingciphertextandprivatekey.Thus , theciphertextcannotbeindependentlyformedbyanencryptorwi thoutani nteractionwithanauthorityinSK-IPE.Therefore,SK-IPEisimpracticalforappl icationswheremanyusersshouldgenerateciphertextssimultaneously,becauseitinevitablyinfluencestheperformanceoftheauthority.Thisstudymainlyfocusesontheinabil itytodesigntherecipient,andsecretkeycannotbeveri fiedinthepresentedPK-IPE.WefirstproposeaPK-IPE-DRVSschemebyusingthebilinearmapstechniquetoaddresstheabovementionedprobl ems.Werefinethesv-CPAsecuritymodelsofPK-IPEandinitial lyproposetheRIMAandSVMAmodel stocapturethesecretkeymodi ficationbehaviorsofadversari es.Finally,weprovethesecurityofPK-IPE-DRVSunderthesemodels.Themanagementandhighcostofmanypubl ickeysmaybecomeaproblem,althoughtherecipientcanbedesignedinPK-IPE-DRVS.Thus,toproposeaPK-IPE-DRVSwithconstant-l engthpublicparametersmaybeaninterestingandchal l engingprobl em.ThisworkissupportedbytheNationalKeyR&DProgramofChina( No.201 7YFB0802000),theNationalNaturalScienceFoundationofChina(6 17721 47,61300204,62002122) ,theGuangdongProvinceNaturalScienceFoundationofMajorBasicResearchandCultivationProject(201 5八03 030801 6) ,theNaturalScienceFoundationofGuangdongProvince(2015八030313 630,2019八151 5011 797) ,theBasicResearchProjectofGuangdongProvincialDepartmentofEducation (2014KZDXM044),theCol l egesandUniversitiesInnovationTeamConstructionProjectGuangdongProvi nce(201 5KCXTD014) , theNati onalCryptographyDevelopmentFund(MMJJ201 7011 7 ) ,theGuangzhouCityBureauofCooperativeInnovationProject(1 2016 10005)andtheProjectofGuangdongScienceandTechnologyPlan(201 6八020210103,2017A020208054). |
[返回] |