移动Ad Hoc网络中的信任逻辑

时间:2022-07-08 04:59:32

移动Ad Hoc网络中的信任逻辑

摘要:该文设计了一种在移动Ad Hoc 网络中建立信任关系和进行安全通信的方法。通过将移动 Ad Hoc 网络中的信任关系划分为公共信任和结点自有信任,建立起以公共信任为背景,结点自主决定信任关系的模型。

关键词: 移动Ad Hoc;网络;结点群;公共信任(背景信任);通讯录;通知

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2009)15-3894-02

Confidence Logic in the Mobile Ad Hoc Network

YANG Rui

(College of Computer Science & Information, Guizhou University, Guiyang 550025, China)

Abstract: This article includes a design of a confidence relationship and safe communication method based on mobile Ad Hoc networtk. Through dividing this confidence relationship into public confidence and crunode self-confidence, a model on the basis of a public confidence as background and crunode self-determination conficence relationship is to be established.

Key words: mobile Ad Hoc network; crunode group; public confidence (background confidence) address list; notification

1 引言

一般认为,没有基础设施的网络出现在20世纪70年代,在最初开发报文交换技术后不久,美国国防部高级研究规划署(DARPA)资质了一项特别的研究――分组无线网络(Packet Radio network),即让报文交换技术在不受固定或有线的基础设施限制的环境下运行。

在结构上,这中网络是由一系列的移动结点组成,是一种自组织的网络,它不依赖任何的已经铺设的网络基础设施。网络中的节点动态且任意分布,结点之间通过无线方式互连,它将分组交换网络的概念引申到广播网络的范畴。这项工作开辟了移动自组网(Mobile Ad Hoc Network,简称Ad Hoc网络或MANET)研发的先河。

目前,Ad Hoc网络研究的主要内容集中在路由协议,网络调度和功率控制等方向。如何在Ad Hoc网络中进行带有身份认证的安全通信还是一个全新的方向。本文在建立信任模型的方式上,提出了新的概念,并对它的应用进行了探讨。

2 构建模型所需的基本概念

2.1 移动Ad Hoc 网络中的结点群

群是一定数量的结点所组成的集合,它们具有某些相同的特性。在移动Ad Hoc 网络中,将节点一共划分为3种不同的群落。初始群,为了达成某一目标而组建移动Ad Hoc 网络时的初始结点所组成的集合。它们构成了移动Ad Hoc 网络中的初始公共信任关系。衍生群,具有对通知进行签名权利的结点所组成的集合,初始群是衍生群。衍生群的成员一般为公共信任度较高,在实现某一目标中起到重要作用的成员,与其它网络环境中的管理员起到相似的作用,只是衍生群结点的决定不具有强制性。群,使用移动Ad Hoc 网络参与其活动,但是不具有通知签名权的结点。群成员的流动性较强,在达成目标的过程中起到辅助的作用。

2.2 移动Ad Hoc 网络中的通知

通知由衍生群成员签名,在达到相应的门限以后向全网络广播。通知包含以下几种不同的类型,新证书的,证书的撤销,结点的群属的变化。通知的组成如下:

1) 通知号:通知的唯一编号。例如:使用时间+类型+序号组成通知编号,时间为2009-3-6新证书类的通知的编号为1,通知的编号为0001。则总的通知编号为2009030610001。

2) 正文:通知的正文,根据不同的通知类型,可以是新证书的全文,被撤销的证书的ID或者证书群属的变化(群提升为衍生群,衍生群下调为群)。

3) 签名群:门限数量的衍生群成员对正文签名。根据具体的使用情况可以设计为不同衍生群成员对正文签名的序列,也可以设计为共同签名。

4) 时间:通知的时间。

50 有效期:通知的有效期。

2.3 结点证书

用于表明结点(结点用户)身份的证书。一般情况下应包含以下内容:

1) 证书ID :证书的唯一标识。

2) 证书所有者的身份详细信息:能够明确表示证书所有者身份的信息组。

3) 证书所有者的标识:能够简单标识证书所有者的字符串。

