改进的基于身份的数据完整性验证方案

2017-03-14 07:09刘振鹏蔄志贤胡倩茹刘晓丹
关键词:私钥公钥攻击者

刘振鹏,蔄志贤 ,胡倩茹,刘晓丹

(1.河北大学 计算机科学与技术学院,河北 保定 071002;2.河北大学 电子信息工程学院,河北 保定 071002)



改进的基于身份的数据完整性验证方案

刘振鹏1,2,蔄志贤1,胡倩茹2,刘晓丹2

(1.河北大学 计算机科学与技术学院,河北 保定 071002;2.河北大学 电子信息工程学院,河北 保定 071002)

云计算中,用户无法确保存储在云存储服务器中的数据是完整的,如何确保用户数据的完整性是学术界研究的一个热点问题.利用基于身份的聚合签名给出一个数据完整性验证的改进方案,将用户自己生成的秘钥作为文件生成标签的秘钥,用PKG为其生成的私钥对用户自己生成的加密公钥等信息签名,从而提高了数据完整性验证的可信性和安全性.最后通过安全性和性能分析证明了方案的有效性.

数据完整性;基于身份的加密;聚合签名

随着云计算的发展,用户可以从远程云中按需获取高质量的应用和服务,而不用担心本地的数据管理存储.由于用户在本地不再保留任何数据副本,故无法确保云中数据的完整性[1-3].数据完整性验证是极其重要的,它能够在本地没有存储数据副本的情况下验证用户存储的数据完整性.一直以来,数据完整性验证都受到人们的关注,为了解决这一问题,Ateniese等[4-5]定义了可证明数据持有(provable data possession,PDP)模型,Juels等[6]提出了可恢复证明(proof of retrievablity,POR)机制,Shacham等[7-8]提出了在随机预言机模型下,具有完整的安全证明的公共审计方案.为了满足不同用户的不同需求,大量的方案被提出,几个具有代表性的是文献[9-13].Shamir在1984年提出基于身份的密码系统[14](identity-based cryptosystem,IBC),建 议使用能标识用户身份的信息为公钥,比如名字、IP地址或者Email地址.2001年,Boneh和Franklin[15]利用Weil配对技术提出了第一个安全、实用的基于身份的加密方案(identity-based encryption,IBE).基于身份的加密体制的主要优势在于它简化了认证机构公钥体系架构中的认证机构的证书的管理.此后,基于身份的密码体制引起了国内外众多学者的广泛关注并得到迅速发展,提出了大量的基于身份的加密和签名方案.随后,在这种密码体制下的数据完整性验证问题也得到关注.

基于身份的加密体制天生具有密钥托管功能,因为PKG知道所有用户的私钥,从而PKG成为主要攻击对象,一旦主密钥泄露,那么攻击者将可以生成任何一个用户的私钥,从而伪造其对文件的标签,这将会使数据完整性验证失去可信性与安全性.针对这一问题,学者们提出了很多解决方法[16-19],比如基于身份的分层结构的公钥加密算法[18-19](hierchical identity based encryption,HIBE),它能够减轻根节点的任务量,让子层分担原来根节点的部分任务,并且降低风险,这些想法已经相对成熟.本文从数据完整性验证角度利用基于身份的聚合签名提出一种解决方法,来提高完整性验证的可信性和安全性.

1 相关知识

聚合签名由Boneh等[20]提出,主要是通过聚合多个签名为1个签名,来提高签名与验证的效率,但是需要额外的附加信息,为了找到一个签名方案所需的总信息验证最小化的方案,Gentry等[21]提出了一个基于身份的聚合签名(identity-based aggregate signature,IBAS).方案由5个算法组成,详细如下:

1)系统建立(Setup):(G1,G2)是一个GDH群组,ê:G1×G1→G2是可计算的双线性映射h:G1→Zq,H1,H2:{0,1}*→G1,H3:{0,1}*→Z/qZ,是3个安全hash函数.私钥产生中心(PKG)随机选取s∈Z/qZ,计算Q=sP;系统的公开参数是params=(G1,G2,ê,P,Q,H1,H2,H3,h,Pw),s是系统的主秘钥.

