APP下载

一种匿名的多接收者密钥封装机制

2014-07-25傅晓彤

西安电子科技大学学报 2014年5期
关键词:匿名性接收者密文

傅晓彤,薛 鹏

(西安电子科技大学综合业务网理论及关键技术国家重点实验室,陕西西安 710071)

一种匿名的多接收者密钥封装机制

傅晓彤,薛 鹏

(西安电子科技大学综合业务网理论及关键技术国家重点实验室,陕西西安 710071)

匿名性能够保障用户的个人隐私不受非授权方侵害.针对接收者隐私保护的需求,基于双线性对提出了一个新的基于身份的匿名多接收者密钥封装机制.利用一次匿名密钥协商技术和Hash函数生成临时密钥,从而实现接收者的匿名.在随机预言机模型下,证明了其在选择密文攻击和身份攻击下满足封装密钥的机密性和匿名性,具有较高的效率且密文较短.

密钥封装;混合加密;隐私保护;随机预言机

随着通信技术和数字分发环境的快速发展,许多应用都要求发送者能够发送消息给特定的接收者集合,比如付费浏览系统、多方通信等.多接收者密钥封装机制(m KEM)可以很好地解决这一应用问题,既能够阻止非授权用户的接入,又能够保护数据信息.

密钥封装(KEM)与对称加密结合,能够构成一个混合加密方案.混合加密是公钥加密的一种变体,它利用密钥封装保密传递对称加密的加解密密钥,从而能够应用对称加密算法加密任意长的消息,无须将消息空间限制为一个特殊的群.Smart[1]在2004年首次提出了多接收者密钥封装的概念,方案以多个公钥作为密钥封装方案的输入,与数据封装机制(DEM)结合,使得实体能够向一个接收者集合发送单个明文消息.随后,Bentahar等人将密钥封装的理论延伸到基于身份的密码学原语,提出了基于身份密钥封装(ID-KEM)的一般构造方法.Barbosa和Farshim[2]在2005年进一步将基于身份的密钥封装与多接收者密钥封装结合,提出了基于身份的多接收者密钥封装(mID-KEM).2006年,Chatterjee和Sarkar提出了一个多接收者密钥封装方案,该方案有效地减小了密文尺寸.但是,Park等人证明了Chatterjee的多接收者密钥封装方案不具备保密性.最近的研究成果如文献[3-5]所述.

许多应用环境要求对接收者的身份信息提供隐私保护,甚至不能将接收者的合法接收身份泄露给其他接收者,即除了接收者本人和发送者之外的任何第三方都无法确定该接收者的合法接收身份.比如:商业网站不愿意泄露自己客户的身份信息,因为竞争对手可能会针对这些客户发送一些广告.因此,将接收者匿名性和密钥封装相结合,构造匿名的多接收者密钥封装机制,在特殊的应用环境中,有着广泛的实用性.

在基于身份的密码系统下,笔者提出了一个高效的能够保护接收方隐私的多接收者密钥封装方案.在随机预言模型和Gap-BDH假设下,笔者形式化地证明了新提出的方案满足机密性(IND-s MID-CCA2)和匿名性(ANON-IND-s MID-CCA2)要求.与Hur等[6]提出的基于身份的匿名广播加密(IBBE)方案比较,笔者的方案具有较高的效率和更好的安全性.

1 预备知识

1.1 双线性对

设p是大素数,G1、G2是两个阶为p的群,g是群G1的一个生成元.映射e:G1×G1→G2是双线性对,满足如下性质:

(1)双线性性.对任意u,v∈G1和a,b∈Z,e(ua,vb)=e(u,v)ab. (2)非退化性.e(g,g)≠1.

(3)可计算性.对任意u,v∈G1,存在算法能有效地计算e(u,v)的值.

1.2 Gap双线性Diffie-Hellman问题

设g是G的一个生成元,给定ga,gb,gc∈G,其中a,b,c是群里的3个随机数,在判定双线性Diffie-Hellman预言机的帮助下,计算e(g,g)abc是不可行的.

判定双线性Diffie-Hellman预言机:给定(g,ga,gb,gc,R),若e(g,g)abc=R,则输出1;否则,输出0.

2 匿名mID-KEM方案

