发明名称 对等网络中基于二元意见的局部信任模型的建立方法
摘要 对等网络中基于二元意见的局部信任模型的建立方法,属于对等网络的信任模型技术领域,其特征在于:它使每个节点能够根据自己及自己信任节点的意见推导出对其它节点的局部意见,而节点惩罚机制使得推举恶意节点的节点也受到连带的惩罚,从而有效地抵御间谍攻击;即使恶意节点对某一部分节点进行了成功的攻击,也不会像全局信任模型那样通过全局统一的意见值立刻影响到网络中的所有其它节点;模拟试验表明,在绝大多数情况下,采用惩罚机制的局部信任模型能使交易成功率保持在90%以上。
申请公布号 CN100471199C 申请公布日期 2009.03.18
申请号 CN200510011903.0 申请日期 2005.06.09
申请人 清华大学 发明人 徐恪;江帆;崔勇
分类号 H04L29/06(2006.01)I;H04L9/00(2006.01)I;H04L12/24(2006.01)I 主分类号 H04L29/06(2006.01)I
代理机构 代理人
主权项 1.对等网络中基于二元意见的局部信任模型的建立方法,其特征在于,所述的方法是在由对等节点构成的对等网络中进行的,依次含有以下步骤:步骤1:初始化;首先,定义以下局部信任模型的参量:原始意见,即一个节点通过自己的经历和判断得出的对另一个节点的意见,即局部信任状态,节点a对节点b的原始意见有以下三种:信任,记为a→b;不信任,记为<img file="C200510011903C00021.GIF" wi="145" he="37" />未定义,节点a对节点b没有明确的原始意见;另外约定:原始意见的初始值均为未定义;导出意见,即一个节点通过咨询别人的意见而推导出的对某一节点的意见,也分为所述的信任、不信任和未定义三种;所述导出意见具有一定的阶数,原始意见被称为一阶意见,所述朋友在通过咨询别人的意见而推导出的对某一节点的意见为二阶意见,以此类推;意见链,为一组无重复的节点序列,所述意见链中每一个节点对其后相邻的节点存在是否信任的关系,根据最后两个节点之间的关系,把所述意见链分为信任链和不信任链两种;一条长度为n的信任链记为:C(a→…→x<sub>n-1</sub>→b,length=n):a→x<sub>1</sub>→x<sub>2</sub>→…→x<sub>n-1</sub>→b一条长度为n的不信任链记为:<img file="C200510011903C00022.GIF" wi="1439" he="66" />即在不信任链中最后两个节点之间出现不信任关系;意见链中除最后两个节点之间外的其它相邻节点之间不能出现不信任关系;所述n为意见链中所包含的意见个数;最大推导半径,指意见推导的意见链允许出现的最大长度,记为R<sub>max</sub>;步骤2.建立原始信任关系,即确定节点a的原始信任节点,即当节点a通过与节点b的多次交易形成了对节点b的信任,则节点a就把节点b标记为自己的原始信任节点,即朋友;步骤3.意见推导,即当节点a需要获得节点b的可信任程度时,采用下述步骤推导节点a对节点b的意见:步骤3.1.判断节点a是否存在对节点b的原始意见;若存在原始意见,则推导结果与原始意见值相等,意见推导结束;否则,进入下一步;步骤3.2.初始化推导半径R=2,即节点a待收集的意见链长度为2;步骤3.3.节点a对自己的朋友广播对节点b的查询请求,该请求的TTL,生存时间,即分组在传输过程中所能经过的最大跳数,初始化值为R-1;步骤3.4.查询请求的执行过程的递归描述如下:当节点x<sub>i</sub>收到对节点b的查询请求a→…→x<sub>i-1</sub>时,采用如下步骤执行该查询请求:步骤3.4.1.节点x<sub>i</sub>判断自己是否存在对节点b的原始意见x<sub>i</sub>…b;若存在,生成查询应答a→…→x<sub>i-1</sub>→x<sub>i</sub>…b并返回给节点x<sub>i-1</sub>,执行结束;若不存在,进入下一步;步骤3.4.2.节点x<sub>i</sub>搜索缓存中是否存在对节点b的意见链x<sub>i</sub>→…b;若存在,执行步骤3.4.3;否则,执行步骤3.4.4;步骤3.4.3.节点x<sub>i</sub>判断意见链x<sub>i</sub>→…b的长度是否等于该查询请求的TTL;若是,则生成包含该意见链的查询应答a→…→x<sub>i-1</sub>→x<sub>i</sub>→…b并返回给节点x<sub>i-1</sub>,执行结束;若否,执行结束;步骤3.4.4.节点x<sub>i</sub>把查询请求的TTL减1;若TTL减1后,TTL=0,执行结束;否则,进入下一步;步骤3.4.5.节点x<sub>i</sub>向每一个非x<sub>1</sub>~x<sub>i-1</sub>节点的朋友发送节点x<sub>i</sub>对节点b的查询请求a→…→x<sub>i-1</sub>→x<sub>i</sub>,执行结束;步骤3.5.查询应答的执行过程的递归描述如下:当节点x<sub>i</sub>收到查询应答,长度为n的意见链,a→…→x<sub>i-1</sub>→x<sub>i</sub>→…→x<sub>n-1</sub>…b时,采用如下步骤执行该查询应答:步骤3.5.1.若x<sub>i</sub>=a,执行结束;否则进入下一步;步骤3.5.2.若节点x<sub>i+1</sub>,x<sub>i+2</sub>,…,x<sub>n-1</sub>中存在原始不信任节点,执行结束;否则进入下一步;步骤3.5.3.节点x<sub>i</sub>把查询应答转发给节点x<sub>i-1</sub>;步骤3.5.4.节点x<sub>i</sub>删除缓存中对节点b的意见链,并将意见链x<sub>i</sub>→…b加入缓存;执行结束;步骤3.6.若节点a收到了一条或多条长度为R的意见链,判断这些意见链中是否存在不信任链:步骤3.6.1.若存在不信任链,则推导结果为R阶不信任,意见推导结束;若不存在不信任链,即全部为信任链,则推导结果为R阶信任,意见推导结束;若节点a没有收到任何长度为R的意见链,则进入下一步;步骤3.6.2.若推导半径R等于最大推导半径R<sub>max</sub>,则推导结果为未定义,意见推导结束;否则,进入下一步;步骤3.6.3.推导半径R增加1,返回步骤3.3;步骤4.若节点a通过与节点b的交易发现对方不可靠时,采用如下步骤对节点b进行惩罚:步骤4.1.若节点a先前对节点b进行过意见推导,则读取最后一次推导中得到的所有信任链,把信任链中的除了自己和自己朋友,即原始信任节点,外的所有其它节点标记为原始不信任节点;步骤4.2.若节点a先前没有对节点b进行过意见推导,则只把节点b标记为原始不信任节点;步骤5.若要求信任模型具有防止节点冒名和意见篡改的功能,则需要把所有在对等网络中传播的意见链全部升级为签名意见链,即在每一条意见链中加入签名信息;所述签名意见链记为:<maths num="0001"><![CDATA[<math><mrow><mi>S</mi><mrow><mo>(</mo><mi>C</mi><mrow><mo>(</mo><msub><mi>x</mi><mn>0</mn></msub><mo>&RightArrow;</mo><msub><mi>x</mi><mn>1</mn></msub><mo>&RightArrow;</mo><msub><mi>x</mi><mn>2</mn></msub><mo>&RightArrow;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&RightArrow;</mo><msub><mi>x</mi><mrow><mi>n</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><msub><mi>x</mi><mi>n</mi></msub><mo>,</mo><mi>length</mi><mo>=</mo><mi>n</mi><mo>)</mo></mrow><mo>)</mo></mrow></mrow></math>]]></maths><maths num="0002"><![CDATA[<math><mrow><mo>=</mo><mi>C</mi><mrow><mo>(</mo><msub><mi>x</mi><mn>0</mn></msub><mo>&RightArrow;</mo><msub><mi>x</mi><mn>1</mn></msub><mo>&RightArrow;</mo><msub><mi>x</mi><mn>2</mn></msub><mo>&RightArrow;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&RightArrow;</mo><msub><mi>x</mi><mrow><mi>n</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><msub><mi>x</mi><mi>n</mi></msub><mo>,</mo><mi>length</mi><mo>=</mo><mi>n</mi><mo>)</mo></mrow></mrow></math>]]></maths><maths num="0003"><![CDATA[<math><mrow><mo>+</mo><msub><mi>S</mi><msub><mi>x</mi><mn>0</mn></msub></msub><mrow><mo>(</mo><msub><mi>x</mi><mn>0</mn></msub><mo>&RightArrow;</mo><msub><mi>x</mi><mn>1</mn></msub><mo>)</mo></mrow><mo>+</mo><msub><mi>S</mi><msub><mi>x</mi><mn>1</mn></msub></msub><mrow><mo>(</mo><msub><mi>x</mi><mn>1</mn></msub><mo>&RightArrow;</mo><msub><mi>x</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>+</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>+</mo><msub><mi>S</mi><msub><mi>x</mi><mrow><mi>n</mi><mo>-</mo><mn>1</mn></mrow></msub></msub><mrow><mo>(</mo><msub><mi>x</mi><mrow><mi>n</mi><mo>-</mo><mn>1</mn></mrow></msub><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><msub><mi>x</mi><mi>n</mi></msub><mo>)</mo></mrow></mrow></math>]]></maths>其中,每一个意见关系x<sub>i</sub>→x<sub>i+1</sub>及其过期时间,精确到秒的通用协调时间,过期的意见关系及包含该意见关系的所有意见链都将被删除,由节点x<sub>i</sub>签名,记为<img file="C200510011903C00044.GIF" wi="326" he="68" />
地址 100084北京市北京100084-82信箱