首页> 中国专利> 一种利用信息熵和哈希函数进行网络数据流零水印提取的方法

一种利用信息熵和哈希函数进行网络数据流零水印提取的方法

摘要

本发明公开了一种利用信息熵和哈希函数进行网络数据流零水印提取的方法,该算法在发送端原始流量中,通过对数据流按时间进行分片,统计数据包大小的分布情况并计算香农熵,利用哈希函数对其进行零水印的提取;在接收端,利用同样的方法再次对接收到的流量进行零水印提取;通过对两端提取的零水印的比较来确认发送端和接收端是否存在明显的网络通信关系。采用本发明的网络流零水印系统的提取和检测方法,可以有效确定匿名通信系统中发送端和接收端之间的网络通信关系,为DDoS攻击定位提供理论依据。

著录项

  • 公开/公告号CN105429940A

    专利类型发明专利

  • 公开/公告日2016-03-23

    原文格式PDF

  • 申请/专利权人 华侨大学;

    申请/专利号CN201510701787.9

  • 申请日2015-10-26

  • 分类号H04L29/06;H04L9/06;

  • 代理机构厦门市首创君合专利事务所有限公司;

  • 代理人张松亭

  • 地址 362000 福建省泉州市丰泽区城东

  • 入库时间 2023-12-18 15:07:46

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-03-12

    授权

    授权

  • 2016-04-20

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20151026

    实质审查的生效

  • 2016-03-23

    公开

    公开

说明书

技术领域

本发明涉及匿名网络环境下通信双方关系确认领域,更具体的说,涉及一种利用信息熵 和哈希函数对网络流进行水印提取的方法,以及一种网络流零水印的提取和检测系统。

背景技术

随着全球信息化的飞速发展,计算机网络已经是当今世界最为激动人心的高新技术之 一。网络的资源共享、信息交换和分布式处理给学习、工作、科研带来极大便利。但层出不 穷的各种攻击,给计算机网络和系统带来了巨大的潜在威胁和破坏。

进入2000年以来,网络遭受攻击事件不断发生,根据“2003年FBI计算机犯罪与安全 调查”显示,DDOS攻击是排名第二的网络犯罪,并且数量不断攀升。

DDoS攻击通过控制多台傀儡主机向攻击目标发起大量占用网络带宽的无用报文,以此 消耗攻击目标的系统和网络资源,使其无法对外正常提供服务。由于攻击流量的突发性和地 址的随机性,导致这种攻击很难用传统的基于流量监控的检测技术从突发性正常流量中区分 出来。

在众多的DDoS攻击中,SYNFlood无疑是当前最为经典且最被广泛应用的攻击类型, 它利用了TCP协议实现中的漏洞,可以对所有基于TCP/IP协议栈的网络设备产生影响。

SYNFlood攻击的具体工作原理为:通过向目标服务器的开放端口发送大量的伪造源地 址的攻击报文,导致服务器网络协议栈中的半开连接队列占满缓存,最终宕机停止工作,使 得其他用户不能正常访问。各种操作系统,甚至性能较差的防火墙、路由器等都无法有效地 防御这种攻击模式。而且通过各种网络工具,该攻击可以方便地伪造源地址,这使得追踪攻 击者变得非常困难。

针对SYNFlood攻击的特点,解决的根本途径是跟踪攻击流,找出攻击路径并发现攻击 源,这就是IP回溯方法。

IP回溯旨在从被攻击方开始找到攻击方,是一种重在威慑的方法。IP回溯大致可分为两 类。

一类是能回溯一定流量的攻击。主要缺点是:(1)对IP协议进行修改;(2)当攻击流量 足够大时,回溯性能可接受,对小流量和单包攻击,误报率和漏报率都相当高。

另一类是能回溯任意流量的攻击,包括单包攻击。基本原理是:当路由器转发分组时, 也对分组信息进行记录;回溯是通过查询分组记录以确定分组经过的路由器。这类方案关键 问题是:由于路由器存储资源有限,分组记录容易丢失。

为此,我们发明了基于数据流零水印的IP回溯方法。

数字水印最早是向数据多媒体(如图像、声音、视频信号等)中添加某些数字信息以达 到文件真伪鉴别、版权保护等功能。后来为标识网络流量将水印引入网络安全中。

网络流零水印是目前数据流水印的一个新的研究方向,其思想是利用原始流量的某些重 要特征构造可以唯一识别的水印,因此原始数据流也就认为已经包含了该水印且具备了某些 标识。零水印的最大特点就是不改变原始流量的任何数据,保证了水印的不可见性,因此不 存在数据流质量下降或水印量受限等问题。

发明内容

发明的目的在于克服现有技术之不足,提供一种利用信息熵和哈希函数进行网络数据 流零水印提取的方法以及一种基于网络流零水印的IP回溯系统。

