Windows环境下基于USB设备的硬盘加密方法

文档序号:6610108阅读:209来源:国知局
专利名称:Windows环境下基于USB设备的硬盘加密方法
技术领域
本发明涉及计算机安全领域,具体的说是提供了一种防止硬盘数据泄露的方法。
背景技术
随着信息化程度越来越高,信息安全显得格外重要。计算机的数据一般存储 在本地硬盘上,未授权的数据拷贝甚至直接盗走硬盘会给计算机用户带来严重的 损失。在众多防止硬盘数据泄露的方案中,对硬盘数据进行加密不失为一种有效 方法。目前存在的硬盘加密方案普遍需要结合复杂的硬件设备,如在计算机主板和 硬盘之间增加额外的硬件设备,使用成本较高。另外,由于和硬件结合比较紧密, 存在兼容性的问题。发明内容本发明的目的在于提供一种低成本的基于USB设备的硬盘加密方法。 本发明的技术方案是包括一个支持从USB启动的USB设备, 一段存放在USB设备O扇区的加载程序, 一段存放在USB设备隐藏扇区的硬盘加密解密程序;加载程序监控Windows操作系 统通过頂T13H中断读写目标硬盘,完成对目标硬盘数据的加密和解密;同时在计 算机启动时把硬盘加密解密程序嵌入Windows操作系统;硬盘加密解密程序监控 Windows操作系统通过驱动程序读写目标硬盘,完成对目标硬盘数据的加密和解 密;加载程序和硬盘加密解密程序获取USB设备的硬件序列号UID和目标硬盘的硬 件序列号HID,通过函数f(UID,HID)计算出目标硬盘加密和解密需要的密钥。加载程序存放在USB设备的O扇区。当计算机从USB设备启动时,BI0S将加载 程序读入内存执行;加载程序监控Windows操作系统通过INT13H中断读写目标硬 盘,解密从目标硬盘读取的数据,加密写入目标硬盘的数据;同时在内存中修改读取的注册表信息和文件系统信息,把硬盘加密解密程序作为磁盘过滤驱动程序 嵌入Windows操作系统。硬盘加密解密程序存放在USB设备的隐藏扇区;它是一个工作在Windows操作 系统内核的磁盘过滤驱动程序;当Windows操作系统放弃使用INT13H中断改用驱 动程序读写目标硬盘时,硬盘加密解密程序接管对目标硬盘数据的加密和解密。当计算机从USB设备启动时,BIOS把存放在USB设备0扇区的加载程序读入内 存0000: 7C00并执行。加载程序通过修改INT13H的中断服务程序来监控计算机对 目标硬盘的读写。加载程序完成修改后,把硬盘0扇区的内容读入内存0000: 7C00 并执行,从硬盘上启动Windows操作系统。在随后的启动过程中,硬盘上的Windows 引导程序(Osloader. exe)通过INT13H读取注册表信息和文件系统信息。加载程序 监测到引导程序对注册表的读写,调用原始的INT13H中断服务程序读取硬盘上的 注册表到内存,并在内存中修改读取的内容,让引导程序加载一个硬盘上并不存 在的内核驱动程序。当引导程序通过INT13H来读取该内核驱动程序时,加载程序 把读操作重定向到USB设备,读取存放在USB设备隐藏扇区上的硬盘加密解密程 序。至此,引导程序获得了硬盘加密解密程序的内容,并根据注册表的指示将它 装入Windows操作系统。引导程序完成系统初始化工作后,Windows操作系统将放 弃使用INT13H中断改用驱动程序访问硬盘等存储设备。作为磁盘过滤驱动程序嵌 入到Windows操作系统内核的硬盘加密解密程序接管对目标硬盘读写操作的监 控,解密读操作获取的数据,加密写操作的数据。本发明的有益效果是1) 设计新颖。不需要在计算机主板和硬盘之间增加额外的硬件设备。2) 使用成本低。仅需要一个支持从USB启动的USB设备。3) 使用方便。USB设备的硬件序列号和目标硬盘的硬件序列号产生加密解密 需要的密钥。该密钥将USB设备和目标硬盘绑定为钥匙和锁的关系,插入匹配的 USB设备即可,不需要输入用户名和密码。


