基于网络编码的分组验证方法

文档序号:7719091阅读:271来源:国知局
专利名称:基于网络编码的分组验证方法
技术领域
本发明涉及一种网络传输技术,尤指一种基于网络编码的分组验证方法。
背景技术
传统互联网的数据传输方式是存储转发,即网络的中间节点只负责对收到的分组进行转发,不对分组内容做任何处理。此外,信息被看作商品,被封装在IP分组里由一个路由器到另一个路由器进行转发。我们可以形象地把这种传输方式中的IP分组看作是高速公路上的汽车,虽然汽车行驶并分享同一条公路,但每一部汽车相对于其他汽车是独立的, 没有相交。网络编码理论的兴起彻底推翻了这一传统观点。为了提高网络吞吐率和健壮性,2000年,提出了基于网络编码的网络结构,在随后的几年中,又有其他的论文出现,对网络编码进行扩展。最后在2004年形成了,随机线性网络编码,为以后网络编码在实际网络中的应用打下了理论基础。网络编码的核心思想是网络中的节点不再简单地进行分组的存储转发(store-and-forward),当某个路由器收到多个属于同一个数据流(flow)的分组时,该路由器可以将这几个分组进行线性组合(或者采用最简单的操作异或),然后进行发送。接收端收到这些线性组合的分组后,计算这些线性组合的秩,如果秩的大小大于或等于参与线性组合的原分组的个数,则该接收端可以像解方程一样将原分组解出来,得到原来的数据。形象地描述这个过程,其实就是m个方程解η个未知数,前提是这η个方程的系数,必须是线性无关的。网络编码的优势是巨大的在组播网络中可以达到数据传输的理论最大值,并大大提高了链路的鲁棒性。然而,网络编码也同时带来了新的安全上的隐患污染攻击,即攻击者通过篡改网络中参与线性组合的分组从而使分组接收端不能解出原数据包。此外,攻击者只要篡改其中一个分组,那么跟这个分组有关联的分组就会都收到污染。 形象的说就是,η个方程解η个未知数的过程中,只要攻击者篡改其中一个方程中的某个系数,那么解出来的η个解在大多数情况下就会完全不一样,因此这更容易让攻击者发动拒绝服务攻击。为了防止或减轻网络编码中的污染攻击,基于传统的哈希,加/解密等的签名机制是无能为力的,因为这些签名信息会被网络中的节点通过线性处理而失效。例如要对10 个分组进行网络编码操作,那么数字签名需要放在这10个原分组中,但当这些分组进入到网络中的时候,由于路由器会对这些分组进行线性组合,会完全破坏掉这些数字签名。只有当目的节点接收到10个线性无关的分组,并能正确解出原来的10个分组的时候,才能回复出原来的数字签名。但这个美好的过程是行不通的。因为当攻击者污染了这10个分组中的一个时,目的端是不能够解出原来的正确的分组的,这时,数字签名也是无效的。因此,传统的数字签名方式在网络编码中是行不通的,如此,则有必要提出一种基于网络编码的分组验证方法,以及时发现网络编码中的污染攻击,而避免因网络编码受攻击而影响网络数据的正确传输的问题
发明内容
鉴于上述现有技术的缺点,本发明目的在于提供一种基于网络编码的分组验证方法,以及时发现网络编码中的污染攻击,而避免因网络编码受攻击而影响网络数据的正确传输的问题。为达到上述目的,本发明所提供的基于网络编码的分组验证方法是用以验证各个分组是否受到污染攻击,该基于网络编码的分组验证方法包括1)使用组播网络,每个分组具有多个接收端;2)预先在源端与每个接收端之间交换对称密钥,并协商好接下来要用到的同构hash算法的参数,且所述同构hash算法的参数包括对应每个分组的同构hash 值;3)自多个分组中选择一个分组,作为待验证分组;4)源端将对应所述待验证分组的同构hash值逐个发送给接收端;5)接收端接收到所述同构hash值后,使用预先交换过的对称密钥对所述同构hash值进行加密处理,并将经加密处理的同构hash值以应答的方式返回给源端;6)源端使用每个接收端交换的对称密钥对以应答方式得到的经加密处理的同构hash值进行验证,以验证所述同构hash值是否合格,若是,则使用该待验证分组开始发送正常的网络编码的真正的数据,若否,则确定所述待验证分组被污染攻击,并将其丢弃; 以及7)判断是否还存在未选择的分组,若是,则自未选择的分组中,选择下一个分组,作为待验证分组,并返回至步骤4),若否,则结束分组验证过程。以下结合上述技术方案,说明本发明的有益技术效果。相比于现有技术,本发明主要是将同构Hash函数应用到网络编码中,且只在源端只与接收端之间交换对称密钥,然后逐个分组进行验证,针对每个分组,首先源端将对应所选定的分组的同构hash值逐个发送给接收端,接收端接收到该同构hash值后,使用预先交换过的对称密钥对该同构hash值进行加密处理,并将经加密处理的同构hash值以应答的方式返回给源端,源端使用每个接收端交换的对称密钥对以应答方式得到的经加密处理的同构hash值进行验证,以验证该同构hash值是否合格,若是,则使用该分组开始发送正常的网络编码的真正的数据,若否,则确定所述待验证分组被污染攻击,并将其丢弃,由此以及时发现网络编码中的污染攻击,而避免因网络编码受攻击而影响网络数据的正确传输的问题。


