CN103166965B - 一种基于子空间属性的多源网络编码污染防御方法 - Google Patents

一种基于子空间属性的多源网络编码污染防御方法 Download PDF

Info

Publication number
CN103166965B
CN103166965B CN201310071271.1A CN201310071271A CN103166965B CN 103166965 B CN103166965 B CN 103166965B CN 201310071271 A CN201310071271 A CN 201310071271A CN 103166965 B CN103166965 B CN 103166965B
Authority
CN
China
Prior art keywords
node
source
network
packet
zero
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310071271.1A
Other languages
English (en)
Other versions
CN103166965A (zh
Inventor
尚涛
黄福华
宋姗姗
林翔
赵晓杰
刘建伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beihang University
Original Assignee
Beihang University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beihang University filed Critical Beihang University
Priority to CN201310071271.1A priority Critical patent/CN103166965B/zh
Publication of CN103166965A publication Critical patent/CN103166965A/zh
Application granted granted Critical
Publication of CN103166965B publication Critical patent/CN103166965B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种基于子空间属性的多源网络编码污染防御方法,它包含三大步骤:步骤一:建立多源网络编码系统模型,包括确定多源网络编码方法、建立敌手模型、建立一个可信中心节点和利用网络编码子空间属性;步骤二:初始化,包括分配索引、生成零密钥和分发零密钥;步骤三:消息传输和验证。本发明利用网络编码的子空间属性实现抵御污染攻击的多源安全网络编码,和密码学抵御污染个攻击方法相比,利用子空间属性的防御方案使计算开销减少;它是网络内的直接检测,提供了更高的效率和安全性,能够适用于污染攻击问题更为严重的多源编码系统中。

Description

一种基于子空间属性的多源网络编码污染防御方法
技术领域
本发明涉及一种基于子空间属性的多源网络编码污染防御方法,属于信息网络安全技术领域。
背景技术
网络编码是近年来网络信息传输领域的新技术,它改变了传统网络中继节点只对数据包进行存储转发的传输模式,允许中继节点对数据包进行编码,从而能够达到传统传输模式无法达到的网络容量上限。进一步的研究表明,网络编码在提高网络吞吐量、均衡网络负载、增强网络鲁棒性和节约网络能耗等方面均有良好的作用。网络编码允许中继节点的编码操作带来了许多益处,但同时也带来了一个严重的网络编码所特有的安全威胁——污染攻击。污染攻击指中继节点向网络中注入损坏的数据包(包括对合法数据包的篡改),虽然数据包注入不是一个新的攻击,但在网络编码中却会带来灾难性的后果。当中继节点进行编码时,只要有一个损坏的数据包输入,所有的输出编码包都将被损坏;下游的节点收到这些损坏的编码包,对它们进行编码,将会产生更多的损坏的数据。这样,少量损坏的数据包通过编码操作扩散导致大量数据包的损坏,即,网络中的大量数据包被“污染”了。污染攻击最终会造成网络的吞吐量急剧下降,使网络趋于瘫痪。
当网络中存在多个源节点时,只对属于同一个源节点的数据包分别进行编码,其吞吐量并不能总是达到网络容量上限。多个源之间的联合网络编码,即多源网络编码,能够达到分别编码所不能达到的容量上限。然而,多源网络编码面临的更加严峻的污染攻击的考验。其原因在于:其一,多源网络编码中的恶意节点能够实施跨流污染攻击,造成其他数据流也被污染。这是由于多源网络编码将来自不同源的数据包编码在一起,当来自一个源的数据流被污染,联合编码操作将造成来自其他源的数据流也被污染,在下游节点又不断扩散到更多的数据流,导致比单源网络编码更严重的污染。其二,由于存在多个源节点,这些源节点不都是可信的,这给污染的防御造成更大的困难。在单源网络编码中,假设单个源节点可信是合理的,但在多源网络编码中,部分源节点可能是恶意节点,这些恶意节点的存在并不是为了发送数据包,而是为了利用跨流污染攻击污染其他正常源节点的数据。网络中没有源节点作为可信的根节点,防御污染攻击的难度更大。
针对污染攻击,已有的解决方案包括密码学方法、信息论方法和网络纠错码方法。密码学方法依赖附加于编码包后的验证信息,允许中继节点对接收到的编码包的完整性进行验证,过滤污染包。现有的密码学方法分为利用同态杂凑函数的方法和利用同态签名的方法这两种。在同态杂凑函数的方法中,源节点使用同态杂凑函数为每个源数据包计算一个杂凑值,并且通过认证的信道将这些杂凑值分发给中继节点,杂凑函数的同态特性允许中继节点利用源数据包的杂凑值来计算编码包的杂凑值,中继节点同时计算接收到的编码包的杂凑值,最后通过比较这两个杂凑值是否相等来验证编码包的完整性。然而,同态杂凑函数方法的计算开销较大。基于同态签名的方案,需要为每一个新的源节点发送的文件可靠地分发一个新的公钥,这个公钥与文件的大小呈线性比例关系,从而难以适应大规模数据内容的分发。以上两类基于密码学方法的方法可以提供网络内的直接污染检测,但需要较大的计算开销,而且不适用于多源网络编码。基于信息论的方法要么通过编码足够的冗余信息,使目的节点能够检测到污染的存在;要么使用分布式协议,容忍污染和恢复源数据包。两者都只是在目的节点识别污染,不排除污染攻击节点,从而无法阻止污染攻击使网络吞吐量下降。基于网络纠错码的方法,能够检测和更正污染包,然而该方法是在纠错能力和码率之间的一种权衡,因而纠错污染包的能力是有限的。
网络编码的子空间属性是线性网络编码的一个特殊属性。所谓子空间属性是指:在线性网络编码中,源节点发送的数据包虽然经过中继节点的编码,却仍然都属于源节点的数据包张成的线性子空间中。利用这个性质,生成线性子空间相应的零空间,从而零空间中的任意向量和网络中的编码包都是正交的。从零空间选取一定数量的向量分发给中继节点,中继节点即可利用这些向量对编码包进行完整性验证。与抵御污染攻击的密码学方法相比,利用子空间属性的防御方案利用了网络编码本身的特性,计算效率大大提高;与信息论和网络纠错码相比,利用子空间属性的防御方案能够提供网络内的直接检测,提供了更高的安全性。
在多源网络编码系统中,研究一种利用子空间属性的、能够高效地在网络内直接检测污染的污染攻击防御方法,将对构造安全的多源网络编码提供有力的支持。
发明内容
本发明解决的技术问题是:为了抵御多源网络编码的污染攻击,克服现有防御方案的不足,利用多源网络编码的子空间属性提供一种基于子空间属性的多源网络编码污染防御方法,降低完整性验证所需的计算开销和提高多源网络编码的安全性。
本发明采取的技术方案是:
一种基于子空间属性的多源网络编码污染防御方法,它包含以下步骤:
步骤一:建立多源网络编码系统模型
1.确定多源网络编码方法
网络可以建模为有向图G=(V,E),存在一个源节点集和一个目的节点集每个源节点si要将数据包多播到目的节点集T,每个源节点的数据包附加上编码系数后得到以下形式:
式中符号说明如下:表示源节点si(1≤i≤r)发送的第j个源数据包;表示源数据包的数据部分;r表示源节点集中源节点个数;g表示每一代中的数据包个数;n表示数据部分长度;m表示源节点集发送的总数据包数。
源节点按代将源数据包发送出去。
网络的中继节点对属于同一代的数据包进行编码,从它的输入链路接收到若干数据包这些数据包每个都是源数据包的线性组合,节点随机选取局部编码向量计算的这些数据包的线性组合:从而得到编码包最后将其传送到节点的一个或多个输出链路。
当目的节点ti收到m条线性无关的编码包,即可利用高斯消元法解线性方程组恢复出源数据包
2.建立敌手模型
定义污染攻击为向网络中注入损坏的数据包,而损坏的数据包指网络中的任意链路上的编码向量 w → = ( w ^ , β → ) , w ^ ≠ Σ i = 1 m β i v ^ i . 其中 v → i ( 1 ≤ i ≤ m ) 是源数据包,是编码系数。攻击者为能够获取网络资源的内部节点,多个源节点中可能存在部分恶意节点。
3.建立一个可信中心节点
由于源节点可能是恶意的,因而需要设立一个可信中心节点来作为可信根节点;同时,在利用子空间属性时,可信中心节点被用来生成和分配相关零密钥。
4.利用网络编码子空间属性
在多源网络编码系统中,由于编码操作采用的是随机线性组合,由此可见,在不存在恶意节点的情况下,所有中继节点输出的编码包都属于这个子空间,而被污染的编码包不属于该子空间。
步骤二:初始化
1.分配索引
当网络中某个节点有数据需要发送,它向可信中心节点发送一个索引请求消息;可信中心节点目的节点发来的索引请求消息,假设在一个设定的时间间隔△T内收到r(1≤r)个节点发来的索引请求消息,则可信中心节点分别给这r个节点分配1至r的索引,之后,节点对数据包附加编码系数:
式中符号说明如下:表示源节点si(1≤i≤r)发送的第j个源数据包;表示源数据包的数据部分;r表示源节点集中源节点个数;g表示每一代中的数据包个数。
2.生成零密钥
源节点集S={s1,…,sr}各个中的每个节点将添加编码系数后的源数据包上传到可信中心节点,同时上传到可信中心节点还有源节点集S={s1,…,sr}中每个源节点的出度,记为OUT(si)。
所有数据包构成一个矩阵:
X = v → 1,1 · · · v → 1 , g · · · v → r , 1 · · · v → r , g m × ( n + m )
由该矩阵构成线性方程组:
X z → = 0
式中符号说明如下:X表示源数据包构成的矩阵,表示将X映射到0的向量。
解得X的零空间的n个基向量计算的线性组合得到一个零密钥,即,其中{λ1,…,λn}是可信中心节点随机选取n个系数。
3.分发零密钥
源节点集S={s1,…,sr}中的每个源节点si收到可信中心节点发送的OUT(si)个零密钥后,将它们从OUT(si)个输出链路分别发送出去,以和普通数据包相同的方式组播到目的节点集T={t1,…,tk}。中继节点和编码普通数据包相同的方式编码这些零密钥,即,它对输入链路的l个零密钥进行随机线性组合得到编码包再将编码包从输出链路传送出去。中继节点存储收到的d(1≤d)线性无关的零密钥组成一个零密钥矩阵:采用同态杂凑函对零密钥的完整性进行保护。
步骤三:消息传输和验证
数据从源节点集以多源网络编码的方式传送到目的节点集,中继节点对数据包进行验证。验证方法如下:
w → i K = 0 ( 1 ≤ i ≤ l )
式中符号说明如下:表示节点接收到的编码包,K表示存储在本地的零密钥矩阵。
是合法的数据包,上式成立,节点将其进行编码后从输出链路发送出去;若是受到污染的数据包,即,不属于张成的子空间里的向量,则上式将以(d表示矩阵K的零密钥数,q表示有限域的大小)。的概率不成立,节点将其丢弃。
本发明与现有技术相比的优点在于:
(1)本发明利用网络编码的子空间属性实现抵御污染攻击的多源安全网络编码,和密码学抵御污染个攻击方法相比,利用子空间属性的防御方案使计算开销减少,并且能够适用于污染攻击问题更为严重的多源编码系统中。
(2)与信息论和网络纠错码相比,利用子空间属性的防御方案能够提供的是网络内的直接检测,并且提供了更高的效率和安全性。
附图说明
图1为本发明的网络拓扑结构图;
图2为本发明的网络编码示意图;
图3为本发明实施的网络环境图;
图4为本发明的污染防御方案的初始化过程索引分配示意图;
图5为本发明的污染防御方案的初始化过程零密钥生成和分发示意图;
图6为本发明的污染防御方案的消息验证示意图;
图7为本发明的实施步骤流程图。
图中符号说明如下:
S={s1,…,sr}表示源节点集;
表示源节点si(1≤i≤r)发送的源数据包;
1,…,8表示部分中继节点的标号;
w表示中继节点生成的编码消息;
T={t1,…,tk}表示目的节点集;
N表示中继节点;
表示中继节点输入链路的数据包;
表示局部编码向量;
w → = Σ i = 1 l α i w → i 表示编码操作;
表示编码包;
C表示可信中心节点;
OUT(si)表示源节点的出度;
表示零密钥;
表示编码后的零密钥;
K表示零密钥矩阵。
具体实施方式
本发明所提出的一种基于子空间属性的多源网络编码污染防御方法需要解决以下三个问题:第一,如何建立基于子空间属性的多源网络编码系统模型;第二,如何初始化污染防御方法中的网络的初始状态;第三,如何利用基于子空间属性的污染防御方法进行消息传输和验证。
该方案的主要思想是:
在多源网络编码系统中的编码包共享的性质是它们都属于同一个子空间ΠX,通过检查编码包是否属于该子空间来验证编码包的完整性。由于子空间ΠX的向量和的基的任意线性组合正交,因此,在我们的方案中,网络中的每个节点都会被分配一些属于的向量,这些向量称为零密钥,利用这些零密钥可以验证编码包的完整性。
下面分三个部分阐述本发明的具体实施方法:
步骤一:建立多源网络编码系统模型
确定多源网络编码方法
多源网络编码系统模型是将单源网络编码中的单个源节点扩展成一个源节点集得到的。以下是模型的详细描述。
网络可以建模为有向图G=(V,E),其中:V是网络中的节点集,E是网络中的链路集。在多源网络编码中,存在一个源节点集和一个目的节点集每个源节点si要将数据包多播到目的节点集T,网络拓扑如图1所示。源节点首先将数据包划分为代,为了简化分析,假设每个源节点中的代的大小都为g,于是,对于每个代,源节点集S一共需要发送m=g×r个数据包。每个数据包可视为由有限域Fq上的n个元素组成的向量,记为:
v ^ i , j = ( v 1 , · · · , v n ) ∈ F q n , 1 ≤ i ≤ r , 1 ≤ j ≤ g
式中符号说明如下:表示源节点si(1≤i≤r)发送的第j个源数据包的数据部分;r表示源节点集中源节点个数;g表示每一代中的数据包个数;n表示数据部分长度。
这个向量附加上编码系数后的形式如下:
式中符号说明如下:表示源节点si(1≤i≤r)发送的第j个源数据包;表示源数据包的数据部分;r表示源节点集中源节点个数;g表示每一代中的数据包个数;n表示数据部分长度;m表示源节点集发送的总数据包数。
为源数据包,称为源数据包的数据部分。后m个元素是源数据包的编码系数部分,记为:对于未编码的源数据包系数部分的第i代的第j个元素为1,其余都为0。
源节点按代将源数据包发送出去,为了叙述方便,将每一代的m个源数据包记为:以这m个源数据包为矩阵的行可以构成一个m×(n+m)的矩阵,记为: X = v → 1 · · · v → m .
网络的中继节点对属于同一代的数据包进行编码,即对数据包进行线性组合,允许对来自不同源节点的数据包进行编码。具体的编码操作如下:中继节点从它的输入链路接收到若干数据包这些数据包每个都是源数据包的线性组合,节点随机选取局部编码向量计算的这些数据包的线性组合:从而得到编码包最后将其传送到节点的一个或多个输出链路。通过归纳可知输出链路上的编码包是源数据包的线性组合:其中称为全局编码向量,该编码过程如图2所示。
在网络中不存在恶意节点的情况下,当目的节点ti收到m条线性无关的编码包,即可利用高斯消元法解线性方程组恢复出源数据包
本多源网络编码模型可在任意网络中实施,实施该方法的实例网络拓扑如图3所示,设置为无线网状网,802.11MAC带宽为5.5M,邻居节点之间的距离为250m。源节点集S={s1,s2}通过中继节点1、2、3、4将数据包多播到目的节点集T={t1,t2}。源数据包中的符号所属的有限域大小设为q=28,每一代的大小设为g=32,源数据包中的数据部分长度设为n=1500Byte。按照上述方法,源节点集s1,s2分别每代对32个数据包添加编码系数,选取随机系数对其进行线性组合,并从输出链路发送到中继节点1、2,中继节点1、2对数据包进行编码,可以对来自s1,s2的数据包进行联合编码,然后发送给中继节点3、4,3、4再进行编码并发送给目的节点,目的节点集T={t1,t2}收到64个线性无关的编码包后既可解解码得到源节点的数据包。
(2)建立敌手模型
在多源网络编码系统中,数据包污染攻击指恶意节点向网络中注入损坏的数据包的攻击行为。损坏的数据包的定义如下:对于网络中的任意链路上的编码向量则称编码向量为损坏的数据包。
根据能否获取网络资源,网络中恶意节点可以分为外部节点和内部节点两类。外部节点由于无法接入网络,无法实施污染攻击。内部节点可以通过篡改原有编码向量或新构造损坏的编码向量来实施污染攻击。本发明仅讨论内部节点的污染攻击。同时,多个源节点中可能存在部分恶意节点。
如图3所示,节点1若是恶意节点,接收到源节点集S={s1,s2}的数据包之后,它将注入损坏的数据包,使得下游的数据包受到污染。
(3)建立一个可信中心节点
在已有的许多方案中都设立了可信中心节点,其被用于多种用途,包括显示地检测和排除攻击节点、设立和分发杂凑值、MAC值和密钥等。在多源网络编码中,由于存在多个源节点,这些源节点可能是恶意节点,因而需要设立一个可信中心节点来作为可信根节点;同时,在利用子空间属性时,可信中心节点被用来生成和分配相关零密钥。
如图3所示,C表示可信中心节点。
(4)利用网络编码的子空间属性
在上文所述多源网络编码系统中,m个源数据包可以张成一个子空间:
Π X = span { v → 1 , . . . , v → m } = { v → | v → = k 1 v → 1 + k 2 v → 2 + . . . + k m v → m , ∀ k i ∈ F q ( i = 1 , . . . , m ) }
源数据包的任意线性组合都属于该子空间,即,ΠX对随机线性组合运算是封闭的。
本发明的污染防御方案是基于这样的观察:在多源网络编码系统中,由于编码操作采用的是随机线性组合,由此可见,在不存在恶意节点的情况下,所有中继节点输出的编码包都属于这个子空间,而被污染的编码包不属于该子空间。根据这个性质来构造本发明的防御方案。
矩阵X的零空间定义为:即所有使得的集合。
根据零-秩化度定理,m×(n+m)的矩阵X满足:
rank(X)+nullity(X)=n+m
其中nullity(X)等于X的零空间的维数,即,又因为rank(X)=m,所以即,的维数等于源数据包数据部分的长度。
通过高斯消元法解可以得到的一组基,记为:由这组基张成,同样也是随机线性组合运算是封闭。的长度等于n+m,以其为第i行构成一个n×(n+m)的矩阵Z。
在多源网络编码系统中,网络中的所有编码包都是随机线性组合,也都属于ΠX,每个编码包都和属于的任意线性组合相互正交。
步骤二:初始化
(1)索引的分配
正如系统模型部分所描述的那样,在多源网络编码系统中,源节点需要给所要发送的数据包附加编码系数,而这需要节点获得它在源节点集中的索引,本方案利用可信中心节点来分配该索引。当网络中某个节点有数据需要发送,它向可信中心节点发送一个索引请求消息;可信中心节点目的节点发来的索引请求消息,假设在一个设定的时间间隔△T内收到r(1≤r)个节点发来的索引请求消息,则可信中心节点分别给这r个节点分配1至r的索引,节点收到该索引之后便可对数据包附加编码系数了,如图4所示。例如,源节点si收到可信中心节点分配的索引为i,那么它可对所要发送的一代数据包附加编码系数,一代中的第j个数据包添加编码系数的方法如下:
在图3所示的实例实施网络中,作为示例,源节点s2对第15源数据包添加编码系数的结果如下:
(2)零密钥的生成
在确定完设定的时间间隔△T需要发送数据包由r个源节点构成的源节点集S={s1,…,sr}之后,各个源节点将添加编码系数后的源数据包上传到可信中心节点,同时上传到可信中心节点还有源节点集S={s1,…,sr}中每个源节点的出度,记为OUT(si)。可信中心节点收到数据包后根据高斯消元法产生零空间,具体过程如下:
所有数据包构成一个矩阵:
X = v → 1,1 · · · v → 1 , g · · · v → r , 1 · · · v → r , g m × ( n + m )
由该矩阵构成线性方程组:
X z → = 0
式中符号说明如下:X表示源数据包构成的矩阵,表示将X映射到0的向量。
矩阵X的每一行是由添加编码系数后的源数据包组成,由于不同源数据包中的编码系数中的1的位置是不同的,因此矩阵X的每一行是线性独立的,即矩阵X的秩为m(若矩阵X的每一行是添加编码系数前的源数据包组成,矩阵X的每一行是不一定是线性独立的)。从而化简矩阵X得到行标准式,求得解空间的n个基向量,记为:n是由矩阵X的列数n+m减去矩阵X的秩m得到的。这个解空间就是和源数据包构成的子空间相互正交的零空间。n个基向量的任意线性组合都和子空间中的任意向量正交。零空间中的向量,即的任意线性组合,称为零密钥,用以验证中继节点的编码包是否属于源数据包张成的子空间。
计算出零空间的n个基向量后,可信中心节点根据每个源节点si之前上传的OUT(si)回传OUT(si)个零密钥,零密钥的生成方式是:可信中心节点随机选取n个系数{λ1,…,λn},计算的线性组合得到一个零密钥,即, k → j null = Σ i = 1 n λ i z → i .
(3)零密钥的分发
源节点集S={s1,…,sr}中的每个源节点si收到可信中心节点发送的OUT(si)个零密钥后,将它们从OUT(si)个输出链路分别发送出去,以和普通数据包相同的方式组播到目的节点集T={t1,…,tk}。由于只有在从源节点集S={s1,…,sr}到目的节点集T={t1,…,tk}的路径上的节点才会接收到源节点集S={s1,…,sr}发送的编码包,因而采取组播的方式发送零密钥到需要验证的中继节点,这样比用广播的方式效率更高,因为后者会将零密钥也发送到不接收源节点集S={s1,…,sr}数据的节点,造成带宽浪费。
中继节点采用编码普通数据包相同的方式编码这些零密钥,即,它对输入链路的l个零密钥进行随机线性组合得到编码包再将编码包从输出链路传送出去。中继节点存储收到的d(1≤d)线性无关的零密钥组成一个零密钥矩阵:这样,从源节点集S={s1,…,sr}到目的节点集T={t1,…,tk}路径上的所有节点都会存储有这样的零密钥矩阵,这些零密钥矩阵之后将用来验证中继节点收到的编码数据包的完整性。以编码的方式发送零密钥,是因为和发送普通数据包一样,多源网络编码也可以提高发送零密钥的吞吐量,从而提高零密钥分发的效率。
在分发零密钥时,也需要对其完整性进行保护,由于其数据量较少,采用高计算开销的同态杂凑函数并不会影响整个方案的计算性能。
零密钥生成分发的整个过程如图5所示。
在图3所示的实例实施网络中,C为源节点s1,s2分别分配2个零密钥,源节点s1,s2以和正常数据包相同的方式将其多播到目的节点集T={t1,t2},中继节点1、2、3、4编码和存储零密钥,比如,节点3将收到2个零密钥,构成零密钥矩阵: K = [ k → 1 null T , k → 2 null T ] .
步骤三:消息传输和验证
从源节点、中继节点、目的节点角度实现消息传输和验证。
(1)源节点发送数据
源节点对源数据包进行线性组合后通过输出链路发送到网络中。在图3所示的实例实施网络中,s1,s2分别编码32个源数据包,将编码后的数据包分别传送到中继节点1、2。
(2)中继节点验证和传输数据
中继节点从它的输入链路接收到若干数据包这些数据包每个都是源数据包的线性组合,节点利用存储在本地的零密钥矩阵K对编码包进行验证,如图6所示,具体验证方法如下:
w → i K = 0 ( 1 ≤ i ≤ l )
是合法的数据包,由于其和K中的每个零密钥正交,因而上式成立。若是受到污染的数据包,即,不属于张成的子空间里的向量,则上式将以很大的概率不成立,从而节点能够判定其为污染包。对于合法的c个数据包,节点随机选取局部编码向量计算的这些数据包的线性组合:从而得到编码包最后将其传送到节点的一个或多个输出链路。对于被污染的数据包,节点将其丢弃。
假设中继节点储在本地的零密钥矩阵K是由d个零密钥构成的,即为(n+m)×d的矩阵,那么,一个随机的n+m维向量将K到零的概率为:
Pr ( w → K = 0 ) = q ( n + m ) - d q n + m = 1 q d
式中符号说明如下:表示n+m随机向量,K表示存储在本地的零密钥矩阵,d表示矩阵K的零密钥数,q表示有限域的大小。
因此,当q和d足够大时,污染包成功通过验证的概率很低。
在图3所示的实例实施网络中,中继节点1污染了数据包节点3在收到从中继节点1的数据包时,用存储的零密钥矩阵:对其进行验证得:因此将丢弃,实现了网络内的污染防御。若中继节点1随机构造污染包通过验证的概率为概率极小,因而本污染防御方法可以达到较高的安全性。
(3)目的节点验证和接收数据
目的节点按照和中继节点相同的方式进行验证。当接收到足够的(大于等于源节点集发送的源数据包数)线性无关的合法编码包之后,使用高斯消元法解线性方程组得到源节点的源数据包。
本发明的实施步骤流程如图7所示。
在上述子空间验证法中,验证编码包的完整性只需要简单的线性运算,计算开销很小,相比同态密码学算法中复杂的同态运算,计算开销大大减小。由于是在中继节点而不是接收点对编码包进行验证,因而能够在网络内直接检测并丢弃污染包,有效的限定了污染范围,与信息论和网络纠错码相比,有更高的效率和安全性。
本发明说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
以上所述仅是本发明基于子空间属性的多源网络编码污染防御方法的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明一种基于子空间属性的多源网络编码污染防御方法原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明基于子空间属性的多源网络编码污染防御方法的保护范围。

Claims (1)

1.一种基于子空间属性的多源网络编码污染防御方法,其特征在于:它包含以下步骤:
步骤一:建立多源网络编码系统模型
1.1确定多源网络编码方法
网络建模为有向图G=(V,E),其中,V是网络中的节点集,E是网络中的链路集;存在一个源节点集和一个目的节点集每个源节点si要将数据包多播到目的节点集T,每个源节点的数据包附加上编码系数后得到以下形式:
式中符号说明如下:表示源节点si发送的第j个源数据包,其中,1≤i≤r;表示源数据包的数据部分;r表示源节点集中源节点个数;g表示每一代中的数据包个数;n表示数据部分长度;m表示源节点集发送的总数据包数;源节点按代将源数据包发送出去;
网络的中继节点对属于同一代的数据包进行编码,从它的输入链路接收到若干数据包这些数据包每个都是源数据包的线性组合,节点随机选取局部编码向量计算的这些数据包的线性组合:从而得到编码包最后将其传送到节点的一个或多个输出链路;
当目的节点ti收到m条线性无关的编码包,即利用高斯消元法解线性方程组恢复出源数据包
1.2建立敌手模型
定义污染攻击为向网络中注入损坏的数据包,而损坏的数据包指网络中的任意链路上的编码向量其中是源数据包的数据部分,是编码系数,攻击者为能够获取网络资源的内部节点,多个源节点中可能存在部分恶意节点;其中,1≤i≤m;
1.3建立一个可信中心节点
由于源节点可能是恶意的,因而需要设立一个可信中心节点来作为可信根节点;同时,在利用子空间属性时,可信中心节点被用来生成和分配相关零密钥;
1.4利用网络编码子空间属性
在多源网络编码系统中,由于编码操作采用的是随机线性组合,由此可见,在不存在恶意节点的情况下,所有中继节点输出的编码包都属于这个子空间,而被污染的编码包不属于该子空间;
步骤二:初始化
2.1分配索引
当网络中某个节点有数据需要发送,它向可信中心节点发送一个索引请求消息;可信中心节点目的节点发来的索引请求消息,假设在一个设定的时间间隔ΔT内收到r个节点发来的索引请求消息,则可信中心节点分别给这r个节点分配1至r的索引,之后,节点对数据包附加编码系数:其中,1≤r
式中符号说明如下:表示源节点si发送的第j个源数据包;表示源数据包的数据部分;r表示源节点集中源节点个数;g表示每一代中的数据包个数;其中,1≤i≤r
2.2生成零密钥
源节点集S={s1,…,sr}各个中的每个节点将添加编码系数后的源数据包上传到可信中心节点,同时上传到可信中心节点还有源节点集S={s1,…,sr}中每个源节点的出度,记为OUT(si);
所有数据包构成一个矩阵:
由该矩阵构成线性方程组:
式中符号说明如下:X表示源数据包构成的矩阵,表示将X映射到0的向量;
解得X的零空间的n个基向量计算的线性组合得到一个零密钥,即,其中{λ1,…,λn}是可信中心节点随机选取n个系数;
2.3分发零密钥
源节点集S={s1,…,sr}中的每个源节点si收到可信中心节点发送的OUT(si)个零密钥后,将它们从OUT(si)个输出链路分别发送出去,以和普通数据包相同的方式组播到目的节点集T={t1,…,tk};中继节点和编码普通数据包相同的方式编码这些零密钥,即,它对输入链路的l个零密钥进行随机线性组合得到编码包再将编码包从输出链路传送出去,中继节点存储收到的d线性无关的零密钥组成一个零密钥矩阵:采用同态杂凑函数对零密钥的完整性进行保护;其中,1≤d;
步骤三:消息传输和验证
数据从源节点集以多源网络编码的方式传送到目的节点集,中继节点对数据包进行验证;验证方法如下:
其中,1≤i≤l
式中符号说明如下:表示节点接收到的编码包,K表示存储在本地的零密钥矩阵;
是合法的数据包,上式成立,节点将其进行编码后从输出链路发送出去;若是受到污染的数据包,即,不属于张成的子空间里的向量,则上式将以的概率不成立,节点将其丢弃,式中d表示矩阵K的零密钥数,q表示有限域的大小。
CN201310071271.1A 2013-03-06 2013-03-06 一种基于子空间属性的多源网络编码污染防御方法 Active CN103166965B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310071271.1A CN103166965B (zh) 2013-03-06 2013-03-06 一种基于子空间属性的多源网络编码污染防御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310071271.1A CN103166965B (zh) 2013-03-06 2013-03-06 一种基于子空间属性的多源网络编码污染防御方法

Publications (2)

Publication Number Publication Date
CN103166965A CN103166965A (zh) 2013-06-19
CN103166965B true CN103166965B (zh) 2015-10-28

Family

ID=48589704

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310071271.1A Active CN103166965B (zh) 2013-03-06 2013-03-06 一种基于子空间属性的多源网络编码污染防御方法

Country Status (1)

Country Link
CN (1) CN103166965B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110336643A (zh) * 2019-07-05 2019-10-15 苏州大学 一种基于边缘计算环境的数据处理方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107994971B (zh) * 2017-11-17 2020-06-02 南通大学 面向有限缓冲区中继链路的编码传输方法及编码通信系统
CN110011806B (zh) * 2019-03-22 2022-02-25 西安邮电大学 多源网络编码机制下多重同态签名方法
US11108705B2 (en) * 2019-04-30 2021-08-31 Code On Network Coding, Llc Linear network coding with pre-determined coefficient generation through parameter initialization and reuse
CN110166247B (zh) * 2019-05-06 2022-03-04 湖北工业大学 能防污染攻击和定位中间节点合谋攻击的网络编码签名方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101267277A (zh) * 2008-04-30 2008-09-17 西安电子科技大学 防窃听和防污染的网络编码方法
CN102833265A (zh) * 2012-09-13 2012-12-19 北京航空航天大学 一种基于格理论的签名方案及其安全线性网络编码方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2550806B1 (en) * 2010-03-25 2019-05-15 Massachusetts Institute of Technology Secure network coding for multi-resolution wireless video streaming

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101267277A (zh) * 2008-04-30 2008-09-17 西安电子科技大学 防窃听和防污染的网络编码方法
CN102833265A (zh) * 2012-09-13 2012-12-19 北京航空航天大学 一种基于格理论的签名方案及其安全线性网络编码方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
网络编码签名算法;严文杰;《中国硕士论文全文数据库 信息科技辑》;20101231;全文 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110336643A (zh) * 2019-07-05 2019-10-15 苏州大学 一种基于边缘计算环境的数据处理方法

Also Published As

Publication number Publication date
CN103166965A (zh) 2013-06-19

Similar Documents

Publication Publication Date Title
CN102833265B (zh) 一种基于格理论的签名方案及其安全线性网络编码方法
CN103166965B (zh) 一种基于子空间属性的多源网络编码污染防御方法
CN101714910B (zh) 基于概率检测的抗污染网络编码方法
CN113691380B (zh) 一种智能电网中多维隐私数据聚合方法
CN101267277B (zh) 防窃听和防污染的网络编码方法
CN110474892B (zh) 一种基于区块链技术的虚假数据注入攻击防御方法
CN103313142B (zh) 面向三网融合的视频内容安全责任认定方法
CN102904726A (zh) 用于量子密钥分配系统的经典信道消息认证方法和装置
CN103457719A (zh) 一种对sm3密码算法hmac模式的侧信道能量分析方法
Saxena et al. Efficient signature scheme for delivering authentic control commands in the smart grid
Jolfaei et al. A lightweight integrity protection scheme for low latency smart grid applications
Koo et al. An online data-oriented authentication based on Merkle tree with improved reliability
CN101951314A (zh) 对称密码加密中s-盒的设计方法
Yu-Guang et al. Scalable arbitrated quantum signature of classical messages with multi-signers
Guangjun et al. Secure network coding against intra/inter-generation pollution attacks
Jolfaei et al. A lightweight integrity protection scheme for fast communications in smart grid
Bakhtiari et al. A message authentication code based on latin squares
CN107920352A (zh) 一种基于混沌的无线传感器网络广播身份认证方法
Kuznetsov et al. Code-Based Schemes for Post-Quantum Digital Signatures
Law et al. Comparative study of multicast authentication schemes with application to wide-area measurement system
Bertoni et al. Keccak and the SHA-3 Standardization
Li et al. Impossible meet-in-the-middle fault analysis on the LED lightweight cipher in VANETs
Tan et al. Chameleon: A blind double trapdoor hash function for securing AMI data aggregation
Xie et al. Efficient post-quantum secure network coding signatures in the standard model
He et al. Survey on secure transmission of network coding in wireless networks

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant