云系统中组合服务的恶意服务提供者的查找方法和装置的制造方法

文档序号:10555569阅读:468来源:国知局
云系统中组合服务的恶意服务提供者的查找方法和装置的制造方法
【专利摘要】本发明涉及一种云系统中组合服务的恶意服务提供者的查找方法和装置,包括:对功能相同的多个服务提供者输入原始数据,以使多个服务提供者返回数据处理结果;接收多个服务提供者的数据处理结果,比较多个服务提供者的数据处理结果,得到多个服务提供者的功能一致性关系和功能不一致性关系;根据多个服务提供者的功能一致性关系和功能不一致性关系,确定恶意服务提供者。本发明实施例提供的技术方案,可以有效揭露攻击者,从而找到恶意服务提供者,即使恶意服务提供者成为大多数,也可以有效地查明攻击者,还可以抑制合伙攻击和限制攻击损害的范围,并且不需要任何特殊的硬件或安全内核的支持,对大型云系统来说比较实用。
【专利说明】
云系统中组合服务的恶意服务提供者的查找方法和装置
技术领域
[0001]本发明涉及计算机安全技术领域,尤其涉及一种云系统中组合服务的恶意服务提供者的查找方法和装置。
【背景技术】
[0002]云计算已经成为一个具有成本效益的资源租赁模式,这种模式省却了用户靠自己维护复杂的物理计算基础设施的需要。软件即服务(SaaS)云系统(例如,亚马逊网络服务(AWS)和谷歌AppEngine)建立在软件作为一个服务和面向服务的架构(SOA)的概念上,这使得应用服务提供者能够通过大量的云计算基础设施实现他们的应用程序。我们的工作主要集中在数据流处理服务上。
[0003]然而,云计算基础设施往往会被服务提供者共享,这使他们容易受到恶意攻击。例如,攻击者可以冒充合法服务供应商提供虚假服务组件,导致用户收到不真实的数据处理。虽然以往的研究对保密性和隐私保护问题进行了广泛的研究,但是服务数据完整性认证问题一直没有得到很好的解决。
[0004]现有研究工作提供了各种软件完整性认证方案,这些技术通常需要特殊的硬件或安全内核的支持,这使得他们很难被部署在大型云计算基础设施上。传统的拜占庭容错(BFT)技术可以使用多数投票(Ftmv)的方法检测恶意行为,但是这会给云系统带来很高的开销。传统的多数表决方案需要假定可信服务供应商在每一项服务功能中占多数。然而,在大型多租户云系统中,多个恶意攻击者可能会在某些特定的服务功能中实行合伙攻击。因此,当存在多数恶意攻击者时,采用多数投票的方法检测恶意行为并不能准确查明攻击者。

【发明内容】