图1为本发明的基于网络编码的分组验证方法的操作流程示意图。主要元件符号说明SlOO S109步骤
具体实施例方式以下通过特定的具体实例说明本发明的实施方式,所属领域的普通技术人员可由本说明书所揭示的内容轻易地了解本发明的其他优点与功效。本发明亦可通过其他不同的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。请参阅图1,其为显示本发明的基于网络编码的分组验证方法的操作流程示意图。 如图所示,发明的基于网络编码的分组验证方法是用以验证各个分组是否收到污染攻击, 以下即详细说明本发明的基于网络编码的分组验证方法的具体操作步骤。如图1所示,首先执行步骤S100,使用组播网络,每个分组具有多个接收端。接着,进行步骤SlOl。在步骤SlOl中,预先在源端与每个接收端之间交换对称密钥,并协商好接下来要用到的同构hash算法的参数,且该同构hash算法的参数包括对应每个分组的同构hash 值。接着,进行步骤S102。在步骤S102中,自多个分组中选择一个分组,作为待验证分组。接着,进行步骤 S103。在步骤S103中,源端将对应该待验证分组的同构hash值逐个发送给接收端。接着,进行步骤S104。在步骤S104中,接收端接收到该同构hash值后,使用预先交换过的对称密钥对该同构hash值进行加密处理,并将经加密处理的同构hash值以应答的方式返回给源端。接着,进行步骤S105。在步骤S105中,源端使用每个接收端交换的对称密钥对以应答方式得到的经加密处理的同构hash值进行验证,以验证所述同构hash值是否合格,若是,则进至步骤S106, 若否,则进至步骤S107。在步骤S106中,使用该待验证分组开始发送正常的网络编码的真正的数据。接着,进行步骤S108。在步骤S107中,确定所述待验证分组被污染攻击,并将该待验证分组丢弃。接着, 进行步骤S108。在步骤S108中,判断是否还存在未选择的分组,若是,则进至步骤S109,若否,则结束分组验证过程。在步骤S109中,自未选择的分组中,选择下一个分组,作为待验证分组,并返回至步骤S103。综上所述,本发明主要是将同构Hash函数应用到网络编码中,且只在源端只与接收端之间交换对称密钥,然后逐个分组进行验证,针对每个分组,首先源端将对应所选定的分组的同构hash值逐个发送给接收端,接收端接收到该同构hash值后,使用预先交换过的对称密钥对该同构hash值进行加密处理,并将经加密处理的同构hash值以应答的方式返回给源端,源端使用每个接收端交换的对称密钥对以应答方式得到的经加密处理的同构hash值进行验证,以验证该同构hash值是否合格,若是,则使用该分组开始发送正常的网络编码的真正的数据,若否,则确定所述待验证分组被污染攻击,并将其丢弃,由此以及时发现网络编码中的污染攻击,而避免因网络编码受攻击而影响网络数据的正确传输的问题。上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何所属技术领域的普通技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此,本发明的权利保护范围,应如所附的权利要求书的范围所列。
权利要求
1. 一种基于网络编码的分组验证方法,其用以验证各个分组是否受到污染攻击,特征在于,所述基于网络编码的分组验证方法包括1)使用组播网络,每个分组具有多个接收端;2)预先在源端与每个接收端之间交换对称密钥,并协商好接下来要用到的同构hash 算法的参数,且所述同构hash算法的参数包括对应每个分组的同构hash值;3)自多个分组中选择一个分组,作为待验证分组;4)源端将对应所述待验证分组的同构hash值逐个发送给接收端;5)接收端接收到所述同构hash值后,使用预先交换过的对称密钥对所述同构hash值进行加密处理,并将经加密处理的同构hash值以应答的方式返回给源端;6)源端使用每个接收端交换的对称密钥对以应答方式得到的经加密处理的同构hash 值进行验证,以验证所述同构hash值是否合格,若是,则使用该待验证分组开始发送正常的网络编码的真正的数据,若否,则确定所述待验证分组被污染攻击,并将其丢弃;以及7)判断是否还存在未选择的分组,若是,则自未选择的分组中,选择下一个分组,作为待验证分组,并返回至步骤4),若否,则结束分组验证过程。
全文摘要
本发明涉及一种基于网络编码的分组验证方法,主要是将同构Hash函数应用到网络编码中,且只在源端与接收端之间交换对称密钥,然后逐个分组进行验证,针对每个分组,首先源端将对应所选定的分组的同构hash值逐个发送给接收端,接收端接收到该同构hash值后,使用预先交换过的对称密钥对该同构hash值进行加密处理,并将其以应答的方式返回给源端,源端使用每个接收端交换的对称密钥对以应答方式得到的经加密处理的同构hash值进行验证,以验证该同构hash值是否合格,若是,则使用该分组开始发送正常的网络编码的真正的数据,若否,则确定所述待验证分组被污染攻击,并将其丢弃,由此以及时发现网络编码中的污染攻击,并予以有效规避。
文档编号H04L9/32GK102223209SQ20111019004
公开日2011年10月19日 申请日期2011年7月7日 优先权日2011年7月7日
发明者刘锡伟, 张冬冬, 王策, 程久军, 程成, 程骏路, 董诗昊 申请人:同济大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1