eleqi
驱动小牛
驱动小牛
  • 注册日期2005-12-20
  • 最后登录2014-01-03
  • 粉丝4
  • 关注2
  • 积分172分
  • 威望1475点
  • 贡献值0点
  • 好评度115点
  • 原创分0分
  • 专家分0分
阅读:4284回复:12

提供加密标识置于文件头的透明加密驱动

楼主#
更多 发布于:2010-05-13 10:31
一、简述
Safe是基于Minifilter文件过滤驱动架构开发的透明加密驱动,采用成熟的内核级驱动技术,在操作系统的内核按照指定策略,实时、高效、强制加密机密文档。对上层的应用软件与用户完全透明。所有的加解密操作均在内核完成,高效安全。无任何临时文件,无性能瓶颈,稳定可靠。

文档、稳私等多方面的保护需求正在不断增加,透明加密技术近几年应需逐渐火热起来,有基于传统架构的,也有基于较新的Minifilter架构的,从目前的发展形式来看,在多种应用中大家更倾向基于清晰明了且基本无需移植就可支持新版本系统的Minifilter架构来实现。

二、适用系统范围
       支持Windows2000及以上所有版本操作系统,含64位版本。

       Windows 2000

       Windows XP

       Windows 2003

   Windows Vista

       Windows 2008

       Windows 7

       ……

其他要求:

       Windows 2000系统需要安装Microsoft Windows Update Rollup for Windows 2000 SP4来支持Minifilter驱动。

       64位系统需要代码签名或更高级别的数字证书。

三、开发环境
       Visual Studio

            Windows Driver Kit 6001/Windows Driver Kit 7000/Windows Driver Kit 7001


四、文件透明加解密技术
1、相关词语解释
1、  静态加解密:将整个文件加密/解密,如带密码的WinRAR压缩/解压缩;

2、  动态加解密:动态是对文件读多少解密多少,写多少就加密多少;。

3、透明加解密:用户无需干预,对其正常的操作使用没有影响,察觉不到有何差异,

感觉不到加解密的存在;

4、主动加密:用户按照需要对文件进行手工/批量加密,如给AutoCAD的DWG文件、Word的DOC文件设置打开密码,使用WinRAR 带密码压缩;

5、被动加密:与用户的意愿无关,符合要求的文件都会被加密,透明加密就属于此类;



2、透明加解密的主要工作原理
       目前主要采用以下两大类:

1 、重定向:打开密文文件时将其复制到一个隐藏的临时文件,并解密后打开,保存时将临时文件加密后覆盖原文件。属于静态加解密。

2 、动态加解密:读取文件时将从存储设备读取到的密文数据即时解密,写文件时将需要写入的数据加密后逐级向下传递直至存储设备。属于动态加密。

相对而言重定向的效率在处理大数据量文件时极为低下,另外由于存储设备上存在临时使用的明文文件,易导致泄密;实现复杂度较大。

动态加解密的效率很高,基本与数据量大小无关,但是这种工作原理在应用层实现难度和复杂度很大,可能存在多种问题与漏洞,达到可靠、稳定的状态会相当因难。在驱动级中实现,技术难度与研发成本很高。



3、不同类型文件的加密
1、区分文件类型(即文件扩展名),受控进程生成/修改的指定类型文件将被加密;

2、不区分文件类型:受控进程生成/修改所有类型文件将全部被加密;

区分文件类型的缺点:不会加密非指定类型的文件,存在另存为非指定后缀而导致泄密的可能,对配置策略人员的要求较高。

不区分文件类型一概加密的重大缺点:

A、        某些类型的文件被加密后会影响其它系统或软件的使用,例如:WORD编辑并保存DOC文件,WORD通常会为该DOC文件在“开始”→“文档”中生成对应该文件的快捷方式(扩展名为LNK),一旦加密会导致Explorer进程无法识别(只能读取到密文);另一严重问题是输入法在合法软件上下文所生成的数据文件自然会被加密,这将导致在非合法软件中使用该输入法时轻则数据文件重生成(词语,词频,输入习惯等丢失),重则导致该软件异常而崩溃(输入法未处理数据错误异常导致,因为在非合法软件的上下文中只能读取到密文)。