利用一次匿名密钥协商技术,笔者提出了一个新的多接收者密钥封装方案.新方案不仅满足匿名性,还具有更好的安全性、较高的算法效率和更短的密文.方案如下.

(1)初始化(k).输入安全参数k,得到一个双线性映射群系统其中g1,g2是群G1的两个生成元.选择3个密码学hash函数,即H.系统公开参数P=(g1,g2,B,H,H1,H2),系统主私钥KMS=x,系统公钥KP=.

(2)私钥提取(KMS,IDi).输入KMS,P和身份信息IDi,计算私钥

(3)密钥封装(S,KP).输入P,S={ID1,ID2,…,IDn}和KP,算法按下列步骤进行:

(4)解封装(IDi,,Hdr):输入密文Hdr,P,接收者身份IDi及.按下列步骤进行:

算法的正确性可以由下面等式验证:

3 安全性与效率分析

3.1 安全性分析

将Hur等[6]的在选择身份下选择明文攻击的安全模型扩展到选择密文攻击[7-8]的安全模型,在Gap-BDH假设下,对所提的协议进行了安全性分析.

定理1在随机预言机模型下,对于Gap-BDH问题,基于身份的匿名多接收者密钥封装方案具有机密性.

定理1由引理1证明.

引理1k是一个安全参数.假设存在一个概率多项式时间的IND-s MID-CCA攻击者A,运行时间为τ,至多qi次询问随机预言机Hi,qk次密钥提取询问以及qd次解密询问,能够以ε(k)的优势攻击笔者提出的方案,那么,就存在一个概率多项式时间内的算法B,能够在运行时间τ′内,以不可忽略的优势ε′≥ε-qdq来求解Gap-BDH困难问题,其中运行时间

其中,τ1是在群G1中完成一次标量乘法的时间,n是接收者的总数,qd是至多询问DBDH预言机的次数.

证明 假设存在一个IND-s MID-CCA攻击者A能够攻破笔者提出的方案,那么可以构造一个算法B来求解Gap-BDH问题.

阶段1攻击者A选择一个挑战接收者集合S*={ID1,ID2,…,IDn},n是正整数.

初始化.挑战者B把P={g1,g2,G1,G2,e(·,·),KP,H1,H2,H}发送给攻击者A,其中H1、H2和H是由B控制的随机预言机.

H1询问.B维护一个初始状态为空的列表L1=(IDi,ωi,Qi).一旦接收到对身份IDj的询问,B首先搜索列表L1,如果存在(IDj,ωj,Qj),则返回Qj给A;否则,按下列步骤进行:

(1)若IDj∈S*,则B随机选取计算并返回Qj=,把(IDj,ωj,Qj)加入列表L1.

H2询问.B维持一个初始状态为空的列表L2(Vi,vi).一旦接收到对Vj的询问,B首先搜索列表L2:

(1)若存在(Vj,vj),则返回vj给A.同时,B以(g1,Qi,KP,,Vj)询问DBDH预言器,其中i∈{1, 2,…,n},Qi=∈G1,由H1询问获得.若DBDH预言器输出为1,则B返回并结束游戏即是Gap-BDH问题的解e(g1,g1)abc.

(2)若不存在,则B随机选取vj∈,返回vj给A,并将(Vj,vj)插入列表L2.

H询问.B维持一个初始状态为空的列表L=(U,V,IDi,αi,δi).一旦收到对(U,V,IDj)的询问,其中j∈[1,q],B首先搜索列表L:

(1)若存在(U,V,IDj,αj,δj),则返回αj给A.

(2)否则,B随机选取αj∈和δj∈G2.返回αj给A,并将(U,V,IDj,αj,δj)插入列表L.

阶段2攻击者A在该阶段可以进行一系列的询问,包括密钥提取询问,解密询问.

密钥提取询问.一旦接收到对身份IDj∉S*的询问,B首先搜索列表:

(1)若存在(IDj,ωj,Qj),则B计算并返回给攻击者A.

(2)否则,随机选取ωj∈,计算和并将(ID j,ωj,Qj)加入列表L 1,返回k s给攻击者A.

解密询问.一旦接收到攻击者A以(Hdr,IDi)的询问,其中i∈{1,2,…,n},Hdr=(U,V,c1,c2,…, cn),B进行如下响应:

