基于信誉的多云数据完整性损坏高效追责方法及装置转让专利

申请号 : CN201710909484.5

文献号 : CN107659654B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 唐鑫黄永峰

申请人 : 清华大学

摘要 :

本发明提出一种基于信誉的多云数据完整性损坏高效追责方法及装置,其中,该方法包括:接收针对多云存储系统的完整性审计请求,其中,多云存储系统包括多个云存储服务提供商;基于完整性审计请求,获取与多云存储系统对应的基于信誉的回溯树RB‑BTT结构,判断RB‑BTT结构中根节点的证明信息是否通过数据完整性验证;如果判断出根节点的证明信息未通过数据完整性验证,则从RB‑BTT结构中找到数据完整性未通过验证的目标叶节点,并返回目标叶节点所对应的云存储服务提供商,由此,能够基于云存储服务提供商的信誉高效地找到造成数据损坏的一个或多个云存储服务提供商,并将追责结果提供给用户,提高了多云数据完整性损坏追责的效率,有效节省了审计方的开销,减少了用户等待追责结果的时间,提高了用户的体验度。

权利要求 :

1.一种基于信誉的多云数据完整性损坏高效追责方法,其特征在于,包括以下步骤:接收针对多云存储系统的完整性审计请求,其中,所述多云存储系统包括多个云存储服务提供商;

基于所述完整性审计请求,获取与所述多云存储系统对应的基于信誉的回溯树RB-BTT结构,其中,所述RB-BTT结构的叶子节点与所述多云存储系统中的云存储服务提供商的证明信息对应,所述RB-BTT结构从左到右的叶子节点是按照所述证明信息所对应的云存储服务提供商的信誉值从高到低排列的,所述证明信息包括数据块的聚合信息和标签的聚合信息;

判断所述RB-BTT结构中根节点的证明信息是否通过数据完整性验证;

如果判断出所述根节点的证明信息未通过数据完整性验证,则从所述RB-BTT结构中找到数据完整性未通过验证的目标叶节点,并返回所述目标叶节点所对应的云存储服务提供商;

其中,所述获取与所述多云存储系统对应的基于信誉的回溯树RB-BTT结构,具体包括:获取所述多云存储系统中每个云存储服务提供商的信誉值;

根据每个云存储服务提供商的信誉值,计算信誉值的平均值和标准差;

分别计算每个云存储服务提供商的信誉值和所述平均值之间的差值;

根据所述标准差和每个云存储服务提供商的信誉值和所述平均值之间的差值,对所述云存储系统中的所有云存储服务提供商进行分类;

针对每个分类,按照所述分类中的云存储服务提供商按照信誉值从小到大顺序依次排序,以获取所述分类中云存储服务提供商的排列顺序;

获取每个云存储服务提供商的证明信息;

针对每个分类,按照所述分类中云存储服务提供商的排列顺序,将对应云存储服务提供商的证明信息依次排列;

根据分类针对证明信息的排列结果,构建所述RB-BTT结构。

2.如权利要求1所述的方法,其特征在于,所述判断所述RB-BTT结构中根节点的证明信息是否通过数据完整性验证,包括:根据所述根节点的证明信息,验证预先设置的双线性等式是否成立,其中,如果验证所述双线性等式不成立,则判断所述根节点的证明信息未通过数据验证性验证。

3.如权利要求1所述的方法,其特征在于,所述根据所述标准差和每个云存储服务提供商的信誉值和所述平均值之间的差值,对所述云存储系统中的所有云存储服务提供商进行分类,包括:针对每个云存储服务提供商,判断所述云存储服务提供商的信誉值和所述平均值之间的差值是否超过所述标准差;

如果所述云存储服务提供商的信誉值和所述平均值之间的差值超过所述标准差,则确定所述云存储服务提供商为属于第一类的云存储服务提供商。

4.如权利要求3所述的方法,其特征在于,所述方法还包括:

如果所述云存储服务提供商的信誉值和所述平均值之间的差值未超过所述标准差,则进一步判断所述云存储服务提供商的信誉值和所述平均值之间的差值是否小于预设阈值,其中,所述预设阈值与所述标准差的负数对应;

若判断出所述云存储服务提供商的信誉值和所述平均值之间的差值大于或者等于预设阈值,则确定所述云存储服务提供商为属于第二类的云存储服务提供商;

若判断出所述云存储服务提供商的信誉值和所述平均值之间的差值小于预设阈值,则确定所述云存储服务提供商为属于第三类的云存储服务提供商。

5.一种基于信誉的多云数据完整性损坏高效追责装置,其特征在于,包括:接收模块,用于接收针对多云存储系统的完整性审计请求,其中,所述多云存储系统包括多个云存储服务提供商;

获取模块,用于基于所述完整性审计请求,获取与所述多云存储系统对应的基于信誉的回溯树RB-BTT结构,其中,所述RB-BTT结构的叶子节点与所述多云存储系统中的云存储服务提供商的证明信息对应,所述RB-BTT结构从左到右的叶子节点是按照所述证明信息所对应的云存储服务提供商的信誉值从高到低排列的,所述证明信息包括数据块的聚合信息和标签的聚合信息;

判断模块,用于判断所述RB-BTT结构中根节点的证明信息是否通过数据完整性验证;

处理模块,用于如果所述根节点的证明信息未通过数据完整性验证,则从所述RB-BTT结构中找到数据完整性未通过验证的目标叶节点,并返回所述目标叶节点所对应的云存储服务提供商;