4) 证书的有效期:包含证书的生效和失效的时间。

5) 证书所有者的公钥及算法:证书所有者使用公钥及其算法。

6) 对证书使用的签名算法:某一衍生群成员或者证书生成程序对证书的签名算法或hash算法。

7) 扩展项:其它可能使用到的信息。

8) 证书的签名:使用6中的算法对证书的签名或hash值。

2.4 公共信任(背景信任)

所有通知的集合即是公共信任,初始群建立的时候就建立了初始的公共信任关系。之后,随着通知的增加,公共信任也在发生着变化。

2.5 结点自有信任

以公共信任为基础,结点自主的决定接纳的通知所组成的集合。

2.6 通讯录

通讯录是证书存在性的表示文件,是通知累积的结果。分为公共通讯录和自有通讯录。公共通讯录包含以下内容:

1) 证书ID。

2) 证书所有者的标识。

3) 证书所有者的群属。

4) 证书所有者使用的公钥及算法。

自有通讯录为自有信任所接纳的通知的积累。它包含以下内容:

1) 证书ID。

2) 证书所有者的标识。

3) 证书所有者的群属。

4) 证书所有者使用的公钥及算法。

5) 证书的签名。

2.7 活动结点

当一个结点处于网络中,能够与其它的结点通信时,我们说这样的结点是活动的。

3 移动AdHoc网络中的信任模型的建立

在移动AdHoc网络中不应假设存在有一直活动的结点,即使有也不能保证该结点不受到其它因素的影响,而脱离网络。因此在移动AdHoc网络建立PKI模型,设立常驻的CA是不现实的。所以只能从其它角度设计信任模型。

3.1 通知的规则

构建某移动AdHoc网络时,初始群结点之间通过其它手段建立了初始公共信任。结点的自有信任和公共信任是一致的。一次性初始化所有初始群结点的证书。此时,公共通讯录和自有通讯录保持一致,通知堆栈为空。

新结点加入网络,先通过证书生成程序生成自己的证书。之后,使用该证书生成没有签名群的通知,再将此通知和相关的证明材料,发送给公共通讯录(或自有通讯录)中活动的衍生群成员。衍生群成员接收到相关资料后,根据实际情况判断是否对该通知签名。在一定的时效之内,申请者获得门限数量的签名,便可以向全网络广播通知。

同样的道理,当一个群成员长期处于非活动,或者完成了他的工作。则需要在其证书到期之前撤销。此时,某衍生群成员可以生成一个撤销证书的通知,在通知正文中添加被撤销的证书的ID和被撤销的理由。并附上自身对正文的签名发送给公共通讯录(或自有通讯录)中活动的衍生群成员。接收到该通知后衍生群成员,先通过签名验证正文的完整性,再决定是否对该通知签名。一定的时效之内,者获得门限数量的签名,便可以向全网络广播通知。

类似,群属变更通知也是由某衍生群成员。只是通知的正文是群属变更的结点证书的ID和变更的群属关系。

3.2 公共信任与自有信任的差异

公共信任即背景信任是所有通知累积的结果,它直接的表现为公共通讯录的现状。公共通讯录中结点证书的存在性,结点的群属关系都是无条件的接纳通知的结果。公共通讯录在一定程度上反映的整个网络对各结点的信任程度。

自有信任是结点对公共信任选择性接纳的结果。接收到新的通知时,公共通讯录将会被无条件的更新,但一个结点在面对通知的时候,可以选择接受或拒绝,如果结点拒绝通知,则相应的自有通讯录不被更新。

公共通讯录如实的记录了所有的通知累积的结果。而自有通讯录则是根据结点之间的通讯过程,结点的使用人参照自己的利益,对通知加以筛选,选择与自身利益关系密切的通知加以采纳。甚至在撤销通知上公共信任和结点自有信任依然能保持不一致。

3.3 公共通讯录与自有通讯录的差异

