一种基于收敛加密技术的云安全去重方法与流程



1.本发明涉及数据安全技术领域,具体地说,涉及一种基于收敛加密技术的云安全去重方法。


背景技术:



2.目前,收敛加密技术(ce,convergent encryption)被广泛应用于构造数据安全去重系统,但是收敛加密面临数据泄露、复制伪造攻击、选择明文攻击、内容分发攻击等多种危险。由于收敛加密采用的加密密钥是由用户的文件通过哈希后生成的,所以同一用户的多个文件会产生多个不同的密钥,由此产生密钥管理问题。
3.云存储具有扩展性、容错性、弹性的特点,提供了一种全新的按需计费的方式,极大地便利了企业和个人服务使用者。然而,不管从云服务提供者还是服务使用者的角度来看,云端大数据的数据去重存在以下问题:1、恶意用户利用云存储应用的多终端用户件数据去重机制进行侧信道攻击,盗取用户的数据信息;2、恶意用户利用云存储系统数据指纹的流通性,盗取用户的下载信息;3、云存储系统为保障用户数据的隐私性将用户数据外包至云端服务器,用户随机加密数据,即使用户间拥有同样内容的数据,但经过不同加密处理后的密文数据不具备重复的特征,造成了数据加密与数据去重存在冲突。
4.综上,在基于收敛加密技术的去重的过程中收敛密钥的云存储存在大量隐患,如何利用收敛加密技术进行安全去重成为亟需解决的问题。


技术实现要素:



5.本发明针对上述利用收敛加密技术进行密文去重中存在的用户数据信息不安全、数据加密与数据去重存在冲突的问题,提出一种基于收敛加密技术的云安全去重方法,通过在密文数据去重协议中结合盲签名构建收敛密钥封装解封算法,并引入可信第三方统一封装和解封收敛密钥,去重存储收敛密钥,高效且可靠地对收敛密钥进行去重和存储,在保证收敛密钥安全性的同时,节省了收敛密钥密文的冗余存储空间。
6.一种基于收敛加密技术的云安全去重方法,在密文数据去重协议中结合盲签名构建收敛密钥封装解封算法,并引入可信第三方统一封装和解封收敛密钥km,去重存储收敛密钥km。
7.为了更好地实现本发明,进一步地,所述云安全去重方法具体包括以下步骤:步骤1:初始化云存储系统,输出云存储系统的公开参数信息,并将公开参数信息发送给用户;步骤2:从用户获取文件的数据明文m,计算与数据明文m对应的收敛密钥km和与数据块mi对应的数据块密钥k
mi
,得到密钥对(km,k
mi
);步骤3:将数据明文m按照设定大小切割为n个数据块mi,根据密钥对(km,k
mi
)加密
数据明文m和数据块mi,计算出数据明文m的数据密文cm,根据数据密文cm生成数据指纹;步骤4:将收敛密钥km和数据块密钥k
mi
进行盲化处理,并引入可信第三方统一封装盲化处理后的收敛密钥km和数据块密钥k
mi
,计算出收敛密钥km的收敛密钥密文ck;步骤5:根据数据块mi生成块签名私钥sski,计算每一个数据块mi的数据块签名δi;步骤6:根据步骤5计算出的数据块签名δi,验证步骤3生成的数据指纹与用户上传的数据是否匹配,若匹配则不存在有毒攻击,若不匹配,则向用户发送重新上传数据的指令;步骤7:将数据指纹作为索引标识建立数据明文m的索引表,记录数据明文m对应的密文、密文块、数据块签名、密钥密文的存储路径,并根据用户标识更新dataowner字段;步骤8:若云存储系统检索到数据指纹,将从用户获取的重新上传的数据执行拥有权证明协议,并向用户发送挑战信息;步骤9:根据从用户获取解析挑战信息后生成的重复响应值δ’,进行重复验证响应,判断用户的文件是否与云存储系统的文件相同,若是,将文件所有权赋予给用户,并根据从用户获取的用户标识更新dataowner字段,若不是,向用户返回错误信息;步骤10:获取验证通过后文件的数据指纹,将收敛密钥密文ck进行盲化处理,并引入可信第三方统一解封去盲化处理后的收敛密钥密文ck,得到收敛密钥km;步骤11:根据解封后的收敛密钥km,获取文件块密钥(k
mi
,km),采用对称解密的方式得到数据明文m。
8.为了更好地实现本发明,进一步地,所述步骤1具体包括以下步骤:步骤a1:云存储系统选择随机数q,创建q阶椭圆曲线方程g1、q阶椭圆曲线方程g2;所述q阶椭圆曲线方程g1包括生成元g、生成元g1、生成元g2;所述q阶椭圆曲线方程g1、g2产生线性配对关系e:g1×
g1→
g2;步骤a2:根据q阶椭圆曲线方程g1,构建哈希映射函数h(
·
)

