基于Windows系统透明加解密解技术的设计与实现概要1.docVIP

基于Windows系统透明加解密解技术的设计与实现概要1.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Windows系统透明加解密解技术的设计与实现概要1

基于Windows与512029) 摘要:随着信息时代的到来,由于内部人员行为所导致的泄密事故占总泄密事故的70%以上 2 透明加密相关技术 透明加密技术是与操作系统紧密结合的一种技术,工作于操作系统底层。通过监控应用程序对文件的操作,在读写文件时进行相应的加解密操作,从而达到有效保护文件的目的。用户级提供了HOOK API的方式,而内核级提供了虚拟驱动的方式。因此透明加密技术也分为用户级的HOOK技术与内核级的WDM(Windows Driver Model)内核设备驱动两种方式。 2.1 HOOK透明加密技术 HOOK透明加密技术也即俗称的“钩子”,主要通过HOOK API的方式来实现[3]。HOOK API的基本原理就是修改一些API的入口地址,使所有对这些API的调用都先跳转到事先定义的函数中去,因此,通过HOOK一些常用的文件访问函数就可以事先捕获文件的读写操作从而完成加解密操作。 2.2驱动透明加密技术???Fig.1 the frame chart of the system 3.1.1 USBKey USBKey是一个集身份认证、密钥安全存储、对称密钥与非对称密钥等安全功能于一体的安全硬件设备。透明加解密整个过程是由USBKey完成的,而USBKey内部提供的各种加解密算法用户可以直接调用,用户可以根据自身的需要选择不同的加密算法,而修改过程对驱动层不需要改动,只是在应用层进行少量修改即可。这样,在使用的安全性和系统的应用范围方面也有了很大的提高。 1)身份认证 操作系统在启动后,如果想要启动本系统提供的服务,首先要经过USBKey的验证来登录系统。输入与该USBKey相适应的PIN码(个人识别密码),登录成功后,才能以合法的用户身份访问那些受保护的信息。对于身份认证的流程设计如下图2所示: 图2 USB-key身份认证流程图 Fig.2 the flow chart of the authentication 2)密钥存储 在加解密文件的过程中,系统会使用USBKey内部产生的密钥。 3)加密算法调用 上层应用程序获取到过滤驱动捕获的数据内容后直接调用USBKey进行对数据的加解密工作,在充分应用了USBKey的功能的同时,大大提高了系统整体的加解密效率。 3.1.2过滤驱动系统 文件系统过滤驱动是一种内核模式驱动,它依靠拦截发往已存在的内核模式驱动的请求来提供新的功能[5]。所谓的过滤,即在不影响上层和下层的软件或下层的驱动程序的情况下,在Windows系统内核中加入新的层,从而不需要修改上层的软件或下层的驱动程序,就可添加新功能。文件驱动的目标就是捕获Windows系统对文件的各种操作行为,如文件的创建、打开、改名、读写等。过虑驱动是整个系统实现的主体部分,文件系统过滤驱动叠加在文件系统驱动之上。当应用程序对文件进行保存时,数据首先被驱动截获,将要保存的内容进行加密操作后向下传递到底层文件系统驱动,这样最终写入磁盘的就是密文[6]。同样,当应用程序读取文件时,在数据向上传递到应用程序之前过滤驱动截取到数据并对其进行解密操作,然后向上层传递,这样来确保用户所见的是明文。 3.1.3应用程序 上层应用程序是整个系统的组织者。该模块主要包括三个方面的设计:提供用户操作界面,实现应用程序与USBKey之间的交互以及应用程序与过滤驱动的交互。用户通过上层应用程序提供的用户界面来操作本系统。应用程序提供的主要操作包括: 1)登录/注销。用户可在登录后操作受保护的文件,操作完毕后注销退出系统。 2)设定规则。在安装完成后,会提示设定需要保护文件的类型,以及受保护文件所处路径。 3)查看日志。用户可以查看系统运行产生的操作日志信息。 4)修改PIN码。用户可根据需要修改个人PIN码。 5)导出密文。用户可根据需要将受保护的文件以密文形式导出。 应用程序的功能模块如下图3所示: 图3 应用程序功能模块图 Fig.3 the module chart of the application 3.2内核层与应用层交互的设计与实现 由于过滤驱动工作在内核层,而管理程序工作在应用层,系统的部分功能不可避免的需要通过在两个层级之间进行交互才能实现。这其中主要包括了两个问题:一是内核层与应用层之间的通信;二是内核层与应用层之间的数据共享。 3.2.1内核层与应用层通信的设计与实现 驱动程序的主要作用是加解密文件,为了使用户更方便地使用产品,必须加以应用程序辅助。这时就存在应用程序与驱动程序的通信问题。应用程序与驱动程序通信时,可以使用ReadFile、 WriteFile函数,也可以使用DeviceIoControl函数。Windows DDK为内核层与应用层之间的通信问题提供了一种简单易行的方式,称为DeviceIoCont

您可能关注的文档

文档评论(0)

676200 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档