图l一磁盘存储驱动程序层次示意图。图2—USB设备扇区的使用示意图。图3—从USB设备启动的工作流程图。
具体实施方式
下面结合附图和具体实施方式
对本发明作进一步详细描述。本发明不仅限于 以下实施例,凡是利用本发明的设计思路,做一些简单变化的设计都应进入本发 明的保护范围之内。USB设备作为加载程序和硬盘加密解密程序的载体。加载程序存放在USB设备 的0扇区,硬盘加密解密程序存放在USB设备的隐藏扇区。USB设备进行普通的数 据拷贝使用正常分区,即图2中USB数据区。硬盘加密解密程序(DiskSecure. sys)工作在Windows操作系统内核,位于 磁盘驱动程序(Disk, sys)和分区驱动程序(PartMgr. sys)之间,如图1。 Windows 操作系统启动后,计算机对硬盘的读写操作通过输入输出请求包(IRP)来完成。 当Windows操作系统需要访问硬盘时,构造相应的IRP并且层层下传。硬盘加密 解密程序对分区驱动程序传下来的IRP进行分析如果IRP为读操作,硬盘加密 解密程序先将该IRP发送给磁盘驱动程序,磁盘驱动程序完成读操作后将该IRP 返回给硬盘加密解密程序。硬盘加密解密程序使用密钥解密IRP中的数据;完成 解密后将IRP返回给Windows操作系统。如果IRP为写操作,硬盘加密解密程序 根据该IRP重新创建一个新的IRP,且使用密钥加密新创建的IRP中的数据;完 成加密后,将新创建的IRP发送给磁盘驱动程序。Windwos操作系统启动时需要很多初始化数据,这些数据保存在注册表中。 系统启动时,引导程序读取注册表来完成初始化操作。加载程序监控引导程序对 注册表和文件系统的读操作,在内存中修改引导程序读取的数据。HKEY—LOCAL—MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E9 67-E325-11CE-BFQ-08002BE10318l中U卯erFilters键指示磁盘存储驱动程序 的层次顺序PartMgr. sys, Diskperf. sys。其中Diskperf. sys为Windows 2000 独有。这里我们需要将内存中的UpperFilters键值进行修改,层次顺序变为 DiskSecure. sys, PartMgr. sys, Diskperf. sys。除此之夕卜,我们还需要在内存 中的HKEY—LOCAL—MACHINE\SYSTEM\CurrentControlSet\Services键下面增加 DiskSecure键,且在HKEY—LOCAL—MACHINE\SYSTEM\CurrentControlSet\Servic es\DiskSecure键下增加Start, Group等键值并且赋予相应的值。其中Start=0表示DiskSecure. sys在计算机启动时装入。对内存中注册表数据的修改生效后, 引导程序需要从文件系统获取DiskSecure. sys文件的信息。加载程序截获引导 程序对SYSTEM32\DRIVERS目录信息的访问,在内存中增加DiskSecure. sys的信 息,如文件大小、文件位置等等。当引导程序根据这些信息读取DiskSecure. sys (DiskSecure. sys在硬盘上并不存在)时,加载程序把读操作且重定向到USB 设备,读取存放在USB设备隐藏扇区的DiskSecure. sys。至此,引导程序获得 了 DiskSecure. sys的内容,并根据注册表的指示将DiskSecure. sys装入 Windows操作系统,如图3所示。
权利要求
1. Windows环境下基于USB设备的硬盘加密方法,其特征在于包括一个支持从USB启动的USB设备,一段存放在USB设备0扇区的加载程序,一段存放在USB设备隐藏扇区的硬盘加密解密程序;加载程序监控Windows操作系统通过INT13H中断读写目标硬盘,完成对目标硬盘数据的加密和解密;同时在计算机启动时把硬盘加密解密程序嵌入Windows操作系统;硬盘加密解密程序监控Windows操作系统通过驱动程序读写目标硬盘,完成对目标硬盘数据的加密和解密;加载程序和硬盘加密解密程序获取USB设备的硬件序列号UID和目标硬盘的硬件序列号HID,通过函数f(UID,HID)计算出目标硬盘加密和解密需要的密钥。
2. 如权利要求1所述的基于USB设备的硬盘加密方法,其特征在于所述 的加载程序存放在USB设备的O扇区。当计算机从USB设备启动时,BIOS将加 载程序读入内存执行;加载程序监控Windows操作系统通过INT13H中断读写目 标硬盘,解密从目标硬盘读取的数据,加密写入目标硬盘的数据;同时在内存中 修改读取的注册表信息和文件系统信息,把硬盘加密解密程序作为磁盘过滤驱动 程序嵌入Windows操作系统。
3. 如权利要求1所述的基于USB设备的硬盘加密方法,其特征在于所述 的硬盘加密解密程序存放在USB设备的隐藏扇区;它是一个工作在Windows操作 系统内核的磁盘过滤驱动程序;当Windows操作系统放弃使用INT13H中断改用 驱动程序读写目标硬盘时,硬盘加密解密程序接管对目标硬盘数据的加密和解 密。
全文摘要
本发明涉及计算机安全领域,具体的说是提供了一种防止硬盘数据泄露的方法。本发明包括一个USB设备,一段存放在USB设备O扇区的加载程序,一段存放在USB设备的隐藏扇区的硬盘加密解密程序。加载程序监控Windows操作系统通过INT13H中断读写目标硬盘,完成对目标硬盘数据的加密和解密;同时在计算机启动时把硬盘加密解密程序嵌入Windows操作系统。硬盘加密解密程序监控Windows操作系统通过驱动程序读写目标硬盘,完成对目标硬盘数据的加密和解密。本发明设计新颖,不需要在计算机主板和硬盘之间增加额外的硬件设备;使用成本低,仅需要一个支持从USB启动的USB设备;使用方便,USB设备的硬件序列号和目标硬盘的硬件序列号产生加密解密需要的密钥。该密钥将USB设备和目标硬盘绑定为钥匙和锁的关系,插入匹配的USB设备即可,不需要输入用户名和密码。
文档编号G06F21/00GK101236532SQ200710119809
公开日2008年8月6日 申请日期2007年7月31日 优先权日2007年7月31日
发明者佐 王, 谭毓安 申请人:北京理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1