一种p2p网络中抵抗节点恶意的方法

文档序号:7709999阅读:162来源:国知局
专利名称:一种p2p网络中抵抗节点恶意的方法
技术领域
本发明属于通信网络领域,尤其涉及一种P2P网络中抵抗节点恶意的方法。
背景技术
P2P以非中心化的拓扑模式改变了传统的网络结构,P2P系统以其能够充分利用 网络资源、自适应性强、扩展性好等诸多优点在资源共享、分布式计算以及网络数据库等诸 多领域得到了广泛应用。 尽管P2P系统有着很大的优势,但随着P2P的深入应用,P2P系统的缺陷也逐步暴 露。节点在获取资源时最关注的是资源的真实性,即保证所下载的资源是所需要的资源。 但是在目前的P2P系统中,由于不存在中心服务器提供的基于内容的鉴别方式,资源共享 严重依赖于资源提供者和需求者之间的相互信任。对于一个资源提供者提供的资源,获取 者在获取之前往往只能判断资源的标识符和获取者所希望获取的资源标识符是否一致,但 并不能确认其内容的一致性。例如在文件共享系统中,相当一部分文件是伪造或者失效的, 更严重的是一些恶意节点将电脑病毒伪装成流行的文件在网上传播,严重影响网络的有用 性、可靠性。 传统的网络安全模型依靠认证使节点之间相互确认彼此身份,保证节点身份可 靠性,主要有以下几种1)、服务器认证机制用简单的用户名密码的方式向服务器统一 认证。这种方法比较简单,但是安全性不高,不适宜广泛使用。2)、PKI(公钥基础设施, Public Key Infrastructure)机制在这种信任机制中,信任关系建立依赖于可信第三方, 如CA(数字认证,Certificate Authority)认证中心,只要节点持有CA认证中心所颁发的 证书就被认为是可信的。这种方法比较成熟,安全性较高,但在使用过程中证书的发送、撤 销等问题都较为复杂,且集中式的认证容易出现单点失效、可扩展性较差等问题,因此也不 适用于P2P网络的使用。 人们为了克服传统认证机制的缺陷,根据P2P网络中节点之间的信任关系与社会 网络中人与人之间的信任关系的相似性提出许多信任模型,大致可以分为全局信任模型和 局部信任模型两类。全局信任模型忽略了信任的私人化特征,对于某个特定节点,其他节点 对他的信任值都是相同的。在局部信任模型中,节点通过询问有限个其他节点来获取某个 节点的信任值,因此所得的信任值有一定局限性。