[0005]本发明所要解决的技术问题如何准确检测出恶意服务提供者,保证数据完整性。
[0006]为此目的,本发明提出了一种云系统中组合服务的恶意服务提供者的查找方法,包括:
[0007]对功能相同的多个服务提供者输入原始数据,以使多个服务提供者返回数据处理结果;
[0008]接收所述多个服务提供者的数据处理结果,比较所述多个服务提供者的数据处理结果,得到所述多个服务提供者的功能一致性关系和功能不一致性关系;
[0009]根据所述多个服务提供者的功能一致性关系和功能不一致性关系,确定恶意服务提供者。
[0010]优选的,所述比较所述多个服务提供者的数据处理结果,得到所述多个服务提供者的功能一致性关系和功能不一致性关系,具体包括:
[0011 ]比较所述多个服务提供者的数据处理结果,数据处理结果的差异在预设范围内的服务提供者为功能一致性关系,数据处理结果的差异超出所述预设范围的服务提供者为功能不一致性关系,得到所述多个服务提供者的功能一致性关系和功能不一致性关系;
[0012]其中,数据处理结果的差异超出所述预设范围的服务提供者中至少存在一个恶意服务提供者。
[0013]优选的,所述根据所述多个服务提供者的功能一致性关系和功能不一致性关系,确定恶意服务提供者,具体包括:
[0014]根据所述多个服务提供者的功能一致性关系,建立一致性关系图,确定可疑服务提供者,其中,所述可疑服务提供者为数据处理结果相同的服务提供者,且所述可疑服务提供者的数量小于N/2,N为所述多个服务提供者的总数;
[0015]根据所述多个服务提供者的功能不一致性关系,建立全局不一致关系图,当且仅当I Ne I + IRI >]\1时,确定当前服务提供者是恶意服务提供者;
[0016]其中,Ne是与当前服务提供者邻接的服务提供者的数目,R是移除了当前服务提供者和与其邻接的服务提供者后的剩余服务提供者的不一致关系图的最小顶点覆盖数,M为所述恶意服务提供者的数量的上限。
[0017]根据所述一致性关系图得到的可疑服务提供者和所述全局不一致关系图得到的恶意服务提供者,确定所有的恶意服务提供者。
[0018]优选的,所述恶意服务提供者的数量的上限M通过多次迭代得到,其中,M的下限为所述全局不一致关系图的最小顶点覆盖数,M的上限为N/2,N为所述多个服务提供者的总数。
[0019]优选的,所述根据所述一致性关系图得到的可疑服务提供者和所述全局不一致关系图得到的恶意服务提供者,确定所有的恶意服务提供者,包括:
[0020]若根据所述一致性关系图得到的可疑服务提供者与根据所述全局不一致关系图得到的恶意服务提供者存在重叠,则所有的所述可疑服务提供者均为恶意服务提供者。[0021 ]优选的,在确定所述恶意服务提供之后还包括:
[0022]若存在恶意服务提供者,用可信服务提供者返回的数据处理结果代替恶意服务提供者的数据处理结果。
[0023]另一方面,本发明还提供了一种云系统中组合服务的恶意服务提供者的查找系统,包括:
[0024]数据输入单元,用于对功能相同的多个服务提供者输入原始数据,以使多个服务提供者返回数据处理结果;
[0025]结果比较单元,用于接收所述多个服务提供者的数据处理结果,比较所述多个服务提供者的数据处理结果,得到所述多个服务提供者的功能一致性关系和功能不一致性关系;
[0026]判定单元,用于根据所述多个服务提供者的功能一致性关系和功能不一致性关系,确定恶意服务提供者。
[0027]优选的,所述数据处理结果的差异在预设范围内的服务提供者为功能一致性关系,数据处理结果的差异超出所述预设范围的服务提供者为功能不一致性关系;
[0028]其中,数据处理结果的差异超出所述预设范围的服务提供者中至少存在一个恶意服务提供者。
[0029]优选的,判定单元包括:
[0030]可疑判定单元,用于根据所述多个服务提供者的功能一致性关系,建立一致性关系图,确定可疑服务提供者,其中,所述可疑服务提供者为数据处理结果相同的服务提供者,且所述可疑服务提供者的数量小于N/2,N为所述多个服务提供者的总数;
[0031 ]恶意判定单元,用于根据所述多个服务提供者的功能不一致性关系,建立全局不一致关系图,当且仅当I Ne I + IR11时,确定当前服务提供者是恶意服务提供者;
[0032]其中,Ne是与当前服务提供者邻接的服务提供者的数目,R是移除了当前服务提供者和与其邻接的服务提供者后的剩余服务提供者的不一致关系图的最小顶点覆盖数,M为所述恶意服务提供者的数量的上限。
[0033]确定单元,用于根据所述一致性关系图得到的可疑服务提供者和所述全局不一致关系图得到的恶意服务提供者,确定所有的恶意服务提供者。
[0034]优选的,所述恶意服务提供者的数量的上限M通过多次迭代得到,其中,M的下限为所述全局不一致关系图的最小顶点覆盖数,M的上限为N/2,N为所述多个服务提供者的总数。
[0035]本发明实施例提供的云系统中组合服务的恶意服务提供者的查找方法和装置,通过比较功能相同的多个服务提供者的数据处理结果,根据数据处理结果确定多个服务提供者的功能一致性关系和功能不一致性关系,通过对功能一致性关系和功能不一致性关系的分析,从而确定恶意服务提供者,通过每个功能的一致性关系分析可以限制攻击者,通过全局不一致性关系分析,可以有效揭露攻击者,从而找到恶意攻击者,即使恶意攻击者成为大多数,本发明实施例提供的技术方案,也可以有效地查明攻击者,还可以抑制合伙攻击和限制攻击损害的范围,并且不需要任何特殊的硬件或安全内核的支持,对大型云系统来说比较实用。
【附图说明】
[0036]通过参考附图会更加清楚的理解本发明的特征和优点,附图是示意性的而不应理解为对本发明进行任何限制,在附图中:
[0037]图1为本发明实施例提供的云系统中组合服务的恶意服务提供者的查找方法的流程不意图;
[0038]图2为本发明实施例提供的一致性关系示意图;
[0039]图3为本发明实施例提供的全局不一致关系示意图;
[0040]图4为本发明实施例提供的剩余节点的不一致关系示意图;
[0041 ]图5为本发明实施例提供的数据认证路径示意图;
[0042]图6为本发明实施例提供的云系统中组合服务的恶意服务提供者的查找装置的结构示意图。
【具体实施方式】
[0043]下面将结合附图对本发明的实施例进行详细描述。
[0044]首先,需要说明的是,3&33(30;^¥3代-38-3-361^;^6,软件即服务的简称),随着互联网技术的发展和应用软件的成熟,在21世纪开始兴起的一种完全创新的软件应用模式,SaaS云基础软件的概念作为一种服务和面向服务的架构,允许应用程序服务提供者通过大规模云计算基础设施提供他们的应用程序,例如,亚马逊网络服务和谷歌AppEngine都提供一套支持企业级应用和大数据处理的应用服务。每个服务组件提供特定数据处理功能,例如,排序、过滤、关联或数据挖掘。每个服务组件可以有一个或多个输入端口,d表示一个或多个输出端口发出的数据。
[0045]在大型的SaaS云中,相同的服务功能可以由不同服务提供者提供,这些功能上等价的服务组件之所以存在,是因为(I)服务提供者可以创建相同的服务组件以达到负载平衡和容错的目的;(2)为了支持服务的自动组合,我们可以部署一个门户网站,作为用户访问SaaS云服务的网关。根据用户的要求,门户节点可以聚合不同服务组件从而成为复合服务。对于安全保护而言,门户节点可以进行用户的认证,以防止恶意行为。不同于其他开放的分布式系统,例如对等网络环境,SaaS云系统拥有一套独特的功能。首先,为了保护知识产权,第三方服务提供者通常不想透露他们对软件服务的内部实现的详细信息。其次,无论是云基础设施提供商还是第三方服务供应商,把任何特殊的硬件或安全内核的模块强加给服务是不切实际的。第三,对于隐私保护而言,只有门户节点具有关于服务提供者通过SaaS云提供服务的全局信息。云用户和其他服务提供者都没有关于SaaS云的全局信息。
[0046]本发明实施例提供的云系统中组合服务的恶意服务提供者的查找方法,即组合服务的数据完整性认证CSIT的目标是帮助SaaS云系统查明任何一个恶意服务提供者。CSIT把所有服务组件作为黑盒对待,它不需要云平台上的任何特殊的硬件或安全内核支持。
[0047]恶意攻击者可以伪装成一个合法的服务提供者提供不真实的服务功能。查找方案需要(I)有一定隐蔽性,以防攻击者获取到正确的数据,否则将使攻击者很容易避开检测;
(2)查找方案能够扩展,以便同时捕捉不可预知和偶然的恶意行为。
[0048]在大规模云计算系统中,需要考虑相勾结的攻击场景,多个恶意攻击者相互勾结或多个服务网点同时被一个恶意攻击者损害或控制。攻击者可能偶尔相勾结,这意味着攻击者可以和其同谋者在任何时间相勾结。假设除了那些与他们直接交流的恶意节点它们不认识其他的节点,然而,攻击者可以以任何方式与其共谋者进行通信。攻击者还可以任意改变自己的进攻和勾结的策略。
[0049]首先假设恶意服务组件的总数小于整个云系统内可信组件总数,如果没有这个假设,那将是非常困难的,但也不是完全不可能。第二,假定输入的是确定性数据处理服务,即对于相同的输入,可信的服务组件总是产生相同或相近(基于用户定义的相似度函数)的输出。第三,假设结果的不一致不是由于硬件或软件故障引起的,这不属于恶意攻击。
[0050]为了检测组合服务的数据完整性,查明恶意服务提供者,如图1所示,本发明实施例提供了一种云系统中组合服务的恶意服务提供者的查找方法,该方法包括:
[0051]S1:对功能相同的多个服务提供者输入原始数据,以使多个服务提供者返回数据处理结果;
[0052]本发明实施例提供的技术方案以云系统中组合服务的恶意服务提者的查找装置为执行主体。
[0053]S2:接收所述多个服务提供者的数据处理结果,比较所述多个服务提供者的数据处理结果,得到所述多个服务提供者的功能一致性关系和功能不一致性关系;
[0054]具体的,本发明实施例通过基于数据处理结果的一致性检查,以获得服务提供者之间的一致和不一致关系。举例来说,为了证明三个服务提供者C1XdPC3提供相同的服务功能A1,门户网站将原始输入的数据d发送到C1并返回结果CU,接下来,门户网站发送d的拷贝(1’至&并返回结果d2。门户网站然后比较(11和(12看(:1和(:2是否一致。
[0055]S3:根据所述多个服务提供者的功能一致性关系和功能不一致性关系,确定恶意服务提供者。
[0056]具体的,如果两个服务提供者对同一输入的数据处理结果不同,则至少一方是恶意的。我们不同时发送数据(即认证数据)。进一步的,在收到原始数据的处理结果后,重新让不同的服务提供者去认证。这样,恶意攻击对原始数据产生的错误结果,不可避免的被发现,但是重播方案可能会导致单个元组处理的延迟。
[0057]本发明实施例提供的云系统中组合服务的恶意服务提供者的查找方法,通过比较功能相同的多个服务提供者的数据处理结果,根据数据处理结果确定多个服务提供者的功能一致性关系和功能不一致性关系,通过对功能一致性关系和功能不一致性关系的分析,从而确定恶意服务提供者,通过每个功能的一致性关系分析可以限制攻击者,通过全局不一致性关系分析,可以有效揭露攻击者,从而找到恶意攻击者,即使恶意攻击者成为大多数,本发明实施例提供的技术方案,也可以有效地查明攻击者,还可以抑制合伙攻击和限制攻击损害的范围,并且不需要任何特殊的硬件或安全内核的支持,对大型云系统来说比较实用。
[0058]在上述实施例的基础上,优选的,步骤S2中比较所述多个服务提供者的数据处理结果,得到所述多个服务提供者的功能一致性关系和功能不一致性关系,具体包括:
[0059]比较所述多个服务提供者的数据处理结果,数据处理结果的差异在预设范围内的服务提供者为功能一致性关系,数据处理结果的差异超出所述预设范围的服务提供者为功能不一致性关系,得到所述多个服务提供者的功能一致性关系和功能不一致性关系;
[0060]其中,数据处理结果的差异超出所述预设范围的服务提供者中至少存在一个恶意服务提供者。
[0061]具体的,如果两个服务提供者总是对所有输入数据得出一致的输出结果,则它们之间存在一致性的关系,否则,它们之间是不一致的关系。两个可信的服务提供者可能会产生类似但不完全相同的结果。例如,当从不同信用机构获取同一个人的信用评分,可能会发生小的差异。我们允许用户定义一个距离函数来确定最大可容忍的差异。
[0062]对查找方案的扩展性而言,以便同时捕捉不可预知和偶然的恶意行为,采用随机概率认证技术,这项认证技术是随机重播认证输入数据技术的一个子集,对复合数据流而言,处理服务由多个服务跃点组成,每个服务跃点是由一组功能等同的服务提供者组成。举例来说,对于一个输入元组d,门户网站可决定以一定概率执行数据完整性认证。如果门户网站决定执行d认证,门户网站首先根据功能A1-A2-A3发送d到预先定义的服务路SC1-C2-C3。接收到d的处理结果后,门户网站在路径C4-C5-C6重播(LCdPC4提供相同的功能^。门户网站可能对多个服务提供者的并行认证来执行数据回放。
[0063]在接收到数据处理结果后,门户网站成对的比较功能上等价的服务提供者CjPC4之间的每个中间结果。如果CdPC4在同样的输入数据的情况下产生不同的输出结果,我们称CdPC4不一致,否则我们称CdPC4在功能方面一致。例如,我们考虑两个不同的信用评分服务供应商C4PC4。假设距离函数被定义为两个信用评分差异不超过10。对同一个人来说,如果(^输出为500,C4输出为505,我们说CdPC4是一致的。但是,如果C1输出为500,C4输出为550,我们就说CjPC4是不一致的。我们在功能等价提供服务之间评价中间和最终的处理结果,得到一致或不一致的结果。例如,如果数据处理涉及到数据库的查询,我们会评估两个最终的数据处理结果与中间的子查询结果。尽管我们不同时认证所有服务提供者,但是所有的服务提供者将在一段时间得到一个随机概率认证。
[0064]在上述实施例的基础上,优选的,步骤S3中根据所述多个服务提供者的功能一致性关系和功能不一致性关系,确定恶意服务提供者,具体包括:
[0065]S301:根据所述多个服务提供者的功能一致性关系,建立一致性关系图,确定可疑服务提供者,其中,所述可疑服务提供者为数据处理结果相同的服务提供者,且所述可疑服务提供者的数量小于N/2,N为所述多个服务提供者的总数;
[0066]S302:根据所述多个服务提供者的功能不一致性关系,建立全局不一致关系图,当且仅当I Ne I + IR11时,确定当前服务提供者是恶意服务提供者;
[0067]其中,Ne是与当前服务提供者邻接的服务提供者的数目,R是移除了当前服务提供者和与其邻接的服务提供者后的剩余服务提供者的不一致关系图的最小顶点覆盖数,M为所述恶意服务提供者的数量的上限。
[0068]S303:根据所述一致性关系图得到的可疑服务提供者和所述全局不一致关系图得到的恶意服务提供者,确定所有的恶意服务提供者。
[0069]具体的,测试功能相同的服务提供者,得到他们的一致和不一致的关系,根据一致和不一致关系,画出一致性关系图和全局不一致关系图,该图反映在一段时间跨越多个服务提供者的一致性或不一致性关系。一致性连接存在于两个服务之间,即这两个服务的数据处理结果相同。然后为每个功能构建一致性关系图去获得提供相同功能的服务提供者之间的一致性关系,如图2所示,为一致性关系图,如果服务提供者的数据处理结果一致,则他们之间有边连接,阴影部分的服务提供者为可疑服务提供者。
[0070]在建立了一致性关系图后,首先检查每个功能的一致性关系图,以查明可疑的服务提供者。每个函数的一致性关系图中的一致性连接可以告诉我们哪一组的服务提供者与特定的服务功能保持相互一致。对于任何服务功能而言,可信的服务提供者将始终保持相互一致,就一致性相关连接而言,可信的服务提供者将会形成一个小集团。例如,在图2中C1、C#PC3是可信的服务提供者,他们总是形成一个一致性的小集团。如果我们假设可信的服务供应商数目大于恶意的服务供应商,那么可信节点将大于N/2,其中N是服务供应商的总数,下述用节点代替服务提供商。因此,我们可以通过识别那些节点集团小于N/2的节点来识别可疑节点。例如,在图2中,CjPC5被确定为可疑节点,因为他们的节点集团小于3。
[0071]然而,攻击者可以相互勾结以躲避被发现。仅检查每个功能一致性关系图有不足之处。我们需要整合一致性关系图分析与全局不一致关系图分析,实现更稳健的认证。如图3所示,展示了一个全局不一致关系图,利用全局不一致关系图,来反映所有服务提供者的不一致关系,只要它们在任一功能上被认为是不一致的,则这两个服务提供者就被认为是不一致的,它们之间有边连接,可以通过组合服务获得更全面的矛盾关系。服务提供者(:5提供功能A1和功能A2X5是不一致的单一节点。其中,门户节点负责构建和维护每个功能的一致性关系图和全局不一致关系图。每次门户网站接收到认证结果时它都更新其计数器。
[0072]在建立了全局不一致性关系图后,分析不一致性关系图,假设整个系统中的恶意服务提供者的总数不超过M,我们就可以找出真正的恶意服务提供者的一个子集。通过两个服务提供者之间不一致连接,我们可以说它们中的至少一个是恶意的,因为任何两个可信服务提供者应该总是彼此一致的。可信服务提供者与恶性服务提供者提供不同的功能,在全局不一致关系图中他们将被连接,因为他们参与所有不一致的连接。因此,通过检查不一致关系图的最小顶点覆盖数,我们就可以得到恶意服务提供者的最小数目。不一致关系图的最小顶点覆盖是该图的最小顶点集,以图3为例,C4和C5形成了一个最小顶点的覆盖。由于给定全局不一致关系图,恶意服务提供者的数量不小于该全局不一致关系图的最小定点覆盖数,并且,一个服务一定是恶意节点当且仅当I Ne I + I R I >M。其中,Ne是该服务的邻接节点的数目,R是移除了该服务与其邻接节点后剩余节点的不一致关系图的最小顶点覆盖数,M为给定恶意服务提供商数量的上限。举例来说,以图3为例,假设恶意服务供应商数目不超过两个。首先检查一下可疑节点C4。在我们从全局不一致关系图中移除节点C4和与它相邻的节点C1XdPC3之后,剩余节点的不一致关系图为如图4所示,其最小顶点覆盖是I个。根据C4的二个相邻节点,我们得出3+1 >2。这样C4就是恶意的节点。现在让我们看看可彳目节点Cl。在移除&和他的相邻节点C4和(:5后,剩余节点的不一致关系图将成为一个没有任何连接的图并且他的最小顶点覆盖是O个。因为C1有两个相邻节点,2+0不大于2,所以不能得出C1是恶意节点。
[0073]优选的,恶意服务提供者的数量的上限M通过多次迭代得到,其中,M的下限为所述全局不一致关系图的最小顶点覆盖数,M的上限为N/2,N为所述多个服务提供者的总数。
[0074]对于估算恶意服务提供商的数目上限M,采用以下过程:N表示系统中的服务提供商的总数。假设恶意服务提供商的总数是低于可信服务提供商,所以恶意服务提供商的数目不应该超过N/2。恶意服务提供者的数目不低于全局一致关系图的最小顶点覆盖数R的大小。因此,M首先受限于其下限R和上限N/2。然后,使用一种迭代算法缩小M。从M的下限和恶意节点集V开始,然后逐渐增大M。对于M的每一个值,我们都可以得到一组恶意节点。在一个较大的M的情况下,节点的数量能够保证I Ne I + I RI >M变小,这将导致恶意节点集V减小。当V为空的时候,停止增加M,因为任何较大的M都不能再给出更多恶意节点。直观地说,当M变大时,将有更少的节点满足上述公式|Ne | + |R|>M。因此,仅识别恶意节点的一小部分。相反,当M变小时,将有更多的节点可能满足公式,其可能会错误地将可信节点当为恶意节点。为了避免误报,需选出足够大的M,这样就可以找出一组真正的恶意服务提供商,因此M为恶意服务提供商的数目上限。
[0075]在上述实施例的基础上,优选的,步骤S303根据所述一致性关系图得到的可疑服务提供者和所述全局不一致关系图得到的恶意服务提供者,确定所有的恶意服务提供者,包括:
[0076]若根据所述一致性关系图得到的可疑服务提供者与根据所述全局不一致关系图得到的恶意服务提供者存在重叠,则所有的所述可疑服务提供者均为恶意服务提供者。
[0077]具体的,结合一致性关系图和全局不一致关系图分析结果。假设G1是服务功能仏生成的一致性关系图,G是全局不一致关系图。跑是通过分析每个功能的一致性关系图61得到的可疑节点列表,V是通过分析全局不一致关系图G得到的可疑节点列表。我们检查每个一致性关系图。V1表示V对于服务功能A1的子集。如果V^M1相交不为空,把M冲的节点加到已识别的恶意节点集。
[0078]例如,图2和图3显示了一致性关系图和全局不一致关系图。如果恶意节点的上限M设置为4,全局不一致关系图的分析将不会捕获恶意节点C4,但会捕获恶意节点C5。其原因是,当M为4时,节点C4不满足公式I Ne I + IR | >M,由于(:5有5个邻接节点,去除C5及其5个相邻节点后的剩余节点的不一致关系图的最小顶点覆盖是O,5+0>4,找出C5为恶意节点。但是,通过检查功能A1的一致性关系图,我们发现V1= IC5}与施={C4,Cd重叠。然后,推断出C4也应该是恶意节点,最后确定C4与C5均为恶意节点。
[0079]优选的,在确定所述恶意服务提供之后还包括:
[0080]若存在恶意服务提供者,用可信服务提供者返回的数据处理结果代替恶意服务提供者的数据处理结果。
[0081]为了在查明恶意服务提供者后,自动更正已损坏的数据,提高云数据处理服务结果的质量,防止原始数据被恶意节点操纵,破坏数据项的处理结果,本发明实施例提供的技术方案通过数据处理结果来检测和更正被恶意节点破坏的数据处理结果。
[0082]具体的,门户节点B接收到原始数据d的结果之后,门户节点检查数据d是否已经被恶意节点处理。如果d已经被发现的任何恶意节点处理,我们将标注为可疑的结果。接下来,门户节点检查d是否已经被选择认证,即是否选择被其他服务提供者进行数据处理。如果d已被选择认证,我们检查d的认证副本d’是否只穿越了可信节点。如果是,我们使用认证数据d’的处理结果去代替可疑的结果。例如,在图5中,原始数据d被已发现的恶意节点C6处理,同时认证数据中的d’仅被可信节点处理。门户节点将使用认证数据d’的数据处理结果以取代可能被C6损坏的原始数据d的数据处理结果。
[0083]另一方面,采用上述的查找方法,如图6所示,本发明实施例还提供了一种云系统中组合服务的恶意服务提供者的查找系统,包括:
[0084]数据输入单元61,用于对功能相同的多个服务提供者输入原始数据,以使多个服务提供者返回数据处理结果;
[0085]结果比较单元62,用于接收所述多个服务提供者的数据处理结果,比较所述多个服务提供者的数据处理结果,得到所述多个服务提供者的功能一致性关系和功能不一致性关系;
[0086]判定单元63,用于根据所述多个服务提供者的功能一致性关系和功能不一致性关系,确定恶意服务提供者。
[0087]优选的,所述数据处理结果的差异在预设范围内的服务提供者为功能一致性关系,数据处理结果的差异超出所述预设范围的服务提供者为功能不一致性关系;
[0088]其中,数据处理结果的差异超出所述预设范围的服务提供者中至少存在一个恶意服务提供者。
[0089]优选的,上述判定单元63包括:
[0090]可疑判定单元,用于根据所述多个服务提供者的功能一致性关系,建立一致性关系图,确定可疑服务提供者,其中,所述可疑服务提供者为数据处理结果相同的服务提供者,且所述可疑服务提供者的数量小于N/2,N为所述多个服务提供者的总数;
[0091 ]恶意判定单元,用于根据所述多个服务提供者的功能不一致性关系,建立全局不一致关系图,当且仅当I Ne I + IR11时,确定当前服务提供者是恶意服务提供者;
[0092]其中,Ne是与当前服务提供者邻接的服务提供者的数目,R是移除了当前服务提供者和与其邻接的服务提供者后的剩余服务提供者的不一致关系图的最小顶点覆盖数,M为所述恶意服务提供者的数量的上限。
[0093]确定单元,用于根据所述一致性关系图得到的可疑服务提供者和所述全局不一致关系图得到的恶意服务提供者,确定所有的恶意服务提供者。
[0094]优选的,所述恶意服务提供者的数量的上限M通过多次迭代得到,其中,M的下限为所述全局不一致关系图的最小顶点覆盖数,M的上限为N/2,N为所述多个服务提供者的总数。
[0095]本发明实施例提供的云系统中组合服务的恶意服务提供者的查找方法和装置,通过比较功能相同的多个服务提供者的数据处理结果,根据数据处理结果确定多个服务提供者的功能一致性关系和功能不一致性关系,通过对功能一致性关系和功能不一致性关系的分析,从而确定恶意服务提供者,通过每个功能的一致性关系分析可以限制攻击者,通过全局不一致性关系分析,可以有效揭露攻击者,从而找到恶意攻击者,即使恶意攻击者成为大多数,本发明实施例提供的技术方案,也可以有效地查明攻击者,还可以抑制合伙攻击和限制攻击损害的范围,并且不需要任何特殊的硬件或安全内核的支持,对大型云系统来说比较实用;另外,本发明通过代替恶意服务提供者的数据处理结果,自动纠正由恶意攻击者造成的损害,提高了云数据处理服务结果的质量。
[0096]虽然结合附图描述了本发明的实施方式,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
【主权项】
1.一种云系统中组合服务的恶意服务提供者的查找方法,其特征在于,包括: 对功能相同的多个服务提供者输入原始数据,以使多个服务提供者返回数据处理结果; 接收所述多个服务提供者的数据处理结果,比较所述多个服务提供者的数据处理结果,得到所述多个服务提供者的功能一致性关系和功能不一致性关系; 根据所述多个服务提供者的功能一致性关系和功能不一致性关系,确定恶意服务提供者。2.根据权利要求1所述的一种云系统中组合服务的恶意服务提供者的查找方法,其特征在于,所述比较所述多个服务提供者的数据处理结果,得到所述多个服务提供者的功能一致性关系和功能不一致性关系,具体包括: 比较所述多个服务提供者的数据处理结果,数据处理结果的差异在预设范围内的服务提供者为功能一致性关系,数据处理结果的差异超出所述预设范围的服务提供者为功能不一致性关系,得到所述多个服务提供者的功能一致性关系和功能不一致性关系; 其中,数据处理结果的差异超出所述预设范围的服务提供者中至少存在一个恶意服务提供者。3.根据权利要求1所述的一种云系统中组合服务的恶意服务提供者的查找方法,其特征在于,所述根据所述多个服务提供者的功能一致性关系和功能不一致性关系,确定恶意服务提供者,具体包括: 根据所述多个服务提供者的功能一致性关系,建立一致性关系图,确定可疑服务提供者,其中,所述可疑服务提供者为数据处理结果相同的服务提供者,且所述可疑服务提供者的数量小于N/2,N为所述多个服务提供者的总数; 根据所述多个服务提供者的功能不一致性关系,建立全局不一致关系图,当且仅当I NeI +1RI >]\1时,确定当前服务提供者是恶意服务提供者; 其中,Ne是与当前服务提供者邻接的服务提供者的数目,R是移除了当前服务提供者和与其邻接的服务提供者后的剩余服务提供者的不一致关系图的最小顶点覆盖数,M为所述恶意服务提供者的数量的上限。 根据所述一致性关系图得到的可疑服务提供者和所述全局不一致关系图得到的恶意服务提供者,确定所有的恶意服务提供者。4.根据权利要求3所述的一种云系统中组合服务的恶意服务提供者的查找方法,其特征在于,所述恶意服务提供者的数量的上限M通过多次迭代得到,其中,M的下限为所述全局不一致关系图的最小顶点覆盖数,M的上限为N/2,N为所述多个服务提供者的总数。5.根据权利要求3所述的一种云系统中组合服务的恶意服务提供者的查找方法,其特征在于,所述根据所述一致性关系图得到的可疑服务提供者和所述全局不一致关系图得到的恶意服务提供者,确定所有的恶意服务提供者,包括: 若根据所述一致性关系图得到的可疑服务提供者与根据所述全局不一致关系图得到的恶意服务提供者存在重叠,则所有的所述可疑服务提供者均为恶意服务提供者。6.根据权利要求1所述的一种云系统中组合服务的恶意服务提供者的查找方法,其特征在于,在确定所述恶意服务提供之后还包括: 若存在恶意服务提供者,用可信服务提供者返回的数据处理结果代替恶意服务提供者的数据处理结果。7.—种云系统中组合服务的恶意服务提供者的查找装置,其特征在于,包括: 数据输入单元,用于对功能相同的多个服务提供者输入原始数据,以使多个服务提供者返回数据处理结果; 结果比较单元,用于接收所述多个服务提供者的数据处理结果,比较所述多个服务提供者的数据处理结果,得到所述多个服务提供者的功能一致性关系和功能不一致性关系; 判定单元,用于根据所述多个服务提供者的功能一致性关系和功能不一致性关系,确定恶意服务提供者。8.根据权利要求7所述的一种云系统中组合服务的恶意服务提供者的查找装置,其特征在于,所述数据处理结果的差异在预设范围内的服务提供者为功能一致性关系,数据处理结果的差异超出所述预设范围的服务提供者为功能不一致性关系; 其中,数据处理结果的差异超出所述预设范围的服务提供者中至少存在一个恶意服务提供者。9.根据权利要求7所述的一种云系统中组合服务的恶意服务提供者的查找装置,其特征在于,所述判定单元包括: 可疑判定单元,用于根据所述多个服务提供者的功能一致性关系,建立一致性关系图,确定可疑服务提供者,其中,所述可疑服务提供者为数据处理结果相同的服务提供者,且所述可疑服务提供者的数量小于N/2,N为所述多个服务提供者的总数; 恶意判定单元,用于根据所述多个服务提供者的功能不一致性关系,建立全局不一致关系图,当且仅当I Ne I + IR11时,确定当前服务提供者是恶意服务提供者; 其中,Ne是与当前服务提供者邻接的服务提供者的数目,R是移除了当前服务提供者和与其邻接的服务提供者后的剩余服务提供者的不一致关系图的最小顶点覆盖数,M为所述恶意服务提供者的数量的上限。 确定单元,用于根据所述一致性关系图得到的可疑服务提供者和所述全局不一致关系图得到的恶意服务提供者,确定所有的恶意服务提供者。10.根据权利要求9所述的一种云系统中组合服务的恶意服务提供者的查找装置,其特征在于,所述恶意服务提供者的数量的上限M通过多次迭代得到,其中,M的下限为所述全局不一致关系图的最小顶点覆盖数,M的上限为N/2,N为所述多个服务提供者的总数。
【文档编号】H04L29/06GK105915513SQ201610229096
【公开日】2016年8月31日
【申请日】2016年4月12日
【发明人】于磊
【申请人】内蒙古大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1