阅读:4378回复:1
[源代码]基于ecryptfs的linux透明加解密模型基于ecryptfs的linux透明加解密模型, 当前代码纯粹验证可行性。 代码主要完成hook功能,并在hook点根据进程进行文件的重定向,文件加密处理借用ecryptfs。只简单在ubuntu10.10(内核2.6.35)上进行了测试,测试软件包括gedit/firefox/openoffice, openoffice有问题,保存时无响应,由于本代码只是出于验证的目的,没有深究,有时间再慢慢研究。 使用方法及实现原理: 安装ecryptfs-utils,ubuntu10.10用apt-get install ecryptfs-utils. 把代码拷贝到某个目录中,make生成syshook.ko. 在当前目录中 insmod ./syshook.ko加载模块, 加载后创建/proc/syshook用于命令处理。内置gedit/firefox/openoffice为加密进程,加密重定向目录为/tmp/flyecrypt。 调用echo s > /proc/syshook, 该命令开始hook do_filp_open, 由于do_filp_open并没有导出这里是通过filp_open找到do_filp_open的地址。在new_do_filp_open中判断进程是否是加密进程,如果是重定向到/tmp/flyecrypt/中,如果不是且其访问/tmp/flyecrypt/中文件则重定向回原始路径,防止非加密进程访问加密文件。 cd /tmp mkdir flyecrypt 上述两个命令创建临时目录用于加密文件重定向 mount -t ecryptfs / /tmp/flyecrypt 把根目录mount到临时目录中用于加密进程访问,mount后会提示输入密码,加密算法,密码长度,是否允许明文文件(这里要输入y),是否文件名加密(这里输入n)。 启动加密进程如gedit保存文件将加密,用vi访问只能看到密文。 如果不想加密了调用echo t > /proc/syshook停止,但无法umount /。 通过目前的方法个人认为基于ecryptfs进行透明加密是可行的,并能做到双缓存透明,完全透明还需要测试。如果要真正做产品还需要深入研究ecryptfs以及vfs,当然做过透明加密的都知道加密仅仅是个开始。完全不了解ecryptfs的同学用google。 |
|
|
沙发#
发布于:2012-07-08 09:43
当前涉及windows平台加解密的企业有几百家,但是涉及linux平台加解密的公司却很少,为了帮助一部分安全产品厂商快速进入linux透明加解密市场,青岛健明科技发展有限公司特推出针对软件企业的linux内核级透明加解密模块.
1. 本模块对上层以系统调用的方式提供接口。 2. 软件开发企业可以定制加解密模块的功能。 3. 对外可以以集成软件开发商自主产品推出。. 欢迎希望进入linux加解密市场的软件公司与本公司联系. 公司网站http://www.jm8848.com |
|