当前位置:文档之家› 基于蚁群算法的加强型可抵御攻击信任管理模型

基于蚁群算法的加强型可抵御攻击信任管理模型

基于蚁群算法的加强型可抵御攻击信任管理模型摘要:通过将网络节点推荐行为分析和网络恶意节点密度的自适应机制纳入信誉度评价过程,提出了基于蚁群算法的加强型可抵御攻击信任管理模型――EAraTRM,以解决传统信任模型因较少考虑节点的推荐欺骗行为而导致容易在恶意节点的合谋攻击影响下失准的问题。

在对比研究中发现,EAraTRM可以在网络中恶意节点密度达到90%,其他传统信任模型已经失效的情况下,仍保持较高的正确性。

实验结果表明,EAraTRM能提高节点评价其他节点信誉度时的精度,并降低整个网络中恶意节点间进行合谋攻击的成功率。

关键词:信任管理;蚁群算法;异常检测;信誉度评估中图分类号:TP393.08文献标志码:AAbstract:Traditional trust and reputation models do not pay enough attention to nodes’deceit in recommendation,so their reputation evaluation may be affected by malicious nodes’collusion. A trust and reputation model named Enhanced Attack Resistible Antbased Trust and Reputation Model (EAraTRM)was proposed,which is based on ant colony algorithm. Noderecommendation behaviors analysis and adaptive mechanism to malicious nodes density were added into reputation evaluationof EAraTRM to overcome the shortage of traditional models. Simulation experiments show that EAraTRM can restrain the collusion of malicious nodes,and give more accurate reputation evaluation results,even when 90% nodes in a network are malicious and the comparison models have failed.英文关键词Key words:trust and reputation management;ant colony algorithm;anomaly detection;reputation evaluation0 引言信任管理系统是为了解决在电商网络、对等(PeertoPeer,P2P)网络、AdHoc网络以及无线传感器网络等网络环境中,服务消费方、服务请求节点常常对于服务提供方和服务提供节点的具体情况不甚了解的这个问题而设计的,它可以计算并提供网络中其他节点作为服务提供方的可信程度,从而向网络中服务请求方提供决策辅助,以便其寻求到更良好的服务。

信任管理系统的基本思想是:首先,网络中节点在完成一次网络上多节点协同处理的事务后,对协同节点进行评价,如果该事务的处理结果良好,则评价节点对协同节点给出高分评价,反之则给低分评价;然后,信任管理系统利用自身的信任管理模型来计算出特定节点的可信任度的值,也就是该特定节点的信誉值。

其他节点可以在以后的交互过程中,通过特定节点的信誉值,来判断与该特定节点合作进行事务处理是否可靠。

根据应用信任管理系统网络架构的类型,信任管理系统主要分为集中式信任管理系统和分布式信任管理系统两类。

前者由一个单独的节点负责信誉值的收集和计算,缺点是具有单点失效的风险;后者健壮性更好,但管理更加复杂。

用以构建信任管理系统的信任管理模型也有很多种,这些模型对节点的信誉值使用了不同的评价方法,常见的包括贝叶斯系统[1]、离散信任模型[2]、Belief模型[3]、Fuzzy模型[4]、Flows模型[5],以及生物激励模型[6-9]等。

其中,基于蚁群算法的生物激励模型能更有效地利用由网络中其他节点提供的间接信任信息来辅助进行信誉值的计算,相比采用其他方法的模型,提高了信誉值计算的准确度。

为了设计健壮性好且信誉度计算准确度较高的信任管理模型,本文的研究集中在基于生物激励模型的分布式信任管理系统上。

基于蚁群算法设计信任管理模型,文献[6-7]都进行过尝试并在特定网络中取得了较好效果,文献[8]在文献[6]的基础上还增强了节点信誉度评价结果的可理解性。

但上述文献中的模型都没有区分服务信任和推荐信任,因此都只是通过节点提供的具体服务来评价节点的可信度,而无法度量推荐行为的好坏对节点可信度的影响。

而在对推荐信任的研究中,文献[10] 将推荐行为纳入信誉值的计算,并对网络中推荐信息的个性化以及网络的动态化进行了研究;文献[11]进一步就不同准则的推荐行为对信誉值计算的影响进行了研究。

虽然上述文献中的模型可以多角度地度量节点的可信度,但它们考虑的推荐行为都是诚实推荐,而推荐欺骗行为会破坏推荐信息的准确度,使得信誉度计算出现偏差[12]。

文献[9]介绍的基于蚁群算法的信任管理模型考虑了节点的推荐欺骗行为,使其在存在恶意节点推荐欺骗的网络中,相比其他同类型模型性能有所改善,但该模型在恶意节点密度较大的网络中仍然会失准。

针对以上研究存在的不足,本文研究的目的在于帮助服务请求节点在即使存在密集的恶意节点、且这些恶意节点会进行合谋攻击的网络中,仍然能找到一条可信且经济的、通向良好服务节点的路径。