(1)B搜索列表L,如果不存在(U,V,IDi,αi,δi),则返回失败并终止游戏;否则,B从列表L得到αi和δi.

(2)B搜索列表L1,由元组(IDi,ωi,Qi)得到ωi和Qi.

(3)B搜索列表L2,得到(Vl,vl),其中l=1,2,…,q2,并询问DBDH预言器(g1,Qi,KP,gc1,Vl)的值.

挑战阶段.攻击者A输出两个密钥(K0,K1).在接收到这对密钥后,算法B随机选取β∈{0,1}并完成如下操作:

阶段3与阶段2相同,攻击者A可以进行询问,但不可以对IDi∈S*进行密钥提取询问,也不可以对Hd*r进行解密询问.

猜测:最终攻击者A输出他的猜测值β′.若β=β′,则A在游戏中获胜.

分析:在上面的游戏中,挑战者B控制随机预言器成功地模拟了密钥提取询问、解密询问以及哈希函数H,H1,H2.在密钥提取询问中生成的密钥与真正的密钥是同分布的.攻击者A不能区分模拟环境与真实环境.

下面将分析挑战者B的优势.

在解密询问中,若列表L中不存在(U,V,IDi),则B返回失败并终止游戏.由于至多qd次解密询问,挑战者B解密失败的概率至多为qdq,即Pr[Bf]≤qdq,Bf表示模拟失败.

若挑战者B模拟成功,攻击者A在上面的游戏中获胜,那么,挑战者B必定接收到某个Vj的H2询问,且DBDH预言器判定一个(g1,Q1,KP,,Vj)为1,i=1,2,…,n.正如H2询问所述,B能计算从列表L1的元组(IDi,ωi,Qi)获得.

其中,Bs表示B模拟成功,As表示A获胜.

最后,Gap-BDH问题以不可忽略的概率ε′得以解决.

定理2在随机预言机模型下,对于Cap-BDH问题,基于身份的匿名多接收者密钥封装方案具有匿名性.

定理2由引理2证明.

引理2假设存在一个概率多项式时间的ANON-IND-s MID-CCA攻击者A,运行时间为τ,至多qi次询问随机预言机Hi,qk次密钥提取询问以及qd次解密询问,能够以ε(k)的优势攻击笔者提出的方案,那么,就存在一个概率多项式时间内的算法B,能够在运行时间τ′内以不可忽略的优势ε′≥ε-qdq来求解Gap-BDH困难问题,其中运行时间

引理2的证明与引理1基本一致,只不过在阶段1,攻击者A选择一对挑战接收者(ID0,ID1),并随机选取β∈{0,1}.IDβ作为集合中的一个接收者.最后输出对β的猜测.由此证明匿名身份信息的不可区分性.

3.2 效率分析

在协议中,用户为了获得封装密钥,需要大概n/2次的解封装尝试.为了提高效率,对方案进行如下改进:

(1)密钥封装时,需要另外计算H3(si)和ci=H3(si)‖ci,其中H3→{0,1}γ,γ=log p.

(2)解封装时,用户IDi计算H3(si)并由此定位自己的封装密文.

显然,用户仅通过一次哈希运算,取消了多次的尝试,从而提高了解封装的效率.

另外,在接收者集合不变的情况下,算法的前两步可以作为预计算部分,也就是说,U可以作为公开参数,减少了密文尺寸和通信数据量.然而,其他步骤在每次会话中仍需要计算.若集合成员发生变化,前两步都要重新进行计算,并选择新的r′.

表1 通信量比较

表1中,n代表接收者的数量,Sp代表群中元素的尺寸,S1代表群G1中元素的尺寸,S2代表群G2中元素的尺寸,SID代表用户身份信息的尺寸.

表2 密钥封装的计算量比较

表3 解封装的计算量比较

由表1至表3可以看出:笔者提出方案的密文较短,且只有Hur的方案与笔者的方案具有匿名性.就密钥封装而言,新方案仅需要一次群G1上的模指数运算(相比较于群G1上的指数运算,群G2上的指数运算时间可以忽略),Hur的方案与笔者的方案需要的解封装计算量比较接近.综上所述,新方案计算效率较高.