2)密钥提取(KeyExtra):当用户把自己的身份IDi∈{0,1}*发送给PKG后,PKG确认IDi的身份后,计算用户的私钥sρi,j,其中Pi,j=H1(IDi,j),j∈{0,1}.

2 改进的数据完整性验证方案

2.1 方案思想

在Zhao等[22]提出的IBPV(identity-based public verification)方案中,用户用PKG为其生成的私钥直接对要存储的文件进行签名得到验证所需的标签.在基于身份的公钥加密系统中,PKG的主密钥一旦泄露,那么攻击者将可以生成用户的私钥,在修改用户存储的文件后,伪造能够通过完整性验证的标签.从而数据完整性验证就失去了可信性,安全性也随之降低.笔者对此方案做出修改,即用户自己生成加密秘钥来为文件生成标签,用PKG为其生成的私钥对用户自己生成的加密公钥等信息签名(将其作为“证书”),在验证阶段作为验证加密公钥等信息的证据.在改进后的方案中,攻击者不能获得用户的加密私钥,从而不能伪造文件的标签.改进的部分利用基于身份的聚合签名(identity-based aggregate signature,IBAS)来实现,并做了简单调整,让其在批处理审计中支持统一验证.

2.2 方案设计

如图1所示,新的系统模型包含4个实体:用户、云服务器、私钥产生中心、验证者.用户(Client)拥有大量的数据需要存储到云服务器,可以是企业或是个人.云服务器(cloud server,CS)由云服务提供商管理,有大量的存储空间提供存储服务给多个用户.私钥生成中心(private key generator,PKG) :当接收用户的身份ID时,确认用户的身份后输出对应的私钥.验证者(Verifier):具有用户所没有的审计经验和能力,可以替代用户对云中存储的数据执行审计任务.

图1 系统模型

图1的具体描述如下:1)在密钥提取阶段,PKG为用户生成基于身份的密钥.2)用户生成自己的加密密钥,用PKG为其生成的私钥对加密公钥进行签名.用加密私钥生成标签,将相关数据上传到云服务器.3)验证者向云服务器发起验证请求.4)云服务器向验证者发送验证信息.5)验证者验证信息是否正确,若正确的话,向云服务器发送挑战集.6)云服务器生成证据返回给验证者.

2.3 方案描述

本文的方案由4个算法组成:Setup,KeyExtra,TagGen,Challenge.Setup,KeyExtra由PKG执行,分别用来生成系统参数和用户的私钥.TagGen由用户执行,为文件和公开信息生成验证的标签.Challenge是验证者和云服务器进行完整性验证的交互算法.

1)Setup:PKG生成参数和秘钥,具体步骤如下.

①生成阶为素数q的加法循环群G1、乘法循环群G2和2个群之间的可容许的双线性映射ê:G1×G1→G2;

②选取一个任意的生成元P∈G1;

③选取随机数s∈Z/qZ,计算Q=sP;

④选取加密哈希函数H1,H2:{0,1}*→G1,H3:{0,1}*→Z/qZ,h:G1→Zq;

⑤选取字符串w作为系统状态参数,计算Pw=H2(w).

PKG的公钥params=(G1,G2,ê,P,Q,H1,H2,H3,h,Pw),私钥s∈Zq.

2)KeyExtra:对于用户IDi∈{0,1}*,PKG生成基于身份的私钥sPi,j,其中Pi,j=H1(IDi,j),j∈{0,1}.

3)TagGen:对于用户IDi∈{0,1}*,对文件F分成进行分块,分成n个文件块,即F′=(F1,F2,…,Fn).

①选取字符串w′作为状态用户状态参数.

4)Challenge:验证者向云服验证的步骤如下.