公共通讯录只是证书存在性的表示文件,自有通讯录还肩负有验证证书真实性的功能。在接纳某条证书申请通知的时候,需要将证书的签名保存下来。在对方提供证书全文的时候,没有CA进行验证。虽然通过证书自带的签名可以验证证书的完整性,但结点只能通过对方提供的证书的签名与自有通讯录中保留的签名进行比较来确认证书的真实性。

3.4 建立该模型的存储需求

由于没有常驻结点,任何一个结点都有可能从活动状态转变为非活动的状态。因此,结点可能错过许多的通知和通讯录的更新,所以,当它从新进入活动状态时,需要同周围的结点交换和更新通知堆栈和通讯录。

根据以上的需求,每一个结点都应开辟相应的存储区域来存储通知堆栈和公共通讯录。受到存储容量的限制,用于交换的通知堆栈不存储所有的通知,只保留足够长时间以内的通知。比如,30天或者一个季度。

除了,建立公共信任部分的存储需求,结点还需要保存自有通讯录和与自身相关的通知的副本。例如:自身所接纳的通知的副本;自身签名的通知;与自己证书的申请;群属变化有关的通知等。

3.5 通知栈和公共通讯录的更新方式

结点由非活动状态转变为活动状态,需要更新自己的通知堆栈和公共通讯录。此时,有以下几种不同的更新方法。其一,从较为信任的结点下载更新。其二,从周围几个结点比照下载更新。第一种方式可能需要的时间较长,但相对安全。第二种方式的效率更快。

3.6 通信中的双向认证协议

在通信过程中没有CA进行认证,因此需要为通信双方设计双向的认证协议。例如:

A,B为网络中的两个成员,kga为A使用的公钥,kgb为B使用的公钥。Ca为A的证书的全文,Cb为B的证书的全文。N1,N2为2个随机数。K为A,B通讯使用的对等密钥。协议如下:

认证过程:B通过自己的私钥将Ca解密,再使用证书中6的算法对证书进行签名或hash。将得到的结果同自有通讯录中的结果经行比较。如果一致并且A 能够解出N2则通过认证。A的认证过程同理。

3.7 该信任模型的功能

本文中的信任模型不是一个从某些信任锚点开始的,100%信任的链条所构成的网络。它是一个模糊的信任模型,它在结点之间的相互信任关系中可以做到以下的几点内容:

1) 身份的可验证性。

一个结点和它的使用者在向网络提供了自己的身份信息以后,是不能够自己随便修改的。由于在网络中存储有通知和通讯录的多个副本,篡改一个到几个副本是没有意义的。证书向全网络表明了持有者的公钥。只有持有正确的私钥的人才能通过认证协议的挑战,证实其身份。

2) 责任的可追究性。

从初始群建立初始的信任关系起,所有信任关系的变化都有相应的通知作为记录。通知具有多个副本,并且通知的签名群中包含有多个不同成员对通知正文的签名,单一的签名成员或其他人很难复制和伪造通知。因此,如果某个网络成员出了问题,一直可以追溯到最初对其证书申请进行签名的成员。

3) 通讯的保密性。

通过双向的认证协议,通信双方可以完成身份的认证和密钥的交换。在接下来的通信过程中可以使用交换的密钥,进行加密的通信。

3.8 信任关系的可容错修复

网络中存在着通讯录和通知堆栈的多个副本,根据简单的冗余数据容错原理,可以对抗外界因素对于网络的破坏。并且当数据残缺,不明确的时候可以通过仲裁机制,由衍生群成员生成一个新的通知覆盖原来的信任关系。该通知需求的门限处于较高的水平。

4 小结

以公共信任为背景,结点自主决定信任关系的模型打破了传统信任CA的体系,无视对CA服务器结点的活动性要求。在以移动为优势,不确定性较高的AdHoc网络中建立起模糊的信任关系,即提供了安全服务,又对抗了AdHoc网络容易遭受破坏的缺点。因此建立在分散的信任关系累积起来的公共背景信任基础上的信任模型,在移动AdHoc网络中的应用有着广泛的前景。

上一篇:基于Java语言的FTP Client程序设计 下一篇:基于IBM z/OS的银行信用卡系统的解决方案