TrueCrypt加密安全问题
TrueCrypt是著名的开源加密软件,采用aes算法加密,可以加密整个硬盘,硬盘分区,虚拟文件为分区,光盘,u盘等。软件加密速度快,在很多电脑上超过硬盘读写速度,占用系统资源小,感觉不到存在,加密强度高,用Hash算法都是重复2000次。加密安全问题如下:
加密方法:
由于TrueCrypt加密后信息并没有记忆采用何种算法,TrueCrypt只能在解密时,用输入的密码对每种算法穷举直到解密。当破解者知道对称加密的算法时,可以通过电脑运算把各个密码加密指定信息的密文存储在类似数据库存储介质上,需要解密时,只要检索数据库,很快就可以找到密码,网上就有这样的md5解密数据库。对称密码破解只要找到指定信息的密文就可以了。但TrueCrypt在加密时采用撒盐的加密因子,使得破解中无法通过空间换时间的破解方法无效。
加密后网上流传窃取密码方法与防范方法:
一种方法是,使用间谍程序在TrueCrypt启动之前启动,记录密码。这种方法在网上一篇名为《邪恶女佣破除硬盘全局加密》中有详细介绍。对付这种间谍程序,可用如下方法。电脑加cmos开机密码防止物理上接触电脑。修改启动屏幕的自定义信息,如果和原先不一样,说明加载区被修改过。进入系统后用软件比较引导区,这些可以解决这个问题。
另一种是,开机后在内存中读取,包括软件读取和冷冻内存技术。可
以看到网上有《最新研究显示冷冻内存即可破解加密资料》这个文章。冷冻内存只要保证电脑的人走关机就没事,不要处于待机状况就可以了,如果采用加密内存条
就没有这方面的问题,目前也只是传说可以破解,不实用。软件读取目前只能用防火墙来挡。在驱动内存中缓存密码,使用类似防火墙功能的软件防止直接访问这块
物理内存,除了TrueCrypt,其实只要做好反间谍软件就没什么问题。以后要能采用类似微软的bitlocker则把密码放在tpm安全芯片中,用“密封”密钥的技术就很安全了。当然你可以自行修改源码达到这一点,这也许是开源的最大好处。如果一直把密码存储放在 tpm中,这又会带来前面的冷冻内存问题,还有 tpm本身安全性问题。只有在解密后放入tpm保护,不能持久化到 tpm中,像放在内存一样。
其他方法:
当有人把刀架在你脖子上逼你说密码怎么办?
这一点TrueCrypt想到了,用隐藏加密卷或隐形操作系统来解决这个问题。隐藏加密卷TrueCrypt说明如下:
“
可能在某些情况,有些人会迫使您告诉它们加密卷密码。有很多情况您可能无法拒绝这种要求(例如,存在暴力因素)。使用这种隐藏加密卷可以解决此类问题,而不须泄漏隐藏加密卷密码。”
隐形操作系统如下:
”
可
能存在某些人强迫您解密操作系统的情况。在很多情况下您可能无法拒绝泄漏密码(例如,被诈骗)。如果您选择了这个选项,您将会创建一个没有任何手段可以识
别的隐形操作系统(当然这得需要您遵循一定的步骤创建)。因此,您一定不要解密或者泄漏隐形操作系统的密码(译者注:这是因为隐形操作系统的存在只有你才
知道,你不说没有任何手段可以检测到)
“
假设破解者可不是一般的人,他可以通过硬盘磁场残留侦探高科技来恢复加密系统前的数据,怎么办?
这一点TrueCrypt也想到了,只要擦除原来数据次数够多就可以了,看看TrueCrypt说明:
”
在某些存储介质上,当数据被其他数据覆盖后,也仍有可能通过磁力显微技术恢复出来被覆盖的数据。这也包括一些被加密方式覆盖的数据(这在TrueCrypt加
密那些原来没有加密的系统分区或系统驱动器时可能会发生)。根据一些政府机构发布的文献,通过使用仿随机或非随机数据覆盖一定次数可以阻止数据恢复或使数
据恢复变的异常困难。因此,如果您确认攻击者可能会使用类似磁力显微技术恢复您的加密数据,您可以选择下拉列表中几种擦除算法中的一种(已经存在的数据不
会丢失)。需要说明的是在分区/驱动器加密后不需要再执行擦除操作。当分区/驱动器被完全加密后,不会再有非加密数据向其写入。写入加密卷中的任何数据都是在内存中即时加密,然后这些已加密数据才会被写入到磁盘。
“
不过上面的窃取密码方法只有软件窃取现实可行,但需要一定的条件,如在指定电脑上运行指定程序,但目前也没有这方面的软件。这个方法也是很好预防的。但如果电脑不在操作当中,无法从内存获取密码,想破解是几乎不可能的。
TrueCrypt对一般使用者已经很安全,设置一下启动系统cmos密码更安全。网上传言有FBI后门,说编译后的程序和发布的程序有5%的
差异,无法知道是真是假。如果在算法上有后门,这个就高深了。另外后门可能是上传用户的密码,或文件概要,这个只要控制软件不联网就可以了。如果自已用下
载的源码编译出来,应该没有这个问题。因为源码是公开的,没办法做手脚。如果用封闭商业软件,就更有可能有这方面的问题。总之,正确使用TrueCrypt安全性很高。