如果不相等,拒绝并返回0,否则继续下一步.

③验证者随机选取c个块挑战,对于每个挑战块j∈I,选取随机数vj∈Zp.验证者发送挑战信息Q={(j,vj)}给云服务器.

⑤验证者收到云服务器的响应后,检查下式是否相等

ê(S,P)=ê(T,Pw)·ê

如果相等,输出“Accept”,否则输出“Reject”.

2.4 支持批量审计

其他步骤不变,在Challenge阶段调整后如下.

Challenge:对于用户IDi∈{0,1}*,假设批量审计n个用户的数据.验证者向云服器验证的步骤如下.

如果不相等,输出“Reject”,否则继续下一步.

③验证者随机选取c个块挑战,对于每个挑战块j∈I,选取随机数vj∈Zp.验证者发送挑战信息Q={(j,vj)}给云服务器.

⑤验证者收到云服务器的响应后,检查下式是否相等

ê(Sn,P)=ê(Tn,Pw)·ê

如果相等,输出“Accept”,否则输出“Reject”.

3 安全性及性能分析

3.1 安全性与健壮性分析

3.1.1 安全性分析

对于公开审计方案,数据的正确性和完整性意味着不存在这样的敌手——在challenge协议中,伪造所有方案需要的正确输入值,使得Challenge能够输出Accept.这些值分别是数据标签、聚合的数据标签、采样数据的非线性组合.如果IBAS是不可伪造的,并且IBPV是安全的,没有任何人在对应所有正常的挑战时,不持有实际合法数据的情况下,能够伪造出所有必须的响应值使得Verifier接受.

如果云服务器能使得在Challenge算法中,Verifier接受,那么它一定存在一个提取器能够恢复客户挑战的数据,即完好地存储着对应的数据.

假设存在攻击者A可以打破方案的安全性.然后构造一个算法B模拟Verifier与A进行交互.

1) 系统参数设置(setup):算法B接收IBPV方案的主公钥mpk*和IBAS方案的spk*.B根据本文的协议设置IBAS的方案和IBPV方案,并将mpk*传给A作为主公钥.为了不失一般性,假设A用N个不同身份调用询问(Extra和store),即ID1,…,IDN.B选取一个索引i*∈{1,…,N}.

2)查询(Queries):攻击者允许向算法B进行以下自适应查询:

①密钥询问(Extra Queries):攻击者A查询身份IDi的私钥时,B调用IBPV的模拟器,模拟输入IDi,获得私钥kID.B返回kID.

③证明:B扮演验证者的角色并如实地执行协议.A扮演证明者的角色,输出对于身份IDi和文件Fj的存储查询结果.

3)输出(output):最后,攻击者 A输出证据的描述p*,它是ε-允许的.

3.1.2 健壮性分析

在随机预言模型中,如果用数字签名方案生成文件的标签存在不可伪造和CDH是双线性群上的困难问题,除了微乎其微的概率,没有对手能够打破本文方案的健壮性(soundness).

在改进的方案中,利用了IBAS来产生有效的签名来认证用户自己生成的公钥和文件块数.在随机预言模型中,IBAS的不可伪造性依赖于CDH假设,并且原来的IBPV方案也是安全的,因此依据安全性分析的结论,改进后的方案具有健壮性.

3.2 性能分析

本文的方案与IBPV比较如表1,TagGen和Verify阶段的计算开销,其中CH3、CH1、CH2、CHh是哈希函数H、H1、H2、h运算的时间开销;Ce是双线性映射的时间开销;Cmul是群G1上的乘法运算的时间开销.

表1 计算开销 Tab.1 Computational overhead

4 结论

研究了基于身份的加密体制下的数据完整性验证方案,让用户用自己生成的加密私钥来对文件生成验证用的标签,PKG为其生成的私钥为加密公钥等信息生成验证用标签,从而解决基于身份的加密体制对数据完整性验证的可信性和安全性的影响.增加的签名和验证使得原方案的可行性和安全性提高,降低了风险.在改进后的方案中,即使攻击者通过攻击PKG获得用户的基于身份的私钥,也不能够伪造用户对文件的签名.本方案同样支持批量审计,不影响原方案的在批量审计的功能.