B、         影响软件的安装与修复,如:同一机器安装有不同版本的Word,启动一版本的Word使用后关闭,再启动另一版本的Word,极有可能收到提示:由于某某问题Word需要修复是否继续。若选择修复则会失败,原因:Word会生成修复所需要的文件(自然全被加密),然后将文件交给Windows系统的安装程序来修复Word,结果当然是失败(读取到的是加密后的密文相当于无效数据)。

因而在实际应用中一般会采用折中的方式来处理,即会按文件或按类型过滤掉一部分不做加密处理等方式。当然要求严格的场合更多的是直接采用全加密,将泄密可能性降到更低。

4、密文文件、明文文件的区分
在同时存在密文文件与明文文件的系统中,识别两者是必须实现的基本要素之一。一般通过做个标识来判别文件是否加密。

加密标识:预定义的一个标识,如果在一文件对应信息中找到该标识就认为此文件已加密,反之认为此文件未加密。

标识放置的位置可以有:文件的外部或文件的内部。加密标识置于文件外部存在两个较大的问题:一是同步问题,二是易丢失或被有意/无意篡改都会导致标识失效。而置于文件内部可以确保通用、可靠和恒久有效。

标识置于文件内部通常按其所处位置主要有:文件头部、文件尾部。

加密标识置于尾部会在扩充文件或缩减文件大小时,需要将加密标识同步地移动,若在加密标识写入文件前掉电等原因导致未能完成此动作,直接造成文件损坏。而置于文件头部只需要写入一次即可,无论是扩充或缩减文件大小均不需要再次写入。另外在像Word等软件每次保存文档的过程这种修改文件长度的操作会执行几十上百次,很明显标识置于文件头部效率是最高的。



加密标识是透明加密系统驱动要解决的重点、难点之一,其设计在很大程度上决定了驱动的众多模块的设计与实现。加密标识的损坏或丢失将导致文件数据的破坏,加密系统的失效,必须确保准确无误。

      

5、进程识别
       该技术一般在同时具有合法进程与非合法进程需要同时访问密文的系统里需要用到,有多种技术实现方式。如:进程文件指纹,进程文件版本信息,进程加载的库。其中进程指纹通常采取读取进程文件的一部分或全部计算哈希值来对比判别,是最为严格的方式之一,后面两个存在易被伪造的漏洞。

依据识别所在的位置可分为:应用层,驱动层,应用层+驱动层。

Safe透明加密过滤驱动采用的就是严格的驱动层进程指纹的方式来识别,同时具有开关,可以启用或禁用该项功能。

6、加密算法
       系统采用高强度的AES加密算法加密数据,且可以做到每文件一个加密码,实现相同文件内容,保存结果完全不同,极大地增加了破解的难度。

五、Safe 技术解析
1、目标

适用于常用的和新版本的Windows操作系统,仅需配置更新策略即可保护新型的软件,适应能力强。防止计算机操作人员无意/有意的对文档的泄密行为,包括控制文档的作者。需要以透明的方式进行,用户无察觉地在系统低层自动加解密与访问控制。基本方式为:依据策略指定的进程,其新建和修改的文件都能够按策略自动加密,在该进程读取这些已经加密的文件时能够自动解密,存储设备上的加密文件始终为密文。

2、架构

基于微软力荐的Minifilter实现的文件过滤驱动,实现动态透明加解密。

3、透明度

相关文件操作对于软件和用户都完全透明,不影响原有软件的各项功能与用户原有的工作习惯,使用感觉不到加解密的存在。工作效率高且无任何临时文件,存取延时可以忽略。

4、加密标识

加密标识置于文件头部,整体长度可按需任意扩展(目前为4K满足一般使用需求),可以依据需求自由定制位于文件头的加密描述信息和需要记录的其他信息。

5、加解密方法

动态加解密,读取多少就解密多少,写入多少就加密多少,延迟完全可以忽略。

6、非强制独占双态模式访问

