CN104660591B - 基于ip地址的包长度反馈网络隐蔽通信方法 - Google Patents
基于ip地址的包长度反馈网络隐蔽通信方法 Download PDFInfo
- Publication number
- CN104660591B CN104660591B CN201510055266.0A CN201510055266A CN104660591B CN 104660591 B CN104660591 B CN 104660591B CN 201510055266 A CN201510055266 A CN 201510055266A CN 104660591 B CN104660591 B CN 104660591B
- Authority
- CN
- China
- Prior art keywords
- length
- packet
- address
- information
- vector
- 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.)
- Expired - Fee Related
Links
- 230000006854 communication Effects 0.000 title claims abstract description 36
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000004891 communication Methods 0.000 title claims abstract description 34
- 230000005540 biological transmission Effects 0.000 claims abstract description 20
- 230000001360 synchronised effect Effects 0.000 claims abstract description 7
- 239000013598 vector Substances 0.000 claims description 91
- 239000011159 matrix material Substances 0.000 claims description 61
- 230000001174 ascending effect Effects 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000003860 storage Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000009826 distribution Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000005336 cracking Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 241000287196 Asthenes Species 0.000 description 1
- 229910002056 binary alloy Inorganic materials 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000005242 forging Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于IP地址的包长度反馈网络隐蔽通信方法,包括:发送端与接收端的同步阶段、建立同步后数据的发送阶段和接收端的接收和解码阶段。通过上述方式,本发明基于IP地址的包长度反馈网络隐蔽通信方法,提供了一种安全性高,隐蔽性强的可靠隐蔽通信方法,而且可以最大限度的减少失真度,适应性更强。
Description
技术领域
本发明涉及网络信息隐藏领域,特别涉及基于TCP/IP协议的隐蔽通信领域,具体涉及一种采用伪造源IP地址的主机地址字段与数据包长度的技术,利用不同的主机地址字段与IP数据包长度的组合嵌入隐蔽信息来模拟正常网络流从而构造高隐蔽性的隐蔽通信方法。
背景技术
现代网络技术的飞速发展使得传输信息更加快捷方便,但是大量的信息尤其是涉及到国家安全、商业机密和个人隐私信息的传输安全性越来越受到关注,这些信息一旦外泄,将会带来严重后果。以往多采用加密技术来传输这类信息,然而加密技术会引起攻击者的破解兴趣,并且随着计算机硬件的发展,破解速度比以前要快得多。近年来兴起的信息隐藏技术为该类安全传输问题提供了一个很好的解决方法。信息隐藏是将需要保密传递的信息隐藏到一些载体信息中,实现对秘密信息进行保护从而进行安全传输的一门技术。网络通信中巨大的信息流通量使得使用网络通信数据作为载体进行秘密通信的冗余量大,同时也使攻击者很难有足够的精力去检测网上所有的通信数据,因此利用网络通信数据来隐藏信息是一个比较理想的方法。
近年来的信息隐藏技术研究主要集中于两个方面,一是基于时间调制的时序型隐藏信道,二是基于网络基础协议的存储型隐藏信道。时序型信道通过调制数据包的发送时间或时间间隔来嵌入隐蔽信息,而网络协议存储型隐蔽信道主要通过修改TCP/IP数据包头信息或修改数据包内数据部分来实现。一般情形下,修改数据包内数据部分构造隐蔽信道的方式由于改变了原来数据包的内容,可以认为这种方式是通过加解密的方式来进行机密数据的隐蔽传输,而加解密技术容易引起第三方的兴趣而进行相关的密码破解来获取隐蔽数据,所以这种方式的隐蔽性受到很大的限制,所以需要一种更加满足要求的隐蔽通信方法。
发明内容
本发明主要解决的技术问题是提供一种基于IP地址的包长度反馈网络隐蔽通信方法,具有可靠性高、安全性高、失真度低、实用性强等优点,同时在TCP/IP协议的隐蔽通信方法的应用及普及上有着广泛的市场前景。
为解决上述技术问题,本发明采用的一个技术方案是:
提供一种基于IP地址的包长度反馈网络隐蔽通信方法,其步骤包括:
发送端与接收端的同步阶段:发送端和接收端协商信息发送的时间,以及利用生成函数独立生成编码矩阵和地址-长度向量矩阵;
建立同步后数据的发送阶段:对隐蔽信息进行加密,并将加密后的隐蔽信息分组嵌入到主机地址字段与IP数据包长度的组合信息中;
接收端的接收和解码阶段:接收端接收编码矩阵、地址-长度向量矩阵的生成函数和含有隐蔽信息的组合信息,并对组合信息进行解密。
在本发明一个较佳实施例中,所述发送端与接收端的同步阶段的具体步骤包括:
用分组长度向量来描述UDP数据流的特征,分组长度向量:
(1)
其中, (2)
L是分组长度的最大值, [1,2,…,L]表示了UDP数据流中所有数据包的长度值,表示数据流中分组长度为k的分组数目,N表示数据流中分组的数目;
设置隐蔽信息为w比特,即每个分组数据报将携带w比特的隐蔽信息,则将产生2w个不同的二进制字符串;
将2w个二进制串分解为一个具有2m行和2n列的编码矩阵来实现,2w=2m *2n且m<n,IP向量和长度向量如下:
IP向量为: (3)
其中(0≤k≤25)表示发送端的主机地址域并且以升序排列;
IP数据报长度向量集为:
(4)
其中(0≤k≤m)是一个向量集,对应于公式(3)中第k个主机标识的长度向量,则是所有长度向量集合的集合,并以下标升序排列。的定义如下:
(5)
其中,向量(1≤k≤n)代表了编码矩阵中第(k, i)个元素,的定义如下:
(6)
其中j取值为1<j<1473并且8≤≤1480;
每一个与的组合表示计算机将以作为主机标识地址来发送一个分组长度为的数据报,是从中随机选取的一个值。由此,每一个与的组合将代表一个嵌入在分组中隐蔽信息,则所有的组合(共有2w=2m *2n)将由×来实现,代表了所有的w比特二进制字符串,由×产生的地址-长度向量矩阵定义如下:
(7)
编码矩阵即对应的隐蔽信息密码本,与地址-长度向量矩阵对应,将2w个二进制串标记为,则表示使用频率最高的w比特二进制串,而则为使用频率最低的二进制串,对矩阵编码,编码后的编码矩阵如下所示:
(8);
计算得到最大失真度为:
(9)
其中,n是分组长度向量中的向量数目,是具有最大值或最小值的位置,为分组长度向量中位置上的长度分量值。
在本发明一个较佳实施例中,所述发送端与接收端的同步阶段的限定条件包括:
a)中元素数目至少为1且元素按升序排列,在嵌入时随机从中选取一
个来代表当前数据报的长度;
b)任意两个不同的与中没有相同的元素,以此来保证中的元素不重
复且按升序排列;
c)中两个相邻的元素差值必为1,即为自然数序列;对于中的最后一个元素与中的第一个元素,其差值将大于1;
d)以上限定条件对无效,即对中两个不同的与,可以存在相同的元素。
在本发明一个较佳实施例中,地址-长度向量矩阵中每行的元素以升序排列且不重复。
在本发明一个较佳实施例中,所述建立同步后数据的发送阶段,因为隐蔽信息加密后分为每w比特一组,即 为一个n*w比特的二进制隐蔽信息串,将二进制隐蔽信息串嵌入及发送的的具体步骤包括:
步骤1:对每一个组串mi,在IP向量中找到对应的,根据mi在编码矩阵中的位置下标找到地址-长度向量中的长度向量,任意选取中的一个值作为此组串的分组长度,标记为len,根据公式(9)计算失真度,比较与的大小,若,则进入步骤3,否则进入步骤2;
步骤2:按照顺序从中选取其他不同于len的值并计算相应的失真度,如果存在一个值使得,则将这个值标记为新的len;否则选择一个不在中的值并且满足,将这个值标记为新的len;
步骤3:构造一个分组数据报,使得分组长度等于len,并且IP地址的主机标识域为;
步骤4:将这个分组数据报发送给接收端,若有其他组串需传输则返回步骤1,若全部传输完毕则结束。
在本发明一个较佳实施例中,所述接收端的接收和解码阶段的具体步骤包括:
步骤1:对接收到的分组数据报,提取其长度值并标记为lenrecv,同时提取分组数据报的主机标识域并标记为Irecv;
步骤2:根据Irecv锁定在地址-长度向量矩阵中的行下标i,并在第i行中搜索是否有值等于lenrecv;若不存在,则表示此分组数据报为虚假分组,直接丢弃并返回步骤1;若存在,标记其列下标为j,进入步骤3;
步骤3:根据行下标i和列下标j在编码矩阵中找到对应的编码标记为,则即为此分组携带的隐蔽信息,记录并进入步骤4;
步骤4:若还有其他分组需解码则返回步骤1,否则所有已记录的二进制编码即为发送端发送的隐蔽信息。
本发明的有益效果是:提供了一种安全性高,隐蔽性强的可靠隐蔽通信方法,而且可以最大限度的减少失真度,适应性更强。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图,其中:
图1是本发明的基于IP地址的包长度反馈网络隐蔽通信方法整体流程示意图;
图2是本发明中建立同步后数据的发送阶段的流程示意图;
图3是本发明中接收端的接收和解码阶段的流程示意图;
图4展示了正常数据流与嵌入数据流的时间序列对比示意图;
图5展示了正常数据流与嵌入数据流的长度统计直方图;
图6展示了正常数据流与嵌入数据流的熵的比较示意图;
图7展示了统计特征比较结果示意图;
图8比较了传输性能和本发明传输过程中使用的虚假分组的比例示意图。
具体实施方式
下面将对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参阅图1,本发明实施例包括:
一种基于IP地址的包长度反馈网络隐蔽通信方法,利用基于UDP数据包进行通讯传输的应用中,通过伪造源IP地址,将隐蔽信息嵌入在IP地址的主机地址和IP头部的长度域中,通过正常的通讯过程将载有隐蔽信息的数据包从发送端传输到接收端,接收端根据相应的解码过程从主机地址和长度域中解析隐蔽信息。在发送端发送数据包之前,会通过相应的参数指标来使得隐蔽信息流与正常网络信息流达到高度相似,从而达到对隐蔽信息的安全传输。所述方法包括以下步骤(这里假设原始隐蔽信息已经进过加密处理成比特流文件,并且发送端和目的端已经过前期的协商知道对方的IP地址及端口号。):
为实现利用主机源IP地址和数据包长度结合来模拟正常网络流从而构造高隐蔽性的隐蔽信道,所定义的各项参数解释如下:
1.UDP数据包长度特征
UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(OpenSystem Interconnection,开放式系统互联) 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,适用于无须应答并且通常一次只传送少量数据的情况。由于UDP协议在数据传输过程中无须建立逻辑连接,对数据报也不进行检查,因此UDP具有较好的实时性,效率高。在有些情况下,包括视频电话会议系统在内的众多的客户/服务器模式的网络应用都需要使用UDP协议。在基于UDP协议的聊天应用中,UDP数据报的长度分布具有很大的随机性,因此是隐蔽信息嵌入的一个很好的载体。基于对UDP数据报的分析和统计,本发明定义了分组长度向量来描述UDP数据流的特征,其定义如下:
分组长度向量: (1)
其中, (2)
L是分组长度的最大值,而[1,2,…,L]表示了UDP数据流中所有数据包的长度值。表示数据流中分组长度为k的分组数目,N表示数据流中分组的数目,因此表示了数据流中长度为k的分组所占的比例值。对于UDP数据流的分析显示,通常的聊天应用中分组的时间序列显示出了随机分布的特征,而分组长度向量则显示出了特定的分布特征。
2.数据文件的存储特征:
基于对存储在计算机硬件存储设备上的各种格式的文件分析,本发明定义了数据文件的存储特征。对各种文件格式(例如pdf,Microsoft Word,video,txt,exe等)的数据文件,利用二进制式每字节(8bit)进行读取分析,定义了如下的存储特征:
1)文件中比特“0”和“1”的数量呈现大致相等的特征;
2)文件中“0”和“1”数目相等的字节数多于“0”和“1”不等的字节数,
例如每字节中4个“0”的字节数要多于每字节3个“0”或5个“0”的字节数。其分布特征如图3所示。
文件中比特“1”和比特“0”的分布具有对偶特征,即每字节k个“0”的数量与(8-k)个“0”的数量大致相等,每字节k个“1”的数量与(8-k)个“1”的数量大致相等。
3. IP向量和长度向量
假设在一次传输中要发送w比特隐蔽信息,即每个分组数据报将携带w比特隐蔽信息,则将产生2w个不同的二进制字符串。在嵌入时,本发明将2w个二进制串分解为一个具有2m行和2n列的编码矩阵来实现,此处要求2w=2m *2n并且m<n。由此定义了IP向量和长度向量如下:
IP向量: (3)
其中(0≤k≤25)表示发送端的主机地址域并且以升序排列。在此向量中任意两个主机地址之间的差值为任意值。
在网络上传输的IP数据报的长度在RFC相关文档中已有定义,有效载荷域(不包括包头)的大小为8-1480。在利用编码矩阵对信息嵌入时,由于编码矩阵只有n列,故只需要n个长度值就足够。为了有效利用1473个有效的长度值,本发明定义了长度向量:
长度向量集: (4)
其中(0≤k≤m)是一个向量集,对应于公式(3)中第k个主机标识的长度向量,则是所有长度向量集合的集合,并以下标升序排列。的定义如下:
(5)
其中,向量(1≤k≤n)代表了编码矩阵中第(k, i)个元素。其中的定义如下:
(6)
其中j取值为1<j<1473并且8≤≤1480。为了尽可能使得长度取值随机,设定以下限定条件:
d)中元素数目至少为1且元素按升序排列,在嵌入时随机从中选取一个来代表当前数据报的长度;
e)任意两个不同的与中没有相同的元素,以此来保证中的元素不重复且按升序排列;
f)中两个相邻的元素差值必为1,即为自然数序列;对于中的最后一个元素与中的第一个元素,其差值将大于1;
g)以上限定条件对无效,即对中两个不同的与,可以存在相同的元素。
4.地址-长度向量矩阵
本发明使用编码矩阵来实现隐蔽信息的嵌入和提取过程。如前所述,矩阵大小为m×n,即m行n列。由前面的定义知,每一个与的组合表示计算机将以作为主机标识地址来发送一个分组长度为的数据报,是从中随机选取的一个值。由此,每一个与的组合将代表一个嵌入在分组中隐蔽信息,则所有的组合(共有2w=2m *2n)将由×来实现,代表了所有的w比特二进制字符串。由×产生的地址-长度向量矩阵定义如下:
(7)
由定义可知,地址-长度向量矩阵中每行的元素以升序排列且不重复。
5.编码矩阵
编码矩阵即对应的隐蔽信息密码本,与地址-长度向量矩阵对应。编码矩阵的生成依赖于数据文件的存储特征与网络中分组的长度特征,即如图2和图3所示。由图2可知,网络中传输的分组长度具有明显的长度统计特征,即长度值越靠近长度向量的中央,则此长度的频度越高。这种现象同样存在于图3所示的数据文件存储特征分布中。因此本发明在定义编码矩阵时,采取使用频率越高的分组长度将代表使用频率越高的二进制字符串。假设2w个不同的二进制串以使用频率的高低降序排列,这里的使用频率采用数据文件中统计的不同二进制串的出现频率。将这些二进制串标记为,则表示使用频率最高的w比特二进制串,而则为使用频率最低的二进制串。由于编码矩阵与地址-长度向量矩阵对应,则其大小也为m行n列。对矩阵编码时,先从最中间的两列开始依次按使用频率降序放置二进制字符串(假设为k和(k+1)列),当此两列放置满时,同时从(k-1)列到第1列和(k+2)列到第n列放置剩余的二进制串,以保持整个编码矩阵呈现对称特性。用此方法编码后的编码矩阵如下所示:
(8)
地址-长度向量矩阵的元素由一个发送方和接收方共享的随机数发生器随机生成,因此这两个矩阵都可以由发送方和接收方单独生成,保证了矩阵的唯一性和安全性。对于一个4比特的二进制字符串进行编码的编码矩阵和地址-长度向量矩阵示例如下:
编码矩阵:
地址-长度向量矩阵:
6.最大失真度度量
由于隐蔽信息的嵌入,使得携带隐蔽信息的数据流与正常的网络数据流之间产生了差异,引起网络流失真现象,从而降低了隐蔽信道的安全性。为了避免这种差异带来的安全性的降低,我们引入了虚假报文来解决这个问题,即在引起网络流变化的报文之间加入虚假报文,使得处理后的数据流与正常数据流相似。同时规定,以发送的虚假报文的长度不属于地址-长度向量矩阵中的值,使得接收端以此来辨别是隐蔽信息载体报文还是虚假报文,保证隐蔽信息的正确解码。为了度量虚假报文的发送频率和发送时间,本发明定义了最大失真度度量,其定义如下:
最大失真度: (9)
其中,n是分组长度向量中的向量数目,是具有最大值或最小值的位置,为分组长度向量中位置上的长度分量值。在发送隐蔽信息流时,将通过一个正常的样本数据流来计算,然后利用最大失真度来控制虚假报文的发送。
一种基于IP地址的包长度反馈网络隐蔽通信方法,包括以下几个阶段:
发送端与接收端的同步阶段:发送端和接收端协商信息发送的时间,以及利用生成函数独立生成编码矩阵和地址-长度向量矩阵;
建立同步后数据的发送阶段:对隐蔽信息进行加密,并将加密后的隐蔽信息分组嵌入到主机地址字段与IP数据包长度的组合信息中;
接收端的接收和解码阶段:接收端接收编码矩阵、地址-长度向量矩阵的生成函数和含有隐蔽信息的组合信息,并对组合信息进行解密。
所述发送端与接收端的同步阶段的具体步骤包括:
用分组长度向量来描述UDP数据流的特征,分组长度向量:
(1)
其中, (2)
L是分组长度的最大值, [1,2,…,L]表示了UDP数据流中所有数据包的长度值,表示数据流中分组长度为k的分组数目,N表示数据流中分组的数目;
设置隐蔽信息为w比特,即每个分组数据报将携带w比特的隐蔽信息,则将产生2w个不同的二进制字符串;
将2w个二进制串分解为一个具有2m行和2n列的编码矩阵来实现,2w=2m*2n且m<n,IP向量和长度向量如下:
IP向量为: (3)
其中(0≤k≤25)表示发送端的主机地址域并且以升序排列;
IP数据报长度向量集为:
(4)
其中(0≤k≤m)是一个向量集,对应于公式(3)中第k个主机标识的长度向量,则是所有长度向量集合的集合,并以下标升序排列。的定义如下:
(5)
其中,向量(1≤k≤n)代表了编码矩阵中第(k, i)个元素,的定义如下:
(6)
其中j取值为1<j<1473并且8≤≤1480;
每一个与的组合表示计算机将以作为主机标识地址来发送一个分组长度为的数据报,是从中随机选取的一个值。由此,每一个与的组合将代表一个嵌入在分组中隐蔽信息,则所有的组合(共有2w=2m*2n)将由×来实现,代表了所有的w比特二进制字符串,由×产生的地址-长度向量矩阵定义如下:
(7)
编码矩阵即对应的隐蔽信息密码本,与地址-长度向量矩阵对应,将2w个二进制串标记为,则表示使用频率最高的w比特二进制串,而则为使用频率最低的二进制串,对矩阵编码,编码后的编码矩阵如下所示:
(8);
计算得到最大失真度为:
(9)
其中,n是分组长度向量中的向量数目,是具有最大值或最小值的位置,为分组长度向量中位置上的长度分量值。
所述建立同步后数据的发送阶段,因为隐蔽信息加密后分为每w比特一组,即 为一个n*w比特的二进制隐蔽信息串,将二进制隐蔽信息串嵌入及发送的的具体步骤包括:
步骤1:对每一个组串mi,在IP向量中找到对应的,根据mi在编码矩阵中的位置下标找到地址-长度向量中的长度向量,任意选取中的一个值作为此组串的分组长度,标记为len,根据公式(9)计算失真度,比较与的大小,若,则进入步骤3,否则进入步骤2;
步骤2:按照顺序从中选取其他不同于len的值并计算相应的失真度,如果存在一个值使得,则将这个值标记为新的len;否则选择一个不在中的值并且满足,将这个值标记为新的len;
步骤3:构造一个分组数据报,使得分组长度等于len,并且IP地址的主机标识域为;
步骤4:将这个分组数据报发送给接收端,若有其他组串需传输则返回步骤1,若全部传输完毕则结束。
所述接收端的接收和解码阶段的具体步骤包括:
步骤1:对接收到的分组数据报,提取其长度值并标记为lenrecv,同时提取分组数据报的主机标识域并标记为Irecv;
步骤2:根据Irecv锁定在地址-长度向量矩阵中的行下标i,并在第i行中搜索是否有值等于lenrecv;若不存在,则表示此分组数据报为虚假分组,直接丢弃并返回步骤1;若存在,标记其列下标为j,进入步骤3;
步骤3:根据行下标i和列下标j在编码矩阵中找到对应的编码标记为,则即为此分组携带的隐蔽信息,记录并进入步骤4;
步骤4:若还有其他分组需解码则返回步骤1,否则所有已记录的二进制编码即为发送端发送的隐蔽信息。
具体实施例一
本发明采用的应用场景是以UDP数据报为载体的聊天应用服务。发送方将隐蔽信息嵌入到正常的数据流中发送到接收方,数据流会被第三方管理员监听。
本实例采取端到端的环境来进行隐蔽信息传输,即发送方和接收端分别位于正常通信的两个客户端上,发送方通过构造聊天信息数据报修改相关分组字段再发送信息给接收端,接收方提取链路层数据,然后接收隐蔽信息。整个通信过程包括前期的发送端与接收端的同步阶段,建立同步后数据的发送阶段与接收端的接收和解码阶段。同步阶段的工作主要是发送端和接收端协商信息发送的时间,以及利用生成函数独立生成编码矩阵和地址-长度向量矩阵。
本发明利用WinPcap网络开发包和NDIS技术来开发一个windows模拟聊天应用程序。该程序分为发送端程序和接收端程序,发送程序采用单线程模式,负责算法参数的生成,数据编码及发送;接收端程序采用双线程模式,分为端口监听线程和数据接收及解码线程,两个线程同时执行,端口监听保证能够实时收到来自发送端的分组并将分组交给数据接收及解码线程,后者负责算法参数生成及数据解码。此外,基于现行的UDP聊天应用都会有上层的协议来保证数据分组的重传机制,本聊天应用程序也开发了相应的重传检测机制来保证数据包的可靠传输,算法本身由于遵循UDP协议的相关规定不负责数据包丢失检测及重传。
根据本发明所提方案,本实施案例在windows 7操作系统下搭建了实验平台,通过选择当前Internet网络上知名的一些聊天应用的数据流来作为样本数据。利用WinPcap开发包来构造通信用的各种类型数据报来实现本发明的技术方案。可见这种统计方式下其他算法都表现了较大的失真现象,而本发明与正常数据流比较相似;
仿真程序模拟了不同网络流数据样本环境下下本发明技术方案的可行性。在实验设置上,为了展示本发明的性能,与现在公开的算法进行了比较,这些已公开算法包括Girling C G[1987](以下简称“对比方案一”),Ji L[2009] (以下简称“对比方案二”),Yao[2008] (以下简称“对比方案三”)和Nair A S[2011] (以下简称“对比方案四”)在其发表的文章中提供的嵌入算法,并将5种算法与正常数据流进行了比较。
本发明基于IP地址的包长度反馈网络隐蔽通信方法,提供了一种安全性高,隐蔽性强的可靠隐蔽通信方法。该方法解决了现有基于IP协议隐蔽通信不可靠和安全性不高的问题,而且同时方便实现接收端隐蔽信息的有序重组,具体的有益效果是:(1)所使用的是基于主机源IP地址和数据包长度结合来模拟正常网络流从而构造高隐蔽性的隐蔽信息通信方法,提供了一种安全性高,隐蔽性强的可靠隐蔽通信方法;(2)为了在隐蔽传输中避免隐蔽数据流的失真现象,本发明设计了一种失真度度量标准,通过度量来减小失真度;(3)采用了UDP数据报长度作为隐蔽信息的嵌入载体,提高了信息嵌入的随机性,从而使得信道传输更安全;(4)通过对数据文件存储特征的分析来构造编码方式,使得嵌入结果更符合通常的数据传输和存储方式;(5)本发明所提方法基于TCP/IP协议的传输层和网络层协议实现,具有较强的适应性。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (5)
1.一种基于IP地址的包长度反馈网络隐蔽通信方法,其特征在于,步骤包括:
发送端与接收端的同步阶段:发送端和接收端协商信息发送的时间,以及利用生成函数独立生成编码矩阵和地址-长度向量矩阵;
建立同步后数据的发送阶段:对隐蔽信息进行加密,并将加密后的隐蔽信息分组嵌入到主机地址字段与IP数据包长度的组合信息中;
接收端的接收和解码阶段:接收端接收编码矩阵、地址-长度向量矩阵的生成函数和含有隐蔽信息的组合信息,并对组合信息进行解密;
所述发送端与接收端的同步阶段的具体步骤包括:
用分组长度向量来描述UDP数据流的特征,分组长度向量:
(1)
其中, (2)
L是分组长度的最大值, [1,2,…,L]表示了UDP数据流中所有数据包的长度值,表示数据流中分组长度为k的分组数目,N表示数据流中分组的数目;
设置隐蔽信息为w比特,即每个分组数据报将携带w比特的隐蔽信息,则将产生2w 个不同的二进制字符串;
将2w个二进制串分解为一个具有2m行和2n列的编码矩阵来实现,2w=2m *2n且m<n,IP向量和长度向量如下:
IP向量为: (3)
其中(1≤k≤25)表示发送端的主机地址域并且以升序排列;
IP数据报长度向量集为:
(4)
其中(1≤k≤m)是一个向量集,对应于公式(3)中第k个主机标识的长度向量,则是所有长度向量集合的集合,并以下标升序排列,的定义如下:
(5)
其中,向量(1≤i≤n)代表了编码矩阵中第(k, i)个元素,的定义如下:
(6)
其中j取值为1<j<1473并且8≤≤1480;
每一个与的组合表示计算机将以作为主机标识地址来发送一个分组长度为的数据报,是从中随机选取的一个值;
由此,每一个与的组合将代表一个嵌入在分组中隐蔽信息,则所有的组合(共有2w=2m *2n)将由×来实现,代表了所有的w比特二进制字符串,由×产生的地址-长度向量矩阵定义如下:
(7)
编码矩阵即对应的隐蔽信息密码本,与地址-长度向量矩阵对应,将2w个二进制串标记为,则表示使用频率最高的w比特二进制串,而S2 w则为使用频率最低的二进制串,对矩阵编码,编码后的编码矩阵如下所示:
(8);
计算得到最大失真度为:
(9)
其中,n是分组长度向量中的向量数目,是具有最大值或最小值的位置,为分组长度向量中位置上的长度分量值。
2.根据权利要求1所述的基于IP地址的包长度反馈网络隐蔽通信方法,其特征在于,所述发送端与接收端的同步阶段的限定条件包括:
中元素数目至少为1且元素按升序排列,在嵌入时随机从中选取一个来代表当前数据报的长度;
任意两个不同的与中没有相同的元素,其中1≤j≤n,以此来保证中的元素不重复且按升序排列;
中两个相邻的元素差值必为1,即为自然数序列;对于中的最后一个元素与中的第一个元素,其差值将大于1;
以上限定条件对无效,即对中两个不同的与,其中1≤j≤m,可以存在相同的元素。
3.根据权利要求1所述的基于IP地址的包长度反馈网络隐蔽通信方法,其特征在于,地址-长度向量矩阵中每行的元素以升序排列且不重复。
4.根据权利要求1所述的基于IP地址的包长度反馈网络隐蔽通信方法,其特征在于,所述建立同步后数据的发送阶段,因为隐蔽信息加密后分为每w比特一组,即为一个n*w比特的二进制隐蔽信息串,n 为任意自然数,将二进制隐蔽信息串嵌入及发送的的具体步骤包括:
步骤1:对每一个组串mi,在IP向量中找到对应的,根据mi在编码矩阵中的位置下标找到地址-长度向量中的长度向量,任意选取中的一个值作为此组串的分组长度,标记为len,根据公式(9)计算失真度,比较与的大小,若,则进入步骤3,否则进入步骤2;
步骤2:按照顺序从中选取其他不同于len的值并计算相应的失真度,如果存在一个值使得,则将这个值标记为新的len;否则选择一个不在中的值并且满足,将这个值标记为新的len;
步骤3:构造一个分组数据报,使得分组长度等于len,并且IP地址的主机标识域为;
步骤4:将这个分组数据报发送给接收端,若有其他组串需传输则返回步骤1,若全部传输完毕则结束。
5.根据权利要求1所述的基于IP地址的包长度反馈网络隐蔽通信方法,其特征在于,所述接收端的接收和解码阶段的具体步骤包括:
步骤1:对接收到的分组数据报,提取其长度值并标记为lenrecv,同时提取分组数据报的主机标识域并标记为Irecv;
步骤2:根据Irecv锁定在地址-长度向量矩阵中的行下标i,并在第i行中搜索是否有值等于lenrecv;若不存在,则表示此分组数据报为虚假分组,直接丢弃并返回步骤1;若存在,标记其列下标为j,进入步骤3;
步骤3:根据行下标i和列下标j在编码矩阵中找到对应的编码标记为,则即为此分组携带的隐蔽信息,记录并进入步骤4;
步骤4:若还有其他分组需解码则返回步骤1,否则所有已记录的二进制编码即为发送端发送的隐蔽信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510055266.0A CN104660591B (zh) | 2015-02-03 | 2015-02-03 | 基于ip地址的包长度反馈网络隐蔽通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510055266.0A CN104660591B (zh) | 2015-02-03 | 2015-02-03 | 基于ip地址的包长度反馈网络隐蔽通信方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104660591A CN104660591A (zh) | 2015-05-27 |
CN104660591B true CN104660591B (zh) | 2018-01-30 |
Family
ID=53251294
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510055266.0A Expired - Fee Related CN104660591B (zh) | 2015-02-03 | 2015-02-03 | 基于ip地址的包长度反馈网络隐蔽通信方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104660591B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105933094B (zh) * | 2016-06-22 | 2018-10-23 | 江苏科技大学 | 一种针对多链路到达序列编码的隐蔽通信检测方法 |
CN107835168A (zh) * | 2017-11-01 | 2018-03-23 | 中国石油大学(华东) | 一种基于端信息扩展序列矩阵转置相乘的认证方法 |
CN109257360B (zh) * | 2018-10-08 | 2020-08-28 | 江苏大学 | Sdn网络中基于传输路径的隐蔽信息发送和解析方法 |
CN114666111A (zh) * | 2022-03-06 | 2022-06-24 | 北京工业大学 | 一种基于tcp的二维隐蔽信道构建方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7983444B2 (en) * | 2006-11-02 | 2011-07-19 | Qurio Holdings, Inc. | Client-side watermarking using hybrid I-Frames |
CN103428227A (zh) * | 2013-09-05 | 2013-12-04 | 中国科学技术大学苏州研究院 | 基于Huffman编码的IP隐秘通信方法 |
US8819723B1 (en) * | 2000-04-27 | 2014-08-26 | The Directv Group, Inc. | System and method for brokering auxiliary data broadcasting services |
CN104064193A (zh) * | 2013-03-21 | 2014-09-24 | 中国科学院声学研究所 | 一种线性预测语音编码的信息隐藏方法与提取方法 |
CN104269175A (zh) * | 2014-08-28 | 2015-01-07 | 华侨大学 | 一种基于最佳相似度匹配的ip语音隐写方法 |
CN104283888A (zh) * | 2014-10-20 | 2015-01-14 | 中国科学技术大学苏州研究院 | 基于数据包多层封装的隐秘通信方法 |
-
2015
- 2015-02-03 CN CN201510055266.0A patent/CN104660591B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8819723B1 (en) * | 2000-04-27 | 2014-08-26 | The Directv Group, Inc. | System and method for brokering auxiliary data broadcasting services |
US7983444B2 (en) * | 2006-11-02 | 2011-07-19 | Qurio Holdings, Inc. | Client-side watermarking using hybrid I-Frames |
CN104064193A (zh) * | 2013-03-21 | 2014-09-24 | 中国科学院声学研究所 | 一种线性预测语音编码的信息隐藏方法与提取方法 |
CN103428227A (zh) * | 2013-09-05 | 2013-12-04 | 中国科学技术大学苏州研究院 | 基于Huffman编码的IP隐秘通信方法 |
CN104269175A (zh) * | 2014-08-28 | 2015-01-07 | 华侨大学 | 一种基于最佳相似度匹配的ip语音隐写方法 |
CN104283888A (zh) * | 2014-10-20 | 2015-01-14 | 中国科学技术大学苏州研究院 | 基于数据包多层封装的隐秘通信方法 |
Non-Patent Citations (1)
Title |
---|
网络通信的信息隐藏技术研究;翟江涛;《中国优秀硕士学位论文全文数据库信息科技辑(2008)》;20081115(第11期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN104660591A (zh) | 2015-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8275997B2 (en) | Method of encrypting and transmitting data and system for transmitting encrypted data | |
Ahsan et al. | Practical data hiding in TCP/IP | |
Zander et al. | A survey of covert channels and countermeasures in computer network protocols | |
US8031865B2 (en) | Multiple level security system and method for encrypting data within documents | |
CN104660591B (zh) | 基于ip地址的包长度反馈网络隐蔽通信方法 | |
Hussain et al. | A high bandwidth covert channel in network protocol | |
WO2016116999A1 (ja) | パケット送信装置、パケット受信装置、パケット送信プログラムおよびパケット受信プログラム | |
Yang et al. | Deep learning approach for detecting malicious activities over encrypted secure channels | |
Bąk et al. | Application of perfectly undetectable network steganography method for malware hidden communication | |
CN111988301A (zh) | 一种客户端防黑客暴力攻击的安全通讯方法 | |
CN111327631B (zh) | 一种基于tcp和udp的秘密信息传输方法及其系统 | |
Lu et al. | Concealed in the Internet: A novel covert channel with normal traffic imitating | |
CN106534144A (zh) | 基于Web应用目录树的网络隐蔽信道构造方法 | |
Ray et al. | A protocol for building secure and reliable covert channel | |
CN116866052A (zh) | 一种基于地址编码的高效区块链隐蔽通信方法 | |
CN117314427A (zh) | 一种基于区块链备注的高效隐蔽通信方法及通信系统 | |
US20020089979A1 (en) | Communication security | |
CN115296897A (zh) | 隐蔽通信方法、装置、存储介质和电子设备 | |
US7526643B2 (en) | System for transmitting encrypted data | |
Muttaqin et al. | Implementation of aes-128 and token-base64 to prevent sql injection attacks via http | |
Soni | Moving target network steganography | |
Nazari et al. | A Lightweight Adaptable DNS Channel for Covert Data Transmission | |
Shi et al. | A covert communication scheme based on DNA microdots for port hopping | |
Ciobanu et al. | SCONeP: Steganography and Cryptography approach for UDP and ICMP | |
CN117915317B (zh) | 一种用于智能穿戴设备的数据传输方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180130 Termination date: 20200203 |
|
CF01 | Termination of patent right due to non-payment of annual fee |