[1] 谭霜,贾焰,韩伟红.云存储中的数据完整性证明研究及进展[J].计算机学报,2015,38(1):164-177.DOI:10.3724/SP.J.1016.2015.00164. TAN S,JIA Y,HAN W H.Research and development of provable data integrity in cloud storage[J].Journal of computer,2015,38(1):164-177.DOI:10.3724/SP.J.1016.2015.00164.

[2] 冯登国,张敏,张妍,等.云计算安全研究[J].软件学报,2011,22(1):71-83.DOI:10.3724/SP.J.1001.2011.03958. FENG D G,ZHANG M,ZHANG Y,et al.Study on cloud computing security[J].Journal of Software,2011,22(1):71-83.DOI:10.3724/SP.J.1001.2011.03958.

[3] 杨晓晖,丁文卿.云存储环境下基于CP-ASBE数据加密机制[J].河北大学学报(自然科学版),2016,36(4):424-431.DOI:10.3969/j.issn.1000-1565.2016.04.015. YANG X H,DING W Q.CP-ASBE based data encryption mechanism for cloud storage[J].Journal of Hebei University(Natural Science Edition),2016,36(4):424-431.DOI:10.3969/j.issn.1000-1565.2016.04.015.

[4] ATENIESE G,BURNS R C,CURTMOLA R,et al.Provable data possession at untrusted stores[C].Proceeding of ACM CCS’07,Alexandria,Virginia,USA,2007:598-609.

[5] ATENIESE G,BURNS R C,CURTMOLA R,et al.Remote data checking using provable data possession[J].ACM Transactions on Information and System Security,2011,14 (1):1094-9224.DOI:10.1145/1952982.1952994.

[6] JUELS A,KALISKI B S.PORs:Proofs of retrievability for large files[C].Proceeding of ACM CCS’07,Alexandria,Virginia,USA,2007:584-597.

[7] SHACHAM H,WATERS B.Compact proofs of retrievability [J].Journal of cryptology,2013,26(3):442-483.DOI:10.1007/s00145-012-9129-2.

[8] WANG Q,WANG C,REN K,et al.Enabling public auditability and data dynamics for storage security in cloud computing [J].IEEE Transactions on Parallel and Distributed Systems,2011,22(5):847-859.DOI:10.1109/TPDS.2010.183.

[9] BONEH D,SHACHAM H,LYNN B.Short signatures from the weil pairing[J].Journal of Cryptology,2004,17(4):297-319.DOI:10.1007/s00145-004-0314-9.

[10] WANG C,REN K,LOU W,et al.Toward publicly auditable accrue cloud data storage services[J].IEEE Network,2010,24(4):19-24.DOI:10.1109/MNET.2010.5510914.

[11] HAO Z,ZHONG S,YU N H.A privacy-preserving remote data integrity checking protocol with data dynamics and public verifiability[J].IEEE Transactions on Knowledge & Data Engineering,2011,23(9):1432-1437.DOI:10.1109/TKDE.2011.62.

[12] ZHU Y,WANG H,HU Z,et al.Efficient provable data possession for hybrid clouds[C].Proceedings of CCS’10,New York,USA,2010:756-758.

[13] 王保民.一种基于可信计算平台的数字签名方案[J].河北大学学报(自然科学版),2010,30(6):715-718.DOI:10.3969/j.issn.1000-1565.2010.06.022. WANG B M.A signature scheme based trusted computing platform[J].Journal of Hebei University(Natural Science Edition).2010,30(6):715-718.DOI:10.3969/j.issn.1000-1565.2010.06.022.

[14] SHAMIR A.Identity-based cryptosystems and signature schemes[C].LNCS196,Advances in Cryptology,Crypto’ 84.Berlin,Springer,1984:47-53.