{0,1}*∈g1、h(
·
)

{0,1}*∈zq;步骤a3:可信第三方随机选择x∈zq作为私钥,根据生成元g1计算出公钥y1、公钥y2,输出云存储系统的公开参数信息,并将公开参数信息发送给用户;所述公开参数信息包括q阶椭圆曲线方程g1、q阶椭圆曲线方程g2、生成元g、生成元g1、生成元g2、公钥y1、公钥y2、线性配对关系e、哈希映射函数h(
·
)、哈希映射函数h(
·
)。
9.为了更好地实现本发明,进一步地,所述步骤3具体包括以下步骤:步骤31:将数据明文m按照设定大小切割为n个数据块mi;步骤32:根据密钥对(km,k
mi
)加密数据明文m和数据块mi,计算出数据明文m的数据密文cm、数据块mi的数据密文ci;步骤33:根据计算出的数据块mi的数据密文ci,利用哈希映射函数h(
·
)计算出签名构造参数ci;步骤34:根据计算出的数据密文cm利用单相散列函数sha1(
·
)计算出数据指纹。
10.为了更好地实现本发明,进一步地,所述步骤4具体包括以下步骤:步骤41:选择随机数p作为盲化因子,其中p∈zq;步骤42:将收敛密钥km和数据块密钥k
mi
进行盲化处理,根据盲化处理后的收敛密
钥km和数据块密钥k
mi
、生成元g1、盲化因子p,得到中间值m;步骤43:根据从可信第三方获取私钥x签名中间值m,得到中间值n;步骤44:引入可信第三方统一封装盲化处理后的收敛密钥km和数据块密钥k
mi
,去盲化中间值n,计算出收敛密钥km的收敛密钥密文ck。
11.为了更好地实现本发明,进一步地,所述步骤8具体包括以下步骤:步骤81:云存储系统检索到数据指纹,将从用户获取的重新上传的数据执行拥有权证明协议,根据文件的总块数n,从1-n中随机生成c个数,得到集合i={s1,s2,...,sc};步骤82:从集合i中选取一组系数si,sj,并在集合zq中选取一个随机数vi,生成挑战者信息,并发送至用户。
12.为了更好地实现本发明,进一步地,所述步骤9具体包括以下步骤:步骤91:根据从用户获取的块签名私钥sski,得到块签名公钥spki;步骤92:聚合块签名私钥sski、签名构造参数ci、生成元g2、数据块签名δi,得到重复响应值δ’;步骤93:根据步骤92得到的重复响应值进行重复验证响应,并根据数据指纹所指向的数据明文m对应的数据块签名δi,重新构造对应的聚合签名δ;步骤94:对比重新构造对应的聚合签名δ和重复响应值δ’,根据对比结果判断用户的文件是否与云存储系统的文件相同,若是,将文件所有权赋予给用户,并根据从用户获取的用户标识更新dataowner字段,若不是,向用户返回错误信息。
13.为了更好地实现本发明,进一步地,所述步骤10具体包括以下步骤:步骤101:在集合zq中随机选择r作为盲化因子;步骤102:根据生成元g1、盲化因子r,盲化处理收敛密钥密文ck,得到中间值m’;步骤103:根据从可信第三方获取私钥x签名中间值m’,得到中间值n’;步骤104:引入可信第三方统一解封盲化处理后的收敛密钥密文ck,根据公钥y2、盲化因子r去盲化中间值n’,计算出收敛密钥km。
14.本发明具有以下有益效果:(1)本发明通过在密文数据去重协议中结合盲签名构建收敛密钥封装解封算法,并引入可信第三方统一封装和解封收敛密钥,可信第三方在执行盲签名过程中不会泄露数据,高效且可靠地对收敛密钥进行去重和存储,在保证收敛密钥安全性的同时,节省了收敛密钥密文的冗余存储空间。
15.(2)本发明在密钥收敛封装和解封过程中通过双线性映射关系检测可信第三方签名的正确性,防止恶意用户进行欺骗攻击,保障了签名的正确性。
16.(3)本发明通过随机因子聚合得到重复响应值,每一次聚合的重复响应值不同,恶意用户无法通过重放之前对应的挑战信息与响应完成实时的重复认证过程,实现了抗重放攻击。
附图说明
17.图1为本发明流程框图。
具体实施方式
18.为了更清楚地说明本发明实施例的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,应当理解,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例,因此不应被看作是对保护范围的限定。基于本发明中的实施例,本领域普通技术工作人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
19.在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“设置”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;也可以是直接相连,也可以是通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
20.实施例1:本实施例提出一种基于收敛加密技术的云安全去重方法,在密文数据去重协议中结合盲签名构建收敛密钥封装解封算法,并引入可信第三方统一封装和解封收敛密钥km,去重存储收敛密钥km。
21.工作原理:本实施例通过在密文数据去重协议中结合盲签名构建收敛密钥封装解封算法,并引入可信第三方统一封装和解封收敛密钥,去重存储收敛密钥,高效且可靠地对收敛密钥进行去重和存储,在保证收敛密钥安全性的同时,节省了收敛密钥密文的冗余存储空间。
22.实施例2:本实施例在上述实施例1的基础上,如图1所示,所述云安全去重方法具体包括以下步骤:步骤1:初始化云存储系统,输出云存储系统的公开参数信息,并将公开参数信息发送给用户;步骤2:从用户获取文件的数据明文m,计算与数据明文m对应的收敛密钥km和与数据块mi对应的数据块密钥k
mi
,得到密钥对(km,k
mi
);步骤3:将数据明文m按照设定大小切割为n个数据块mi,根据密钥对(km,k
mi
)加密数据明文m和数据块mi,计算出数据明文m的数据密文cm,根据数据密文cm生成数据指纹;步骤4:将收敛密钥km和数据块密钥k
mi
进行盲化处理,并引入可信第三方统一封装盲化处理后的收敛密钥km和数据块密钥k
mi
,计算出收敛密钥km的收敛密钥密文ck;步骤5:根据数据块mi生成块签名私钥sski,计算每一个数据块mi的数据块签名δi;步骤6:根据步骤5计算出的数据块签名δi,验证步骤3生成的数据指纹与用户上传的数据是否匹配,若匹配则不存在有毒攻击,若不匹配,则向用户发送重新上传数据的指令;步骤7:将数据指纹作为索引标识建立数据明文m的索引表,记录数据明文m对应的密文、密文块、数据块签名、密钥密文的存储路径,并根据用户标识更新dataowner字段;步骤8:若云存储系统检索到数据指纹,将从用户获取的重新上传的数据执行拥有权证明协议,并向用户发送挑战信息;
步骤9:根据从用户获取解析挑战信息后生成的重复响应值δ’,进行重复验证响应,判断用户的文件是否与云存储系统的文件相同,若是,将文件所有权赋予给用户,并根据从用户获取的用户标识更新dataowner字段,若不是,向用户返回错误信息;步骤10:获取验证通过后文件的数据指纹,将收敛密钥密文ck进行盲化处理,并引入可信第三方统一解封去盲化处理后的收敛密钥密文ck,得到收敛密钥km;步骤11:根据解封后的收敛密钥km,获取文件块密钥(k
mi
,km),采用对称解密的方式得到数据明文m。
23.本实施例的其他部分与上述实施例1相同,故不再赘述。
24.实施例3:本实施例在上述实施例1-2任一项的基础上,对实施例2中的步骤进行说明。
25.所述步骤1具体包括以下步骤:步骤a1:云存储系统选择随机数q,创建q阶椭圆曲线方程g1、q阶椭圆曲线方程g2;所述q阶椭圆曲线方程g1包括生成元g、生成元g1、生成元g2;所述q阶椭圆曲线方程g1、g2产生线性配对关系e:g1×
g1→
g2;步骤a2:根据q阶椭圆曲线方程g1,构建哈希映射函数h(
·
)