发明内容
本发明的目的是为了克服现有技术的不足,提供一种P2P网络中抵抗节点恶意发
布不真实资源的方法。本发明方法通过在P2P网络中建立简单有效的信任评价机制对节点
发布不真实资源的恶意行为进行惩罚,降低其推荐信任值,使其与其他节点交互的概率降
低,从而达到遏制P2P网络中不真实资源的传播、提高P2P网络可靠性的目的。 本发明方法包括资源提供节点的选择、直接信任值的更新、推荐信任值及评价信
任值的更新。
步骤(1)资源提供节点的选择 资源提供节点的选择是指P2P网络中需要获取资源的节点通过现有的DHT(分布 式哈希表,Distributed Hash Table)技术得到存储其所需资源的节点列表,并按照所述的 方法从列表中找出可以进行交互的节点。具体的方法是 3. 2 网络中的节点1以01^的方式查找其所需资源的关键字,存储该关键字的节
点将拥有节点i所需资源的节点列表返回给节点i。 b.节点i从所得到的节点列表随机选择一个待连接节点j。 c.节点i在P2P网络中查询节点j的推荐信任值Re (j),并在本地信任存储单元 中查找与节点j是否有过交互历史,如果节点i和节点j有过交互历史则读取对节点j的 直接信任值Tr(i, j)。 d.节点i通过信任计算单元计算节点j的综合可信度TR(i, j),并与预设的阈值 进行比较。如果大于阈值,则节点i与节点j进行交互;否则返回步骤b重新选择节点。
所述的阈值可由节点自行确定,也可由网络提供参考值。 所述节点j的综合可信度的计算方法为TR(i,j) = 13 XTr(i,j) + (l-!3)XRe(j), 其中13为权重因子,|3 G [O,l], |3由节点自行确定或由网络提供参考值,当节点i与节
点j没有交互历史时,P = 0。 若节点j发布过不真实资源,则其推荐信任值Re(j)会被降低,尤其是当节点i获 取过由节点j提供的不真实资源时,节点i对节点j的直接信任值Tr(i, j)也较低,如果节 点i的阈值较高,则节点j的综合可信度TR(i, j)不容易达到阈值,不会被节点i选择作为 资源提供节点。 步骤(2)直接信任值的更新 直接信任值的更新是指节点i从节点j获取所需的资源后,根据本次从节点j获 取的资源的真实性,结合本次交互前节点i对节点j的直接信任值Tr(i, j)计算得到新的 直接信任值Tr' (i, j),并将Tr' (i, j)保存到本地信任存储单元;若节点i与节点j在本 次交互前没有交互历史,则将Tr(i, j)设置为0. 5。具体方法是 e.若节点i从节点j获取的资源是真实的,则节点i对节点j的信任程度增加。 Tr' (i,j)的具体计算方法为Tr' (i,j) = Min(Tr(i, j)+a, 1),其中a G [O,l],且a的取 值由P2P网络决定;Min(Tr(i, j)+a,l)表示取Tr(i, j)+a禾口 1中的较小者,两者相等则取 1。 f.若节点i从节点j获取到不真实的资源,则节点i对节点j的信任程度下降。 Tr' (i, j)的具体计算方法为Tr' (i, j) = Tr (i, j) Xp,其中p G (O,l),且p的取值由 P2P网络根据网络的恶意资源的状况决定。
步骤(3)推荐信任值的更新 节点推荐信任值的更新是在节点更新前推荐信任值的基础上,结合当前时间周期 对该节点的信任评价进行处理,根据处理结果对当前推荐信任值(节点的推荐信任初始值 为0.5)进行计算得到新的推荐信任值Re' (j)。具体方法是 g.节点i向P2P网络提交对节点j的信任评价,提交的信任评价内容是升评价或 降评价。 h.存储Re(j)的节点将节点i对节点j的评价存入本地信任存储单元的队列中。
6
i.存储Re (j)的节点在P2P网络查询存储Ev (i)的节点,将获取的Ev (i)存入本 地信任存储单元。 j.重复步骤h和i,若存储Re(j)的节点在当前时间周期内收到两个及其以上对 节点j的信任评价,则对信任队列中的信任评价进行处理;否则清空当前队列中的信任评 价,在下一时间周期继续接收信任评价,直至收到的信任评价数量符合所述要求。具体的处 理方法为 如果信任队列中提交升评价的节点评价信任值总和大于提交降评价的节点评价 信任值总和,则综合评价结果为升评价,即对j进行奖励,增加节点j的推荐信任值,Re' (j) =Min(Re(j)+a, 1)。 如果信任队列中提交降评价的节点评价信任值总和大于提交升评价的节点评价 信任值总和,则综合评价结果为降评价,即对j进行惩罚,Re' (j) =Re(j)Xp。
如果信任队列中提交升评价的节点评价信任值总和等于提交降评价的节点评 价信任值综合,则综合评价结果为零评价,表示既不增加也不减少节点j的推荐信任值, Re' (j) = Re(j)。 步骤(4)评价信任值的更新 节点评价信任值的更新是指根据节点所提交的对其他节点的信任评价与所述综 合评价结果的符合程度来改变其评价信任值。P2P网络中所有节点的评价信任初始值设置 为0.5。具体方法是 k.存储Re (j)的节点更新评价节点j的节点的评价信任值,具体是 如果节点i提交的信任评价与存储Re (j)的节点处理对节点j的所有信任评价得
到的综合评价结果一致,则提高其评价信任值,Ev' (i) =Min(EV(i)+a,l)。 如果节点i提交的信任评价与存储Re (j)的节点处理对节点j的信任评价得到的
综合评价结果(综合评价结果为零评价的情况除外)不一致,则降低其评价信任值,Ev' (i)
=Ev(i) Xp。 如果存储Re (j)的节点处理对节点j的信任评价得到的综合评价结果为零评价,
则保持节点i的评价信任值,Ev' (i) = Ev(i)。 1.存储Re (j)的节点向P2P网络提交Ev' (i)。 m.存储节点i的评价信任值的节点用收到的Ev' (i)更新存储在本地信任存储单 元的节点i的评价信任值。 节点i若总是提交不实评价,自身的评价信任值就会逐步降低,则其提交的信任 评价对于其他节点的推荐信任值的综合评价结果影响会减弱。 本发明方法中所述的节点i是指P2P网络中获取资源并提交信任评价的节点;所 述的节点j是指P2P网络中提供资源并接受信任评价的节点。 本发明方法中所述的信任评价是指节点i根据此次交互中节点j所提供资源的真 实性对节点j作出的评价。评价的内容是升评价或降评价,升评价表示节点j提供的资源 是真实的,希望奖励节点j ;降评价表示节点j提供的资源是不真实的,希望惩罚节点j。
本发明方法中所述的直接信任值Tr(i, j)是指节点i与节点j进行直接交互并获 取节点j提供的资源后,节点i对节点j的信任程度的一种量化表征;Tr(i,j)为(O,l]范 围内的任意实数。
本发明方法中所述的推荐信任值Re(j)是对所有与节点j进行过直接交互,并获 取节点j提供的资源的节点对节点j的信任评价的处理结果,Re(j)是将节点j推荐给其 他节点推荐程度的量化表征;Re(j)为(O,l]范围内的任意实数。 本发明方法中所述的评价信任值Ev(i)是指节点i对向其提供资源的节点作出的 信任评价在P2P网络中的客观程度的量化表征;Ev(i)为(O,l]范围内的任意实数。
本发明方法中所述的综合可信度TR(i, j),是节点i的信任计算单元对节点j的 直接信任值Tr(i, j)和推荐信任值Re(j)进行处理得到的,表示节点i对节点j的综合信 任程度的量化表征;Tr(i, j)为(O,l]范围内的任意实数。 本发明方法中所述的函数Min(x,y)表示取x, y两者中较小的一个,如果x和y相 等,则取x、 y两者中一个,x、 y表示参数。 本发明方法中所述的信任存储单元是指用于存储与本节点有过直接交互历史的 所有节点的相关信息,以及P2P网络中部分节点的推荐信任值和评价信任值的模块。所述 节点的相关信息包括节点在P2P网络中的ID(身份标识,Identity) 、 IP地址、节点标识符 (节点IP的散列值)、及直接信任值。 本发明方法中所述的信任计算单元是指用于计算节点的综合可信度,以及更新信 任存储单元中所维护的节点的推荐信任值和评价信任值的模块。 本发明通过建立所述的信任评价方法,使得恶意节点发布的不真实资源在P2P网 络中的流传度下降,从而达到抗击恶意节点攻击的效果,具体表现为 (1)在P2P网络建立初期或者节点j刚加入网络时,由于节点j没有与其他节点有 过交互信息,节点j发布资源时相对其他推荐信任值高的节点而言不易被选择作为提供资 源的节点,因此在选择待连接节点时用随机选择的方法,节点i在计算节点j综合可信度后 根据设定的阈值决定是否与节点j进行交互。这样可以使得新加入网络的节点也拥有交互 的机会,随着节点j在网络中交互次数的增加,其推荐信任值会根据其交互行为而发生改 变,表现的更加准确和全面。 (2)由节点直接信任值的更新过程可知,如果节点j提供不真实的资源,节点i在 获取这个资源之后,对节点j的直接信任值就迅速下降,下次与节点j交互的概率大大降 低;同时节点i通过提交希望惩罚节点j的信任评价后亦会促使节点j的推荐信任值也下 降,使节点j与其他节点交互的概率下降。 (3)由节点推荐信任值及推荐信任值的更新过程可知,节点j推荐信任值的计算 与多个节点提交的信任评价相关,所以节点i提交不实评价的行为不会对节点j的推荐信 任值造成很大影响;由于其他节点是否决定与节点j进行交互是由综合信任度决定的,所 以如果其他节点的直接信任值在综合信任度计算中占较大比重的话,节点i的这种不实评 价行为对其他节点与节点j交互是否成功影响也较小。 (4)由节点评价信任值的更新过程可知,节点i所提交的评价是否客观直接影响 到其评价信任值的大小,如果节点i提交的评价与存储Re(j)的节点处理对节点j的所有 信任评价得到的综合评价结果不一致,其评价信任值就会下降。因此,如果节点i总是提交 不客观的评价,那么其所提交的信任评价对其他节点推荐信任值的计算结果的影响将会逐 渐减小。 本发明的优点在于
(1)本发明提供的信任评价方法将节点的交互行为和评价行为分开,对推荐信任 值计算更加真实有效,同时也减弱了恶意节点的行为对综合信任值计算的影响,从而有效 的惩罚并抑制恶意节点,提高了网络的可靠性。 (2)节点信任单元存储与其交互过的节点的直接信任值,向P2P网络提交信任评 价,并通过节点评价信任值的反馈作用,可以有效的抵抗不真实的评价或者作弊行为,提高 了网络的真实性。 (3)节点的推荐信任值、评价信任值都是以分布式的方式存储在P2P网络的节点 中,且无须中心服务器,很好得平衡了网络负载。