RB-BTT结构构建模块,用于获取所述多云存储系统中每个云存储服务提供商的信誉值,并根据每个云存储服务提供商的信誉值,计算信誉值的平均值和标准差,然后,分别计算每个云存储服务提供商的信誉值和所述平均值之间的差值,之后,根据所述标准差和每个云存储服务提供商的信誉值和所述平均值之间的差值,对所述云存储系统中的所有云存储服务提供商进行分类,以及针对每个分类,按照所述分类中的云存储服务提供商按照信誉值从小到大顺序依次排序,以获取所述分类中云存储服务提供商的排列顺序,然后,获取每个云存储服务提供商的证明信息,针对每个分类,按照所述分类中云存储服务提供商的排列顺序,将对应云存储服务提供商的证明信息依次排列,以及根据分类针对证明信息的排列结果,构建所述RB-BTT结构。

6.如权利要求5所述的装置,其特征在于,所述判断模块,具体用于:

根据所述根节点的证明信息,验证预先设置的双线性等式是否成立,其中,如果验证所述双线性等式不成立,则判断所述根节点的证明信息未通过数据验证性验证。

7.如权利要求5所述的装置,其特征在于,所述RB-BTT结构构建模块,具体用于:针对每个云存储服务提供商,判断所述云存储服务提供商的信誉值和所述平均值之间的差值是否超过所述标准差;

如果所述云存储服务提供商的信誉值和所述平均值之间的差值超过所述标准差,则确定所述云存储服务提供商为属于第一类的云存储服务提供商。

8.如权利要求7所述的装置,其特征在于,所述RB-BTT结构构建模块,还用于:如果所述云存储服务提供商的信誉值和所述平均值之间的差值未超过所述标准差,则进一步判断所述云存储服务提供商的信誉值和所述平均值之间的差值是否小于预设阈值,其中,所述预设阈值与所述标准差的负数对应;

若判断出所述云存储服务提供商的信誉值和所述平均值之间的差值大于或者等于预设阈值,则确定所述云存储服务提供商为属于第二类的云存储服务提供商;

若判断出所述云存储服务提供商的信誉值和所述平均值之间的差值小于预设阈值,则确定所述云存储服务提供商为属于第三类的云存储服务提供商。

说明书 :

基于信誉的多云数据完整性损坏高效追责方法及装置

技术领域

[0001] 本发明涉及计算机技术领域,特别涉及一种基于信誉的多云数据完整性损坏高效追责方法及装置。

背景技术

[0002] 云存储技术的不断发展和用户需求的多样性开启了多云存储服务的新时代。多云存储服务是由多个云存储服务提供商协同工作,共同为用户提供的数据云存储服务。相比
单云存储,多云存储可以满足用户的不同数据存储需求,因此具有更强的实际意义和更高
的应用价值。
[0003] 然而,在多云存储场景中,用户也需要将数据存放在云平台上,因此,数据同样面临完整性损坏的风险。为了确保存放在多云存储系统中数据的安全性和可用性,用户有必
要选择可靠性高的多云存储系统为自己提供数据存储服务。
[0004] 其中,影响一个云存储服务提供商可靠性的,通常有两个因素。其一是其所存储数据发生损坏的概率,其二是在云存储服务提供商上执行数据更新失败的概率。前者可以通
过对云存储服务提供商存储的数据进行多次完整性审计而得到,类似的,后者可以通过多
次动态更新验证而求得。
[0005] 相关技术中,提出了一种多云存储系统的数据持有性协作证明机制,实现了多云数据的完整性审计。其中,该机制在多云存储系统中设置了一个组织者,一方面,审计者将
挑战信息发送给组织者,通过组织者转发给对应的云存储服务提供商。另一方面,组织者收
集多云装置中每一个被挑战的云存储服务提供商返回的证明信息,聚合后发送给审计者进
行验证。通过这种方式,审计者可以有效地发现数据损坏。在此工作的基础上,相关技术中
还提出了一种基于身份的多云存储系统数据持有性证明机制。方案通过采用基于身份的公
钥密码体制,提高了安全性并且降低了审计方的开销。
[0006] 然而,这两个机制存在以下问题:首先,这些机制只能对静态数据实现完整性审计,而无法对多云存储中的动态更新数据进行验证;其次,他们对存储在多云装置中的数据
执行完整性审计,如果审计的结果是数据被正确地保存,则可以认为多云装置中的每一个
云都提供了一次正常的数据存储服务。然而,一旦审计结果显示数据的完整性被损坏,这些
机制无法找到是多云存储系统中的哪一个云存储服务提供商造成了数据损坏,无法实现追
责。这两个问题,造成了上述的多云数据完整性审计机制无法用于评价多云装置中云存储
服务提供商的可靠性。

发明内容