{0,1}*∈g1、h(
·
)

{0,1}*∈zq;步骤a3:可信第三方随机选择x∈zq作为私钥,根据生成元g1计算出公钥y1、公钥y2,输出云存储系统的公开参数信息,并将公开参数信息发送给用户;所述公开参数信息包括q阶椭圆曲线方程g1、q阶椭圆曲线方程g2、生成元g、生成元g1、生成元g2、公钥y1、公钥y2、线性配对关系e、哈希映射函数h(
·
)、哈希映射函数h(
·
)。
26.所述步骤3具体包括以下步骤:步骤31:将数据明文m按照设定大小切割为n个数据块mi;步骤32:根据密钥对(km,k
mi
)加密数据明文m和数据块mi,计算出数据明文m的数据密文cm、数据块mi的数据密文ci;步骤33:根据计算出的数据块mi的数据密文ci,利用哈希映射函数h(
·
)计算出签名构造参数ci;步骤34:根据计算出的数据密文cm计算出数据指纹。
27.所述步骤4具体包括以下步骤:步骤41:选择随机数p作为盲化因子,其中p∈zq;步骤42:将收敛密钥km和数据块密钥k
mi
进行盲化处理,根据盲化处理后的收敛密钥km和数据块密钥k
mi
、生成元g1、盲化因子p,得到中间值m;步骤43:根据从可信第三方获取私钥x签名中间值m,得到中间值n;步骤44:引入可信第三方统一封装盲化处理后的收敛密钥km和数据块密钥k
mi
,去盲化中间值n,计算出收敛密钥km的收敛密钥密文ck。
28.所述步骤8具体包括以下步骤:步骤81:云存储系统检索到数据指纹,将从用户获取的重新上传的数据执行拥有权证明协议,根据文件的总块数n,从1-n中随机生成c个数,得到集合i={s1,s2,...,sc};步骤82:从集合i中选取一组系数si,sj,并在集合zq中选取一个随机数vi,生成挑战者信息,并发送至用户。
29.所述步骤9具体包括以下步骤:步骤91:根据从用户获取的块签名私钥sski,得到块签名公钥spki;步骤92:聚合块签名私钥sski、签名构造参数ci、生成元g2、数据块签名δi,得到重复响应值δ’;步骤93:根据步骤92得到的重复响应值进行重复验证响应,并根据数据指纹所指向的数据明文m对应的数据块签名δi,重新构造对应的聚合签名δ;步骤94:对比重新构造对应的聚合签名δ和重复响应值δ’,根据对比结果判断用户的文件是否与云存储系统的文件相同,若是,将文件所有权赋予给用户,并根据从用户获取的用户标识更新dataowner字段,若不是,向用户返回错误信息。
30.所述步骤10具体包括以下步骤:步骤101:在集合zq中随机选择r作为盲化因子;步骤102:根据生成元g1、盲化因子r,盲化处理收敛密钥密文ck,得到中间值m’;步骤103:根据从可信第三方获取私钥x签名中间值m’,得到中间值n’;步骤104:引入可信第三方统一解封盲化处理后的收敛密钥密文ck,根据公钥y2、盲化因子r去盲化中间值n’,计算出收敛密钥km。
31.本实施例的其他部分与上述实施例1-2任一项相同,故不再赘述。
32.实施例4:本实施例在上述实施例1-3任一项的基础上,以一个具体的实施例进行详细说明。
33.包括以下步骤:步骤s1:首先,云存储系统选择随机数q,创建q阶椭圆曲线方程g1、q阶椭圆曲线方程g2;所述q阶椭圆曲线方程g1包括生成元g、生成元g1、生成元g2;所述q阶椭圆曲线方程g1、g2产生线性配对关系e:g1×
g1→
g2;然后根据q阶椭圆曲线方程g1,构建哈希映射函数h(
·
)

{0,1}*∈g1、h(
·
)

{0,1}*∈zq;最后可信第三方随机选择x∈zq作为私钥,根据生成元g1计算出公钥y1=g
1x
、公钥,输出云存储系统的公开参数信息,并将公开参数信息发送给用户;所述公开参数信息包括q阶椭圆曲线方程g1、q阶椭圆曲线方程g2、生成元g、生成元g1、生成元g2、公钥y1、公钥y2、线性配对关系e、哈希映射函数h(
·
)、哈希映射函数h(
·
),可表示为{g1、g2、g、g1、g2、y1、y2、e、h(
·
)、h(
·
)};步骤s2:从用户获取文件的数据明文m,计算与数据明文m对应的收敛密钥km和与数据块mi对应的数据块密钥k
mi
,得到密钥对(km,k
mi
);km=h(m);k
mi
=h(mi);步骤s3:首先将数据明文m按照设定大小切割为n个数据块mi;其次,根据密钥对(km,k
mi
)采用对称机密的方式加密数据明文m和数据块mi,计算出数据明文m的数据密文cm、数据块mi的数据密文ci;cm=enc(km,m);ci=enc(k
mi
,mi);然后根据计算出的数据块mi的数据密文ci,利用哈希映射函数h(
·
)计算出签名构造参数ci;ci=h(ci);
最后根据计算出的数据密文cm计算出数据指纹a,并计算数据明文m的文件完整性检测值b;a=sha1(cm);b=sha1(m);步骤s4:首先选择随机数p作为盲化因子,其中p∈zq;其次将收敛密钥km和数据块密钥k
mi
进行盲化处理,根据盲化处理后的收敛密钥km和数据块密钥k
mi
、生成元g1、盲化因子p,得到中间值m;m=z
·g1p
;其中,z代表收敛密钥km和数据块密钥k
mi
的统称;然后根据从可信第三方获取私钥x签名中间值m,得到中间值n;n=m
x
;最后引入可信第三方统一封装盲化处理后的收敛密钥km和数据块密钥k
mi
,去盲化中间值n,计算出收敛密钥km的收敛密钥密文ck;ck=n
·y1-p
;根据双线性映射关系e、{g1、y1}、收敛密钥km判断签名的正确性,验证等式e(ck,g1)=e(z,y1),若相等,则收敛密钥封装成功;若失败,则重新与可信第三方执行密钥封装协议。
34.步骤s5:根据数据块mi生成块签名私钥sski,计算每一个数据块mi的数据块签名δi;sski=h(mi);spki=g
2sski
;δi=[h(i)
·g2ci
]
sski
;其中,i代表数据块的位置索引。
[0035]
步骤s6:根据步骤5计算出的数据块签名δi,验证等式a=sha1(cm)是否成立,若等式成立,则说明数据块签名与数据明文m匹配;验证步骤3生成的数据指纹与用户上传的数据是否匹配,验证e(δi,g2)=e(h(i)
·g2ci
,spki)是否成立,若匹配则不存在有毒攻击,若不匹配,则向用户发送重新上传数据的指令;步骤s7:将数据指纹作为索引标识建立数据明文m的索引表,记录数据明文m对应的密文、密文块、数据块签名、密钥密文的存储路径,并根据用户标识更新dataowner字段;其中,dataowner字段表示数据明文m的共享用户表示集合。
[0036]
步骤s8:云存储系统检索到数据指纹,首先将从用户获取的重新上传的数据执行拥有权证明协议,根据文件的总块数n,从1-n中随机生成c个数,得到集合i={s1,s2,...,sc};然后从集合i中选取一组系数,并在集合zq中选取一个随机数vi,生成挑战者信息;chal={i,vi}
i∈i
;其中,si、sj相互独立,i不等于j;最后将挑战者信息发送至用户;步骤s9:首先根据从用户获取的块签名私钥sski,得到块签名公钥spki;其次聚合块签名私钥sski、签名构造参数ci、生成元g2、数据块签名δi,得到重复响
应值δ’;δ’=п
(i,vi)∈chal
δ
ivi
;然后根据得到的重复响应值进行重复验证响应,并根据数据指纹所指向的数据明文m对应的数据块签名δi,重新构造对应的聚合签名δ;δ=п
(i,vi)∈chal
δ
ivi
;对比重新构造对应的聚合签名δ和重复响应值δ’,验证δ’=δ是否成立,根据对比结果判断用户的文件是否与云存储系统的文件相同,若是,将文件所有权赋予给用户,并根据从用户获取的用户标识更新dataowner字段,若不是,向用户返回错误信息。
[0037]
步骤s10:首先在集合zq中随机选择r作为盲化因子;其次根据生成元g1、盲化因子r,盲化处理收敛密钥密文ck,得到中间值m’;m’=ck·g1r
;然后根据从可信第三方获取私钥x签名中间值m’,得到中间值n’;最后引入可信第三方统一解封盲化处理后的收敛密钥密文ck,根据公钥y2、盲化因子r去盲化中间值n’,计算出收敛密钥km。
[0038]
n’=m’x-1
;km=n’·y2-r
;通过双线性映射关系e(ck,g1)=e(z,y1)验证可信第三方的签名的正确性,若验证成功,则km为收敛密钥。
[0039]
步骤s11:根据解封后的收敛密钥km,获取文件块密钥(k
mi
,km),采用对称解密的方式得到数据明文m。
[0040]
m=dec(cm,km);或者可以通过解密获得数据明文mi;组合得到数据明文m;mi=dec(c
mi
,kmi);还可以对数据明文m的一致性进行检测tag=sha
256
(f),若等式验证通过,则用户获取到完整的数据明文,否则解密失败,系统报错,重新执行文件解密操作。
[0041]
本实施例的其他部分与上述实施例1-3任一项相同,故不再赘述。
[0042]
以上所述,仅是本发明的较佳实施例,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化,均落入本发明的保护范围之内。