图1为所述P2P网络结构的示意图;
图2为所述节点i选择资源提供节点流程; 图3为所述节点j的直接信任值、节点i的推荐信任值的更新过程示意图。
具体实施例方式
本发明适用于一般安全需求的P2P网络。P2P网络中对于内容的可控可管性较差, 获取资源的节点对发布资源的节点进行信任评价,使得发布不真实资源的节点的推荐信任 值下降,降低其他节点与该节点交互的概率,从而使不真实资源在P2P网络中传播度下降, 提高了 P2P网络的可靠性。 图1为本发明所述的P2P网络系统示意图。P2P网络结构的特点决定了节点i、j、 x、s、k在网络中承担相同的角色,在此网络中,数据消息沿着顺时针方向进行。假设在数据 传递过程中,节点i为发起关键字查询的节点,节点k是响应节点i并返回待连接节点列表 给节点i的节点,节点j是节点i随机选择的待连接节点,节点s是存储节点j推荐信任值 的节点,节点x是存储节点i评价信任值的节点;节点k指向节点i的实线代表节点k返回 节点列表给节点i的过程,节点j指向节点i的虚线代表节点j传输资源给节点i的过程, 节点i指向节点s的实线代表节点i把节点信任评价提交给P2P网络后存储在节点s的过 程,节点x指向节点s的实线代表节点x将节点i的评价信任值发送给节点s的过程,节点 s指向节点x的实线代表节点s将更新后的评价信任值发送给节点x的过程。
图2为所述节点i选择资源提供节点的过程,节点i在P2P网络中发起关键字查 询,P2P网络通过现有DHT技术将拥有节点i所需资源的节点列表返回给节点i,节点i根 据所述方法从节点列表中选择可以交互的节点,具体方法是 1)节点i发起所需资源关键字查询,向P2P网络广播该查询消息,该关键字查询消 息根据P2P网络路由规则在P2P网络中传递。 2)P2P网络查询到存储节点i所需资源的关键字信息的节点是节点k。节点k在 收到节点i的关键字查询消息后读取存储在本节点上这个资源的相关信息。
3)节点k将拥有节点i所需资源的节点列表返回给节点i。 所述节点列表的含有该资源的节点的IP地址、端口信息、防火墙穿越信息和 NAT (Network Address Translation,网络地址转换)穿越信息等。 4)节点i从节点k返回的节点列表中随机选择一个待连接节点j,随机选取的目
9的是为了使各个节点都有被交互的机会。 5)节点i在P2P网络中广播查询存储节点j推荐信任值Re (j)的节点的消息。该 查询消息按照P2P路由规则在P2P网络中传递。 6)节点i根据其信任存储单元中存储的数据,查询其与待连接节点j是否有过交 互历史。 所述的信任存储单元是节点i的信任存储单元,存储有与节点i有过直接交互历 史的节点的相关信息,以及P2P网络中部分节点的推荐信任值和评价信任值的模块。所述 节点的相关信息包括节点在P2P网络中的ID(身份标识,Identity) 、 IP地址、节点标识符 (节点IP的散列值)、及直接信任值。 7)若节点i信任存储单元中存储有节点i和节点j的交互历史,则节点i读取对 节点j的直接信任值Tr(i, j)。若节点i与节点j没有交互历史,则令13 = 0。
所述直接信任值Tr (i, j)是指节点i与节点j直接交互并节点j提供的资源后, 节点i对节点j的信任程度作出的一种量化表征;Tr(i, j)为(O,l]范围内的任意实数。
8)节点s是存储节点j推荐信任值Re (j)的节点,收到节点i广播的查询消息后 读取存储在其信任存储单元中的Re(j)。 所述的推荐信任值Re (j)是对所有与节点j进行过直接交互,并获取节点j提供 的资源的节点对节点j的信任评价的处理结果,Re(j)是将节点j推荐给其他节点推荐程 度的量化表征;Re(j)为(O,l]范围内的任意实数。
9)节点s将Re (j)发送给节点i 。 10)节点i通过信任计算单元计算节点j的综合可信度TR(i, j)。
所述节点j的综合可信度的计算方法为TR(i,j) = 13 XTr(i,j) + (l-!3)XRe(j), 其中P为权重因子,P G [O,l],P由节点自行确定或由网络提供参考值,由步骤7可知, 当节点i与节点j没有交互历史时,P = 0。 11)节点i计算得TR(i, j),判断TR(i, j)是否大于预设的阈值。若TR(i, j)小 于阈值,则返回步骤4,从节点列表中重新选择节点进行连接。 所述的阈值可由节点自行确定,也可由网络提供参考值。节点可以根据网络状况 来调整阈值,如果设置的阈值过高以至于没有节点可以被选择作为资源提供节点,则适当 降低阈值再选择满足阈值要求的节点。 若节点j发布过不真实资源,则其推荐信任值Re(j)会被降低,尤其是当节点i获 取过由节点j提供的不真实资源时,节点i对节点j的直接信任值Tr(i, j)也较低,如果节 点i的阈值较高,则节点j的综合可信度TR(i, j)不容易达到阈值,不会被节点i选择作为 资源提供节点。 12)若TR(i, j)大于预设的阈值,则节点i与节点j进行交互,节点i从节点j处 开始获取资源。 根据P2P网络的特点,可以同时有很多节点向节点j建立连接请求,在确认节点j 是值得信任的情况下与节点j进行交互,获取节点j提供的资源,这些与节点j同时连接的 节点之间以P2P方式进行数据传输,但同时获取的都是由节点j提供的资源,因此必须对节 点j进行信任评价。 图3为节点i对节点j的直接信任值、节点j的推荐信任值、节点i的评价信任值的更新过程示意图。 节点i对节点j的直接信任值的更新是指节点i从节点j获取所需的资源后,根据本次从节点j获取的资源的真实性,结合本次交互前节点i对节点j的直接信任值计算得到新的直接信任值;节点j推荐信任值的更新是在节点j更新前推荐信任值的基础上,结合当前时间周期对该节点的信任评价进行处理,根据处理结果对当前推荐信任值进行计算得到新的推荐信任值;节点评价信任值的更新是指根据节点所提交的对其他节点的信任评价与所述综合评价结果的符合程度来改变其评价信任值。P2P网络中所有节点的评价信任值和评价信任初始值设置为0.5。具体方法是 1)节点i与节点j交互完成后,节点i从节点j处获取得完整的资源,节点i对节点j所提供的资源进行评价。 节点j提供给节点i的资源有两种情况a)、资源是真实的,确实为节点i所需的资源;b)、资源是不真实的,节点j并没有提供给节点i所需的资源。相应地,节点i根据所述情况,对节点j的信任评价有两种升评价或降评价,升评价表示节点j提供的资源是真实的,希望奖励节点j ;降评价表示节点j提供的资源是不真实的,希望惩罚节点j。
节点i根据从节点j处获取的资源的情况对节点j进行信任评价。
2)节点i将对节点j的信任评价发送给节点s,在资源提供节点选择过程中节点i已通过广播查询得知存储Re(j)的为节点s。 3)节点i根据本地信任评价,通过信任计算单元更新Tr(i, j),信任存储单元存储更新后的直接信任值Tr' (i, j)。若节点i与节点j在本次交互前没有交互历史,则将Tr(i, j)设置为0. 5。直接信任值Tr(i, j)更新的具体方法是 若节点i提交的对节点j的信任评价为升评价,则节点i对节点j的信任程度增加。Tr' (i,j)的具体计算方法为Tr' (i, j) = Min(Tr(i, j)+a, 1),其中a G [O,l],且a的取值由P2P网络决定;Min(Tr(i, j)+a,l)表示取Tr(i, j)+a禾口 1中的较小者,两者相等则取1。 Tr' (i, j)的大小适中不超过1的目的为了防止节点j积累过高的信任值。
若节点i提交的对节点j的信任评价为降评价,则节点i对节点j的信任程度下降。Tr' (i,j)的具体计算方法为Tr' (i,j) = Tr(i, j) Xp,其中p G (O,l),且p的取值由P2P网络决定。 4)节点s在收到节点i对节点j的信任评价后,将信任评价存入信任队列。
5)节点s广播查询存储Ev(i)的节点的消息,该查询消息按P2P路由规则在P2P网络中传递。 6)P2P网络查询到存储节点i评价信任值Ev(i)的节点是节点x,节点x在收到
P2P网络的查询消息查询Ev(i)。 7)节点x将查询到的Ev (i)返回给节点s。 8)节点s在收到节点i评价信任值Ev (i)后将Ev (i)存储在信任存储单元的信任队列中,节点s的信任队列中此时存储有节点i对节点j的信任评价以及节点i的评价信任值Ev(i)。 在一个时间周期内,节点s按照所述步骤4、5、6的过程接收继续接收其他节点对节点j的信任评价。 9)若节点s在当前时间周期内收到两个及其以上对节点j的信任评价,则对信任
11队列中的信任评价进行处理;否则清空当前队列中的信任评价,在下一时间周期继续接收信任评价,直至收到的信任评价数量符合所述要求。
10)更新节点j的推荐信任值,具体方法是 如果信任队列中提交升评价的节点评价信任值总和大于提交降评价的节点评价信任值总和,则综合评价结果为升评价,即对j进行奖励,增加节点j的推荐信任值,Re' (j)=Min(Re(j)+a, 1)。 如果信任队列中提交降评价的节点评价信任值总和大于提交升评价的节点评价信任值总和,则综合评价结果为降评价,即对j进行惩罚,Re' (j) =Re(j)Xp。
如果信任队列中提交升评价的节点评价信任值总和等于提交降评价的节点评价信任值综合,则综合评价结果为零评价,表示既不增加也不减少节点j的推荐信任值,Re' (j) = Re(j)。 11)更新节点i的评价信任值,具体方法是 如果节点i提交的信任评价与存储Re (j)的节点处理对节点j的所有信任评价得到的综合评价结果一致,则提高其评价信任值,Ev' (i) =Min(EV(i)+a,l)。
如果节点i提交的信任评价与存储Re (j)的节点处理对节点j的信任评价得到的综合评价结果(综合评价结果为零评价的情况除外)不一致,则降低其评价信任值,Ev' (i)=Ev(i) Xp。 如果存储Re (j)的节点处理对节点j的信任评价得到的综合评价结果为零评价,
则保持节点i的评价信任值,Ev' (i) = Ev(i)。 12)节点s将Ev' (i)返回给节点x,提示节点x进行更新。 13)节点x在收到Ev' (i)后,在本地信任存储单元中存储Ev' (i)。
权利要求
一种P2P网络中抵抗节点恶意的方法,其特征在于该方法的具体步骤是步骤(1)资源提供节点的选择资源提供节点的选择是指P2P网络中需要获取资源的节点通过现有的分布式哈希表技术得到存储其所需资源的节点列表,并按照所述的方法从列表中找出可以进行交互的节点,具体的方法是a.P2P网络中的节点i以DHT的方式查找其所需资源的关键字,存储该关键字的节点将拥有节点i所需资源的节点列表返回给节点i;b.节点i从所得到的节点列表随机选择一个待连接节点j;c.节点i在P2P网络中查询节点j的推荐信任值Re(j),并在本地信任存储单元中查找与节点j是否有过交互历史,如果节点i和节点j有过交互历史则读取对节点j的直接信任值Tr(i,j);d.节点i通过信任计算单元计算节点j的综合可信度TR(i,j),并与预设的阈值进行比较;如果大于阈值,则节点i与节点j进行交互;如果小于等于阈值,则返回步骤b重新选择节点;所述节点j的综合可信度的计算方法为TR(i,j)=β×Tr(i,j)+(1-β)×Re(j),其中β为权重因子,β∈
,β由节点自行确定或由网络提供参考值,当节点i与节点j没有交互历史时,β=0;步骤(2)直接信任值的更新直接信任值的更新是指节点i从节点j获取所需的资源后,根据本次从节点j获取的资源的真实性,结合本次交互前节点i对节点j的直接信任值Tr(i,j)计算得到新的直接信任值Tr’(i,j),并将Tr’(i,j)保存到本地信任存储单元,若节点i与节点j在本次交互前没有交互历史,则将Tr(i,j)设置为0.5;具体方法是e.若节点i从节点j获取的资源是真实的,则节点i对节点j的信任程度增加;Tr’(i,j)的具体计算方法为Tr’(i,j)=Min(Tr(i,j)+a,1),其中奖励因子a∈
;f.若节点i从节点j获取到不真实的资源,则节点i对节点j的信任程度下降;Tr’(i,j)的具体计算方法为Tr’(i,j)=Tr(i,j)×p,其中,p为惩罚因子,p∈(0,1);步骤(3)推荐信任值的更新节点推荐信任值的更新是在节点更新前推荐信任值的基础上,结合当前时间周期对该节点的信任评价进行处理,根据处理结果对当前推荐信任值进行计算得到新的推荐信任值Re’(j);具体方法是g.节点i向P2P网络提交对节点j的信任评价,提交的信任评价内容是升评价或降评价;h.存储Re(j)的节点将节点i对节点j的评价存入本地信任存储单元的队列中;i.存储Re(j)的节点在P2P网络查询存储Ev(i)的节点,将获取的Ev(i)存入本地信任存储单元;j.重复步骤h和i,若存储Re(j)的节点在当前时间周期内收到两个及其以上对节点j的信任评价,则对信任队列中的信任评价进行处理;否则清空当前队列中的信任评价,在下一时间周期继续接收信任评价,直至收到的信任评价数量符合所述要求;具体是如果信任队列中提交升评价的节点评价信任值总和大于提交降评价的节点评价信任值总和,则综合评价结果为升评价,即对j进行奖励,增加节点j的推荐信任值,Re’(j)=Min(Re(j)+a,1);如果信任队列中提交降评价的节点评价信任值总和大于提交升评价的节点评价信任值总和,则综合评价结果为降评价,即对j进行惩罚,Re’(j)=Re(j)×p;如果信任队列中提交升评价的节点评价信任值总和等于提交降评价的节点评价信任值综合,则综合评价结果为零评价,表示既不增加也不减少节点j的推荐信任值,Re’(j)=Re(j);步骤(4)评价信任值的更新节点评价信任值的更新是指根据节点所提交的对其他节点的信任评价与所述综合评价结果的符合程度来改变其评价信任值;P2P网络中所有节点的评价信任初始值设置为0.5;具体方法是k.存储Re(j)的节点更新评价节点j的节点的评价信任值,具体是如果节点i提交的信任评价与存储Re(j)的节点处理对节点j的所有信任评价得到的综合评价结果一致,则提高其评价信任值,Ev’(i)=Min(Ev(i)+a,1);如果节点i提交的信任评价与存储Re(j)的节点处理对节点j的信任评价得到的综合评价结果(综合评价结果为零评价的情况除外)不一致,则降低其评价信任值,Ev’(i)=Ev(i)×p;如果存储Re(j)的节点处理对节点j的信任评价得到的综合评价结果为零评价,则保持节点i的评价信任值,Ev’(i)=Ev(i);l.存储Re(j)的节点向P2P网络提交Ev’(i);m.存储节点i的评价信任值的节点用收到的Ev’(i)更新存储在本地信任存储单元的节点i的评价信任值;所述的节点i是指P2P网络中获取资源并提交信任评价的节点;所述的节点j是指P2P网络中提供资源并接受信任评价的节点;所述的信任评价是指节点i根据此次交互中节点j所提供资源的真实性对节点j作出的评价;评价的内容是升评价或降评价,升评价表示节点j提供的资源是真实的,希望奖励节点j;降评价表示节点j提供的资源是不真实的,希望惩罚节点j;所述的直接信任值Tr(i,j)是指节点i与节点j进行直接交互并获取节点j提供的资源后,节点i对节点j的信任程度的一种量化表征;Tr(i,j)为(0,1]范围内的任意实数;所述的推荐信任值Re(j)是对所有与节点j进行过直接交互,并获取节点j提供的资源的节点对节点j的信任评价的处理结果,Re(j)是将节点j推荐给其他节点推荐程度的量化表征;Re(j)为(0,1]范围内的任意实数;所述的评价信任值Ev(i)是指节点i对向其提供资源的节点作出的信任评价在P2P网络中的客观程度的量化表征;Ev(i)为(0,1]范围内的任意实数;所述的综合可信度TR(i,j),是节点i的信任计算单元对节点j的直接信任值Tr(i,j)和推荐信任值Re(j)进行处理得到的,表示节点i对节点j的综合信任程度的量化表征;TR(i,j)为(0,1]范围内的任意实数;所述的函数Min(x,y)表示取x,y两者中较小的一个,如果x和y相等,则取x、y两者中一个,x、y表示参数;所述的信任存储单元是指用于存储与本节点有过直接交互历史的所有节点的相关信息,以及P2P网络中部分节点的推荐信任值和评价信任值的模块;所述节点的相关信息包括节点在P2P网络中的ID、IP地址、节点标识符和直接信任值;所述的信任计算单元是指用于计算节点的综合可信度,以及更新信任存储单元中所维护的节点的推荐信任值和评价信任值的模块。
全文摘要
本发明涉及一种P2P网络中抵抗节点恶意的方法。传统方法存在着一定的局限性。本发明方法通过在P2P网络中建立简单有效的信任评价机制对节点发布不真实资源的恶意行为进行惩罚,降低其推荐信任值,使其与其他节点交互的概率降低,从而达到遏制P2P网络中不真实资源的传播、提高P2P网络可靠性的目的。该方法包括资源提供节点的选择、直接信任值的更新、推荐信任值及评价信任值的更新。本发明通过建立所述的信任评价方法,使得恶意节点发布的不真实资源在P2P网络中的流传度下降,从而达到抗击恶意节点攻击的效果。本发明方法有效提高了网络的可靠性和真实性,同时该方法无须中心服务器,很好得平衡了网络负载。
文档编号H04L29/06GK101714976SQ20091015278
公开日2010年5月26日 申请日期2009年10月15日 优先权日2009年10月15日
发明者沈佳峰, 谢磊, 陈惠芳, 陈高翔 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1