本文在分析恶意服务节点、恶意中继节点和振荡节点三种对信任管理模型影响较大的恶意节点工作方式的基础上,主要工作如下:1)设计了一种可整合进蚁群算法的离群点检测算法,来区分针对某个节点的良好推荐和恶意推荐,此算法有效减少了恶意推荐数量过多时传统离群点检测算法的误判情况,能准确检测到进行恶意推荐的恶意中继节点;2)通过分析推荐节点对某节点推荐值值域的收敛性,设计了检测振荡节点的算法,弥补了其他模型对振荡节点检测能力的不足;3)研究了模型根据网络中恶意节点的密度,能自适应地调整信任管理模型中数据流走向判断机制的方法,避免了传统模型在恶意节点密度较大的网络中失效的问题;4)基于以上工作提出了增强型可抵御攻击的蚁群优化算法,并在此基础上发展了信任管理模型――EAraTRM。

1 安全威胁分析信任管理领域中的各种安全威胁将导致信任管理系统的可靠性大大降低。

为了提高信任管理系统的可靠性,一个信任管理模型需要解决的安全威胁包括可以破坏服务质量的恶意服务节点、可以破坏网络路径质量的恶意中继节点,以及有能力同时破坏服务质量和路径质量的振荡节点。

1.1 恶意服务节点当被选为服务提供节点时,恶意服务节点总是提供坏的服务,以此来破坏整个网络中各节点的正常工作。

这是每个信任管理模型都需要解决的安全威胁,通常大部分模型都通过降低恶意服务节点的信誉值来减少其被再次选择成为服务提供节点的机会。

1.2 恶意中继节点通常网络中部分恶意中继节点和部分恶意服务提供节点互相了解对方的具体信息,这种恶意节点组以合谋的方式来威胁信任管理系统的有效性。

恶意中继节点有时并不向服务请求节点提供直接的服务,而是通过破坏数据传输或者路由路径的可靠性来干扰网络中各节点的正常工作。

如果恶意中继节点同时也提供直接的服务,它们通常会提供正常的服务以避免部分信任管理模型对其的封杀。

根据恶意中继节点的行为模式,它们主要分为两种类型:第一类恶意中继节点称为“间谍节点”,它们会给予某些恶意服务节点较高的直接评价值,因此会影响到信任管理系统对这些恶意服务节点的公正评价,也就间接地影响到其他节点选中这些恶意服务节点的机会。

第二类恶意中继节点称为“恶意推荐节点”,它们除了会进行类似间谍节点对恶意服务节点的虚假推荐外,还会对良好服务节点进行不诚实的恶意推荐,以此降低良好服务节点被其他节点选中的机会。

1.3 振荡节点部分恶意节点的行为总处在动态的变化中,它们会交替或随机地表现为良好节点和恶意节点,这种恶意节点被称为振荡节点。

振荡节点中威胁较大的被称为叛徒节点,它能根据自身在信任管理系统中信誉值的水平来动态调节自己的行为模式。

例如,在被选为服务提供节点时,如果叛徒节点发现自身的服务信誉值较低,就会提供良好的服务,以提高其他节点对其服务质量的评价来提升自己的服务信誉值;然而当叛徒节点发现自身的服务信誉值较高,也即被选为服务提供节点的几率较高时,便会开始提供恶意服务来破坏网络其他节点的正常工作。

同样当叛徒节点发现自己的推荐信誉值较低,便会提供正常的推荐信息,反之则提供虚假的推荐信息。

通过这种动态的行为调节,叛徒节点能规避大部分信任管理系统中恶意节点检测机制对其的惩罚以及封杀。

2 EAraTRM信任管理模型本章将首先介绍EAraTRM模型所适用的网络环境;接着给出适用于该模型的蚁群优化算法实现;针对该算法对恶意节点攻击的脆弱性,在此算法的基础上分别发展了惩罚恶意服务节点、检测恶意中继节点和检测振荡节点的方法,以期减少恶意节点攻击对算法准确度的影响;最后向算法中加入恶意节点密度的自适应机制,增强了算法的鲁棒性,完成增强型可抵御攻击的蚁群优化算法的设计。

2.1 网络环境的前提假设为了能够更好地阐述EAraTRM模型的设计思路,在符合现实情况的前提下,对模型所处的网络环境假设如下:1)某些节点是服务请求者而另一些节点是服务提供者。

服务提供者包括提供未细化的一般服务的服务节点,以及提供中继服务的中继节点。

2)大部分节点高度活跃,这意味着一个节点会经常请求或提供服务。

3)每个节点只能和自己信号范围内的邻居节点进行直接交流。

4)每个节点都清楚所属网络架构是属于集中式网络还是分布式网络。

5)网络本身高度的动态化,这可能是因为例如信道阻塞、数据包冲突或者节点故障等因素造成的节点行为变化引起的。

下文将把服务请求节点简称为客户端节点,把一般化的服务提供节点简称为服务节点。

2.2 蚁群优化算法蚁群优化(Ant Colony Optimization,ACO)算法是一种生物激励型算法,它可以用来在图内寻找最优化路径,而并不需要整个图内各个节点完整的细节,这使得它很适合用在前一节所述的网络环境中。

算法1展示了蚁群优化算法的工作流程。

蚁群优化算法是基于蚁群在自己的巢穴(源节点)和食物源(目的节点)之间寻找最短路径这一事实来设计的。

算法1中:global_best表示从源节点到目的节点的全局最佳路径;current_best表示算法在一次迭代过程中找到的最佳路径,两者初始值都置为空集;Sk是由蚂蚁k探索出的路径。

相关主题