再谈硬盘加密与TrueCrypt、FreeOTFE比较

先骂下自己:完美主义是病,得治。。。我都觉得我的完美主义已经要到了任何涉及技术的软件都找不到一个能符合我口味的了。。。

先简单说下windows的两种加密。BitLocker我不太想说太多,加密的对象必须是分区,而且非要创建个恢复文件,总感觉微软在里面留了后门。这个研究不多,具体工作内幕我也不清楚,而且向下的兼容性也不好,不支持低版本的windows。

EFS是NTFS自带的加密,就是那个能够把文件名变成绿色的玩意。加密的对象是文件而不是分区卷,访问控制通过NTFS权限来控制(如果一个文件解密不开,将给出Access Denied的返回)。EFS只能对文件内容加密,而不能加密文件名。master key由公钥系统保护,解密需要私钥。私钥由windows证书管理器管理,可以自由导入导出。私钥丢失将无法恢复加密的文件。

个人觉得EFS的工作理念还是蛮好的,比如可以用导入个人的PKCS12证书用以加密文件。主要缺陷除了文件名不加密外,还有证书必须导入到系统中,似乎还没有办法能够关机后自动删除,遇到查水表的可能要悲剧。更新:证书私钥应该是被windows凭据加密的,所以电脑关机后,查水表的人没有windows登录密码是无法取得私钥的,当然既然知道加密文件的存在,可以选择打到你说出密码。

第三方的加密软件只有TrueCrypt和FreeOTFE是免费的。先说下TrueCrypt。

很久很久以前有传言说TrueCrypt有CIA的后门,不过毕竟作为世界上使用的最多的软件,而且还是开源的(虽然整体打包开源而非源代码管理方式开源一直被人骂),文档对技术内幕的实现方式也很详细,所以我觉得这个传说的可操作性还是比较低的,因为数学算法是安全的,留后门也不是那么简单的一件事。再退一步讲,就算有后门,我觉得我写的玩意被CIA拿去也比被防火墙拿去或是被QQ拿去要不更加糟糕。

TrueCrypt提供的功能很简单,只提供很少的几个加密算法与hash算法,当然这个不重要,基于XTS运算的算法都很安全的。功能上,提供了选择一个或多个文件当作key file的功能,免得纠结怎么记那么长的密码。隐藏加密卷的理念比较有意思,即同一个文件有两个header,提供主密码会打开普通卷,提供隐藏卷的密码就会打开其中隐藏的部分,这种方式据说对付强盗把刀架脖子上逼你说出密码比较有效。

FreeOTFE像是一个很多功能但做的并不完美的个人作品,用起来比TrueCrypt复杂。FreeOTFE支持的算法比较多,不同的算法放到了不同的驱动中,用户自己选择喜欢的算法驱动加载。FreeOTFE创建卷时只能是输入密码,key file解密功能似乎是header的备份,这点我觉得不方便而且不安全。FreeOTFE支持在现有文件中的某个位置开始创建隐藏加密卷,例如你有一个很大的但不想再看的电影文件,这点设计比较好,可以不容易被人发现某个文件是机密文件(这真的真的真的只是个电影啊,至于为什么中间部分播不出来我也不知道可能是下载到60%没种子了吧)。而TrueCrypt不支持在某个正常文件中隐藏加密卷。

FreeOTFE的另外一个特有功能是Linux自带加密盘的兼容实现,如LUKS。另外还提供有FreeOTFE Explorer以便不mount就能操作卷中的文件。FreeOTFE一个最致命的问题是由于是个人开发,没钱买微软的签名,所以在64位系统上不能加载驱动,要在系统启动时选择禁用驱动签名。本来加密文件大部分并不是常用的,所以每次我想要那些文件总是要重启一下,郁闷。

个人之前一直使用FreeOTFE,最近换了64位系统,准备尝试下TrueCrypt。同时向各位用户推荐TrueCrypt,简单易用,足够需要,既适合专业用户,也适合小白玩家。哦对了有官方中文版!

 

 

4 Replies to “再谈硬盘加密与TrueCrypt、FreeOTFE比较”

    1. 说人话!上瘾就是上瘾!别以为整个社会学术语我就不认识你了!

    2. 好,受迫害妄想症重度患者用真实的地下室用惯了。
      而且真实的地下室可以在麦金塔上用。

Leave a Reply

Your email address will not be published. Required fields are marked *