七种磁盘加密技术成为数据的守护神

日期: 2008-05-14 作者:Serdar Yegulalp翻译:潘春燕 来源:TechTarget中国

  TruCrypt、PGP、FreeOTFE、BitLocker、DriveCrypt和7-Zip,这些加密程序提供了异常可靠的实时加密功能,可以为你确保数据安全,避免数据丢失、被偷以及被窥视。 


  很少有IT专业人士还需要数据安全方面的培训,但是我们常常听说这样的事件:电脑或者硬盘被偷或丢失,里面存储了明文格式的数据,没有经过加密。


  幸好,实时数据加密如今不再是某种奇异、成本高昂的技术。有些加密程序不是仅仅对单个文件进行加密,还能在文件里面、甚至直接在分区上创建虚拟磁盘,写入到虚拟磁盘上的任何数据都自动进行加密。在现代的硬件上,加密所需的开销极小;再也不需要使用专用硬件来进行加密。


  本文介绍了用于创建及管理加密卷的应用程序,从Windows Vista自带的BitLocker加密程序,到用于加密电子邮件和即时消息的性能成熟的PGP桌面套件。你甚至不用花钱,就能获得异常可靠、良好实现的整个磁盘加密功能——不过在企业环境下,像可管理性或者支持服务这些特性完全值得花钱购买。


  工具一、TrueCrypt 5.1a


  费用:免费/开源


  网址:www.truecrypt.org


  TrueCrypt有足够充足的理由成为你最先试用的整个磁盘或者虚拟卷加密解决方案。除了免费和开源这两大优点外,该程序编写巧妙,非常易用,还有丰富的数据保护功能,是对整个系统(包括操作系统分区)进行加密的一种有效方法。


  TrueCrypt让你可以选择先进加密标准(AES)、Serpent和Twofish等算法,这些算法可以单独使用,也可以采用不同组合(名为“级联”);还可选择Whirlpool、SHA-512和RIPEMD-160等散列算法。实际的加密有三种基本方法:可以把文件作为虚拟加密卷安装上去;可以把整个磁盘分区或者物理驱动器变成加密卷;还可以加密工作中的Windows操作系统卷,不过存在一些局限性。


  加密卷可以用密码来保护;作为一个选项,也可以用密钥文件来保护,从而加强安全——比如可移动USB驱动器上的文件,这样你就可以建立一种双因子验证。如果创建了一个独立的虚拟卷,可以使用任何大小或者命名惯例的文件。该文件由TrueCrypt本身创建而成,然后经格式化,确保它看上去与随机数据毫无区别。


  TrueCrypt的目的在于,任何经过加密的卷或者硬盘不会一眼就能看出来。没有明显的卷头、所需文件扩展名或者其他识别标记。唯一的例外就是加密的引导卷,引导卷里面有TrueCrypt引导装入程序——但这个产品将来的版本不可能隐藏整个卷、使用USB拇指驱动器或者光盘上的外部引导装入程序。说到那里,你也有可能创建在“旅行者模式”下使用的自我加密的USB驱动器——里面有TrueCrypt可执行文件的拷贝,可在任何机器上安装上去及运行,只要用户拥有管理员权限。


  TrueCrypt还包括了所谓的“似是而非的否认”(plausible deniability)特性,最重要的就是能够把一个卷隐藏在另一个卷里面。隐藏卷有自己的密码,你没有办法确定某个TrueCrypt卷里面是不是隐藏了另一个卷。不过,如果你把太多的数据写入到外面那个卷,可能会破坏那个隐藏卷——但是作为一项保护措施,TrueCrypt提供了一个选项:你在安装外面那个卷时,可以把隐藏卷作为只读卷安装上去。


  如果你在使用系统磁盘加密,实际的加密过程需要一段时间,不过这个过程可以暂停,需要时恢复加密(你可能在晚上需要对上锁房间里面的PC进行这种操作)。这个程序会坚持要求创建急救光盘,那样万一遇到灾难,可以用来引导电脑(一个缺点是:你无法对从非Windows引导装入程序来实现双引导的Windows系统进行加密。)


  工具二、Windows Vista BitLocker


  费用:包含在Vista终极版和Vista企业版内


  网址:technet.microsoft.com/en-us/windowsvista/aa905065.aspx


  只有Vista的企业版和终极版才有Vista自带的BitLocker,它是专门为了执行系统卷加密而设计的。它的初衷不是主要用于加密可移动卷,也无法像本文介绍的其他产品那样让你可以创建虚拟加密卷。它在开发当初就考虑到了集中管理,通过活动目录和组策略来实现管理。


  不像TrueCrypt的系统磁盘加密,设置BitLocker需要目标系统中至少有两个卷:一个卷用来存放引导装入程序,另一个卷用来存放加密的系统文件。现有系统可使用BitLocker驱动器准备工具(如今微软为支持BitLocker的系统提供了这个额外工具)重新进行分区;但如果你在处理没有准备好的系统,也可以手动设置分区。


  用BitLocker对卷进行加密时,会出现三个基本选择,涉及如何授权用户来访问加密卷。如果电脑有可信计算模块(TPM),那么它可以结合个人身份识别号(PIN)代码一起使用。第二个选择是创建一个可移动USB驱动器,里面含有授权数据,然后该数据与PIN结合使用,但使用这种方法的前提是相应电脑可以从USB连接的设备引导。如果你决定用这种方法,BitLocker会在磁盘加密前进行引导测试,确保系统可从USB设备引导。第三个选择就是用户只要输入PIN,不过这个PIN会相当长(25个字符以上),而且只能由操作系统来分配。


  与其他任何整个磁盘加密系统一样,最慢的部分实际上是对驱动器进行加密;我那75GB硬盘容量的笔记本电脑大约用了三个半小时才加密完毕。幸好,BitLocker可以在其他工作处理的同时,在后台执行这项任务;甚至可以关闭系统,然后以后需要时恢复加密过程(我的建议是:晚上就让电脑留在上锁的房间,进行加密)。如果管理员需要访问或者解密某个卷,该卷的加密密钥也可保存到活动目录存储库中。如果你不在活动目录域中,也可以手动把密钥备份到文件中——当然,该文件应严加保护。


  最后,尽管BitLocker最初的保护对象仅仅是操作系统卷,但也可以通过Vista的命令行界面,手动用它对非系统卷进行加密。


  工具三、Dekart Private Disk 1.2


  费用:每个用户45美元


  网址:www.dekart.com


  虽然Dekart Private Disk功能上类似其他加密程序,但坦率地说,至少有一项特性使得它不值得推荐。


  首先,Dekart Private Disk的功能组合只比本文介绍的两款免费/开源产品实用了一点。用户可以创建虚拟加密卷、备份加密磁盘的卷头、根据用户活动来控制磁盘的安装及卸载,等等。惟一真正重要、而其他产品没有的特性就是“磁盘防火墙”(Disk Firewall),你可以用来授予或拒绝某些程序访问加密卷。


  最能表明Private Disk在开发当初没有真正考虑安全的地方在于“恢复选项”(recovery option),它试图通过对密码实施蛮力(brute-force attack)攻击来确定私密磁盘的密码。任何专业的加密产品根本不会有这样的功能。这好比你为前门买了把锁定插销,发现它还带了一套撬锁工具——“生怕你丢了钥匙”。


  既然在其他地方免费就能获得Private Disk的绝大部分特性,说不定其他地方得到了更好的实现,就很难对这种收费程序表示认可。


  工具四、DriveCrypt


  费用:每个用户59.95欧元(88.73美元)


  网址:www.securstar.com


  SecureStar公司的DriveCrypt其主要功能类似TrueCrypt和下面介绍的FreeOTFE——你可以从文件或者整个磁盘来创建加密容器、把一个加密驱动器隐藏在另一个里面,等等。至于比较先进的功能,比如整个磁盘加密,需要添加DriveCrypt PlusPack(185美元)。至于DriveCrypt提供的额外功能值不值得购买,那是仁者见仁的问题,因为许多人觉得免费产品具有的功能组合同样够用了。


  如果你之前用过类似产品,那么标准版DriveCrypt的大部分加密功能表现会如你所料。可以在文件或者分区中创建虚拟加密磁盘、一段时间没有使用后自动锁住磁盘,还能在磁盘里面创建隐藏磁盘。DriveCrypt还让你可以把该产品的之前版本(ScramDisk和E4M)创建的磁盘安装上去,所以如果你从这两个版本程序中的某一个迁移到新版本,不会觉得备受冷落。


  它具有免费产品没有的一些功能,包括能够对现有加密磁盘随意调整容量大小以及管理员密钥代管服务(不过后者在TrueCrypt和FreeOTFE中也能实现,只需手动备份卷头)。


  DriveCrypt特有的另一项特性就是:你可以创建“DKF访问文件”,该文件允许第三方不需要卷密码,就可以访问加密卷。DKF密钥可以附加各种限制——它可以使用自己的密码(与你自有磁盘上的密码无关)、X天后到期失效,或者只能在某个时间段有效。这样,就有可能为访问加密驱动器提供一定的控制权。


  要注意的是:默认状态下,该程序使用分区号0x74来标记已经过加密的整个分区——这样,该程序就比较容易识别及安装加密分区,但也意味着可能敌意的第三方极容易知道某个卷由DriveCrypt经过了加密。幸好,你可以通过设置程序选项来挫败这种行为……你可能应该这样,因为只有你才应当知道什么是加密容器、什么不是。


  DriveCrypt最吸引人的地方就是能够把.WAV文件转变成用隐匿技术来加密的容器,无论文件是从光盘上抓过来的,还是重新创建的。每个样本的4位或者8位用于存储数据,所以一个700MB大的.WAV文件(长度相当于一张音乐光盘)可用来存储350MB或者175MB。因而生成的文件仍可以播放,但音频质量会受到一定程度的影响。(注意事项:使用普通光盘音乐文件恐怕不是个好主意,因为攻击者即便不能解密,也可以拿来光盘上抓过来的内容与你的文件进行比对,确定里面有没有隐藏数据。自己录音也许更好。)


  工具五、FreeOTFE 3.00


  费用:免费/开源


  网址:www.freeotfe.org


  FreeOTFE(OTFE的意思是“实时加密”)在许多方面与TureCrypt很相似——它提供了许多同样的特性,只是实施时有些地方略有不同;它还有一个版本使用条件非常宽松的软件许可证。


  创建新卷的过程再次与TrueCrypt相似:有向导程序指导你完成整个过程,并且在每个步骤提供了相关选项。FreeOTFE有着一系列更丰富的选项,这些选项涉及卷的随机数据串(salt)与散列的长度、密码、密钥和磁盘扇区系统,不过对大多数用户而言,使用默认选择就可以了。有些选项主要是为了向后兼容而提供的,比如现已过时的MD2和MD4散列函数——新创建的硬盘使用SHA512或者更好的函数。


  TrueCrypt似乎所没有的另一个出色特性是,卷安装上去后以及卷卸载前后,可以运行任意脚本——比如清除临时文件或者取证时用到的文件(以免被人抓住把柄)。对Linux用户而言另一项方便的特性就是,能够使用自带的Linux文件系统加密驱动器,比如Crypttoloop、dm-crypt和LUKS。


  与TrueCrypt一样,你也可以选择创建独立的密钥文件,但这种机制有点不同。TrueCrypt用于卷的密钥文件可以是任何文件,因为它使用了只读方式。FreeOTFE是从头开始创建密钥文件,用于存储卷的元数据块,密钥文件可能放在USB闪存盘上,以进一步增强物理安全。用户为新卷生成随机数据时,可以选择使用微软的CryptoAPI函数、通过鼠标移动生成的数据以增强随机性,或者是两者都用。


  另外与TrueCrypt一样,FreeOTFE可以用来在一个加密卷中隐藏另一个加密卷,但是这个过程稍稍复杂一些。用户需要手动指定“字节偏移”值,该值描述了隐藏卷将位于何处。如果你不知道偏移值(以及隐藏卷的密码),就根本无法把隐藏卷安装上去。这还有可能把加密卷隐藏到未加密卷中,不过有点难度。


  FreeOTFE特别注重移植性。该程序的用户设置可以保存到用户自己的配置文件,也可以用全局方式来保存(即保存到该程序目录)。另外与TrueCrypt一样,FreeOTFE也有“移植模式”——因而可以把FreeOTFE可执行文件和加密卷放到可移动磁盘上,那样可以在另一台电脑上使用,即使这台电脑上面没有安装FreeOTFE。最后,FreeOTFE可供基于Windows Mobile 6的个人数字助理(PDA)使用;台式电脑上创建或者使用的卷可以在PDA上使用,反之亦然。


  工具六、PGP Desktop专业版


  费用:每个用户199美元


  网址:www.pgp.com


  PGP Desktop提供了一整套加密工具,而开发这些工具的初衷是为了尽可能完美地与Windows系统集成,不管使用怎样的程序组合(不过这条规则也有几个例外)。它最适合这种用户:寻找广泛 的加密范围,并且愿意花些钱来购买功能完备的产品。


  该程序的主界面有五个基本部分:密钥管理、邮件、压缩、磁盘管理和网络共享(NetShare)。密钥管理部分是可能开始入手的地方——你可以在此创建新的加密密钥、从外部的密钥环(keyring)导入现有密钥、发布密钥到PGP的全局密钥存储库(还可以搜索存储库里面的其他密钥),等等。


  邮件部分控制着PGP Desktop如何处理电子邮件。在默认状态下,PGP Desktop能够对标准的SMTP/POP电子邮件、Exchange/MAPI邮件以及Lotus Notes邮件进行加密。PGP Desktop可代理及监控双向传送的电子邮件,并且在需要时采取行动,而不是改动电子邮件客户端。如果发送给你的邮件使用你密钥环中的密钥进行了加密,邮件会自动解密。还可以创建策略,规定拦截及加密多少邮件——比方说,发送到除某个域外其他所有域的邮件可用明文格式发送。即时消息(IM)加密系统(也通过本地代理系统来工作)仅支持美国在线的Instant Messenger(AIM)和Trillian;使用AIM协议的其他程序可以使用,但PGP不能为它们作出保证。IM加密对每次登录都使用1024位的一次性RSA密钥;邮件采用AES 256位对称密钥来加密。


  PGP Zip选项卡让你可以创建加密存档,这些存档可以在另一头用PGP来解压,或者封装成自解压存档。因而生成的存档还可以用口令短语或者接收方的密钥(如果接收方有密钥)进行签名及加密。如果只是用来创建密码保护、经过加密的文档,那不需要整个PGP套件——你可以使用许多独立的压缩程序来完成这项工作,但签名和密钥使用等特性通常是其他程序所没有的。


  PGP Disk是套件中的整个磁盘或者虚拟卷加密解决方案。虚拟卷用起来很像TrueCrypt或者FreeOTFE:卷可以在任何文件中;但如果使用PGP,相应的某个卷(或多个卷)既可以用口令短语来保护,还可以用用户密钥来加密(使用AES、cast5或者Twofish等算法)。


  如果你使用了整个磁盘加密,可以在加密过程中选择几个选项:最大CPU占用率,目的是节省时间;电源故障安全选项,以便加密过程中万一出现断电,防止系统受到破坏。加密磁盘可以使用TPM硬件(如果你有这种硬件)或者USB闪存盘来存储密钥文件,也可以两者结合使用。PGP Disk另外有一个出色的特性:数据粉碎工具,类似自由软件Eraser产品。它可以清除文件,也可以只清除现有磁盘上的空余空间。


  网络共享特性(PGP Desktop Storage和PGP Desktop Corporate这两个版本有该特性)让你可以共享便携式驱动器或者网络连接驱动器上的加密文件。所有解密在用户端进行,所以任何敏感信息绝对不会以明文格式传送,也用不着在文件服务器上安装特殊软件。网络共享还能与活动目录集成,以便对谁可以访问哪些信息实行细粒度管理。还可以对指定受保护文件夹外面的单个文件进行加密,不过这项特性需要单独启用(默认状态下该功能是禁用的)。


  PGP Desktop并非只作为独立程序来使用——它还可以由企业环境下的PGP中央服务器程序(PGP Universal)来管理。如果你打算先在单个系统上使用,然后迁移到更集中管理的环境,那么PGP Desktop专业版是个很好的选择。


  工具七、7-Zip


  费用:免费/开源


  网址:www.7-Zip.org


  你可能认为开源归档程序7-Zip与本文介绍的其他程序不在同一档次,但如果你只是寻找临时应急的方法来创建经过加密、密码保护的存档,它其实是个不错的选择。7-Zip也能创建自解压存档,所以接收方不需要有7-Zip——只要你们事先约定好,任何密码都可以。不过,它本身并不支持任何一种双因子验证。另外为了提高安全性,创建存档时,一定要选择“加密文件名”选项。


  结论


  大多数想要保护磁盘的基本解决方案的人可能会试一试TrueCrypt(或者最接近它的FreeOTFE),尤其是鉴于前者提供了整个磁盘、引导卷的加密。PGP Desktop也添加了其他许多工具,对不仅需要加密磁盘上的内容、还希望加密电子邮件和即时消息的用户来说,这是个不错的选择。BitLocker的一大优点是,它是Vista自带的一项特性,可通过活动目录来进行集中管理。而DriveCrypt也有一些可能有用的隐匿和访问管理功能。7-Zip是创建经过加密、密码保护的存档的一种简单方法。遗憾的是,Dekart Private Disk很难称得上是专业的加密解决方案,因为它包括了一项荒谬的特性:可以对你交给该程序来保护的卷进行蛮力攻击。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

作者

Serdar Yegulalp
Serdar Yegulalp

Serdar Yegulalp从1994年到2001年为Windows杂志写作,覆盖了广泛的技术方面。他现在是《The Windows 2000 Power Users Newsletter》一书的出版者,辛勤钻研他擅长的Windows NT, Windows 2000 and Windows XP领域,并为TechTarget写专栏。

相关推荐