摘要:网络编码是近年来通信领域的重大突破,其基本思想是网络节点不仅参与数据转发,还参与数据处理,这样可以大幅提高网络性能。文章关注网络编码在无线网络环境中出现的安全隐患,重点分析了数据包污染、提出抗拜占庭攻击的安全网络编码的模型、理论及其挑战和未来发展方向。
0 引言
2000年Ahlswede等首次提出了网络编码理论,通过网络编码可以实现网络流量的最大化,2003年,Li Yeung和Cai证明了线性网络编码就可以实现网络的最大流。随后T.Ho等提出了随机网络编码理论,其思想是在网络中参与传输的节点,其输出信道上传输的数据是该点多条输入信道上传输的数据的随机线性组合,他们并且证明了接收节点能以很大的概率正确恢复出信源所发送的信息。
网络编码提高了网络的吞吐量和可靠性,但同时也带来了不可忽视的安全问题,主要包括污染和窃听两类问题。T.Ho等提出了一种能检测污染攻击是否存在的网络编码。Jaggi等针对攻击者能力的不同设计了一种适应性的安全网络编码。孙岳等考虑了网络编码下的多播网络故障恢复问题。
1 网络编码基本原理
1.1 网络编码定义
网络信息流的最大流最小割定理:对于已知的网络流图,信源S到信宿T的流量的最大值w等于其最小割的容量,即maxflow(S,T)=minC(S,T)。对于只有一个信宿的网络,依靠路由就可以获得最大流。
为了深刻的理解网络编码的理论基础,下面将以经典的蝴蝶网络为例,来说明网络编码的使用可以使网络通信达到最大流限。
图1 采用编码的具有两个目的节点的多播网络
图1是一个具有两个目的节点的单位容量(每条边的容量为1)多播网络。假设各条链路无差错和无时延。由最大流最小割定理,有maxflow(s,Rl)=2 。这时信源节点到目的节点Rl和R2的最大传播速率不可能超过2。如果不采用编码,如图1(a)所示,链路(3,4)就必须多发送一个比特,就超过该边的容量了。
然而,如果允许对进入节点的网络流进行编码时,如图1(b),显示了一种将a和b同时发送到目的节点R1和R2的方案,这里" + "为异或运算。这样目的节点R1接收到a和a+b,将a与a+b进行异或运算即可恢复出b。同理,目的节点R2可恢复出a和b。这样就可以使蝴蝶网络获得最大流限。
2 网络中网络编码的安全性研究
虽然网络编码的初衷在于提高网络的吞吐量,但是随着进一步研究发现,它也是一种安全网络传输的好方式。然而在实际的网络通信中,依然存在安全隐患,其主要表现在数据转发过程所受的包污染、拜占庭攻击是破坏数据安全传输的常见手段和方法。
2.1 网络编码的数据包污染
数据包污染的攻击是安全领域普遍的研究对象也是最值得研究课题,攻击者损坏网络节点并注入新的信息形成新的编码数据包,由于网络编码的每一个节点不仅具有路由功能而且有编码功能,其中受影响的诚实节点从一个损坏的数据包进一步影响其他诚实的节点,这种攻击可以导致污染像瘟疫一样在网络上蔓延。显而易见,即使是一些注入性的数据包,攻击者也可以降低其性能。目前,抗数据包污染技术的一个解决方案是利用异步高效率线性校验码,但这种技术却严重影响了吞吐量 。
恶意数据包。攻击者假冒诚实节点把不正确的信息传递到邻居节点,这种攻击导致原节点信息编码不能被预期的下一跳节点解码,影响下游节点的正确解码。恶意节点可能改变数据包携带的消息或者是包含在数据包包头的信息导致包头错误。在一个数据包中,一些重要的信息(例如在网络编码中的全局编码核、数据包产生的位置、数据包的目的地等)是记录在包头中的,包头任意错误可能引起传输的严重问题。如果全局编码核改变,称为是全局编码核错误,将影响接收节点的解码;如果目的地的信息被改变,可能引起接收节点的数据包丢失。而按Lamport等人的分类,上面的大多数错误都可归结到拜占庭错误中。
2.2 抗拜占庭攻击的网络编码模型
网络编码在抗数据包污染方面得到广泛研究的同时,很多研究者又开辟了网络编码在针对抗击另外一种有更大安全隐患的拜占庭攻击的研究。在这种攻击问题中,攻击者不仅想得到一些有用的消息,还通过多种手段来阻止通信双方的正常通信,即加入或修改正常传输中的信息。随着对安全、高效的数据通信的要求越来越高,这种恶意的攻击问题的解决势必越来越重要。
抗拜占庭攻击的一般通信模型,可从两个方面来描述:攻击模型和网络与网络编码模型。下面主要基于SJaggi等提出的有关结果。
信源Alice和信宿Bob通过一个有线或无线网络通信,攻击者Eve隐藏在网络中。此时,当Eve注入自己的数据包时,将这些修改后的数据包假装成从Alice到Bob传输的信息流的一部分。Eve是非常强大的,有极大的计算能力,知道Alice和Bob之间的编码和解码体制,也知道在内部节点处所执行的网络编码,并且知道确切的网络实现。针对攻击者的不同攻击能力可以分为如下3种主要攻击模型。
(1)秘密共享模型
假定Alice和Bob有一个低速率的秘密信道,Eve不知道秘密信道上的传输消息。考虑将消息经过网络编码后在网络上传输,Eve可以观察到所有除秘密信道之外的所有传输,也可选择是否在他所控制的节点处在要传输的数据包中注入一些恶意数据到从而达到阻止Alice和Bob通信的目的。
(2)万能攻击者模型
此模型中Eve除了在控制链接数目上受到一定限制外,是万能的、无所不知的,Alice和Bob之间没有独立于Eve的秘密信道。
(3)有限的窃听模型
在这个模型中,Eve的窃听能力是有限制的,只能观察到有限个传送的包。
3 研究方向和面临的挑战
3.1 研究方向
虽然网络编码已被证明可以改善系统的性能,但现有的网络编码系统的复杂性使它存在更多的安全漏洞,例如,高效路由协议可以显著提高吞吐量,然而,一旦协议被攻击者完全控制,那么将会扰乱大量的数据流的传输。因此,一个更根本的办法是设计新的网络编码安全协议,而不是修补现有的系统。
3.2 挑战
随着网络编码在无线网络中应用的深入,不仅引入了新的攻击类型,而且使得现有的攻击具有更强的破坏性,这对防御攻击提出了更大的挑战性。可以预见,网络编码在安全方面的研究会是将来的一个研究热点。如何设计更为安全的网络编码,我们提出以下指导原则。
原则1,网络编码系统应具备自我保护系统。
这一原则主张每个网络节点应具有防御攻击性能,以防止攻击者利用系统中最薄弱的环节,导致整个系统变得非常脆弱。例如,不安全应答组件ACK。
原则2,无线网络编码要求路由协议具有更良好的合作性。
中间节点不仅要实现路径选择和分组转发,而且需要参与数据包的编解码过程。由于带宽资源的匮乏,节点之间也存在竞争,例如,节点可能为了疏导链路而阻止或丢弃新的数据包来节省能源消耗。在这样的环境下,合理的激励机制可以鼓励节点间的合作,确保网络的正常运行。
原则3,保护机制开销尽量小。
显而易见,为了解决网络编码内部流数据污染攻击而以昂贵的网络编码加密机制为代价。虽然这种解决方案利于监测攻击,然而大大降低了系统性能。因此,如何设计既具有积极主动地防御攻击,又不降低系统性能的解决方案是我们未来的指导方向。