转自devXa的百度空间,留个mark,平时有空逆向下

 文件系统过滤驱动在透明加解密方面的应用可谓如火如荼, 由此衍生出来的公司也是多如牛毛, 根据驱动开发网的牛人介绍如今该项技术已经发展到了第四代 - 分层文件系统(Layered File System), 关于分层文件系统的相关内容我会在后续文章中介绍其相关细节(呵呵,很期待吧) ! 而今天我先公布一个以前做的"双缓存透明加解密驱动" - 该驱动主要完成如下功能:
. 我们将进程分为涉密进程和普通进程;
. 涉密进程产生的文件统统按照某种算法进行加密(这里有流加密算法和分组加密算法)
我们称已加密的文件为涉密文件;
. 涉密文件都加上文件头标识,标识保存了涉密文件的关键信息(比如文件的作者,其它人的操作权限等);
.
保证任何时刻涉密应用都能以明文方式操作涉密文件, 而普通进程则只能以密文方式操作涉密文件;

针对以上功能要求,首先要面对以下几个问题:
. 开发框架的选择(Sfilter 和 Minifilter);
. 加入文件头标识会改变文件长度;
. 如果使用分组加密算法则需要考虑不足一个分组时的情况;



关于上面几个问题的讨论在驱动开发网已经有很多文章,在这里我就不多谈了,主要说下我的解决方案:

> 我使用的是MInifilter框架 - 简化了和缓存管理器的交互以及上下文和文件名的管理问题;
> 关于改变文件长度的问题我采用临时文件的方法来解决, 这毋庸置疑地要用到重定向技术;
曾经有人怀疑使用临时文件会存在性能瓶颈, 不过在实践中发现只要处理恰当性能损失还是
非常小的,关键看你如何处理临时文件了!
> 假设一个分组长度为16个字节, 现在对17个字节的内容进行加密, 我的处理方法是前16个字节
进行分组加密, 而多余的1个字节使用流加密算法进行等长加密即可!


下面附上二进制文件, 邪恶的同志应该很容易反出源码 :-)

下载地址: http://pickup.mofile.com/6441952912408795


安装步骤: 解压文件包, 右击ShEFS.inf文件, 并选中"Install"菜单开始安装, 安装成功后按照提示重启
Windows系统; 当再次进入Windows系统直接运行ShEFSUI.exe程序,先添加涉密应用,
然后点击"打开EFS"按钮即可, 如果中途要添加新的涉密应用,你可以先点击"关闭EFS"
按钮,然后添加新的涉密应用,最后打开EFS即可!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值