The invention proposes a proxy-based group data integrity verification method, which includes initialization stage, data outsourcing stage, integrity verification stage, group user Member updating stage. By introducing proxy Proxy into the system model, the invention helps to compute data block signatures for each group user (data owner and data user). When TPA performs data integrity verification, it does not need any identity information of the group user, but only needs the proxy public key to carry out integrity verification. It ensures the identity privacy of group users. Since all group users compute block signatures by proxy Proxy and do not know the private key of proxy Proxy, even the original block signatures uploaded by revoked group members are still valid, and do not need to re-compute the block signatures by other group members, which reduces the overhead and supports dynamic performance efficiently. Groups.
【技术实现步骤摘要】
一种基于代理的群组数据完整性验证方法
本专利技术属于数据安全
,涉及云端群组安全技术,更为具体的说,是涉及一种基于代理的群组数据完整性验证方法。
技术介绍
如今,随着云存储技术的飞速发展,多用户下云端共享数据逐渐变得普遍。群组共享数据,通常是指最初有一个数据拥有者将数据文件外包到存储服务器上,随后会有多个数据使用者加入到群组之中共享外包的数据文件,数据拥有者和数据使用者都是群组用户中的一员。由于多用户同时共享(访问,修改,删除)数据文件,需要设计适应群组共享数据的数据完整性验证协议来确保存储在远程服务器上的数据没有被攻击者篡改或者丢失。目前,关于数据完整性验证,大多都是研究如何保护个人云端数据的完整性验证,然而实际中,随着多个用户共享数据的需求越来越多,需要考虑群组数据完整性验证协议。不同于单用户下的数据完整性验证场景,群组数据完整性验证场景存在许多特有的安全问题。对于共享数据的群组而言,群组用户成员通常是动态变化的。不幸的是,目前的数据完整性验证方案并不能有效的支持动态群组。群组用户有权限访问,修改,或删除远程存储的数据文件,群组用户在修改远程数据文件的同 ...
【技术保护点】
1.一种基于代理的群组数据完整性验证方法,其特征在于,包括如下步骤:初始化阶段:系统初始化公开参数,数据拥有者生成自身的私钥,公钥,以及其他的密钥参数,并将密钥参数发送给TPA和数据使用者,代理Proxy生成自身的密钥参数,数据拥有者将需要外包的数据文件划分为多个数据块,数据拥有者和数据使用者都是群组用户的一员;数据外包阶段:数据拥有者对每个数据块进行盲化处理,然后将盲化后的数据块发送给代理Proxy,代理Proxy计算收到的盲化数据块的盲签名并发送给数据拥有者,数据拥有者从收到的盲签名中恢复原始数据块的签名内容,然后计算存放群组用户名单的标签;最后数据拥有者将数据文件,签 ...
【技术特征摘要】
1.一种基于代理的群组数据完整性验证方法,其特征在于,包括如下步骤:初始化阶段:系统初始化公开参数,数据拥有者生成自身的私钥,公钥,以及其他的密钥参数,并将密钥参数发送给TPA和数据使用者,代理Proxy生成自身的密钥参数,数据拥有者将需要外包的数据文件划分为多个数据块,数据拥有者和数据使用者都是群组用户的一员;数据外包阶段:数据拥有者对每个数据块进行盲化处理,然后将盲化后的数据块发送给代理Proxy,代理Proxy计算收到的盲化数据块的盲签名并发送给数据拥有者,数据拥有者从收到的盲签名中恢复原始数据块的签名内容,然后计算存放群组用户名单的标签;最后数据拥有者将数据文件,签名集合以及名单标签上传到存储服务器进行存储,同时将名单标签上传给代理Proxy和TPA;代理Proxy根据群组用户名单来为数据使用者提供盲签名服务;完整性验证阶段:TPA对存储服务器发起数据完整性验证请求,存储服务器回复相应的验证证据,TPA通过验证证据的有效性来判断存储服务器是否正确的存储了数据文件;群组用户成员更新阶段:数据拥有者根据更新后的群组用户名单计算名单签名并发送给代理Proxy,存储服务器及TPA,代理Proxy接受更新后的群组用户名单,并为这些群组用户提供盲签名服务。2.根据权利要求1所述的基于代理的群组数据完整性验证方法,其特征在于,在初始化阶段中,所述数据拥有者使用初始化算法{pub}←InitSys()生成公共密钥参数pub,其具体步骤为:(1)创建双线性映射对e:G×G→GT,其中G是阶数为p循环乘法群,g∈G是生成器;(2)随机选择u∈G,同时u不是循环乘法群G的单位元,确定哈希函数H(·):{0,1}*→Zp,H(·)是一个防碰撞单向哈希函数;(3)系统得到公共密钥参数pub={G,GT,e,p,g,u,H(·)}。3.根据权利要求2所述的基于代理的群组数据完整性验证方法,其特征在于,在初始化阶段中,所述数据拥有者与代理Proxy使用算法{keyDO,keyDU,keyTPA}←GenKey(pub,1k)生成数据拥有者自身的密钥keyDO,数据使用者的密钥keyDU,和TPA的密钥keyTPA,其具体步骤如下:(1)数据拥有者随机选择x,z∈Zp,其中数据拥有者自身的私钥为skDO=x,计算数据拥有者公钥为pkDO=gx∈G,然后数据拥有者将密钥z经预先建立好的安全信道发送给第三方审计TPA及数据使用者;(2)代理Proxy随机选择y∈Zp作为自身私钥skproxy,计算公钥为pkproxy=gy∈G;(3)数据拥有者持有密钥参数keyDO=(skDO,pkDO,z,pkproxy),数据使用者持有密钥keyDU=(z,pkDO,pkproxy),第三方审计TPA持有密钥参数keyTPA=(z,pkDO,pkproxy),代理Proxy则持有keyProxy=(y,pkDO,pkproxy)。4.根据权利要求1所述的基于代理的群组数据完整性验证...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。