发明名称 一种基于生物特征的云数据完整性验证方法及系统
摘要 本发明涉及网络安全技术领域,具体涉及一种基于生物特征的云数据完整性验证方法及系统,本发明的方法包括:系统初始化,生成公共参数。客户端上传生物特征身份,密钥生成中心服务器为用户生成密钥。客户端上传文件和标签至云服务器。审计服务器发送挑战值给云服务器,云服务器利用挑战值、用户数据和标签计算响应值发送给审计服务器,审计服务器验证响应值的有效性以检查云服务器是否完整地保存着客户端的数据。本发明简化了传统验证协议中复杂的密钥管理负担,降低了系统复杂性;同时,提供了基于身份云数据完整性审计方案所不具备的容错性,使得该方法更具实用性。本发明还涉及一种基于生物特征的云数据完整性验证方法的系统。
申请公布号 CN106487786A 申请公布日期 2017.03.08
申请号 CN201610871538.9 申请日期 2016.09.30
申请人 陕西师范大学 发明人 禹勇;李艳楠;杨波;丁玉洁
分类号 H04L29/06(2006.01)I 主分类号 H04L29/06(2006.01)I
代理机构 西安智萃知识产权代理有限公司 61221 代理人 张蓓
主权项 一种基于生物特征的云数据完整性验证方法,其特征在于:包括如下步骤:步骤S100,系统初始化:步骤S101,云服务器运行系统初始化算法,输入一个安全参数l,该算法即可输出一个安全的大素数p和两个以p为阶的乘法循环群G和G<sub>T</sub>,且g为群G的一个生成元,e:G×G→G<sub>T</sub>是一个双线性映射,H:{0,1}*→G,H是一个哈希函数;步骤S102,密钥生成中心服务器随机生成系统主密钥y,并根据主密钥y计算参数g<sub>1</sub>发送给云服务器,即g<sub>1</sub>=g<sup>y</sup>∈G;步骤S103,云服务器随机选择g<sub>2</sub>∈G,并根据g<sub>1</sub>,g<sub>2</sub>,计算参数A=e(g<sub>1</sub>,g<sub>2</sub>),定义m为该系统中描述一个生物特征身份的最大属性数,集合M={1,2,...,m+1};随机选择随机元素t<sub>1</sub>,...,t<sub>m+1</sub>∈G,计算函数<img file="FDA0001124441970000011.GIF" wi="454" he="142" />随机选择整数z∈Z<sub>p</sub>,计算参数v=g<sup>z</sup>,选取整数d作为模糊匹配精度;其中,Z<sub>p</sub>为模p的循环群;步骤S104,云服务器生成公共参数PP,即PP=(l,p,G,G<sub>T</sub>,H,g<sub>1</sub>,g<sub>2</sub>,e,d,t<sub>1</sub>,…t<sub>m+1</sub>,T(x),v,A);步骤S200,客户端向密钥生成中心服务器申请密钥;具体步骤是:步骤S201,客户端输入公共参数PP,并将自己的生物特征身份ω一同发送给密钥生成中心服务器;步骤S202,密钥生成中心服务器收到客户端密钥申请后,为其生成一对签名密钥({D<sub>k</sub>}<sub>k∈ω</sub>,{d<sub>k</sub>}<sub>k∈ω</sub>);步骤S300,客户端上传数据至云服务器:客户端为将要存储的文件F生成文件名F<sub>n</sub>,并为文件F生成文件标签f<sub>t</sub>;然后将文件F的数据进行预处理、分块,得到分块文件{m<sub>ij</sub>}<sub>1≤i≤n,1≤j≤s</sub>,并为分块文件{m<sub>ij</sub>}<sub>1≤i≤n,1≤j≤s</sub>中的数据块m<sub>i</sub>(1≤i≤n)计算数据块标签<img file="FDA0001124441970000021.GIF" wi="486" he="87" />然后将文件标签f<sub>t</sub>、分块文件{m<sub>ij</sub>}<sub>1≤i≤n,1≤j≤s</sub>、数据块标签<img file="FDA0001124441970000022.GIF" wi="462" he="90" />级联生成上传文件F<sup>*</sup>,最后将上传文件F<sup>*</sup>存入云服务器;具体步骤是:步骤S301,客户端为将要存储的文件F选择文件名F<sub>n</sub>和s个随机数u<sub>1</sub>,...,u<sub>s</sub>,并计算文件标签f<sub>t</sub>;步骤S302,客户端用RS码为将要存储的文件F进行编码得到编码文件F′,然后将编码文件F′分成n个块,每一块分成s个部分,得到分块文件{m<sub>ij</sub>}<sub>1≤i≤n,1≤j≤s</sub>;步骤S303,客户端为分块文件{m<sub>ij</sub>}<sub>1≤i≤n,1≤j≤s</sub>的数据块m<sub>i</sub>(1≤i≤n)计算数据块标签<img file="FDA0001124441970000023.GIF" wi="487" he="87" />然后将文件标签f<sub>t</sub>、分块文件{m<sub>ij</sub>}<sub>1≤i≤n,1≤j≤s</sub>、数据块标签<img file="FDA0001124441970000024.GIF" wi="462" he="90" />级联生成上传文件<img file="FDA0001124441970000025.GIF" wi="963" he="94" />最后将上传文件F*存入云服务器,同时本地删除数据;其中“||”为级联操作;步骤S400,审计服务器对云服务器的验证过程:客户端生成一个验证请求发送给审计服务器,审计服务器通过与云服务器的交互,验证云服务器发来的响应值,进而确定客户端的文件是否完整保存在云服务器上,最后,审计服务器生成验证报告发送给客户端;具体步骤是:步骤S401,客户端生成一个验证请求requ,发送给审计服务器,请求验证云服务器;步骤S402,审计服务器验证客户端验证请求的有效性;验证请求有效则对相应的云服务器继续执行验证步骤;否则,拒绝客户端的验证请求;步骤S403,审计服务器生成挑战值chal,并发送给云服务器;步骤S404,云服务器收到挑战值chal后,生成响应值resp,并传给审计服务器;步骤S405,审计服务器收到云服务器发来的响应值resp后,根据自己发送的挑战值chal,云服务器的响应值resp以及采集到的客户端的新的生物特征身份ω'来验证响应值resp的有效性;步骤S406,审计服务器根据验证结果发送验证报告给客户端,若验证成功,则发送验证成功;否则,发送验证失败;步骤S407:当客户端需要验证云服务器上的数据完整性时,重复步骤S401‑S406。
地址 710119 陕西省西安市长安区西长安街620号陕师大计算机学院