本发明解决其技术问题所采用的技术方案是:提供一种利用信息熵和哈希函数进行网络 数据流零水印提取的方法,包括:在发送端原始流量中,通过对数据流按时间进行分片,统 计数据包大小的分布情况并计算香农熵,利用哈希函数对其进行零水印的提取;在接收端, 利用同样的方法再次对接收到的流量进行零水印提取;通过对两端提取的零水印的比较来确 认发送端和接收端是否存在明显的网络通信关系。

优选的,所述网络流零水印的提取的步骤为:

A1、获得发送端的原始数据流t,选取合适的偏移量o,按照一定的时间片大小T对数 据流进行分片,得到l个时间片。

A2、在每一个时间片大小内,统计数据包大小的分布状况;计算每个时间间隔内,不 同包大小出现的次数Nij(i△t);

A3、计算每个时间间隔内,不同大小包出现的概率:

Pij(i△t)=Nij(i△t)/∑sumj=1Nij(i△t)

其中,Nij(i△t)代表第i个时间间隔内,同样大小的包出现的次数;∑sumj=1Nij(i△t)代表同 一时间间隔内,不同大小的包出现的总次数,sum代表该时间间隔内不同大小包的和;

A4、以随机变量X代表每个时间间隔中不同大小包的取值情况,利用香浓公式,计算 各个时间片内的香农熵:

H(X)’=-∑nj=1p(xj)logp(xj)

p(xj)代表随机变量中某一特定值时的概率;

A5、对信息熵H(X)’进行量化处理:

H(X)=H(X)’*a

其中,a是量化单位。

A6、输入一组秘钥Key,与量化后的香农熵H(X)进行哈希,得到所需的水印:

Wi=HASH(Keyi,H(Xi))

其中,Wi是最终要求的水印,也是该数据流的特征量,Keyi是第i个秘钥,H(Xi)是第i 个时间片的熵,HASH()是求水印所需的哈希函数。

优选的,在发送端的边界路由收集来自发送端的数据流信息,对其进行零水印的提取, 并将提取的零水印W及提取参数转存到第三方代理。

优选的,在接收端的边界路由收集发送给接收端的数据流信息,从第三方代理获得零水

印提取所需的各种参数,利用零水印的提取的步骤提取接收端接收的数据流所携带的零

水印W’,并发送到第三方代理;由第三方代理比较发送端和接收端的零水印是否相同。

优选的,包括如下步骤:

B1、在被攻击方,首先利用网络流零水印,确定攻击流来自于边界路由;

B2、使用零水印提取和网络通信关系确认的方法确认公积流流经的上一个路由的位置;

B3、重复步骤B2直到将攻击流锁定在某一特定局域网内;

B4、当锁定某一路由器或局域网时,按照零水印提取的方法来确定攻击流流经的主机 路线,最终将攻击源锁定在某台或某几台物理机上,以此实现IP回溯。

1)本发明的有益效果是:在被攻击方,首先利用网络流零水印,确定攻击流来自于哪个 路由器或交换机,以此来寻找攻击流流经的路径。

2)当锁定某一路由器或局域网时,在以此为跳板,继续向与自身相连的路由器确认攻击 流的来源,进一步回溯攻击流的路径。

如此循环下去,则可以将攻击源锁定在某一局域网或某几台主机之间。

以下结合附图及实施例对本发明作进一步详细说明;但本发明的一种利用信息熵和哈希 函数进行网络数据流零水印提取的方法不局限于实施例。

附图说明

图1是利用信息熵和哈希函数对网络流进行零水印提取的框架示意图;

图2是利用信息熵和哈希函数对网络流进行零水印提取的流程示意图;

图3是利用零水印进行通信关系确认的网络框架示意图;

图4是利用零水印进行通信关系确认的整体流程示意图;

图5是利用零水印进行IP回溯示意图。

具体实施方式

实施例1

参见图1至图5所示,本发明的一种利用信息熵和哈希函数进行网络数据流零水印提取 的方法,包括:在发送端原始流量中,通过对数据流按时间进行分片,统计数据包大小的分 布情况并计算香农熵,利用哈希函数对其进行零水印的提取;在接收端,利用同样的方法再 次对接收到的流量进行零水印提取;通过对两端提取的零水印的比较来确认发送端和接收端 是否存在明显的网络通信关系。

优选的,所述网络流零水印的提取的步骤为:

A1、获得发送端的原始数据流t,选取合适的偏移量o,按照一定的时间片大小T对数 据流进行分片,得到l个时间片。

A2、在每一个时间片大小内,统计数据包大小的分布状况;计算每个时间间隔内,不 同包大小出现的次数Nij(i△t);

A3、计算每个时间间隔内,不同大小包出现的概率:

Pij(i△t)=Nij(i△t)/∑sumj=1Nij(i△t)