技术特征:


1.一种基于收敛加密技术的云安全去重方法,其特征在于,在密文数据去重协议中结合盲签名构建收敛密钥封装解封算法,并引入可信第三方统一封装和解封收敛密钥k
m
,去重存储收敛密钥k
m
;所述云安全去重方法具体包括以下步骤:步骤1:初始化云存储系统,输出云存储系统的公开参数信息,并将公开参数信息发送给用户;步骤2:从用户获取文件的数据明文m,计算与数据明文m对应的收敛密钥k
m
和与数据块mi对应的数据块密钥k
mi
,得到密钥对(k
m
,k
mi
);步骤3:将数据明文m按照设定大小切割为n个数据块mi,根据密钥对(k
m
,k
mi
)加密数据明文m和数据块mi,计算出数据明文m的数据密文c
m
,根据数据密文c
m
生成数据指纹;步骤4:将收敛密钥k
m
和数据块密钥k
mi
进行盲化处理,并引入可信第三方统一封装盲化处理后的收敛密钥k
m
和数据块密钥k
mi
,计算出收敛密钥k
m
的收敛密钥密文c
k
;步骤5:根据数据块mi生成块签名私钥sski,计算每一个数据块mi的数据块签名δ
i
;步骤6:根据步骤5计算出的数据块签名δ
i
,验证步骤3生成的数据指纹与用户上传的数据是否匹配,若匹配则不存在有毒攻击,若不匹配,则向用户发送重新上传数据的指令;步骤7:将数据指纹作为索引标识建立数据明文m的索引表,记录数据明文m对应的密文、密文块、数据块签名、密钥密文的存储路径,并根据用户标识更新dataowner字段;步骤8:若云存储系统检索到数据指纹,将从用户获取的重新上传的数据执行拥有权证明协议,并向用户发送挑战信息;步骤9:根据从用户获取解析挑战信息后生成的重复响应值δ’,进行重复验证响应,判断用户的文件是否与云存储系统的文件相同,若是,将文件所有权赋予给用户,并根据从用户获取的用户标识更新dataowner字段,若不是,向用户返回错误信息;步骤10:获取验证通过后文件的数据指纹,将收敛密钥密文c
k
进行盲化处理,并引入可信第三方统一解封去盲化处理后的收敛密钥密文c
k
,得到收敛密钥k
m
;步骤11:根据解封后的收敛密钥k
m
,获取文件块密钥(k
mi
,k
m
),采用对称解密的方式得到数据明文m。2.如权利要求1所述的一种基于收敛加密技术的云安全去重方法,其特征在于,所述步骤1具体包括以下步骤:步骤a1:云存储系统选择随机数q,创建q阶椭圆曲线方程g1、q阶椭圆曲线方程g2;所述q阶椭圆曲线方程g1包括生成元g、生成元g1、生成元g2;所述q阶椭圆曲线方程g1、g2产生线性配对关系e:g1×
g1→
g2;步骤a2:根据q阶椭圆曲线方程g1,构建哈希映射函数h(
·
)