[0007] 本发明旨在至少在一定程度上解决上述技术问题。
[0008] 为此,本发明的第一个目的在于提出一种基于信誉的多云数据完整性损坏高效追责方法,该方法能够基于云存储服务提供商的信誉高效地找到造成数据损坏的一个或多个
云存储服务提供商,并将追责结果提供给用户,提高了多云数据完整性损坏追责的效率,有
效节省了审计方的开销,减少了用户等待追责结果的时间,提高了用户的体验度。
[0009] 本发明的第二个目的在于提出一种基于信誉的多云数据完整性损坏高效追责装置。
[0010] 本发明的第三个目的在于提出一种基于信誉的多云数据完整性损坏高效追责装置。
[0011] 本发明的第四个目的在于提出一种计算机可读存储介质。
[0012] 本发明的第五个目的在于提出一种计算机程序产品。
[0013] 为达上述目的,根据本发明第一方面实施例提出了一种基于信誉的多云数据完整性损坏高效追责方法,包括:接收针对多云存储系统的完整性审计请求,其中,所述多云存
储系统包括多个云存储服务提供商;基于所述完整性审计请求,获取与所述多云存储系统
对应的基于信誉的回溯树RB-BTT结构,其中,所述RB-BTT结构的叶子节点与所述多云存储
系统中的云存储服务提供商的证明信息对应,所述RB-BTT结构从左到右的叶子节点是按照
所述证明信息所对应的云存储服务提供商的信誉值从高到低排列的,所述证明信息包括数
据块的聚合信息和标签的聚合信息;判断所述RB-BTT结构中根节点的证明信息是否通过数
据完整性验证;如果判断出所述根节点的证明信息未通过数据完整性验证,则从所述RB-
BTT结构中找到数据完整性未通过验证的目标叶节点,并返回所述目标叶节点所对应的云
存储服务提供商。
[0014] 本发明实施例的基于信誉的多云数据完整性损坏高效追责方法,接收针对多云存储系统的完整性审计请求,并获取预先基于云存储服务提供商的信誉值所建立的RB-BTT结
构,然后,通过对RB-BTT结构中根节点的证明信息是否通过数据完整性验证,并在如果判断
出根节点的证明信息未通过数据完整性验证时,从RB-BTT结构中找到数据完整性未通过验
证的目标叶节点,并返回目标叶节点所对应的云存储服务提供商。由此,能够基于云存储服
务提供商的信誉高效地找到造成数据损坏的一个或多个云存储服务提供商,并将追责结果
提供给用户,提高了多云数据完整性损坏追责的效率,有效节省了审计方的开销,减少了用
户等待追责结果的时间,提高了用户的体验度。
[0015] 本发明第二方面实施例提出了一种基于信誉的多云数据完整性损坏高效追责装置,包括:接收模块,用于接收针对多云存储系统的完整性审计请求,其中,所述多云存储系统包括多个云存储服务提供商;获取模块,用于基于所述完整性审计请求,获取与所述多云
存储系统对应的基于信誉的回溯树RB-BTT结构,其中,所述RB-BTT结构的叶子节点与所述
多云存储系统中的云存储服务提供商的证明信息对应,所述RB-BTT结构从左到右的叶子节
点是按照所述证明信息所对应的云存储服务提供商的信誉值从高到低排列的,所述证明信
息包括数据块的聚合信息和标签的聚合信息;判断模块,用于判断所述RB-BTT结构中根节
点的证明信息是否通过数据完整性验证;处理模块,用于如果所述根节点的证明信息未通
过数据完整性验证,则从所述RB-BTT结构中找到数据完整性未通过验证的目标叶节点,并
返回所述目标叶节点所对应的云存储服务提供商。
[0016] 本发明实施例的基于信誉的多云数据完整性损坏高效追责装置,接收针对多云存储系统的完整性审计请求,并获取预先基于云存储服务提供商的信誉值所建立的RB-BTT结
构,然后,通过对RB-BTT结构中根节点的证明信息是否通过数据完整性验证,并在如果判断
出根节点的证明信息未通过数据完整性验证时,从RB-BTT结构中找到数据完整性未通过验
证的目标叶节点,并返回目标叶节点所对应的云存储服务提供商。由此,能够基于云存储服
务提供商的信誉高效地找到造成数据损坏的一个或多个云存储服务提供商,并将追责结果
提供给用户,提高了多云数据完整性损坏追责的效率,有效节省了审计方的开销,减少了用
户等待追责结果的时间,提高了用户的体验度。
[0017] 本发明第三方面实施例提出了一种基于信誉的多云数据完整性损坏高效追责装置,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行本发明第一方面实施例的基于信誉的多云数据完整性损坏高效追责方法。
[0018] 本发明第四方面实施例提出了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如本发明第一方面实施例的基于信誉的多云数据完整性
损坏高效追责方法。
[0019] 本发明第五方面实施例提出了一种计算机程序产品,当所述计算机程序产品中的指令处理器执行时,执行本发明第一方面实施例的基于信誉的多云数据完整性损坏高效追
责方法。
[0020] 本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

[0021] 本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
[0022] 图1为根据本发明一个实施例的基于信誉的多云数据完整性损坏高效追责方法的流程图;
[0023] 图2为构建RB-BTT结构的细化流程图;
[0024] 图3为基于信誉的多云数据完整性损坏追责系统的示例图;
[0025] 图4为包含聚合方式的RB-BTT结构的示例图;
[0026] 图5为根据本发明一个具体实施例的基于信誉的多云数据完整性损坏高效追责方法的流程图;
[0027] 图6为根据本发明一个实施例的基于信誉的多云数据完整性损坏高效追责装置的结构示意图。
[0028] 图7为根据本发明另一个实施例的基于信誉的多云数据完整性损坏高效追责装置的结构示意图;
[0029] 图8为根据本发明一个实施例的基于信誉的多云数据完整性损坏高效追责系统的结构示意图。

具体实施方式

