The invention belongs to the field of data privacy protection and security range query, and discloses a data integrity verification method under cloud environment, which includes the following steps: the data owner constructs the plaintext balanced binary tree index, traverses the plaintext balanced binary tree index, encrypts each node of the plaintext balanced binary tree index, obtains the ciphertext balanced binary tree index, and adds the The ciphertext balanced binary tree index is uploaded to the ECS; the data user encrypts the query boundary value and sends a query request to the ECS; the ECS retrieves the data according to the query request and returns the query result and the verification object; the data user decrypts the result returned by the ECS; the data user constructs the vector neighborhood chain and verifies the completion of the query result data Integrity. The invention realizes the purpose of realizing data privacy security with lightweight computing overhead and data integrity verification with lightweight computing and storage space, so that the invention can be applied to mobile devices.
【技术实现步骤摘要】
一种云环境下的数据完整性验证方法
本专利技术属于数据隐私保护、安全范围查询领域,具体地,涉及一种云环境下的数据完整性验证方法。
技术介绍
随着云计算的快速发展和广泛使用,云凭借着其强大的存储和计算能力吸引了众多用户的关注,人们越来越多地利用云进行在线数据存储,并通过查询服务随时随地的检索数据;同时,由于移动设备的便携性和灵活性,人们对移动设备的依赖程度越来越高,移动云受到越来越多的关注。但是移动云环境下还是存在着数据隐私安全的问题,为了保护数据隐私,用户通常会先将数据加密再上传到云服务器,但是数据加密往往会降低数据的可用性,也会给数据查询带来更多的困难。针对云环境下数据的安全查询,主要包括两个方面:一是可搜索加密,即对数据进行加密之后依然能够对密文数据进行相关计算和正确查询;二是查询结果完整性验证,即验证云服务返回的查询结果是否正确和完整。目前,针对可搜索加密的技术主要有保序函数加密和同态加密。保序函数加密能保证数据加密前后的大小顺序一致,但是这种方法容易受到基于统计分析的攻击影响。同态加密的计算结果解密后与未加密时的计算结果一样,但是该方法需要庞大的计算开销和存储开销。针对数据完整性验证的技术主要有Merkle哈希树技术和链技术。Merkle哈希树需要计算节点的哈希值;链技术往往需要对数据存储两次,因此这些方法都需要过多额外的计算开销和存储空间开销。上述现有技术中的一些缺陷,使得它们不能应用于计算资源和存储空间都比较有限的移动设备中。其中,可搜索加密方法难以在安全性和计算复杂度之间取得良好的平衡;而 ...
【技术保护点】
1.一种云环境下的数据完整性验证方法,其特征在于,所述云环境下的数据完整性验证方法包括如下步骤,/nA)数据拥有者构造明文平衡二叉树索引;/nB)数据拥有者遍历所述明文平衡二叉树索引,对所述明文平衡二叉树索引的每个节点进行加密,得到密文平衡二叉树索引;/nC)数据拥有者将所述密文平衡二叉树索引上传到云服务器;/nD)数据使用者将查询边界值加密后向云服务器发起查询请求;/nE)云服务器根据查询请求检索数据,并将查询结果和验证对象返回;/nF)数据使用者对云服务器返回的结果进行解密;/nG)数据使用者构造向量邻域链并验证查询结果数据的完整性。/n
【技术特征摘要】
1.一种云环境下的数据完整性验证方法,其特征在于,所述云环境下的数据完整性验证方法包括如下步骤,
A)数据拥有者构造明文平衡二叉树索引;
B)数据拥有者遍历所述明文平衡二叉树索引,对所述明文平衡二叉树索引的每个节点进行加密,得到密文平衡二叉树索引;
C)数据拥有者将所述密文平衡二叉树索引上传到云服务器;
D)数据使用者将查询边界值加密后向云服务器发起查询请求;
E)云服务器根据查询请求检索数据,并将查询结果和验证对象返回;
F)数据使用者对云服务器返回的结果进行解密;
G)数据使用者构造向量邻域链并验证查询结果数据的完整性。
2.根据权利要求1所述的云环境下的数据完整性验证方法,其特征在于,在所述步骤A)中,所述明文平衡二叉树索引的构造过程包括以下步骤,
A01)从包含n个数据项的数据集D中任选一个数据插入到树T中,并将这个数据从所述数据集D中删除,所述数据集D中数据量减1;
A02)从当前插入的数据节点起向上寻找第一个不平衡的节点;
A03)若不存在不平衡节点,则无需对树T做任何调整;若存在不平衡点,则通过相应的对树T的调整使得所有节点平衡;
A04)循环执行所述步骤A01)到所述步骤A03),当所述数据集D为空时结束循环,返回所述树T作为完整的明文平衡二叉树索引。
3.根据权利要求1所述的云环境下的数据完整性验证方法,其特征在于,在所述步骤B)中,遍历所述明文平衡二叉树索引,将所述明文平衡二叉树索引加密成向量形式,包括以下步骤,
B01)数据拥有者设定向量长度l(l≥5),设定长度为l-2的基础向量;
B02)访问所述明文平衡二叉树索引的节点,对于当前访问节点,设定当前明文数据在所述向量中的位置p1,设定查询边界值在对应的位置p2,设定噪声数据在其余的l-2个位置,将单个数据值转化成长度为l的初级向量;
B03)随机选择一个正整数因子α,与所述长度为l的初级向量相乘;
B04)所述长度为l的初级向量与一个l×l的密钥矩阵相乘,转化成一个新的长度不变的向量;
B05)遍历所述明文平衡二叉树索引,对每一个节点都执行步骤B02)到步骤B04),将所有节点的键值均加密成向量形式。
4.根据权利要求3所述的云环境下的数据完整性验证方法,其特征在于,在所述步骤B02)中,在位置p1嵌入明文数据,在位置p2嵌入数值-1,在l-2个位置中任选两个位置分别嵌入当前明文数据的左邻居和右邻居;
...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。