其中,Nij(i△t)代表第i个时间间隔内,同样大小的包出现的次数;∑sumj=1Nij(i△t)代表同 一时间间隔内,不同大小的包出现的总次数,sum代表该时间间隔内不同大小包的和;

A4、以随机变量X代表每个时间间隔中不同大小包的取值情况,利用香浓公式,计算 各个时间片内的香农熵:

H(X)’=-∑nj=1p(xj)logp(xj)

p(xj)代表随机变量中某一特定值时的概率;

A5、对信息熵H(X)’进行量化处理:

H(X)=H(X)’*a

其中,a是量化单位。

A6、输入一组秘钥Key,与量化后的香农熵H(X)进行哈希,得到所需的水印:

Wi=HASH(Keyi,H(Xi))

其中,Wi是最终要求的水印,也是该数据流的特征量,Keyi是第i个秘钥,H(Xi)是第i 个时间片的熵,HASH()是求水印所需的哈希函数。

优选的,在发送端的边界路由收集来自发送端的数据流信息,对其进行零水印的提取, 并将提取的零水印W及提取参数转存到第三方代理。

优选的,在接收端的边界路由收集发送给接收端的数据流信息,从第三方代理获得零水 印提取所需的各种参数,利用零水印的提取的步骤提取接收端接收的数据流所携带的零 水印W’,并发送到第三方代理;由第三方代理比较发送端和接收端的零水印是否相同。

优选的,包括如下步骤:

B1、在被攻击方,首先利用网络流零水印,确定攻击流来自于边界路由;

B2、使用零水印提取和网络通信关系确认的方法确认公积流流经的上一个路由的位置;

B3、重复步骤B2直到将攻击流锁定在某一特定局域网内;

B4、当锁定某一路由器或局域网时,按照零水印提取的方法来确定攻击流流经的主机 路线,最终将攻击源锁定在某台或某几台物理机上,以此实现IP回溯。

图1显示了利用信息熵和哈希函数对数据流的具体操作过程,图2则给出了该操作的具 体流程图。下面结合图1和图2对利用信息熵和哈希函数进行零水印提取进行进一步说明, 主要包括以下几个步骤:

步骤1,通过运行在局域网边界路由上的代理,收集经该路由所转发的数据流信息。

步骤2,对不同的数据流,按照一定的规则选取提取水印所需的偏移量和时间间隔。

步骤3,根据数据包大小分布,计算每个间隔内的信息熵,并对其量化。

步骤4,输入一组秘钥,利用给定的哈希函数,结合量化后的信息熵求取该数据流特征 量,即水印W。

步骤5,将该水印W及提取水印所需的各种参数转存到第三方代理中。

为了验证发送端与接收端之间的确存在确定的通信关系,还需在接收端进行相应的水印 的提取。

图3显示了利用零水印进行网络通信关系确认的网络框架图,图4则给出了通信双方进 行通信关系确认的整体流程图。下面结合图3和图4对通信双方关系的确认进行总体说明, 主要包括以下几个步骤:

步骤1,按照图1和图2所述方法,发送端边界路由已将发送端数据流所携带的水印W 提取并已上传到第三方代理。

步骤2,运行在接收端边界路由上的代理,收集转发给接收端的数据流信息。

步骤3,从第三方代理读取提取水印所需的各种参数信息。

步骤4,按照已知的参数遵从图1和图2所示的水印提取方法,对接收到的数据流再次 进行水印提取,设接收端提取的水印为W’。

步骤5,将接收端提取的水印W’转存到第三方代理中。

步骤6,在第三方代理,按照一定的算法对两次提取的水印W和W’进行比较。若W和 W’二者相同,则可证明发送端和接收端之间存在明显的通信关系;反之,则不能证明。

虽然SYNFlood攻击可以伪造IP,但伪造的所有IP均来自同一个主机或同一局域网。 对SYNFlood攻击的IP回溯具体步骤如图5所示:

步骤1,我们假设该攻击来自外部网络(内部网络回溯方法一样,只是更简单),通过上 述网络零水印的方法可以确定,攻击流是来自边界路由器。

步骤2,在互联网的各路由器之间,使用图1和图3所示的零水印提取方法和通信双方 关系确认方法,确认攻击流流经的上一个路由器的位置。

步骤3,重复步骤2,直到将攻击流锁定在某一特定局域网内。

步骤4,在局域网内,重复步骤2,此时不再是路由器之间网络通信关系的确认,而是 路由与主机,或主机与主机之间通信关系的确认。

步骤5,重复步骤4,最终将攻击流锁定在某台或某几台主机上。

上述实施例仅用来进一步说明本发明的一种利用信息熵和哈希函数进行网络数据流零 水印提取的方法,但本发明并不局限于实施例,凡是依据本发明的技术实质对以上实施例所 作的任何简单修改、等同变化与修饰,均落入本发明技术方案的保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号