[0030] 下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附
图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
[0031] 在本发明的描述中,需要理解的是,术语“多个”指两个或两个以上;术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
[0032] 下面参考附图描述根据本发明实施例的基于信誉的多云数据完整性损坏高效追责方法、装置和系统。
[0033] 图1为根据本发明一个实施例的基于信誉的多云数据完整性损坏高效追责方法的流程图。其中,需要说明的是,该实施例的方法位于基于信誉的多云数据完整性损坏高效追
责系统中。
[0034] 如图1所示,根据本发明实施例的基于信誉的多云数据完整性损坏高效追责方法包括以下步骤。
[0035] S11,接收针对多云存储系统的完整性审计请求。
[0036] 其中,多云存储系统包括多个云存储服务提供商。
[0037] 作为一种示例性的实施方式,在用户使用多云存储系统存储数据的过程中,用户可对自己所使用的多云存储系统进行完整性审计。具体而言,用户可向自己指定的完整性
审计结构发送针对多云存储系统的完整性审计请求。
[0038] S12,基于完整性审计请求,获取与多云存储系统对应的基于信誉的回溯树RB-BTT结构。
[0039] 作为一种示例性的实施方式,在接收到用户针对多云存储系统的完整性审计请求后,完整性审计机构可获取与多云存储系统对应的基于信誉的回溯树RB-BTT结构。其中,
RB-BTT结构的叶子节点与多云存储系统中的云存储服务提供商的证明信息对应,RB-BTT结
构从左到右的叶子节点是按照证明信息所对应的云存储服务提供商的信誉值从高到低排
列的。
[0040] 其中,证明信息包括数据块的聚合信息和标签的聚合信息。
[0041] 其中,需要说明的是,上述RB-BTT结构中的每个上层节点的数据块的聚合信息是由与上层节点所对应的下一层节点中的两个节点将对应数据块的聚合信息进行相加所得
到的,RB-BTT结构中的每个上层节点的标签的聚合信息是由与上层节点所对应的下一层节
点中的两个节点将对应的标签的聚合信息进行相乘所得到的。
[0042] 其中,数据块的聚合信息是指云存储服务提供商针对挑战信息,计算的被挑战数据块和对应随机数乘积的求和。
[0043] 标签的聚合信息是指云存储服务提供商针对挑战信息,计算的被挑战数据块的标签以对应随机数为指数形式的乘积。
[0044] 其中,需要理解的是,该实施例中的基于信誉的回溯树RB-BTT(Reputation Based Backtracking Tree)结构是根据多云存储系统中的每个云存储服务提供商的信誉值所预
先构建的。也就是说,在基于完整性审计请求,获取与多云存储系统对应的基于信誉的回溯
树RB-BTT结构之前,还可以根据多云存储系统中的每个云存储服务提供商的信誉值预先构
建RB-BTT结构。其中,需要说明的是,构建RB-BTT结构的过程将在后续描述中进行阐述。
[0045] S13,判断RB-BTT结构中根节点的证明信息是否通过数据完整性验证。
[0046] 在本发明的一个实施例中,在获取与多云存储系统对应的基于信誉的回溯树RB-BTT结构后,可根据根节点的证明信息,验证预先设置的双线性等式是否成立,也就是说,可验证根节点的证明信息是否能使预先设置的双线性等式是否成立。
[0047] 其中,如果验证双线性等式不成立,则判断根节点的证明信息未通过数据验证性验证。
[0048] 其中,需要理解的是,双线性等式是预先设置的可通过证明信息进行数据完整性验证的。
[0049] 作为一种示例性的实施方式,针对RB-BTT结构中的根节点{μr,σr},可验证验证双线性等式 是否成立。
[0050] 其中,上述g,u和v表示是完整性审计机构中设置的公开参数。假定G1和G2分别表示素数阶p的乘法循环群,u表示G1中随机取定的元素,g表示G2的生成元,v=gx,其中,x表示p的完全剩余类Zp中的随机元素。H(mi)表示由审计方向组织者请求而得,组织者按照现有的
多云存储动态更新验证机制,维护一个多云协作默克尔哈希树的结构,H(mi)为该多云协作
默克尔哈希树的叶节点,Ii表示多云存储系统中第i个云存储服务提供商对应挑战中的索
引信息。
[0051] 其中,需要说明的是,多云协作默克尔哈希树是组织者维护的支持多云数据动态更新验证的一种数据结构。其中,多云协作默克尔哈希树中子树的数量对应于多云存储系
统中云服务提供商的数量,每一个子树结构都是由对应的云存储服务提供商生成维护的一
个默克尔哈希树。
[0052] 其中,需要理解的是,如果根节点的证明信息能使预先设置的双线性等式成立,则确定用户的数据完整性在多云存储系统中没有被破坏。
[0053] S14,如果判断出根节点的证明信息未通过数据完整性验证,则从RB-BTT结构中找到数据完整性未通过验证的目标叶节点,并返回目标叶节点所对应的云存储服务提供商。
[0054] 作为一种示例性的实施方式,在确定根节点的证明信息未通过数据完整性验证时,可继续对RB-BTT结构中第二层中的节点进行数据完整性验证,并根据第二层中的节点
的验证结果继续进行查找,以查找到数据完整性未通过验证的目标叶节点,并返回目标叶
节点所对应的云存储服务提供商。
[0055] 其中,需要理解的是,目标叶节点所对应的云存储服务提供商即为造成用户数据完整性破坏的云存储服务提供商。
[0056] 本发明实施例的基于信誉的多云数据完整性损坏高效追责方法,接收针对多云存储系统的完整性审计请求,并获取预先基于云存储服务提供商的信誉值所建立的RB-BTT结
构,然后,通过对RB-BTT结构中根节点的证明信息是否通过数据完整性验证,并在如果判断
出根节点的证明信息未通过数据完整性验证时,从RB-BTT结构中找到数据完整性未通过验
证的目标叶节点,并返回目标叶节点所对应的云存储服务提供商。由此,能够基于云存储服
务提供商的信誉高效地找到造成数据损坏的一个或多个云存储服务提供商,并将追责结果
提供给用户,提高了多云数据完整性损坏追责的效率,有效节省了审计方的开销,减少了用
户等待追责结果的时间,提高了用户的体验度。
[0057] 作为一种示例性的实施方式,构建RB-BTT结构的过程,如图2所示,可以包括:
[0058] S21,获取多云存储系统中每个云存储服务提供商的信誉值。
[0059] S22,根据每个云存储服务提供商的信誉值,计算信誉值的平均值和标准差。
[0060] S23,分别计算每个云存储服务提供商的信誉值和平均值之间的差值。
[0061] S24,根据标准差和每个云存储服务提供商的信誉值和平均值之间的差值,对云存储系统中的所有云存储服务提供商进行分类。
[0062] 作为一种示例性的实施方式,在计算出每个云存储服务提供商的信誉值和平均值之间的差值之后,针对每个云存储服务提供商,可判断云存储服务提供商的信誉值和平均
值之间的差值是否超过标准差,如果云存储服务提供商的信誉值和平均值之间的差值超过
标准差,则确定云存储服务提供商为属于第一类的云存储服务提供商。
[0063] 另外,如果云存储服务提供商的信誉值和平均值之间的差值未超过标准差,则进一步判断云存储服务提供商的信誉值和平均值之间的差值是否小于预设阈值,其中,预设
阈值与标准差的负数对应。
[0064] 若判断出云存储服务提供商的信誉值和平均值之间的差值大于或者等于预设阈值,则确定云存储服务提供商为属于第二类的云存储服务提供商;若判断出云存储服务提
供商的信誉值和平均值之间的差值小于预设阈值,则确定云存储服务提供商为属于第三类
的云存储服务提供商。
[0065] 也就是说,该实施例中多云存储系统的组织者按照云存储服务提供商的信誉值与均值、标准差的关系,将它们分为三个类别,按照信誉评价的指标来看,在该多云存储系统
中,这三个类别的云存储服务提供商分别是信誉较好、信誉中等、信誉较差。这种分类相比
传统方式中对云存储服务提供商的不分类随机排列,使得三个集合的云存储服务提供商出
错的概率依次增大,并且每个集合包含的云存储服务提供商出错的概率也是依次增大。这
样就使得易出错的云存储系统无论在三个集合之间,还是在三个集合各自内部,都集中在
后半部分,为构造支持多云数据完整性损坏高效追责的结构打下基础。
[0066] 其中,需要说明的是,该实施例中所构造的RB-BTT结构,能够使得出错的云存储服务提供商以高概率集中在结构的右侧分支中。并且在每一个分支的内部,易出错的云也以
高概率集中在右侧部分。这样在后续追责的过程中,能够有效地减少用户验证的次数,提高
审计方的追责效率。
[0067] S25,针对每个分类,按照分类中的云存储服务提供商按照信誉值从小到大顺序依次排序,以获取分类中云存储服务提供商的排列顺序。
[0068] S26,获取每个云存储服务提供商的证明信息。
[0069] S27,针对每个分类,按照分类中云存储服务提供商的排列顺序,将对应云存储服务提供商的证明信息依次排列。
[0070] S28,根据分类针对证明信息的排列结果,构建RB-BTT结构。
[0071] 其中,需要理解的是,相对于按照云存储服务提供商的逻辑编号来排列叶节点的回溯树(BTT,Backtracking Tree)结构而言,该实施例通过采用云存储服务提供商的信誉
值来排列叶节点的RB-BTT结构,可大大降低后续基于该RB-BTT结构进行追责时的追责复杂
度,尤其可大大降低在云存储系统中同时保护多个云存储服务提供商存储的数据发生完整
性破坏时,追责的复杂度,由此,可减少追责过程中的开销。
[0072] 下面结合图3、图4和图5对该实施例的于信誉的多云数据完整性损坏高效追责方法的具体过程进行详细描述。
[0073] 其中,图3为基于信誉的多云数据完整性损坏追责系统的示例图;图4为包含聚合方式的RB-BTT结构的示例图;图5为根据本发明一个具体实施例的基于信誉的多云数据完
整性损坏高效追责方法的流程图。在该实施例中,假设用户的多云存储系统是由n个云存储
服务提供商组成的。
[0074] 如图5所示,根据本发明实施例的基于信誉的多云数据完整性损坏高效追责方法包括以下步骤。
[0075] S51,用户向完整性审计机构发送针对多云存储系统的完整性审计请求。
[0076] 在使用多云存储系统存储数据的过程中,用户可向自己指定的完整性审计机构发送完整性审计请求。具体而言,用户可通过自己使用的终端向自己指定的完整性审计机构
发送完整性审计请求。
[0077] 其中,终端可以包括但不限于计算机、手机、便携式设备等具有各种操作装置的硬件设备,该实施对终端不作限定。
[0078] S52,完整性审计机构向多云存储系统的组织者发送完整性审计挑战。
[0079] 具体而言,用户指定的完整性审计机构向用户在多云存储系统中的组织者发起完整性审计挑战
[0080] S53,组织者向信誉评估机构发送信誉值查询请求。
[0081] 对应地,组织者接收完整性审计机构发送的完整性审计挑战,并向信誉评估机构查询n个云存储服务提供商的信誉值。
[0082] 其中,需要说明的是,该实施例中的组织者为对多云存储系统进行管理的服务器。
[0083] S54,组织者接收信誉评估机构返回的n个云存储服务提供商的信誉值{Rep1,Rep2,…Repn}。
[0084] 其中,Repi表示第i个云存储服务提供商的信誉值,其中,i的取值为1、2、….n。
[0085] S55,组织者计算这n个云存储服务器提供商的信誉值的平均值和标准差。
[0086] 具体地,组织者接收到信誉评估机构返回的信誉值{Rep1,Rep2,…Repn}之后,计算这n个云存储服务器提供商的信誉值的均值为 和标准差
[0087] S56,组织者分别计算每个云存储服务提供商的信誉值和平均值之间的差值。
[0088] 具体地,组织者接下来计算每个云存储服务提供商的信誉值和平均值之间的差值ci=Repi-E。
[0089] S57,组织者根据标准差和每个云存储服务提供商的信誉值和平均值之间的差值,对云存储系统中的所有云存储服务提供商进行分类。
[0090] 具体而言,根据ci取值和S的大小关系,将对应的云存储服务提供商{CSP1,CSP2,…CSPn}分为三类:{CSPi}i∈I,{CSPj}j∈II和{CSPk}k∈III,在每一类中,云存储服务商按照信誉值从小到大依次排列。其中,对于第一类中包含的云存储服务商,有ci>S,i∈I;对于第二类中包含的云存储服务商,有-S≤cj
[0091] S58,针对每个分类,组织者按照分类中的云存储服务提供商按照信誉值从小到大顺序依次排序,以获取分类中云存储服务提供商的排列顺序。
[0092] S59,组织者获取每个云存储服务提供商的证明信息。
[0093] 具体地,组织者将挑战 分别转发给云存储系统中的n个对应的云存储服务提供商,对应的云存储服务提供商分别返回证明信息Pi={μi,σi},i∈[1,n]。
[0094] 其中,Pi表示第i个云存储服务提供商的证明信息,μi表示第i个云存储服务提供商的数据块的聚合信息,σi表示第i个云存储服务提供商的标签的聚合信息。
[0095] S60,组织者构建RB-BTT结构。
[0096] 在获取每个云存储服务提供商的证明信息后,针对每个分类,组织者按照分类中云存储服务提供商的排列顺序,将对应云存储服务提供商的证明信息依次排列,以及根据
分类针对证明信息的排列结果,构建RB-BTT结构。
[0097] 具体而言,按照以上划分的三类云存储服务提供商,将证明对应划分成三类。分别按照三个集合{CSPi}i∈I,{CSPj}j∈II和{CSPk}k∈III中云存储服务提供商的排列顺序,将它们对应的证明依次排列,作为RB-BTT的叶节点。将三类叶节点分别两两聚合,得到上层节点。
[0098] 例如,如图4所示,第二类中的云存储服务提供商返回的证明为PII-1={μII-1,σII-1},PII-2={μII-2,σII-2}和PII-3={μII-3,σII-3}。向上聚合的方法为μII-a=μII-1+μII-2,σII-a=σII-1·σII-2,μII-r=μII-a+μII-3,σII-r=σII-a·σII-3。将三个类别对应的子根节点按照图4所示的聚合方式进行聚合,得到RB-BTT的根节点{μr,σr}。
[0099] S61,组织者向完整性审计结构发送对RB-BTT结构的根节点。
[0100] S62,完整性审计结构对RB-BTT结构的根节点进行数据完整性验证,若验证通过,则向用户返回云存储系统中的数据没有被破坏的审计结果,若否,则请求RB-BTT结构的其
他节点,以获取数据完整性未通过验证的目标叶节点。
[0101] S63,完整性审计结构将目标叶节点所对应的云存储服务提供商提供给用户。
[0102] 具体而言,组织者将RB-BTT结构的根节点{μr,σr}返回给用户指定的完整性审计机构,作为对其挑战的回应。完整性审计机构接收到根节点之后,验证双线性等式
是否成立,其中,g和v表示是用户在传统完整性审计
机制中设置的公开参数,H(mi)是由审计方向组织者请求而得,组织者按照现有的多云存储
动态更新验证机制,维护一个多云协作默克尔哈希树的结构,H(mi)为该多云协作默克尔哈
希树的叶节点。如果验证通过,则可确认用户的数据完整性在多云存储系统中没有被破坏。
反之,完整性审计机构向组织者请求RB-BTT中的第二层节点继续验证,以找到数据完整性
未通过验证的目标叶节点,并将目标叶节点所对应的云存储服务提供商提供给用户。例如,
如图4所示,RB-BTT结构的根节点验证失败以后,在完整性审计机构请求之下,组织者返回
RB-BTT的第二层节点{μI-r,σI-r}和{μa,σa},分别验证
和 是否成立,发现前者成立,而后者不成
立。因此,继续请求后者的下层节点进行验证,直到找到验证不通过的目标叶节点{μIII-1,σIII-1}和{μIII-2,σIII-2},目标叶节点对应的云存储服务提供商即为造成用户数据完整性损坏的云存储服务提供商。
[0103] 本发明实施例的基于信誉的多云数据完整性损坏高效追责方法,接收针对多云存储系统的完整性审计请求,并获取预先基于云存储服务提供商的信誉值所建立的RB-BTT结
构,然后,通过对RB-BTT结构中根节点的证明信息是否通过数据完整性验证,并在如果判断
出根节点的证明信息未通过数据完整性验证时,从RB-BTT结构中找到数据完整性未通过验
证的目标叶节点,并返回目标叶节点所对应的云存储服务提供商。由此,能够基于云存储服
务提供商的信誉高效地找到造成数据损坏的一个或多个云存储服务提供商,并将追责结果
提供给用户,提高了多云数据完整性损坏追责的效率,有效节省了审计方的开销,减少了用
户等待追责结果的时间,提高了用户的体验度。
[0104] 为了实现上述实施例,本发明还提出一种基于信誉的多云数据完整性损坏高效追责装置。
[0105] 图6为根据本发明一个实施例的基于信誉的多云数据完整性损坏高效追责装置的结构示意图。其中,需要理解的是,该装置位于基于信誉的多云数据完整性损坏高效追责系
统中。
[0106] 如图6所示,根据本发明实施例的基于信誉的多云数据完整性损坏高效追责装置包括接收模块110、获取模块120、判断模块130和处理模块140,其中:
[0107] 接收模块110用于接收针对多云存储系统的完整性审计请求。
[0108] 其中,多云存储系统包括多个云存储服务提供商。
[0109] 获取模块120用于基于完整性审计请求,获取与多云存储系统对应的基于信誉的回溯树RB-BTT结构。
[0110] 其中,RB-BTT结构的叶子节点与多云存储系统中的云存储服务提供商的证明信息对应,RB-BTT结构从左到右的叶子节点是按照证明信息所对应的云存储服务提供商的信誉
值从高到低排列的,证明信息包括数据块的聚合信息和标签的聚合信息,RB-BTT结构中的
每个上层节点的数据块的聚合信息是由与上层节点所对应的下一层节点中的两个节点将
对应数据块的聚合信息进行相加所得到的,RB-BTT结构中的每个上层节点的标签的聚合信
息是由与上层节点所对应的下一层节点中的两个节点将对应的标签的聚合信息进行相乘
所得到的。
[0111] 判断模块130用于判断RB-BTT结构中根节点的证明信息是否通过数据完整性验证。
[0112] 处理模块140用于如果根节点的证明信息未通过数据完整性验证,则从RB-BTT结构中找到数据完整性未通过验证的目标叶节点,并返回目标叶节点所对应的云存储服务提
供商。
[0113] 在本发明的一个实施例中,判断模块具体用于:根据根节点的证明信息,验证预先设置的双线性等式是否成立,其中,如果验证双线性等式不成立,则判断出根节点的证明信
息未通过数据验证性验证。
[0114] 在本发明的一个实施例中,在图6所示的基础上,如图7所示,该装置还可以包括RB-BTT结构构建模块150,其中:
[0115] RB-BTT结构构建模块150用于获取多云存储系统中每个云存储服务提供商的信誉值,并根据每个云存储服务提供商的信誉值,计算信誉值的平均值和标准差,然后,分别计
算每个云存储服务提供商的信誉值和平均值之间的差值,之后,根据标准差和每个云存储
服务提供商的信誉值和平均值之间的差值,对云存储系统中的所有云存储服务提供商进行
分类,以及针对每个分类,按照分类中的云存储服务提供商按照信誉值从小到大顺序依次
排序,以获取分类中云存储服务提供商的排列顺序,然后,获取每个云存储服务提供商的证
明信息,针对每个分类,按照分类中云存储服务提供商的排列顺序,将对应云存储服务提供
商的证明信息依次排列,以及根据分类针对证明信息的排列结果,构建RB-BTT结构。
[0116] 在本发明的一个实施例中,RB-BTT结构构建模块150具体用于:针对每个云存储服务提供商,判断云存储服务提供商的信誉值和平均值之间的差值是否超过标准差;如果云
存储服务提供商的信誉值和平均值之间的差值超过标准差,则确定云存储服务提供商为属
于第一类的云存储服务提供商;
[0117] 在本发明的一个实施例中,RB-BTT结构构建模块150还用于:如果云存储服务提供商的信誉值和平均值之间的差值未超过标准差,则进一步判断云存储服务提供商的信誉值
和平均值之间的差值是否小于预设阈值,其中,预设阈值与标准差的负数对应;若判断出云
存储服务提供商的信誉值和平均值之间的差值大于或者等于预设阈值,则确定云存储服务
提供商为属于第二类的云存储服务提供商;若判断出云存储服务提供商的信誉值和平均值
之间的差值小于预设阈值,则确定云存储服务提供商为属于第三类的云存储服务提供商。
[0118] 其中,需要说明的是,前述基于信誉的多云数据完整性损坏高效追责方法实施的解释说明也适用于该实施例的基于信誉的多云数据完整性损坏高效追责装置,其实现原理
类似,此处不再赘述。
[0119] 本发明实施例的基于信誉的多云数据完整性损坏高效追责装置,接收针对多云存储系统的完整性审计请求,并获取预先基于云存储服务提供商的信誉值所建立的RB-BTT结
构,然后,通过对RB-BTT结构中根节点的证明信息是否通过数据完整性验证,并在如果判断
出根节点的证明信息未通过数据完整性验证时,从RB-BTT结构中找到数据完整性未通过验
证的目标叶节点,并返回目标叶节点所对应的云存储服务提供商。由此,能够基于云存储服
务提供商的信誉高效地找到造成数据损坏的一个或多个云存储服务提供商,并将追责结果
提供给用户,提高了多云数据完整性损坏追责的效率,有效节省了审计方的开销,减少了用
户等待追责结果的时间,提高了用户的体验度。
[0120] 其中,图8为本发明的一个实施例基于信誉的多云数据完整性损坏高效追责系统的结构示意图,如图8所示,该系统可以包括完整性审计机构、多云存储系统和信誉评估机
构三大部分组成。
[0121] 其中,完整性审计机构负责发起挑战和验证组织者返回的证明信息;
[0122] 多云存储系统中包含组织者和云存储服务提供商,其中,组织者负责查询组成用户多云存储系统的云存储服务提供商的信誉值、根据信誉值和本说明书以上所表述方法对
云存储服务提供商进行分类,将审计者的挑战分类转发到对应的云存储服务提供商,以及
建立RB-BTT树型结构。云存储服务提供商负责根据接收到的挑战产生证明并返回给组织
者;信誉评估机构负责维护和更新云存储服务提供商的信誉值。
[0123] 如图8所示,完整性审计机构主要由挑战产生模块和证明验证模块两个模块组成,多云存储系统中的组织者主要由信誉查询模块、分类模块和RB-BTT生成模块三个模块组
成,多云存储系统中的云存储服务提供商主要包含证明产生模块,信誉评估机构主要包含
信誉维护模块。
[0124] 各个功能模块的具体功能介绍如下:
[0125] 1、挑战产生模块
[0126] 用户委托完整性审计机构对其存放在多云存储中的数据进行完整性审计之时,由完整性审计机构产生挑战,挑战包含n个标签-随机数集合,(n为用户多云存储系统中包含
的云存储服务提供商的数量)。挑战生成以后,由完整性审计机构发送给用户在其多云存储
系统中指定的组织者。
[0127] 2、证明验证模块
[0128] 完整性审计机构在接收到多云存储系统中的组织者返回的证明之后,使用该模块验证证明的正确性。如果验证结果是通过,则将结果反馈给用户;反之,如果证明验证不通
过,则通知组织者继续发送RB-BTT结构的下一层节点包含的证明信息进行验证,直到验证
到RB-BTT的叶节点,找到出错的云存储服务提供商,并将追责结果反馈给用户。
[0129] 3、信誉查询模块
[0130] 组织者通过接收到完整性审计挑战以后,根据该模块,向信誉评估机构查询挑战中包含的云存储服务提供商的信誉值,并保存查询的结果。
[0131] 4、分类模块
[0132] 组织者通过该模块计算信誉值的均值、标准差,以及每一个云存储服务提供商的信誉值和标准差的差值,根据计算结果,将对应的云存储服务提供商进行分类。
[0133] 5、RB-BTT生成模块
[0134] 组织者将挑战信息转发给对应的云存储服务提供商,并接收它们返回的证明信息。通过该模块,将以上分类的云存储服务提供商的证明信息按次序排列,作为RB-BTT的叶
节点,并按类别两两向上聚合。得到每个类别的子根后,再向上层聚合,得到RB-BTT的根。
[0135] 6、证明产生模块
[0136] 多云存储系统中的每一个云存储服务提供商接收到其对应的挑战信息以后,通过此模块,分别聚合其存储的数据块信息和标签信息,作为证明返回给组织者。
[0137] 7、信誉维护模块
[0138] 信誉评估机构负责响应多云存储系统中组织者的信誉查询,并且负责管理云存储服务提供者的信誉值更新工作。
[0139] 为实现上述实施例,本发明还提出了一种基于信誉的多云数据完整性损坏高效追责装置,该基于信誉的多云数据完整性损坏高效追责装置包括:处理器;用于存储处理器可
执行指令的存储器;其中,处理器被配置为执行上述实施例的基于信誉的多云数据完整性
损坏高效追责方法。
[0140] 为实现上述实施例,本发明还提出了一种计算机可读存储介质,其上存储有计算机程序,程序被处理器执行时实现上述实施例的基于信誉的多云数据完整性损坏高效追责
方法。
[0141] 为实现上述实施例,本发明还提出了一种计算机程序产品,当计算机程序产品中的指令处理器执行时,执行上述实施例的基于信誉的多云数据完整性损坏高效追责方法。
[0142] 在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任
一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技
术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结
合和组合。
[0143] 此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
[0144] 流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部
分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺
序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明
的实施例所属技术领域的技术人员所理解。
[0145] 在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供
指令执行装置、装置或设备(如基于计算机的装置、包括处理器的装置或其他可以从指令执
行装置、装置或设备取指令并执行指令的装置)使用,或结合这些指令执行装置、装置或设
备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行装置、装置或设备或结合这些指令执行装置、装置或设备而使用的装
置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电
连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器
(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存
储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的
介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其
他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
[0146] 应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行装置执行的软件
或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下
列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路
的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场
可编程门阵列(FPGA)等。
[0147] 本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介
质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0148] 此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模
块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如
果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机
可读取存储介质中。
[0149] 上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限
制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变
型。