驱动不改变文件访问的共享权限,即非强制独占式访问文件。合法软件访问加密文件以动态透明加解密方式工作,非合法软件始终仅能以密文方式工作,合法软件打开或内存映射访问密文文件的同时,非合法软件也能读取此文件。如Word编辑密文DOC文件的同时,可以通过系统的资源管理器或其他程序复制、读取该文件,得到的将依然是密文,可以被合法软件透明打开编辑。

7、网络文件系统

完全支持文件过滤驱动下的网络文件系统。包括按是否安装本系统的不同组合:本机安装+对方安装,本机安装+对方未装,本机未装+对方安装。本地文件系统和网络文件系统下频繁操作各类软件不同大小的文件均工作正常。

8、密钥

测试版使用指定密钥,产品应用中可以按需求定制,采用如动态密钥等实现更高强度的防破译措施。

9、加密算法

测试版本采用简单加密,便于分析与查错和验证。产品应用中可以采用AES等高强度加密算法,并可以按需求定制开发支持其他加密算法。

10、可靠性

将加密标识置于文件头部,一次写入一劳永逸,不需要像置于文件尾那样:文件每保存一次过程中需要多次扩充文件后再写入标识等多余的动作。可以认为采用将加密标识置于文件头部的方式,不会增加文件损坏的概率,与未加密时基本相同,并且效率极高。


11、安全性

带走硬盘,复制/另存至USB存储设备/卡,刻录CD/DVD,网络共享复制出去,通过网络、蓝牙、并串口等通信手段发送出去,脱离原工作环境等,相关文件始终都是加密受保护的。采用严格的进程指纹验证,将伪造合法进程排除在外,配合离线控制有效保护已加密文件。此外如果对USB存储设备、光驱、软驱等有只读或禁用需求,可以按需定制。

12、离线控制

测试版本提供了离线控制的演示.在满足一定条件的情况下由配套应用层工具控制驱动进入或退出离线状态,实现进入离线状态后已启动的合法软件将自动关闭,且不能再启动原合法软件直到再次进入正常工作状态,所有密文处于受保护状态,以此来演示离线控制功能。

13、可扩展性

系统的设计简洁、清晰、易于扩展,同时已启用通讯端口,可以与应用层结合实现更加强有力的安全防护工具,可按具体需求定制实现。

14、重点、难点技术问题

A、加密标识

B、网络共享访问

C、进程识别

D、NTFS压缩卷/文件夹

E、Mailslot & NamedPipe

F、非强制独占双态模式访问

G、与杀毒软件的冲突

H、离线控制




      已测试大中型软件:Vistual Studio 2005,SQL Server2000,SQL Server 2005,Office系列(各常用版本Word,Excel,Access,PowerPoint,InfoPath),WPS,QQ,AutoCAD系列(AutoCAD R14,AutoCAD 2000,AutoCAD 2004,AutoCAD 2005,AutoCAD 2006,AutoCAD 2007,AutoCAD 2008,AutoCAD 2009,AutoCAD 2010),Solidworks 07,Solidworks08,某ARM手机平台完整编译……仅需配置策略,即可透明加解密。测试时以上软件均采用最为严格的策略:所有新建和修改的文件不区分类型全部加密,驱动不需要做任何改动或过滤操作即可正常工作。

    试用版提供配套应用层工具软件,含:策略配置、驱动通信控制、批量加解密及相关文档等。

    有意者请联系QQ:575599766  EMail: e_1111@yahoo.cn

znsoft
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2023-10-25
  • 粉丝300
  • 关注6
  • 积分910分
  • 威望14796点
  • 贡献值7点
  • 好评度2410点
  • 原创分5分
  • 专家分100分
  • 社区居民
  • 最爱沙发
  • 社区明星
沙发#
发布于:2010-05-13 11:23
sdk市场已经饱和,而且基于过滤驱动的加密有很多濽在问题解决了.哎..
http://www.zndev.com 免费源码交换网 ----------------------------- 软件创造价值,驱动提供力量! 淡泊以明志,宁静以致远。 ---------------------------------- 勤用搜索,多查资料,先搜再问。
eleqi
驱动小牛
驱动小牛
  • 注册日期2005-12-20
  • 最后登录2014-01-03
  • 粉丝4
  • 关注2
  • 积分172分
  • 威望1475点
  • 贡献值0点
  • 好评度115点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2010-05-13 11:36