4 结束语

笔者提出了一个高效的基于身份的匿名多接收者密钥封装方案.在随机预言模型和Gap-BDH假设下,笔者方案满足选择身份模型下选择密文攻击的机密性和匿名性.与最近的匿名广播加密方案比较,笔者的方案具有较高的效率和更好的安全性.

[1]Smart N P.Efficient Key Encapsulation to Multiple Parties[C]//Lecture Notes in Computer Science.Berlin:Springer-Verlag,2005:208-219.

[2]Barbosa M,Farshim P.Efficient Identity-Based Key Encapsulation to Multiple Parties[C]//Lecture Notes in Computer Science.Berlin:Springer-Verlag,2005:428-441.

[3]Weng Zhiwei,Weng Jian,He Kai,et al.New Chosen Ciphertext Secure Public Key Encryption in the Standard Model with Public Verifiability[C]//Lecture Notes in Computer Science.Berlin:Spring-Verlag,2012:170-176.

[4]Tseng Y M,Huang Y H,Chang H J.Privacy-preserving Multirecsiver ID-Based Encryption with Provable Security [DB/OL].[2012-06-29].http://onlinelibrary.wiley.com/doi/10.1002/dac.2395/abstract.

[5]Takahiro M,Goichiro H.Key Encapsulation Mechanisms from Extractable Hash Proof Systems,Revisited[C]// Lecture Notes in Computer Science.Berlin:Springer-Verlag,2013:332-351.

[6]Hur J,Park C,Hwang S O.Privacy-preserving Identity-based Broadcast Encryption[J].Information Fusion,2012,13 (4):296-303.

[7]Barth A,Boneh D,Waters B.Privacy in Encrypted Content Distribution Using Private Broadcast Encryption[C]// Lecture Notes in Computer Science.Berlin:Springer-Verlag,2006:52-64.

[8]Boneh D,Gentry C.Collusion Resistant Broadcast Encryption with Short Ciphertexts and Private Keys[C]//Lecture Notes in Computer Science.Berlin:Springer-Verlag,2005:258-275.

[9]Delerablee C.Identity-based Broadcast Encryption with Cosntant Size Ciphertexts and Private Keys[C]//Lecture Notes in Computer Science.Berlin:Springer-Verlag,2007:200-215.

[10]Ren Yanli,Gu Dawu.Fully CCA2 Secure Identity-based Broadcast Encryption without Random Oracles[J].Information Processing Letters,2009,109(11):527-533.

(编辑:郭 华)

Identity-based privacy-preserving multi-receiver key encapsulation

FU Xiaotong,XUE Peng
(State Key Lab.of Integrated Service Networks,Xidian Univ.,Xi’an 710071,China)

Anonymity can protect the privacy of the user.Based on the bilinear pairing,an efficient identity-based privacy-preserving multi-receiver key encapsulation mechanism is presented to protect the identities of the users who are able to access protected contents.This proposed scheme uses the one-way anonymous key agreement protocol and Hash function to generate the temporary key.In the random oracle model,we formally prove that the proposed scheme is confidential and anonymous under selective ID and chosen ciphertext attack.Besides,it has a higher efficiency and a shorter ciphertext.

key encapsulation;hybrid encryption;privacy protection;random oracle

TN918.1

A

1001-2400(2014)05-0007-06

2013-08-27< class="emphasis_bold">网络出版时间:

时间:2014-01-12

国家自然科学基金资助项目(61100235)

傅晓彤(1977-),女,副教授,E-mail:xtfu@mail.xidian.edu.cn.

http://www.cnki.net/kcms/doi/10.3969/j.issn.1001-2400.2014.05.002.html

10.3969/j.issn.1001-2400.2014.05.002

猜你喜欢

匿名性接收者密文
一种支持动态更新的可排名密文搜索方案
基于模糊数学的通信网络密文信息差错恢复
基于SDN的组播安全机制
功能翻译理论视角下英语翻译技巧探讨
口碑传播中影响因素作用机制研究及应用
基于群签名的高效可分割电子现金系统
去个体化心理分析
一种基于密文分析的密码识别技术*
一种基于密文分析的密码识别技术*
微信弹性社交中的失范行为分析