[15] BONEH D,FRANKLIN M.Identity-based encryption from the Weil pairing[C].LNCS2139,Advances in Cryptology,Crypto’2001,Berlin,Springer,2001:213-229.

[16] YU Y,XUE L,AU M,et al.Cloud data integrity checking with an identity-based auditing mechanism from RSA [J].Future Generation Computer Systems,2016,62(C):85-91.DOI:10.1016/j.future.2016.02.003.

[17] YU Y,ZHANG Y F,MU Y,et al.Provably secure identity based provable data possession[J].Provable Security,2015,9451:310-325.DOI:10.1007/978-3-3-319-26059-4-17.

[18] WATERS B.Dual system encryption:realizing fully secure IBE and HIBE under simple assumptions[J].International Cryptology Conference on Advances in Cryptology,2009,5677:619-636.DOI:10.1007/978-3-642-03356-8-36.

[19] CHATTERJEE S,SARKAR P.Generalization of the selective-ID security model for HIBE protocols[C].Public Key Cryptography,PKC’2006.Berlin,Springer,2006:241-256.

[20] BONEH D,GENTRY C,LYNN B,et al.Aggregate and verifiably encrypted signatures from Bilinear maps[J].Lecture Notes in Computer Science,2003,2656(1),416-432.DOI:10.1007/3-540-39200-9-26.

[21] GENTRY C,RAMZAN Z.Identity-based aggregate signatures[J].Lecture Notes in Computer Science,2006,3958:257-273.DOI:10.1007/11745853-17.

[22] ZHAO J,XU C X,Li F,et al.Identity-based public verification with privacy-preserving for data storage security in cloud computing[J].Ieice Transactions on Fundamentals of Electronics Communications & Computer Sciences,2013,96(12):2709-2716.DOI:10.1587/transfun.E96.A.2709.

(责任编辑:孟素兰)

Improved identity-based data integrity verification scheme

LIU Zhenpeng1,2,MAN Zhixian1,HU Qianru2,LIU Xiaodan2

(1.School of Computer Science and Technology,Hebei University,Baoding 071002,China; 2.Electronic Information Engineering College,Hebei University,Baoding 071002,China)

In cloud computing, users can not ensure that the data stored in the cloud storage server is complete. How to efficiently verify the integrity of user data is a hot topic in academic research. An improved scheme of data integrity verification by manipulating scheme of identity-based aggregate signature is proposed, the secret key of the user is used to compute the file tags, and the private key generated by PKG is used to calculate the signature of the user's encrypted public key and other information. Therefore the credibility and security of data integrity verification are enhanced. Finally, the effectiveness of the scheme is verified through the security and performance analysis.

data integrity;identity-based encryption;aggregate signature

10.3969/j.issn.1000-1565.2017.01.013

2016-10-20

国家科技支撑计划资助项目(2013BAK07B04)

刘振鹏(1966—),男,河北行唐人,河北大学教授,主要从事云计算和信息安全方向研究.E-mail:lzp@hbu.edu.cn

胡倩茹(1979—),女,河北灵寿人,河北大学讲师,主要从事大数据和数据挖掘方向研究.E-mail:huqr@hbu.edu.cn

TP309

A

1000-1565(2017)01-0086-06

猜你喜欢
私钥公钥攻击者
清扫机器人避障系统区块链私钥分片存储方法
比特币的安全性到底有多高
机动能力受限的目标-攻击-防御定性微分对策
Spatially defined single-cell transcriptional profiling characterizes diverse chondrocyte subtypes and nucleus pulposus progenitors in human intervertebral discs
一种基于混沌的公钥加密方案
神奇的公钥密码
正面迎接批判
一种基于虚拟私钥的OpenSSL与CSP交互方案
P2X7 receptor antagonism in amyotrophic lateral sclerosis
SM2椭圆曲线公钥密码算法综述