前几天写了"文件加密的扫盲介绍
",普及了文件加密的重要性以及挑选加密工具的注意事项。貌似这个话题还比较受欢迎(此文的转载不少),而且有读者在评论中让俺推荐一款文件加密软件。今天就来介绍一下,俺个人比较喜欢的文件加密工具——TrueCrypt。
事先声明:
本文不是 TrueCrypt 的入门教程。所以,俺不会详细介绍该软件的使用方式。想了解如何使用的,可以去看它的使用手册。本文介绍的是 TrueCrypt 最新版本(7.0a)的特色。对于较老的版本,在功能上会有一定出入。
★TrueCrypt 是啥玩意儿?
简单来说,TrueCrypt 是用来对整个硬盘或某个分区(支持物理硬盘和虚拟硬盘)进行实时加密的工具。
官方网站在 http://www.truecrypt.org/
目前最新版本是2010年9月发布的 7.0a 版
如果想大致看看该软件长啥样子,请看官网上的截图(在"这里
")。
★回顾一下挑选加密工具的注意事项
俺在前一个帖子
里,提到了挑选文件加密软件的几个注意事项。咱们首先来对照一下,TrueCrypt 是否符合这些要求。
◇知名度高,口碑好
要判断某个软件的知名度高不高,一个简单的办法,就是到 Google 里搜索一下该软件。(除非碰到同名的情况)通常 Google 的搜索结果数,可以大致反映出该软件的知名度。列位看官可以自己去 Google 搜索一下便知。
说到 TrueCrypt 的口碑,俺可以举一个例子:据说老美的 FBI 拿到某个犯罪分子用 TrueCrypt 加密的数据,结果 FBI 里的一堆密码专家都无计可施(懂洋文的同学可以看"这里
"的报道)。
◇有较多的用户使用
TrueCrypt 具体有多少用户,俺说不上来。不过,据说欧美很多经营网站的家伙,就是采用 TrueCrypt 来规避法律风险的——他们把内容用 TrueCrypt 加密后再放到托管的服务器上,警察即便拿到了也无法解密,也就无法举证。
◇支持主流的加密算法
TrueCrypt 内置了 AES(Rijndael), Serpent, Twofish 这三种主流的加密算法。
AES(全称:Advanced Encryption
Standard)是美国官方在2002年确定的加密标准,其名气自不必多说。另外两种加密算法,名气也很大。当初,Rijndael,
Serpent, Twofish 这3者都是 AES 的主要竞标者,最后是 Rijndael 中选。
你可以单独使用这3种的某一种,也可以对这3种加密算法组合使用,以得到更强的加密效果(但速度也更慢)。可用的组合参见下图:
◇要能支持虚拟盘/虚拟分区
这方面是 TrueCrypt 的强项。它除了支持虚拟
硬盘/虚拟
分区的加密(具体的概念,请看前一个帖子
的介绍),还可以加密某个物理
分区甚至整个物理
硬盘;除了可以针对硬盘进行加密,还可以针对U盘(USB flash drive)加密。
另外,它还支持隐含卷,隐藏操作系统等功能(俺后面会介绍)。
◇最好是免费且开源的
TrueCrypt 是开源的,也是免费的。
◇最好支持多种操作系统
它目前支持 Windows,Mac OS X,Linux 这3种主流操作系统。对于 Windows,从 Windows 2000 一直到 Windows 7 都支持。常见的操作系统,基本上都涵盖了。
◇总结
从上面列举的可以看出,TrueCrypt 完全满足俺挑选文件加密工具的要求。
★TrueCrypt 的几个特色
说实话,满足上述要求的文件加密工具,绝不止 TrueCrypt 这一款。为啥俺首先推荐它捏?那是因为 TrueCrypt 还有另外几个很不错的特色。
◇keyfile
大部分加密软件都会涉及到加密用的口令。口令是一个令人很纠结的东西——设得太复杂怕忘了,设得太简单怕被破了。俺之前还专门写过一个帖子——如何构造安全的口令
——教你如何构造好记又难破解的口令。
有了 TrueCrypt 之后,口令的问题就不成为问题了。
TrueCrypt 提供了 keyfile 的功能。简单来说,就是用一个或多个
文件作为加密的认证因素(类似于口令)。这样一来,你只要记住加密用的文件(keyfile)即可。对于破解的人,就很难再用传统的"暴力破解口令"的方式了。
所谓的暴力破解口令,就是把所有可能的口令组合都尝试一遍。比方说,你的口令只有小写字母,而且你的口令只有8个字符,那么所有可能的组合也就是26的8次方。虽然26的8次方挺大,但是用计算机进行穷举,用不了太长时间也可以全部尝试完。
◇双因素认证
用刚才提到的 keyfile 功能,你就可以玩"双因素认证"的把戏了。假设你想保护一个很重要的加密卷,那么,你可以同时设置口令和 keyfile。这样一来,如果要解开这个加密卷,就需要同时知道口令并拿到 keyfile。这大大提高了攻击者的难度。
◇隐藏卷(Hidden Volume)
另一个很吸引人的特色,是关于"隐藏卷"的功能。
所谓的隐藏卷,就是在一个加密卷里面再创建一个加密卷。外层的那个加密卷是"明"的(也叫"宿主卷");内层的那个,是"暗"的(叫"隐藏卷")。这两
个加密卷必须使用不同的认证因素(不同的口令或不同的 keyfile)。在物理上,你只能看到外层的卷文件,内层的卷,是没有独立的文件的。
当你选中卷文件之后,如果你输入的是外层的认证因素,那就打开外层的卷(这时候看不到内层的数据);反之,输入内层的认证因素,则打开内层的卷(这时候看不到外层的数据)。
隐藏卷的存储示意图如下(本质上就是利用外层卷的剩余空间来存储内层卷的数据):
可能有同学会纳闷:这么玩,有啥用捏?请看下一节——Plausible Deniability
◇Plausible Deniability
很抱歉,这个洋文,俺没有找到合适的中文来表达它的含义(网上有人翻译为:"冠冕堂皇地拒绝",俺觉得不够贴切)。下面,俺用一个虚构的小故事让大伙儿明白,什么是"Plausible Deniability"。
话说有一个GG叫小黑,他有一个MM叫小白。小黑喜欢背着小白偷看毛片,而且还喜欢把毛片收藏起来;而小白对毛片很反感。为了不让小白知道,小黑把毛片
都用 TrueCrypt
加密保存。小黑GG的安全意识很高,他先创建了一个外层的加密卷("明"的),里面放一些无光痛痒的文件。然后在外层加密卷中,再创建一个隐含加密卷("
暗"的),里面保存毛片。
有一天,小白也不知道通过什么途径,发现小黑背着她,加密保存了一些文件。于是小白就威胁小黑,让小黑打开加密卷给
她看一看。这时候,隐藏卷的好处就体现出来了。小黑可以装做很不情愿的样子,然后输入外层加密卷的口令,让小白看一看外层卷的东西(都是些无关紧要的文
件)。小黑就这样顺利蒙混过关了 :-)
这就是利用隐藏卷,实现"Plausible Deniability"的典型案例。你可以在受到胁迫的时候,用隐藏卷功能来"丢车保帅",而胁迫你的人,未必能看出破绽。
◇隐藏操作系统(Hidden Operating System)
隐藏操作系统的功能,本质上跟隐藏卷类似——也是有一明一暗两个加密卷,分别装两个操作系统。"明"的操作系统就放一些无关痛痒的文件,而那些敏感的文件都放到"暗"的操作系统中。
当你受到胁迫的时候,你就输入"明"的那个密码,进入那个"明"的操作系统。这样一来,"暗"的那个操作系统就不会暴露。
◇短小精悍
TrueCrypt 非常轻巧,安装程序仅有3兆多。安装之后,只有6个文件,如果去掉帮助文件和license文件,那就仅有4个文件了。
另外,TrueCrypt 还支持免安装运行——你可以把安装目录拷贝到U盘,然后就可以在另外一台电脑上使用它。
◇成熟度较高
对于加密工具来说,软件的成熟度是非常重要的。如果软件不成熟,会导致如下2种重要的风险:
其1,假如软件有Bug并导致解密后的数据和加密前的数据不一样(数据损坏)——意味着你的数据(往往是重要的)丢失了。
其2,如果软件的数据加密过程有缺陷,可能导致加密数据被攻击者轻易破解——意味着你的数据(往往是见不得人的)被曝光。
而俺喜欢 TrueCrypt 的一个重要原因就是它的成熟度比较高。除了因为它研发时间长(已有7年多),除了因为它的口碑好,还有一个重要原因是软件的功能和文档做得很细致。(从一个软件的功能和相关文档,可以看出其研发团队的成熟度
)
有这么多亮点功能,再配合较高的成熟度,TrueCrypt 绝对值得一试。
★使用 TrueCrypt 的注意事项
介绍完特色功能,最后再讲几个注意事项,以免大伙儿走弯路。
◇关于中文界面
TrueCrypt 默认是西洋文的界面,那些不适应西洋文的同学,可以到官网去下载语言包(在“这里
”)。
◇关于虚拟卷的尺寸
如果你要创建一个虚拟的加密卷。在创建的时候,一定要想好卷的大小——要足够大以便存放要加密的数据。目前 TureCrypt
没有提供"调整虚拟加密卷大小"的功能。也就是说,虚拟卷一旦创建,大小就固定了。万一你把这个卷的空间用完了,就只好另外创建一个新的,把原先的数据
copy过去,再把老的删除。
好在现在硬盘已经是白菜价了,所以大伙儿创建虚拟卷的时候,尺寸要估计得充裕一些为好。
◇关于 keyfile
用什么样的文件作为 keyfile 比较好捏?有两种方法:1、自己找一个文件;2、让 TrueCrypt 帮你创建一个随机文件。这两种方式的注意事项如下:
1、如果让 TrueCrypt 帮你随机生成
那么,你一定要记得把生成的 keyfile 备份好。否则,一旦 keyfile 丢失了,那你就再也无法打开加密卷了。
2、如果你自己选择 keyfile
俺建议选作 keyfile 的文件不要太小,至少也得有100KB(最好超过1MB),这样加密效果比较好。另外,如果自己选
keyfile,你可以选某个比较知名的文件做
keyfile。一来比较好记,二来也不容易搞丢。比方说,你很喜欢Firefox,那你可以用Firefox的安装文件作为
keyfile。万一搞丢了,还可以再去 Firefox 官网下载。
为了让安全性更高些,你可以把 keyfile 跟加密卷分开存放。如果你的加密卷在电脑上,那建议你把 keyfile 保存在一个随身携带的U盘或者手机上(现在大部分手机都可以当U盘用)。
◇关于隐藏卷
由于隐藏卷是存储在外层卷(宿主卷)的剩余空间中。理论上,当你往外层卷写数据的时候,有可能会破坏隐藏卷。TrueCrypt
当然早就考虑到了这点。当你想在外层卷写数据,但是又不希望破坏内层卷,你就必须在打开卷的时候,同时输入内外2个卷的认证因素,这时
候,TrueCrypt 会打开外层卷,但是也会对隐含的内层卷进行暗中保护。
当然啦,你在受到胁迫的时候,千万不要输入内层卷的密码,否则就露馅了!
◇关于免安装运行
有些人喜欢把加密卷和 TrueCrypt 程序一起放到U盘上。然后,随便找一台电脑插上,就可以运行 TrueCrypt 并打开加密卷。这样的好处是——相当于一个移动硬盘,还不怕丢失。
但是这么干有一个风险。如果你在一台不安全的电脑上运行 TrueCrypt,万一这台电脑上被植入了木马,万一这个木马还具有Key Logger (键盘记录)的功能,那你的加密卷口令就有可能被盗取。
★结尾
诸位同学,如果确实要用 TrueCrypt,一定要花点时间看看它的使用手册。那手册写得可真好,不光介绍了 TrueCrypt 的使用,还介绍了很多信息安全方面的知识。
另外,如果对 TrueCrypt 还有啥疑惑,可以在俺的帖子后面留言或者给俺Email。
版权声明
本博客所有的原创文章,作者皆保留版权。转载必须包含本声明,保持本文完整,并以超链接形式注明作者编程随想
和本文原始地址:
http://program-think.blogspot.com/2011/05/recommend-truecrypt.html
分享到:
相关推荐
TrueCrypt容器是一个虚拟的加密磁盘,可以存储任何类型的文件。创建容器时,用户需选择容器类型(固定大小或动态扩展)、容量大小及加密算法。创建后,通过输入正确的密码,即可像普通磁盘一样使用该容器,但一旦...
TrueCrypt是一款著名的开源磁盘加密软件,其7.1版本是它的一个稳定版本,提供了强大的数据保护功能。本文将深入探讨TrueCrypt 7.1在磁盘加密方面的应用及其核心特性。 1. **磁盘加密的基本概念** 磁盘加密是一种...
2. **文件系统接口**:为了在加密和解密磁盘时保持透明性,TrueCrypt需要与操作系统文件系统进行交互。这部分源码会涉及读取和写入文件系统的机制,以及如何在加密卷上实现这一功能。 3. **用户界面**:TrueCrypt...
《TrueCrypt:深入理解加密与可否认文件系统》 在当今数字时代,数据安全与隐私保护成为日益紧迫的需求。TrueCrypt作为一款开源的磁盘加密软件,为用户提供了强大的数据保护功能,尤其在创建可否认文件系统...
TrueCrypt不需要生成任何文件即可在硬盘上建立虚拟磁盘,用户可以按照盘符进行访问,所有虚拟磁盘上的文件都被自动加密,需要通过密码来进行访问。TrueCrypt 提供多种加密算法,包括:AES-256, Blowfish (448-bit ...
利用TrueCrypt完美加密移动硬盘分区.docx
通过TrueCrypt,用户可以创建一个加密的虚拟硬盘,这个硬盘在不解密的情况下看起来就像是一个普通的文件,但其内部存储的所有数据都被加密,确保了隐私和敏感信息的安全。 在制作加密U盘的过程中,首先需要从官方...
TrueCrypt是一款著名的开源硬盘加密软件,它为用户提供了一种安全的方式来保护存储在计算机上的敏感数据。这款工具的主要功能是创建虚拟加密卷,这些卷可以是文件或者直接在硬盘上划分的区域,用户可以将数据存储在...
TrueCrypt6.3 加密软件 超级军用加密锁,适用于各种磁盘加密(也适用于U盘)、文件加密等,密码无法破解,完全免费 使用过的加密软件中最强的,支持磁盘分区加密,光盘加密,切记要记住密码哦,忘记了无法破解还原...
TrueCrypt是一款著名的开源加密软件,特别适用于文件和目录的加密需求。6.3a是其在2012年发布的一个稳定版本,虽然该软件已停止更新,但在当时,它因其强大的安全性和易用性而备受推崇。 TrueCrypt的主要功能在于...
TrueCrypt不需要生成任何文件即可在硬盘上建立虚拟磁盘,用户可以按照盘符进行访问,所有虚拟磁盘上的文件都被自动加密,需要通过密码来进行访问。TrueCrypt 提供多种加密算法,包括:AES-256, Blowfish (448-bit ...
是一款免费开源跨平台的实时磁盘文件加密工具,它是基于知名的开源加密工具 TrueCrypt 项目衍生而来。支持硬盘、U盘、移动硬盘等所有磁盘的分区加密
TrueCrypt是一款免费,开源的支持Windows Vista/XP/2000 and Linux的绿色虚拟加密磁盘工具,可以在硬盘上创建一个或多个虚拟磁盘,所有虚拟磁盘上的文件都被自动加密,需要通过密码来进行访问。TrueCrypt提供多种...
TrueCrypt 是一款强大的开源磁盘加密软件,专为保护用户的重要文件而设计。它提供了多种加密算法,如AES-256、Blowfish(448-bit key)、CAST5、Serpent和Triple DES,确保了数据的高度安全性。这款软件具有免费、...
在IT领域,尤其是在数据安全和隐私保护方面,TrueCrypt是一个著名的开源加密软件,它允许用户创建、装载和卸载加密卷以保护敏感信息。而利用C#编程语言,我们可以通过编程方式来调用TrueCrypt的功能,实现自动化和...
此外,文档中提到的文件名和格式可能涉及加密和解密的过程,如"star1020.dat"、"123.MP3"和"456.rmvb"等,这些文件名后缀暗示了可能的文件类型,但通过TrueCrypt加密后,文件实际上变成了加密状态,即使文件名相同,...
创建一个加密的虚拟磁盘文件和安装它作为一个真正的磁盘。 加密整个分区或存储设备,如USB闪存驱动器或硬盘驱动器。 加密分区或驱动器安装Windows(预启动身份验证)。 加密是自动的,实时和透明的。 并行化和流水线...
此外,它还提供了一种称为“系统卷”的功能,允许操作系统和系统文件在加密状态下运行,进一步增强了系统的安全性。 在4.2a这个版本中,TrueCrypt虽然已经不再更新,但它的代码已经被其他项目,如VeraCrypt,所继承...
TrueCrypt提供了全盘加密(FDE)和文件/卷加密两种方式,确保了用户的隐私和数据安全。 1. **TrueCrypt的全盘加密**:全盘加密是指对整个硬盘进行加密,包括操作系统和所有文件。这种加密方式使得即使电脑被偷或...