http://www.paper.edu.cn
-1-
基于 NDIS 的网络数据报数字指纹的设计与实现
王祥,周安民,朱文成
四川大学信息安全研究所,成都 (610065)
E-mail:wangx_scu@126.com
摘 要:本文介绍了 Windows 平台下 NDIS 网络驱动程序的基本原理和其中的一些关键技
术。介绍了 NDIS 中间层网络驱动程序的设计与实现方法。利用 TCP/IP 格式冗余来添加网
络数据报数字指纹,并详细介绍了嵌入网络数据报指纹的方法。设计了基于 NDIS 中间层网
络驱动程序的网络数据报数字指纹的实现。
关键词:NDIS;中间层驱动程序;网络数据报指纹
中图分类号:TP393
1. 引言
随着计算机的应用普及,公司的一些机密电子文件都是存放在计算机上。这些计算机也
都是连接在网络上的,因此用户之间就能很好的进行信息的交流和沟通。这带来方便快捷的
同时,也使得公司的机密电子文件在网络上传输。存在一些被窃走的风险。当前保护公司机
密文件的办法有物理隔离和网络隔离,物理隔离是指机密文件存储在比较安全的机器上,外
人是不能对其进行操作和处理的,因此能够保证其安全性。所谓的网络隔离指的是切断与外
网的联系,不允许上外网。但网络隔离使得员工不能充分利用网络资源,并且有些行业是必
须要用到互联网来进行资源的合理搭配。网络隔离就给公司的发展带来一定的消极影响。针
对这种情况,本文提出了使用网络数据报指纹技术,来规避这种风险。该技术能在不使用网
络隔离的前提下防止公司机密文件的流失。具有很好的透明性和自动性,对用户来说没有任
何不同,是一种全新的而且符合实际需求的技术。
网络驱动程序接口规范 NDIS(Network Device Interface Specification)是微软和 3Com 公
司开发的网络驱动程序接口规范的简称。为在 Windows 平台上开发网络驱动程序和网络协
议驱动程序提供了框架指导。NDIS 提供了一个规范的开发流程和函数框架,使得开发者只
要实现这些函数,而不用考虑操作系统内核以及与其他驱动程序的接口问题就可以开发出高
效的网络驱动程序。NDIS 中间层过滤驱动介于协议层驱动和微端口驱动之间,因为是在协
议层驱动以下所以可以拦截所有的网络封包。从技术上来说,可以实现网络数据报指纹的嵌
入,下面分析实现这种目的的相关技术、算法、理论实现模型以及可行性分析。
2. 网络数据报数字指纹特点
数字指纹
[1]
是在数字产品的每一份拷贝中加入一个唯一的标志,通过这样的标志,可以
区分一个数字产品所售出的每一份拷贝。它是数字水印的多用户形式。网络数据报标识也叫
网络数据报数字指纹,它的特性和数字指纹类似,它是唯一标记一组网络数据报的数字序列
号,这一组网络数据报可以是来自一个文件、一组文件,甚至可以来至一台主机或一个网络。
网络数据报数字指纹有如下特点:
z 唯一性 :标记一组网络数据报的数字指纹应该是唯一的,一旦被使用后就不得与其它
数字序列发生碰撞以免在检测时发生误检。
z 安全性 :一组网络数据报一旦嵌入了数字指纹后,这组网络数据报的数字指纹不能全
部被更改。因此必须保证嵌入网络数据报中的数字指纹对第三方来说应该是“看不见”
的。