感谢老大的回复!
我主要是提供源码级的合作,不提倡SDK,目前已有三家公司在合作。
eleqi
驱动小牛
驱动小牛
  • 注册日期2005-12-20
  • 最后登录2014-01-03
  • 粉丝4
  • 关注2
  • 积分172分
  • 威望1475点
  • 贡献值0点
  • 好评度115点
  • 原创分0分
  • 专家分0分
地板#
发布于:2010-06-30 16:16
感谢各位的支持,现阶段标准版可以优惠。
eleqi
驱动小牛
驱动小牛
  • 注册日期2005-12-20
  • 最后登录2014-01-03
  • 粉丝4
  • 关注2
  • 积分172分
  • 威望1475点
  • 贡献值0点
  • 好评度115点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2010-07-24 00:56
又签两单,为感谢各位的支持,现阶段标准版可以优惠。
znsoft
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2023-10-25
  • 粉丝300
  • 关注6
  • 积分910分
  • 威望14796点
  • 贡献值7点
  • 好评度2410点
  • 原创分5分
  • 专家分100分
  • 社区居民
  • 最爱沙发
  • 社区明星
5楼#
发布于:2010-07-24 04:14
文件头不是啥问题,这个实现也不复杂,复杂的是稳定性阿。
http://www.zndev.com 免费源码交换网 ----------------------------- 软件创造价值,驱动提供力量! 淡泊以明志,宁静以致远。 ---------------------------------- 勤用搜索,多查资料,先搜再问。
eleqi
驱动小牛
驱动小牛
  • 注册日期2005-12-20
  • 最后登录2014-01-03
  • 粉丝4
  • 关注2
  • 积分172分
  • 威望1475点
  • 贡献值0点
  • 好评度115点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2010-09-08 10:28
同意老大的说法。稳定是首要条件。
很久没来了,在做客户定制版,马上签约了上来看看
eleqi
驱动小牛
驱动小牛
  • 注册日期2005-12-20
  • 最后登录2014-01-03
  • 粉丝4
  • 关注2
  • 积分172分
  • 威望1475点
  • 贡献值0点
  • 好评度115点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2011-03-14 00:07
很久没来了,快签约了上来瞧瞧。现阶段很忙,授权整套源码非常优惠,有兴趣的请联系我
eleqi
驱动小牛
驱动小牛
  • 注册日期2005-12-20
  • 最后登录2014-01-03
  • 粉丝4
  • 关注2
  • 积分172分
  • 威望1475点
  • 贡献值0点
  • 好评度115点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2011-05-11 14:27
新签几单,收成还过的去
如有兴趣合作欢迎联系了解
eleqi
驱动小牛
驱动小牛
  • 注册日期2005-12-20
  • 最后登录2014-01-03
  • 粉丝4
  • 关注2
  • 积分172分
  • 威望1475点
  • 贡献值0点
  • 好评度115点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2011-07-09 04:22
好久没来了。广东、山东……签了几单。有兴趣了解的欢迎联系
eleqi
驱动小牛
驱动小牛
  • 注册日期2005-12-20
  • 最后登录2014-01-03
  • 粉丝4
  • 关注2
  • 积分172分
  • 威望1475点
  • 贡献值0点
  • 好评度115点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2011-09-26 17:07
有需要的朋友欢迎联系
eleqi
驱动小牛
驱动小牛
  • 注册日期2005-12-20
  • 最后登录2014-01-03
  • 粉丝4
  • 关注2
  • 积分172分
  • 威望1475点
  • 贡献值0点
  • 好评度115点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2012-02-01 16:34
龙年再接再励!欢迎需要的朋友联系!
eleqi
驱动小牛
驱动小牛
  • 注册日期2005-12-20
  • 最后登录2014-01-03
  • 粉丝4
  • 关注2
  • 积分172分
  • 威望1475点
  • 贡献值0点
  • 好评度115点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2012-08-14 13:43
顶起来,有需要的朋友欢迎联系
游客

返回顶部