[发明专利]一种基于无证书代理重加密的云数据去重方法有效
申请号: | 201910384969.6 | 申请日: | 2019-05-09 |
公开(公告)号: | CN110213042B | 公开(公告)日: | 2021-02-02 |
发明(设计)人: | 李发根;代强;郑啸宇;罗朝园;翟一晓 | 申请(专利权)人: | 电子科技大学;内江市云启科技有限公司 |
主分类号: | H04L9/08 | 分类号: | H04L9/08;H04L9/32;H04L29/08 |
代理公司: | 电子科技大学专利中心 51203 | 代理人: | 周刘英 |
地址: | 611731 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于无证书代理重加密的云端数据去重方法,属于云数据安全存储领域。本发明首先利用无证书签名的方法和挑战,依靠用户掌握的信息和云存储服务器拥有的预计算证据来完成文件所有权证明,从而实现客户端加密数据的删除;其次,利用无证书代理重加密方案实现了跨用户的数据共享和去重。即将服务器作为代理,对客户端上传的一次密文,用客户端上传的转换密钥进行二次加密,使得该二次密文能被另一客户端用户解密,实现数据共享,在这过程中,代理并不能获得与该数据相关的任何明文信息。最后,在文件级去重中,给出了一个数据块的映射表,客户端解密该文件映射表即可在特定的时间内向云服务器下载对应的数据块并解密组成完成的文件。 | ||
搜索关键词: | 一种 基于 证书 代理 加密 数据 方法 | ||
【主权项】:
1.一种基于无证书代理重加密的云端数据去重方法,其特征在于,包括下列步骤:步骤1、密钥生成中心生成密钥:步骤101、设定系统参数,包括:选择素数p,设置p阶的循环加法群G1;并选择群G1的一个生成元,记为参数P;以及设置p阶的循环乘法群G2;基于循环加法群G1和循环乘法群G2设置双线性映射
G1×G1→G2;以及计算参数
定义三个安全哈希函数H1,H2和H3,其中H1为从{0,1}*映射到
H2从G1映射到
H3是从{0,1}*×{0,1}*×G1×G2映射到
{0,1}*表示任意比特长的二进制序列组成的集合,
表示有限域
去掉元素零所得到的有限域;公开系统参数
步骤102、生成密钥:密钥生成中心根据用户的身份信息,从有限域
中随机选择主密钥s,计算公钥Ppub=sP,部分私钥
并将公钥Ppub、部分私钥DID和系统参数g发送给用户;用户端从有限域
中随机选择参数xID作为秘密值,基于用户端的身份标识ID计算公钥PKID=xID(H1(ID)P+Ppub),并设置完全私钥
步骤2、用户端初始化文件和数据块:用户端将文件M分为n块,得到n个数据块:m1,m2,…,mn;为每一个数据块mi计算收敛密钥khi=H1(mi),并用该收敛密钥作为加密密钥对数据块mi进行对称加密处理,得到数据块密文ci,并得到每个数据块的块标签
计算
从而得到文件M的文件标签
用户端基于公钥Ppub、用户端的身份标识ID和公钥PKID,以及系统参数对每个数据块密文及收敛密钥作进行一次加密处理,得到一级密文数据块Ci:Ci=(Ui,Vi)=((hi||ci)·gr,r·(PKID+H2(PKID)·(H1(ID)·P+Ppub)));并设置数据块映射表Maps作为文件M指向一级密文数据块Ci的指针值;计算每个数据块的块签名σi:用户端从有限域
中随机选取参数γ,计算承诺t=gγ;计算每个数据块密文的哈希值hi=H3(ci,ID,PKID,t),签名参数Si=(γ+hi)SKID,得到每个数据块的块签名σi=(hi,Si);对文件M的数据块映射表Maps进行一次加密处理,得到一级密文数据块映射表CM:CM=(UM,VM)=(Maps·gr,r·(PKID+H2(PKID)·(H1(ID)·P+Ppub)));步骤3、用户端向云服务器发送文件上传请求:用户端向云服务器发送文件上传请求,所述文件上传请求包括用户身份标识ID和公钥PKID,文件标签TM,以及每个数据块的块标签
和块签名σi;步骤4、文件上传去重处理:步骤401、服务器检测文件上传请求中的文件标签TM是否存在;若是,则执行步骤402;否则执行步骤405;步骤402:云服务器生成文件挑战信息challengeM并返回给用户端;其中,生成文件挑战信息challengeM具体为:根据文件标签TM对应的文件M的总块数n,从1至n中随机生成k个整数,组成数据块索引子集I,其中I中的任意两个元素之间均相互独立;对于
从有限域
中随机选择一个参数,记为vi;生成文件挑战信息challengeM={i||vi||ID||ai||Si||PKID}i∈I,其中
步骤403:用户端对文件挑战信息challengeM的应答处理:用户端计算参数
并计算哈希值
以及计算响应证据
并将Pv发送给云服务器;步骤404:云服务器对文件的所有权证明:云服务器验证
是否成立,若成立,则表示当前文件已经存在于云服务器中,云服务器请求用户端上传用于文件下载的下载用户身份标识ID′及其对应的转换密钥rkID→ID′,并将用户身份标识ID、ID′添加到云服务器的ID列表中,并分配一个指向当前文件的指针,对当前文件上传请求的去重处理结束;其中转换密钥rkID→ID′为:
若
不成立,则云服务器返回给用户端一个错误消息,对当前文件上传请求的去重处理结束;步骤405:云服务器检测块标签
是否存在,若存在,则执行步骤406;若不存在,则执行步骤409;步骤406:云服务器基于用户身份标识ID、公钥PKID,以及数据块的签名参数Si和哈希值hi生成数据块挑战信息challengec={ID||Si||ai||PKID},并返回给用户端,其中,参数
步骤407:用户端生成数据块响应并发送给云服务器:用户端基于收到挑战信息challengec,计算参数
并计算哈希值h*=H3(ci,ID,PKID,t′)并发送给云服务器;步骤408:云服务器对数据块所有权认证:当云服务器接收到用户端传来的h*时,与存储的块签名σi=(hi,Si)中的hi进行比较,判断h*=hi是否成立,若成立,则通过所有权认证,执行数据块去重处理:将用户身份标识ID加入云服务器的ID列表中,并且为其设置一个指针指向该数据块;否则向用户端返返回一个错误消息;步骤409:新上传处理:云服务器确定上传内容并向用户端发送上传所述上传内容的上传请求;所述上传内容包括用户身份标识ID、文件标签TM,一级密文数据块映射表CM,未存在于云服务器中的文件标签TM对应的数据块信息,所述数据块信息包括一级密文数据块Ci块标签
和块签名σi,以及请求用户端上传用于文件下载的下载用户身份标识ID′及其对应的转换密钥rkID→ID′;云服务器将用户身份标识ID和ID′添加云服务器的ID列表中,为收到的每个一级密文数据块Ci设置一个指针,并存储用户端上传的上传内容。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学;内江市云启科技有限公司,未经电子科技大学;内江市云启科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201910384969.6/,转载请声明来源钻瓜专利网。