当前位置: 首页 > 专利查询>清华大学专利>正文

远程数据完整性概率检验方法及系统技术方案

技术编号:11281385 阅读:98 留言:0更新日期:2015-04-09 15:05
本发明专利技术提出一种远程数据完整性概率检验方法,包括:数据拥有者建立检验公私密钥对,并将原始数据划分成多个数据块,使用检验公私密钥对生成与多个数据块一一对应的多个检验标签;检验端根据概率检验估算模型确定被检验的数据块的数目,并根据数目选取被检验数据块;检验端根据被检验数据块生成挑战消息,并将挑战消息发送至服务器;服务器根据挑战消息和被检验数据块生成证明值,将证明值返回至检验端;检验端根据挑战消息和被检验数据块对应的检验标签生成本地检验值,并将本地检验值与证明值比较,若本地检验值与证明值相等,则判定服务器持有完整正确的文件。本发明专利技术的方法实现了以小计算量做高概率文件完整性检验,并且可公开检验。

【技术实现步骤摘要】
远程数据完整性概率检验方法及系统
本专利技术涉及计算机
,尤其涉及一种远程数据完整性概率检验方法及系统。
技术介绍
在海量数据存储中,大量数据长期存放,很可能会受到来自外部或者存储服务器本身的破坏,包括无授权删除,更改,数据破损瞒报等。数据完整性验证用以证明当前存储服务器上确实存储完整、正确的相应数据文件,它在海量数据存储服务中必不可少。常用的数据完整性检验方法是哈希hash校验(MD5,Message-DigestAlgorithm5),此类方法需要客户端下载全部待检验文档,如果只是为了做完整性检验(audit),每一次验证都将耗费大量通信带宽,而且在数据通信过程中带来了额外的数据泄露隐患。针对下载数据耗费带宽问题,研究者们进一步提出预先计算一批检验数对(每个密钥key值对应一个由key值和原文一起计算出来的一个检验值)。此类方法不需要下载文件数据,只需往返传输key和检验值两次,节省带宽。但是,检验数据对的方法可实施次数受限于预存检验数对数目。一旦所有的数据对用完,必须下载全部数据重新制作新的检验数对。上述两类方法均不支持动态数据变化和公开检验。支持动态数据是指当存储器上数据发生合法的增加,删除,修改等变动后,当前的数据完整性检验方法仍然有效。所谓公开检验是指,数据完整性检验可由除数据拥有者和数据接受者之外的第三方进行,但在这过程中第三方检验者无法接触到原始数据内容或者任何相关的隐私信息。针对无限次检验和上述新的要求,交互式远程完整性检验方法被提出。目前有研究提出了对云存储数据完整性公开第三方验证的思路,并采用MerkleHashTree树型结构配置数据块标签来适应存储数据动态变化。为支持无需调用数据块内容的公开验证,采用RSA(RonRivest,AdiShamir,LeonardAdleman)公钥加密技术和BLS(Boneh–Lynn–Shacham)签名为基础的同态标签。该方法中,MHT树形结构对动态数据支持性比较好,可支持无数据blockless和无状态stateless公开验证,但同态标签的生成和签名计算比较复杂。同时,数据验证过程中需要传输被检验数据块的位置和系数等原始数据,还包括被检验数据块从叶节点到根节点沿途的哈希hash节点信息等。不仅占用数据传输量,而且有检验信息泄露风险。另有研究中提出了一种远程数据完整性验证的“挑战回应”协议。采用更加简化的同态验证标签进行远程公开检验。该方法中同态标签的乘法和加法计算互换等价性是交互远程验证的数学依据。此机制对动态数据变化有较好的支持,但是此策略需要对所有的存储数据块做穷尽检验,才能得出数据完整与否的结论。实验和分析表明检验端和存储端运算量随数据存储量呈线性增长。当存储数据量变大时,将所有数据块全部验证一遍仍旧会花费大量时间和计算,通信资源。QingWang等人的研究中虽然采用了采样检验策略,但对采样的量和位置缺少数学依据,完全随机的数据块检验除穷尽检验外,检验结论缺少可信度。
技术实现思路
本专利技术旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本专利技术的第一方面目的在于提出一种检验准确率高、计算量小、可公开检验的远程数据完整性概率检验方法。本专利技术第二方面目的在于提出一种远程数据完整性概率检验系统。为了实现上述目的,本专利技术第一方面实施例的远程数据完整性概率检验方法,包括以下步骤:数据拥有者建立检验公私密钥对,并将文件中的原始数据划分成多个数据块,以及使用所述检验公私密钥对生成与所述多个数据块一一对应的多个检验标签;检验端根据概率检验估算模型确定被检验的数据块的数目,并根据所述数目随机抽样选取被检验数据块;所述检验端根据所述被检验数据块生成挑战消息,并将所述挑战消息发送至服务器;所述服务器接收所述挑战消息,并根据所述挑战消息和所述被检验数据块生成证明值,并将所述证明值返回至所述检验端;以及所述检验端根据所述挑战消息和所述检验标签生成本地检验值,并将所述本地检验值与所述证明值比较,若所述本地检验值与所述证明值相等,则判定所述服务器持有完整正确的所述文件,反之,则判定所述文件已被破坏。根据本专利技术实施例的远程数据完整性概率检验方法,检验端(不必一定是数据拥有者)即任何获得检验标签的关注方都可以对服务器发起检验要求,检验过程中检验端无需接触除被检验数据块对应的检验标签外的任何原始数据内容和信息,实现了以小计算量做高概率文件完整性判断,同时可以做公开验证。在一些示例中,所述检验标签由公钥、私钥、循环群的模数和所述数据块的大小确定。在一些示例中,所述私钥仅由所述数据拥有者一方持有。在一些示例中,所述挑战信息包括:所述被检验数据块的数目、所述被检验数据块在所述文件中的位置信息和所述被检验数据块的计算系数。本专利技术第二方面实施例的远程数据完整性概率检验系统,包括:数据拥有模块、检验模块和服务器。数据拥有模块用于建立检验公私密钥对,并将文件中的原始数据划分成多个数据块,以及使用所述检验公私密钥对生成与所述多个数据块一一对应的多个检验标签。检验模块用于根据概率检验估算模型确定被检验的数据块的数目,并根据所述数目随机抽样选取被检验数据块;所述检验端还用于根据所述被检验数据块生成挑战消息,并将所述挑战消息发送至服务器。服务器用于接收所述挑战消息,并根据所述挑战消息和所述被检验数据块生成证明值,并将所述证明值返回至所述检验模块;所述检验模块还用于根据所述挑战消息和所述检验标签生成本地检验值,并将所述本地检验值与所述证明值比较,若所述本地检验值与所述证明值相等,则判定所述服务器持有完整正确的文件,反之,则判定所述文件已被破坏。根据本专利技术实施例的远程数据完整性概率检验系统,检验模块即任何获得检验标签的关注方都可以对服务器发起检验要求,检验过程中检验模块无需接触除被检验数据块对应的检验标签外的任何原始数据内容和信息,实现了以小计算量做高概率文件完整性判断,同时可以做公开验证。在一些实施例中,所述检验标签由公钥、私钥、循环群的模数和所述数据块的大小确定。在一些实施例中,所述私钥仅由所述数据拥者模块持有。在一些实施例中,所述挑战信息包括:所述被检验数据块的数目、所述被检验数据块在所述文件中的位置信息和所述被检验数据块的计算系数。本专利技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到。附图说明图1是根据本专利技术一个实施例的远程数据完整性概率检验方法的流程图;图2是本专利技术一个实施例的远程数据完整性概率检验方法的交互示意图;图3是本专利技术一个实施例的远程数据完整性概率检验方法的示意图;和图4是根据本专利技术一个实施例的远程数据完整性概率检验系统的结构框图。具体实施方式在本专利技术的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本专利技术和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本专利技术的限制。此外,术语“第一”、“第二”本文档来自技高网
...
远程数据完整性概率检验方法及系统

【技术保护点】
一种远程数据完整性概率检验方法,其特征在于,包括以下步骤:数据拥有者建立检验公私密钥对,并将文件中的原始数据划分成多个数据块,以及使用所述检验公私密钥对生成与所述多个数据块一一对应的多个检验标签;检验端根据概率检验估算模型确定被检验的数据块的数目,并根据所述数目随机抽样选取被检验数据块;所述检验端根据所述被检验数据块生成挑战消息,并将所述挑战消息发送至服务器;所述服务器接收所述挑战消息,并根据所述挑战消息和所述被检验数据块生成证明值,并将所述证明值返回至所述检验端;以及所述检验端根据所述挑战消息和所述检验标签生成本地检验值,并将所述本地检验值与所述证明值比较,若所述本地检验值与所述证明值相等,则判定所述服务器持有完整正确的所述文件,反之,则判定所述文件已被破坏。

【技术特征摘要】
1.一种远程数据完整性概率检验方法,其特征在于,包括以下步骤:数据拥有者建立检验公私密钥对,并将文件中的原始数据划分成多个数据块,以及使用所述检验公私密钥对生成与所述多个数据块一一对应的多个检验标签;检验端根据概率检验估算模型确定被检验的数据块的数目,并根据所述数目随机抽样选取被检验数据块;所述检验端根据概率检验估算模型确定被检验的数据块的数目,具体包括:当设定期望检验可信概率PX:由于经过缩放:其中服务器S对文件F的n个数据块中t个进行了修改或者删除,检验端对c个不同的数据块发出检验挑战,客户端指定检验数据块中被S删改的数据块数目为X,X是一个离散随机变量,则至少有一个客户端选中的检验数据块是被S删改过的概率为PX,同时对存储差错率有一定估计时,根据上述不等式反向推导出所需的被检验的数据块的数目c;所述检验端根据所述被检验数据块生成挑战消息,并将所述挑战消息发送至服务器;所述服务器接收所述挑战消息,并根据所述挑战消息和所述被检验数据块生成证明值,并将所述证明值返回至所述检验端;以及所述检验端根据所述挑战消息和所述检验标签生成本地检验值,并将所述本地检验值与所述证明值比较,若所述本地检验值与所述证明值相等,则判定所述服务器持有完整正确的所述文件,反之,则判定所述文件已被破坏。2.如权利要求1所述的方法,其特征在于,所述检验标签由公钥、私钥、循环群的模数和所述数据块的大小确定。3.如权利要求2所述的方法,其特征在于,所述私钥仅由所述数据拥有者一方持有。4.如权利要求1所述的方法,其特征在于,所述挑战消息包括:所述被检验数据块的数目、所述被检验数据块在所述文件中的位置信息和所述被检验数据块的计算系数。5.一种远程数据...

【专利技术属性】
技术研发人员:杨吉江牛宇沈睿芳王青
申请(专利权)人:清华大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1