{0,1}*∈g1、h(
·
)

{0,1}*∈zq;步骤a3:可信第三方随机选择x∈z
q
作为私钥,根据生成元g1计算出公钥y1、公钥y2,输出云存储系统的公开参数信息,并将公开参数信息发送给用户;所述公开参数信息包括q阶椭圆曲线方程g1、q阶椭圆曲线方程g2、生成元g、生成元g1、生成元g2、公钥y1、公钥y2、线性配对关系e、哈希映射函数h(
·
)、哈希映射函数h(
·
)。3.如权利要求2所述的一种基于收敛加密技术的云安全去重方法,其特征在于,所述步骤3具体包括以下步骤:
步骤31:将数据明文m按照设定大小切割为n个数据块mi;步骤32:根据密钥对(k
m
,k
mi
)加密数据明文m和数据块mi,计算出数据明文m的数据密文c
m
、数据块mi的数据密文c
i
;步骤33:根据计算出的数据块mi的数据密文c
i
,利用哈希映射函数h(
·
)计算出签名构造参数c
i
;步骤34:根据计算出的数据密文c
m
,利用单相散列函数sha1(
·
)计算出数据指纹。4.如权利要求3所述的一种基于收敛加密技术的云安全去重方法,其特征在于,所述步骤4具体包括以下步骤:步骤41:选择随机数p作为盲化因子,其中p∈z
q
;步骤42:将收敛密钥k
m
和数据块密钥k
mi
进行盲化处理,根据盲化处理后的收敛密钥k
m
和数据块密钥k
mi
、生成元g1、盲化因子p,得到中间值m;步骤43:根据从可信第三方获取私钥x签名中间值m,得到中间值n;步骤44:引入可信第三方统一封装盲化处理后的收敛密钥k
m
和数据块密钥k
mi
,去盲化中间值n,计算出收敛密钥k
m
的收敛密钥密文c
k
。5.如权利要求4所述的一种基于收敛加密技术的云安全去重方法,其特征在于,所述步骤8具体包括以下步骤:步骤81:云存储系统检索到数据指纹,将从用户获取的重新上传的数据执行拥有权证明协议,根据文件的总块数n,从1-n中随机生成c个数,得到集合i={s1,s2,...,s
c
};步骤82:从集合i中选取一组系数s
i
,s
j
,并在集合z
q
中选取一个随机数v
i
,生成挑战者信息,并发送至用户。6.如权利要求5所述的一种基于收敛加密技术的云安全去重方法,其特征在于,所述步骤9具体包括以下步骤:步骤91:根据从用户获取的块签名私钥ssk
i
,得到块签名公钥spk
i
;步骤92:聚合块签名私钥ssk
i
、签名构造参数c
i
、生成元g2、数据块签名δ
i
,得到重复响应值δ’;步骤93:根据步骤92得到的重复响应值进行重复验证响应,并根据数据指纹所指向的数据明文m对应的数据块签名δ
i
,重新构造对应的聚合签名δ;步骤94:对比重新构造对应的聚合签名δ和重复响应值δ’,根据对比结果判断用户的文件是否与云存储系统的文件相同,若是,将文件所有权赋予给用户,并根据从用户获取的用户标识更新dataowner字段,若不是,向用户返回错误信息。7.如权利要求6所述的一种基于收敛加密技术的云安全去重方法,其特征在于,所述步骤10具体包括以下步骤:步骤101:在集合z
q
中随机选择r作为盲化因子;步骤102:根据生成元g1、盲化因子r,盲化处理收敛密钥密文c
k
,得到中间值m’;步骤103:根据从可信第三方获取私钥x签名中间值m’,得到中间值n’;步骤104:引入可信第三方统一解封盲化处理后的收敛密钥密文c
k
,根据公钥y2、盲化因子r去盲化中间值n’,计算出收敛密钥k
m


技术总结


本发明涉及数据安全技术领域,具体地说,涉及一种基于收敛加密技术的云安全去重方法;通过在密文数据去重协议中结合盲签名构建收敛密钥封装解封算法,并引入可信第三方统一封装和解封收敛密钥,去重存储收敛密钥,高效且可靠地对收敛密钥进行去重和存储,在保证收敛密钥安全性的同时,节省了收敛密钥密文的冗余存储空间;在密钥收敛封装和解封过程中通过双线性映射关系检测可信第三方签名的正确性,防止恶意用户进行欺骗攻击,保障了签名的正确性;通过随机因子聚合得到重复响应值,使得每一次聚合的重复响应值不同,恶意用户无法通过重放之前对应的挑战信息与响应完成实时的重复认证过程,实现了抗重放攻击。实现了抗重放攻击。实现了抗重放攻击。


技术研发人员:

罗思睿 林兴武 杨涛

受保护的技术使用者:

四川公众项目咨询管理有限公司

技术研发日:

2022.11.08

技术公布日:

2022/12/6

本文发布于:2024-09-22 14:30:17,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/39608.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:密钥   数据   步骤   明文
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议