【技术实现步骤摘要】
本专利技术涉及云存储
,特别是涉及一种云存储加密及去重复方法及其系统。
技术介绍
去重复技术是云存储系统中的一个重要的技术,通过避免在云存储系统中多次存储相同的数据文件,来节约云存储系统的硬盘空间以及用户的网络带宽,进而降低云存储系统的成本。但是,由于数据文件进行存储时往往需要加密,若用户先进行加密,然后再由云存储系统进行去重复的话,由于不同的用户加密同一个数据文件往往得到不同的密文,而云存储系统很难判断这些不同的密文是否来源于同样的数据文件,这就导致了加密数据文件不可能去重复。目前,收敛加密为同时实现数据文件的加密和去重复提供了一种有效的方法。数据文件的加密密钥是其数据内容的哈希值,称之为收敛密钥或内容密钥,该方法能够保证同样的数据文件加密后产生同样的密文,故可以对加密后的数据文件进行去重复,同时由于同一个数据文件只需要存储一份密文,故可以实现去重复技术节约硬盘空间的目的。但是,采用收敛加密时,由于各个数据文件采用的是相同的加密方式,数据文件的加密密钥一致,加密后的数据密文固定,攻击者可以利用字典来猜测收敛密钥的内容,从而解密数据文件密文,即数据文件的密 ...
【技术保护点】
一种云存储加密及去重复方法,用于客户端,所述客户端与云存储系统通信连接,其特征在于,包括:步骤s101:将数据文件分为预设大小的N个数据块并进行标号,其中,最后一个数据块的大小小于或等于所述预设大小;步骤s102:分别计算各个所述数据块的标识;步骤s103:将所述数据文件的预设部分标识上传至所述云存储系统进行重复检测;当所述云存储系统判断预先存储有与所述数据文件的预设部分标识相同的数据文件标识时,接收所述云存储系统发送的第一公钥,所述第一公钥为对应于所述数据文件的哈希树的根节点,进入步骤s109;当所述云存储系统判断未预先存储有与所述数据文件的预设部分标识相同的数据文件标识 ...
【技术特征摘要】
1.一种云存储加密及去重复方法,用于客户端,所述客户端与云存储系统通信连接,其特征在于,包括:步骤s101:将数据文件分为预设大小的N个数据块并进行标号,其中,最后一个数据块的大小小于或等于所述预设大小;步骤s102:分别计算各个所述数据块的标识;步骤s103:将所述数据文件的预设部分标识上传至所述云存储系统进行重复检测;当所述云存储系统判断预先存储有与所述数据文件的预设部分标识相同的数据文件标识时,接收所述云存储系统发送的第一公钥,所述第一公钥为对应于所述数据文件的哈希树的根节点,进入步骤s109;当所述云存储系统判断未预先存储有与所述数据文件的预设部分标识相同的数据文件标识时,发送所述数据文件的全部标识至所述云存储系统,并接收所述云存储系统发送的第二公钥,所述第二公钥为以所述数据文件的全部标识作为叶子节点构建的哈希树的根节点,进入步骤s104;步骤s104:分别计算得到各个所述数据块的私钥;步骤s105:分别将各个所述数据块的私钥与其标识进行整合操作,得到各个所述数据块的收敛密钥;步骤s106:对各个所述数据块进行数据块加密操作,得到各个所述数据块的数据块密文;每个所述数据块的加密密钥为自身的收敛密钥;步骤s107:对各个所述数据块的收敛密钥进行收敛密钥加密操作,得到各个所述数据块对应的收敛密钥密文;其中,所述第二公钥为第一数据块的收敛密钥的加密密钥,所述第M-1数据块的私钥为第M数据块的收敛密钥的加密密钥,1<M≤N;步骤s108:存储所述第一数据块的收敛密钥密文,将其他所述数据块的收敛密钥密文以及N个所述数据块密文发送至所述云存储系统,供所述云存储系统将其分布式的存储于自身的若干个服务器内;以供所述客户端根据存储的所述第一数据块的收敛密钥密文及其对应的公钥来对从所述云存储系统下载的N个所述数据块密文以及除所述第一数据块以外的其他所述数据块的收敛密钥密文进行解密操作,获取所述数据文件;步骤s109:计算所述第一数据块的私钥;步骤s110:将所述第一数据块的私钥与其标识进行整合操作,得到所述第一数据块的收敛密钥;步骤s111:对所述第一数据块的收敛密钥进行收敛密钥加密操作,得到所述第一数据块的收敛密钥密文,所述第一数据块的收敛密钥的加密密钥为所述第一公钥;步骤s112:存储所述第一数据块的收敛密钥密文,以供所述客户端根据所述第一数据块的收敛密钥密文及其对应的公钥来对从所述云存储系统下载的N个所述数据块密文以及除所述第一数据块以外的其他所述数据块的收敛密钥密文进行解密操作,获取所述数据文件。2.根据权利要求1所述的方法,其特征在于,所述接收所述云存储系统发送的第一公钥之前还包括:接收所述云存储系统发送的数据重复响应,并运行拥有权证明协议,发送数据拥有权证明信息至所述云存储系统;当所述云存储系统判断所述客户端通过数据拥有权证明后,接收所述云存储系统发送的授权访问指令,以供所述客户端根据所述授权访问指令下载所述云存储系统内预先存储的N个所述数据块密文以及除所述第一数据块以外的其他所述数据块的收敛密钥密文;所述步骤s108中,所述将其他所述数据块的收敛密钥密文以及N个所述数据块密文发送至所述云存储系统后还包括:接收所述云存储系统发送的所述授权访问指令,以供所述客户端根据所述授权访问指令下载所述云存储系统内存储的N个所述数据块密文以及除所述第一数据块以外的其他所述数据块的收敛密钥密文。3.根据权利要求1或2所述的方法,其特征在于,所述整合操作具体为:循环异或操作。4.根据权利要求1或2所述的方法,其特征在于,所述数据块加密操作以及所述收敛密钥加密操作具体为:采用AES算法进行加密。5.根据权利要求1或2所述的方法,其特征在于,所述分别计算得到各
\t个所述数据块的私钥的过程具体为:分别采用SHA-1哈希算法来计算得到各个所述数据块的私钥。6.根据权利要求1或2所述的方法,其特征在于...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。