CN107094075A - 一种基于收敛加密的数据块动态操作方法 - Google Patents
一种基于收敛加密的数据块动态操作方法 Download PDFInfo
- Publication number
- CN107094075A CN107094075A CN201710544167.8A CN201710544167A CN107094075A CN 107094075 A CN107094075 A CN 107094075A CN 201710544167 A CN201710544167 A CN 201710544167A CN 107094075 A CN107094075 A CN 107094075A
- Authority
- CN
- China
- Prior art keywords
- index
- server
- user
- file
- new
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/068—Network architectures or network communication protocols for network security for supporting key management in a packet data network using time-dependent keys, e.g. periodically changing keys
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于收敛加密的数据块动态操作方法,属于网络安全技术领域,解决现有收敛加密技术下实现动态操作,会存在数据完整性冲突、持有权管理和访问控制以及密钥更新难的问题。本发明具体步骤如下:步骤1、用户选择安全参数,根据安全参数输出公开参数发送给服务器;步骤2、服务器根据公开参数,对原文件进行收敛加密的同时对原文件动态修改;步骤3、用户对步骤2得到的结果进行回取,补全服务器中被更新后的文件缺失的元数据信息。本发明用于在数据加密和去重复的同时,提供数据块动态操作。
Description
技术领域
一种基于收敛加密的数据块动态操作方法,用于在数据加密和去重复的同时,提供数据块动态操作,属于网络安全技术领域。
背景技术
云存储是最早的云计算应用之一,其规模化的运作和集群化的管理使得数据存储业务得以高效的开展,受到大量服务商的青睐。
近些年,数据爆发式的增长给云存储服务器带来了巨大的负担。去重复技术是目前云服务商广泛采用的技术,它可以有效减少冗余数据,提高存储效率。收敛加密是目前最为流行的去重复加密算法,它能够对数据执行确定性的加密,从而让相同的明文在加密过后也能够被识别出来,从而在保护隐私的前提下实现去重复的功能。
虽然目前收敛加密得到了广泛的应用和研究,然而其独有的特质也让用户无法对自己存储的数据进行动态操作。难点主要有三个:(1)数据完整性冲突:如果服务器在主动的执行去重复的同时,用户也主动实施动态操作,这样势必造成数据文件的不一致;(2)持有权管理和访问控制问题:存在恶意用户或者服务器对数据非法访问和操作;(3)密钥更新难:数据在去重复的环境下处于动态变化,其密钥也是一样,如何管理和更新这些密钥是一个难题。就在2015-2017年间,已有大量针对第二、三点的高水平研究成果出现,如《Rekeying for Encrypted Dedupl ication Storage》,《Secure Data Dedupl icationwith Dynamic Ownership Management in Cloud Storage》等等。然而,没有人提出一个针对所有三点难题的解决方案,即:在收敛加密的前提下,允许用户对数据进行动态操作。用于当前智能设备的普及,带来数据访问的方便和快捷,用户对数据的动态操作的重要性不容忽视,因此如何实现收敛加密下的数据动态性操作是具有经济潜力和研究价值的课题。
发明内容
本发明的目的在于:基于现有收敛加密技术下实施动态操作可能面对的:(1)数据完整性冲突;(2)持有权管理和访问控制;(3)密钥更新难的问题,本发明提供了一种基于收敛加密的数据块动态操作方法。
本发明采用的技术方案如下:
一种基于收敛加密的数据块动态操作方法,其特征在于,具体步骤如下:
步骤1、用户选择安全参数,根据安全参数输出公开参数;
步骤2、用户根据公开参数产生收敛加密和动态修改请求发送给服务器,服务器对原文件进行收敛加密的同时对原文件动态修改;
步骤3、用户对步骤2得到的结果进行回取,补全服务器中被更新后的文件缺失的元数据信息。
进一步,所述步骤1具体为:
选择安全参数λ,在安全参数λ中随机选择一个素数p,两个阶为p生成元为g的群G,GT;
选择一个双线性对:e:G×G→GT;
随机选择一个整数s和三个哈希函数Ha:{0,1}*→ZP,Hb:{ZP}s→G,Hc:G→{ZP}s;
从群G中随机选择s+1个元素:
输出公开参数:P=<p,g,G,GT,s,Ha,Hb,Hc,u0,u1,…,us>。
进一步,所述步骤2的具体步骤如下:
步骤2.1、预处理:用户根据公开参数P,计算原文件的元数据并且加密原文件;
步骤2.2、持有权验证:服务器根据用户对加密原文件的请求,验证加密原文件持有权;
步骤2.3、去重复:服务器根据用户对持有权加密原文件请求,执行持有权加密原文件去重复。
进一步,所述步骤2.1具体为:
根据公开参数P,用户首先将原文件M划分为n个块如下:M=M1||…||Mn;
计算原文件M的主密钥kmas=Ha(M)和原文件块的文件块密钥ki=Hb(M[i])(1≤i≤n),得到密钥集k={kmas,{ki}1≤i≤n};
根据文件块密钥计算密文块得到原密文C=C1||…||Cn;
根据密文计算文件索引index0=Ha(C)和文件块索引indexi=Ha(Ci)(1≤i≤n),得到索引集index={indexi}1≤i≤n;
计算原文件M的文件标签和原文件块的文件块标签得到标签集σ={σi}0≤i≤n;
使用索引集{indexi}1≤i≤n中的元素作为叶节点,构建莫科尔哈希树Ψ并计算根节点R;
最后,用户将{index,σ,R}作为去重复请求发送给服务器。
进一步,所述步骤2.2具体为:
服务器收到用户去重复请求{index,σ,R}后,使用用户上传的索引集index中每一个元素indexi(1≤i≤n)作为叶节点,构建莫科尔哈希树Ψ并计算新的根节点R′,接着,服务器判断并且执行如下:若R′≠R,终止并且返回错误标识符;若R′=R,服务器继续进行去重复处理。
进一步,所述步骤2.3具体为:
服务器首先在存储在一级存储设备中的文件列表Listfile中搜索文件索引index0,并且执行如下:
若index0不存在,则服务器继续在二级存储设备中的文件块列表中搜索indexi(1≤i≤n),服务器将搜索到的indexi的标识符i记录到不重复文件块信息集T中,将T返回给用户,用户收到T后,产生不重复信息U={Ci}i∈T并且发送给服务器,服务器对每一个i∈T,验证indexi=Ha(Ci)是否成立,若不成立,则返回错误标识符并且退出;若均成立,则服务器认证用户为文件密文C的合法持有者,并且在持有人列表Listowner中记录,最后,服务器将文件集W={C,index,σ,R}存储在云中,用户在本地保存{kmas,index0,σ0}。;
若index0存在,服务器继续判断:若σ0≠null,服务器向用户返回文件访问地址,同时返回成功标识符并且结束;若σ0=null,则代表服务器存储的文件是通过动态修改得到的,在动态操作协议中用null值来标记通过动态修改后得到的文件标签σ0,因此,服务器将用动态修改后的新的标签集σ′替换旧的标签集σ;新的索引集index′替换旧的索引集,然后,服务器认证用户为文件密文C的合法持有者,并且在持有人列表Listowner中记录,最后,服务器将文件集W={C,index,σ,R}存储在云中,用户在本地保存{kmas,index0,σ0}。
进一步,动态修改具体步骤如下:
步骤3.1.服务器动态操作:服务器根据用户请求对原密文执行数据块修改、添加或者删除的操作;
步骤3.2.用户验证正确性:服务器向用户返回执行操作后的凭证,用户通过验证判断动态操作是否正确执行。
进一步,所述步骤3.1具体分为三种情况:
将文件C第j个位置的数据块修改为
用户计算新文件块密钥新密文块平凡标签 将修改请求发送给服务器;
服务器产生一个影子文件集X={C,index0=null,{index}1≤i≤n,σ0=null,{σi}1≤i≤n,R},并且用替换Cj,得到新文件密文C*,用替换σj,得到平凡标签集用替换indexj,得到新的索引集index*,构建新的莫科尔哈希树Ψ*并且计算新的根节点R*,用R*替换老节点R;
在文件C第j个数据块的后面添加一个数据块
用户计算新文件块密钥新密文块平凡标签将修改请求发送给服务器;
服务器产生一个影子文件集X,在C[j]后***新文件块得到新文件密文C*,在σ[j]后***得到平凡标签集计算新文件索引和文件块索引 用替换index0,将***到后面,得到新的索引集index*,计算新的莫科尔树Ψ*并且计算新的根节点R*,用R*替换R;
删除文件C第j个位置的数据块
用户将修改请求{delete,j,null,null}发送给服务器,服务器产生一个影子文件集X,并且删除C[j],indexj和σ[j],得到新密文C*和平凡标签计算新的文件索引并且用替换index0,最后得到新的索引集index*,计算新的莫科尔树Ψ*并且计算新的根节点R*,用R*替换R。
进一步,将文件C第j个位置的数据块修改为中的平凡标签定义如下:
将文件C第j个数据块的后面添加一个数据块中的平凡标签定义如下:
将删除文件C第j个位置的数据块中的平凡标签定义如下:
进一步,所述步骤3具体为:
步骤4.1、用户发送回取请求{retrieve,index0,σ0}给服务器;服务器首先在文件列表Listfile中搜寻index0,若不存在,则返回错误标识符并且结束,否则,执行步骤4.2;
步骤4.2、服务器根据index0检索到文件标签σ0,并且根据持有者列表Listowner判断用户是否为持有者,若不是,则返回错误信息并且退出;否则,执行步骤4.3;
步骤4.3、服务器继续判断:若σ0≠null,,则服务器直接返回文件访问地址,用户计算文件块密钥然后计算 最终得到密文M=M1||…||Mn;
若σ0=null,其代表该文件由动态修改产生,用户计算平凡文件块密钥 接着,用户计算每一个密文文件块: 最终用户得到完整明文
步骤4.4、用户计算新的主密钥新的文件标签和文件块标签最后得到新的标签集
步骤4.5、用户将新的标签集σ*返回给服务器,服务器用σ*替换平凡标签用于补全被更新后的文件缺失的元数据信息。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
1、本发明在收敛加密技术下实现动态操作,不会存在数据完整性冲突、持有权管理和访问控制以及密钥更新难的问题;
2.本发明使用到了影子文件集的概念,这里影子文件集X={C,index0=null,{index}1≤i≤n,σ0=null,{σi}1≤i≤n,R},它指的是对文件和元数据的一个克隆副本,但与副本不同的是,我们用,σ0=null来将之与普通文件集W={C,index,σ,R}区分开来,这样做的目的是让动态操作不直接覆盖原有的文件,而成为一个独立的副本,而在经过动态操作(动态修改)之后,该副本又可以与原有的文件进行比较,从而通过执行去重复来达到99%的数据节省(这是因为两个文件是由一次动态操作而变得不同,它们最多只有一个文件块不相同);
3.本发明利用到了平凡标签的概念,这里,平凡标签指的是,我们不更新标签的密钥,而沿用文件动态修改之前的密钥,这样一来,就可以避免密钥更新带来的麻烦,但是随之而来的是文件一致性和解密的问题,但是由于我们使用了文件索引index进行标识文件块信息,因此标签只用于封装文件块密钥,我们将没有更新的标签命名为平凡标签。
附图说明
图1为本发明的流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
参照图1,本发明的具体实现如下:
初始化:
选择安全参数λ,在安全参数λ随机选择一个素数p,两个阶为p生成元为g的群G,GT,
选择一个双线性对:e:G×G→GT,随机选择一个整数s和三个哈希函数Ha:{0,1}*→ZP,Hb:{ZP}s→G,Hc:G→{ZP}s,从群G中随机选择s+1个元素输出公开参数:P=<p,g,G,GT,s,Ha,Hb,Hc,u0,u1,…,us>。
用户根据公开参数P,用户首先将原文件M划分为n个块如下:M=M1||…||Mn;
计算原文件M的主密钥kmas=Ha(M)和原文件块的文件块密钥ki=Hb(M[i])(1≤i≤n),得到密钥集k={kmas,{ki}1≤i≤n};
根据文件块密钥计算密文块得到原密文C=C1||…||Cn;
根据密文计算文件索引index0=Ha(C)和文件块索引indexi=Ha(Ci)(1≤i≤n),得到索引集index={indexi}1≤i≤n;
计算原文件M的文件标签和原文件块的文件块标签得到标签集σ={σi}0≤i≤n;
使用索引集{indexi}1≤i≤n中的元素作为叶节点,构建莫科尔哈希树Ψ并计算根节点R;
最后,用户将{index,σ,R}作为去重复请求发送给服务器。
服务器收到用户去重复请求{index,σ,R}后,使用用户上传的索引集index中每一个元素indexi(1≤i≤n)作为叶节点,构建莫科尔哈希树Ψ并计算新的根节点R′。接着,服务器判断并且执行如下:若R′≠R,终止并且返回错误标识符;若R′=R,服务器继续进行去重复处理。
服务器首先在事先存储在一级存储设备中的文件列表Listfile中搜索文件索引index0,并且执行如下:
若index0不存在,则服务器继续在事先在二级存储设备中的文件块列表中搜索indexi(1≤i≤n),服务器将搜索到的indexi的标识符i记录到不重复文件块信息集T中,将T返回给用户,用户收到T后,产生不重复信息U={Ci}i∈T并且发送给服务器,服务器对每一个i∈T,验证indexi=Ha(Ci)是否成立,若不成立,则返回错误标识符并且退出;若均成立,则服务器认证用户为文件密文C的合法持有者,并且在持有人列表Listowner中记录,最后,服务器将文件集W={C,index,σ,R}存储在云中,用户在本地保存{kmas,index0,σ0};
若index0存在,服务器继续判断:若σ0≠null,服务器向用户返回文件访问地址,同时返回成功标识符并且结束;若σ0=null,则代表服务器存储的文件是通过动态修改得到的,这是因为我们在动态操作协议中用null值来标记通过动态修改后得到的文件标签σ0。因此,服务器将用动态修改后的新的标签集σ′替换旧的标签集σ;新的索引集index′替换旧的索引集,然后,服务器认证用户为文件密文C的合法持有者,并且在持有人列表Listowner中记录,最后,服务器将文件集W={C,index,σ,R}存储在云中,用户在本地保存{kmas,index0,σ0}。
动态修改具体步骤如下:
服务器动态操作:服务器根据用户请求对原密文执行数据块修改、添加或者删除的操作;
将文件C第j个位置的数据块修改为
用户计算新文件块密钥新密文块平凡标签 将修改请求发送给服务器;
服务器产生一个影子文件集X={C,index0=null,{index}1≤i≤n,σ0=null,{σi}1≤i≤n,R},并且用替换Cj,得到新文件密文C*,用替换σj,得到平凡标签集用替换indexj,得到新的索引集index*,构建新的莫科尔哈希树Ψ*并且计算新的根节点R*,用R*替换老节点R;
在文件C第j个数据块的后面添加一个数据块
用户计算新文件块密钥新密文块平凡标签将修改请求发送给服务器;
服务器产生一个影子文件集X,在C[j]后***新文件块得到新文件密文C*,在σ[j]后***得到平凡标签集计算新文件索引和文件块索引 用替换index0,将***到后面,得到新的索引集index*,计算新的莫科尔树Ψ*并且计算新的根节点R*,用R*替换R;
删除文件C第j个位置的数据块
用户将修改请求{delete,j,null,null}发送给服务器,服务器产生一个影子文件集X,并且删除C[j],indexj和σ[j],得到新密文C*和平凡标签计算新的文件索引并且用替换index0,最后得到新的索引集index*,计算新的莫科尔树Ψ*并且计算新的根节点R*,用R*替换R。
其中,将文件C第j个位置的数据块修改为中的平凡标签定义如下:
将文件C第j个数据块的后面添加一个数据块中的平凡标签定义如下:
将删除文件C第j个位置的数据块中的平凡标签定义如下:
接着,服务器和用户执行动态操作协议来执行文件块的动态操作,服务器得到新的文件集之后为了向用户证明更新后的文件的正确性,服务器将新的根节点R*发送给用户,用户生成一个随机数集合Q并且发送给服务器,服务器根据Q中的元素,生成相应的叶节点集合L*={indexi}i∈Q和对应的认证路径S*,并且将凭证{L*,S*}发送给用户,用户根据{L*,S*}生成莫科尔哈希树并且计算得到新的根节点R′,接着,用户判断若果等式成立,则动态操作正确执行,更新后的文件集最终存储在服务器上;否则,返回错误标识符并且结束;
为了回取文件,用户发送回取请求{retrieve,index0,σ0}给服务器;服务器首先在文件列表Listfile中搜寻index0,若不存在,则返回错误标识符并且结束,否则,继续执行下一步;
服务器根据index0检索到文件标签σ0,并且根据持有者列表Listowner判断用户是否为持有者,若不是,则返回错误信息并且退出;否则,继续执行下一步;
服务器继续判断:若σ0≠null,则服务器直接返回文件访问地址,用户计算文件块密钥然后计算最终得到密文M=M1||…||Mn。
若σ0=null,其代表该文件由动态操作产生,用户计算平凡文件块密钥 最终得到明文
最后,用户计算新的主密钥新的文件标签和文件块标签最后得到新的标签集
用户将新的标签集σ*返回给服务器,服务器用σ*替换平凡标签用于补全被更新后的文件缺失的元数据信息。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于收敛加密的数据块动态操作方法,其特征在于,具体步骤如下:
步骤1、用户选择安全参数,根据安全参数输出公开参数;
步骤2、用户根据公开参数产生收敛加密和动态修改请求发送给服务器,服务器对原文件进行收敛加密的同时对原文件动态修改;
步骤3、用户对步骤2得到的结果进行回取,补全服务器中被更新后的文件缺失的元数据信息。
2.如权利要求1所述的一种基于收敛加密的数据块动态操作方法,其特征在于,所述步骤1具体为:
选择安全参数λ,在安全参数λ中随机选择一个素数p,两个阶为p生成元为g的群G,GT;
选择一个双线性对:e:G×G→GT;
随机选择一个整数s和三个哈希函数Ha:{0,1}*→ZP,Hb:{ZP}s→G,Hc:G→{ZP}s;
从群G中随机选择s+1个元素:
输出公开参数:P=<p,g,G,GT,s,Ha,Hb,Hc,u0,u1,…,us>。
3.如权利要求2所述的一种基于收敛加密的数据块动态操作方法,其特征在于,所述步骤2的具体步骤如下:
步骤2.1、预处理:用户根据公开参数P,计算原文件的元数据并且加密原文件;
步骤2.2、持有权验证:服务器根据用户对加密原文件的请求,验证加密原文件持有权;
步骤2.3、去重复:服务器根据用户对持有权加密原文件请求,执行持有权加密原文件去重复。
4.如权利要求3所述的一种基于收敛加密的数据块动态操作方法,其特征在于,所述步骤2.1具体为:
根据公开参数P,用户首先将原文件M划分为n个块如下:M=M1||…||Mn;
计算原文件M的主密钥kmas=Ha(M)和原文件块的文件块密钥ki=Hb(M[i])(1≤i≤n),得到密钥集k={kmas,{ki}1≤i≤n};
根据文件块密钥计算密文块得到原密文C=C1||…||Cn;
根据密文计算文件索引index0=Ha(C)和文件块索引indexi=Ha(Ci)(1≤i≤n),得到索引集index={indexi}1≤i≤n;
计算原文件M的文件标签和原文件块的文件块标签(1≤i≤n),得到标签集σ={σi}0≤i≤n;
使用索引集{indexi}1≤i≤n中的元素作为叶节点,构建莫科尔哈希树Ψ并计算根节点R;
最后,用户将{index,σ,R}作为去重复请求发送给服务器。
5.如权利要求4所述的一种基于收敛加密的数据块动态操作方法,其特征在于,所述步骤2.2具体为:
服务器收到用户去重复请求{index,σ,R}后,使用用户上传的索引集index中每一个元素indexi(1≤i≤n)作为叶节点,构建莫科尔哈希树Ψ并计算新的根节点R′,接着,服务器判断并且执行如下:若R′≠R,终止并且返回错误标识符;若R′=R,服务器继续进行去重复处理。
6.如权利要求5所述的一种基于收敛加密的数据块动态操作方法,其特征在于,所述步骤2.3具体为:
服务器首先在存储在一级存储设备中的文件列表Listfile中搜索文件索引index0,并且执行如下:
若index0不存在,则服务器继续在二级存储设备中的文件块列表中搜索indexi(1≤i≤n),服务器将搜索到的indexi的标识符i记录到不重复文件块信息集T中,将T返回给用户,用户收到T后,产生不重复信息U={Ci}i∈T并且发送给服务器,服务器对每一个i∈T,验证indexi=Ha(Ci)是否成立,若不成立,则返回错误标识符并且退出;若均成立,则服务器认证用户为文件密文C的合法持有者,并且在持有人列表Listowner中记录,最后,服务器将文件集W={C,index,σ,R}存储在云中,用户在本地保存{kmas,index0,σ0}。;
若index0存在,服务器继续判断:若σ0≠null,服务器向用户返回文件访问地址,同时返回成功标识符并且结束;若σ0=null,则代表服务器存储的文件是通过动态修改得到的,在动态操作协议中用null值来标记通过动态修改后得到的文件标签σ0,因此,服务器将用动态修改后的新的标签集σ′替换旧的标签集σ;新的索引集index′替换旧的索引集,然后,服务器认证用户为文件密文C的合法持有者,并且在持有人列表Listowner中记录,最后,服务器将文件集W={C,index,σ,R}存储在云中,用户在本地保存{kmas,index0,σ0}。
7.如权利要求1、6所述的一种基于收敛加密的数据块动态操作方法,其特征在于,动态修改具体步骤如下:
步骤3.1.服务器动态操作:服务器根据用户请求对原密文执行数据块修改、添加或者删除的操作;
步骤3.2.用户验证正确性:服务器向用户返回执行操作后的凭证,用户通过验证判断动态操作是否正确执行。
8.如权利要求7所述的一种基于收敛加密的数据块动态操作方法,其特征在于,所述步骤3.1具体分为三种情况:
将文件C第j个位置的数据块修改为
用户计算新文件块密钥新密文块平凡标签 将修改请求发送给服务器;
服务器产生一个影子文件集X={C,index0=null,{index}1≤i≤n,σ0=null,{σi}1≤i≤n,R},并且用替换Cj,得到新文件密文C*,用替换σj,得到平凡标签集用替换indexj,得到新的索引集index*,构建新的莫科尔哈希树Ψ*并且计算新的根节点R*,用R*替换老节点R;
在文件C第j个数据块的后面添加一个数据块
用户计算新文件块密钥新密文块平凡标签将修改请求发送给服务器;
服务器产生一个影子文件集X,在C[j]后***新文件块得到新文件密文C*,在σ[j]后***得到平凡标签集计算新文件索引和文件块索引 用替换index0,将***到后面,得到新的索引集index*,计算新的莫科尔树Ψ*并且计算新的根节点R*,用R*替换R;
删除文件C第j个位置的数据块
用户将修改请求{delete,j,null,null}发送给服务器,服务器产生一个影子文件集X,并且删除C[j],indexj和σ[j],得到新密文C*和平凡标签计算新的文件索引并且用替换index0,最后得到新的索引集index*,计算新的莫科尔树Ψ*并且计算新的根节点R*,用R*替换R。
9.如权利要求8所述的一种基于收敛加密的数据块动态操作方法,其特征在于,
将文件C第j个位置的数据块修改为中的平凡标签定义如下:
For
For
For
将文件C第j个数据块的后面添加一个数据块中的平凡标签定义如下:
For
For
For
For
将删除文件C第j个位置的数据块中的平凡标签定义如下:
For
For
For
10.如权利要求8、9所述的一种基于收敛加密的数据块动态操作方法,其特征在于,所述步骤3具体为:
步骤4.1、用户发送回取请求{retrieve,index0,σ0}给服务器;服务器首先在文件列表Listfile中搜寻index0,若不存在,则返回错误标识符并且结束,否则,执行步骤4.2;
步骤4.2、服务器根据index0检索到文件标签σ0,并且根据持有者列表Listowner判断用户是否为持有者,若不是,则返回错误信息并且退出;否则,执行步骤4.3;
步骤4.3、服务器继续判断:若σ0≠null,,则服务器直接返回文件访问地址,用户计算文件块密钥for 1≤i≤n,然后计算for 1≤i≤n,最终得到密文M=M1||…||Mn;
若σ0=null,其代表该文件由动态修改产生,用户计算平凡文件块密钥 for 1≤i≤n,接着,用户计算每一个密文文件块:for 1≤i≤n,最终用户得到完整明文
步骤4.4、用户计算新的主密钥新的文件标签和文件块标签for 1≤i≤n,最后得到新的标签集
步骤4.5、用户将新的标签集σ*返回给服务器,服务器用σ*替换平凡标签用于补全被更新后的文件缺失的元数据信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710544167.8A CN107094075B (zh) | 2017-07-05 | 2017-07-05 | 一种基于收敛加密的数据块动态操作方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710544167.8A CN107094075B (zh) | 2017-07-05 | 2017-07-05 | 一种基于收敛加密的数据块动态操作方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107094075A true CN107094075A (zh) | 2017-08-25 |
CN107094075B CN107094075B (zh) | 2021-05-28 |
Family
ID=59641500
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710544167.8A Active CN107094075B (zh) | 2017-07-05 | 2017-07-05 | 一种基于收敛加密的数据块动态操作方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107094075B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108200172A (zh) * | 2018-01-03 | 2018-06-22 | 西安电子科技大学 | 一种支持安全数据去重与删除的云存储***及方法 |
CN108776758A (zh) * | 2018-04-13 | 2018-11-09 | 西安电子科技大学 | 一种雾存储中支持动态所有权管理的块级数据去重方法 |
CN112106323A (zh) * | 2018-07-12 | 2020-12-18 | 塞克罗斯股份有限公司 | 用于建立安全分层引用***的方法 |
CN112580083A (zh) * | 2020-12-30 | 2021-03-30 | 电子科技大学 | 一种基于双向可延展持有权证明的数据外包去重复方法 |
CN114978780A (zh) * | 2022-08-01 | 2022-08-30 | 四川公众项目咨询管理有限公司 | 一种基于收敛加密技术的云安全去重方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103605784A (zh) * | 2013-11-29 | 2014-02-26 | 北京航空航天大学 | 一种多重云环境下数据完整性验证方法 |
CN104917609A (zh) * | 2015-05-19 | 2015-09-16 | 华中科技大学 | 一种基于用户感知的高效安全数据去重方法及*** |
CN106603561A (zh) * | 2016-12-30 | 2017-04-26 | 电子科技大学 | 一种云存储中的块级加密方法及多粒度去重复方法 |
WO2017097344A1 (en) * | 2015-12-08 | 2017-06-15 | Nec Europe Ltd. | Method for re-keying an encrypted data file |
-
2017
- 2017-07-05 CN CN201710544167.8A patent/CN107094075B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103605784A (zh) * | 2013-11-29 | 2014-02-26 | 北京航空航天大学 | 一种多重云环境下数据完整性验证方法 |
CN104917609A (zh) * | 2015-05-19 | 2015-09-16 | 华中科技大学 | 一种基于用户感知的高效安全数据去重方法及*** |
WO2017097344A1 (en) * | 2015-12-08 | 2017-06-15 | Nec Europe Ltd. | Method for re-keying an encrypted data file |
CN106603561A (zh) * | 2016-12-30 | 2017-04-26 | 电子科技大学 | 一种云存储中的块级加密方法及多粒度去重复方法 |
Non-Patent Citations (2)
Title |
---|
YAFANG ZHANG,JIANBING NI等: "Provable multiple replication data possession with fulldy namics for secure cloud storage", 《CONCURRENCY AND COMPUTATION PRACTICE AND EXPERIENCE》 * |
项菲: "面向环境可靠和体系可靠的云存储关键技术研究", 《CNKI中国博士学位论文全文数据库信息科技辑》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108200172A (zh) * | 2018-01-03 | 2018-06-22 | 西安电子科技大学 | 一种支持安全数据去重与删除的云存储***及方法 |
CN108200172B (zh) * | 2018-01-03 | 2020-12-08 | 西安电子科技大学 | 一种支持安全数据去重与删除的云存储***及方法 |
CN108776758A (zh) * | 2018-04-13 | 2018-11-09 | 西安电子科技大学 | 一种雾存储中支持动态所有权管理的块级数据去重方法 |
CN108776758B (zh) * | 2018-04-13 | 2021-08-17 | 西安电子科技大学 | 一种雾存储中支持动态所有权管理的块级数据去重方法 |
CN112106323A (zh) * | 2018-07-12 | 2020-12-18 | 塞克罗斯股份有限公司 | 用于建立安全分层引用***的方法 |
CN112106323B (zh) * | 2018-07-12 | 2024-03-22 | 塞克罗斯股份有限公司 | 用于存储和读取不信任环境中的存储设备上的数据的方法 |
CN112580083A (zh) * | 2020-12-30 | 2021-03-30 | 电子科技大学 | 一种基于双向可延展持有权证明的数据外包去重复方法 |
CN112580083B (zh) * | 2020-12-30 | 2023-04-14 | 电子科技大学 | 一种基于双向可延展持有权证明的数据外包去重复方法 |
CN114978780A (zh) * | 2022-08-01 | 2022-08-30 | 四川公众项目咨询管理有限公司 | 一种基于收敛加密技术的云安全去重方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107094075B (zh) | 2021-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111355705B (zh) | 一种基于区块链的数据审计与安全去重云存储***、方法 | |
US9977918B2 (en) | Method and system for verifiable searchable symmetric encryption | |
US11726993B1 (en) | Systems and methods for cryptographically-secure queries using filters generated by multiple parties | |
CN106127075B (zh) | 一种云存储环境下基于隐私保护的可搜索加密方法 | |
CN106503574B (zh) | 区块链安全存储方法 | |
US8533489B2 (en) | Searchable symmetric encryption with dynamic updating | |
CN107094075A (zh) | 一种基于收敛加密的数据块动态操作方法 | |
CN110417781A (zh) | 基于区块链的文档加密管理方法、客户端及服务器 | |
CN109074434A (zh) | 使用分布式散列表和点对点分布式分类账验证数字资产所有权的方法和*** | |
CN108737374A (zh) | 一种区块链中数据存储的隐私保护方法 | |
CN106612320A (zh) | 云存储中一种加密数据的去重方法 | |
CN102685148A (zh) | 一种云存储环境下的安全网盘***的实现方法 | |
CN103607405A (zh) | 一种面向云存储的密文搜索认证方法 | |
CN108400970A (zh) | 云环境中相似数据消息锁定加密去重方法、云存储*** | |
CN115225409B (zh) | 基于多备份联合验证的云数据安全去重方法 | |
US20220209945A1 (en) | Method and device for storing encrypted data | |
CN110175169A (zh) | 一种加密数据去重方法、***及相关装置 | |
CN108667917A (zh) | 一种实现数据存储的方法、装置、计算机存储介质及终端 | |
Virvilis et al. | A cloud provider-agnostic secure storage protocol | |
CN109088719A (zh) | 外包数据库多关键词可验证密文搜索方法、数据处理*** | |
Periasamy et al. | Efficient hash function–based duplication detection algorithm for data Deduplication deduction and reduction | |
CN107995147A (zh) | 基于分布式文件***的元数据加解密方法和*** | |
CN117240452A (zh) | 一种基于区块链的高原数据安全共享方法 | |
CN108494552B (zh) | 支持高效收敛密钥管理的云存储数据去重方法 | |
Gohel et al. | A new data integrity checking protocol with public verifiability in cloud storage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |