[本文来源于网络,作者不详,求认领]
关于 TrueCrypt:
说到加密软件,很多人会想到 TrueCrypt!大家可以在这里看到它的介绍,TrueCrypt是一款老牌的加密软件,针对的加密目标主要是卷,并且提供了多种加密算法。而且它是开源的。
针对于卷加密的最大优点就是,性能损耗主要集中在加密算法这里。并且和文件系统无关。简单的说,就是只要控制好加密算法,那么它就可以发挥出他最大的性 能优势。因为针对于文件的读写或者是缓存等等一些列操作它都不需要关心,一切都由系统来处理。他只等待系统将这一系列文件操作转化成对卷的操作,然后再做 相应的处理即可。
当然缺点也很显而易见,就是在加密之前,我们必须考虑我们的加密数据是不是总是能放在一个卷里面。举个简单的例子, 我现在有100M的数据需要加密,那么我创建了一个200M的加密卷,把文件复制进去之后,过了一段时间,我又有新的需要加密的数据了,并且有300M, 那么很明显,之前的加密卷 不足以放下这些文件,那么我就不得不重新考虑,是不是需要再新建一个加密卷,或者其它解决方案。即便我们可以对现有的加密卷进行扩容,我们也总是需要留出 一部分的冗余空间。这无异于造成了硬盘控件的浪费,当然在这个硬盘已经和白菜等价的年代,我们并不吝啬于这点儿空间。但考虑到TrueCrypt在每次新 建加密卷的时候,都需要事先初始化一遍卷,这确实是一件比较恶心的事情。也就是说,当我们先要创建一个20G的加密卷的时候,我们需要先写20G数据到硬 盘上面。其实TrueCrypt应该提供另外的解决方案,这不是一件很难的事情。
接下来说一下FileWall的工作方式:
FileWall 的内核分为两个部分,一个是过滤驱动,一个是文件系统驱动,这直接就和TrueCrypt有了巨大的区别。简单的说,FileWall 工作在TrueCrypt的上层,如果同时使用FileWall和TrueCrypt的话,那么是FileWall先处理数据,然后再转交给 TrueCrypt。当然,FileWall属于虚拟文件系统,并不下发操作,在FileWall内部就直接消化完了。FileWall的文件系统驱动更 像是系统的FAT32,NTFS驱动。处理来自系统的针对于文件的所有请求。
FileWall因为是针对于文件的操作,所以不存在上 面TrueCrypt提到的需要先创建卷的问题。我们想要加密哪个文件,直接加密它就好了。或者我们暂时还没有我们需要加密的文件,那么我们可以直接在系 统中创建一个目录,然后指定为加密目录,以后存入这个目录的所有文件都是已经进过加密的。加密的全程用户并不参与,我们可以像以往一样,打开我们的 word,编辑我们的文件,最后存入我们的加密目录。这一切就这样完成了。所以它也叫做“透明加密”。而且它在加密之前也并不预先处理任何东西,同样不预 先申请任何空间。加密之后的数据也几乎和原始数据一样大小。
FileWall的工作方式还可以获得更多的机会来处理系统请求,实现更 多的功能,例如可以彻底的隐藏文件,这可不同于给文件加一个什么隐藏属性之类的手段。这种隐藏方式是让系统从内到外都不知道文件的存在。在Windows 系统上,你找不到任何打开这个文件的方式,也不知道它叫什么。(有抬杠的朋友也许会提到分析文件系统结构,好吧,我认输。)此外你还可以发挥你最大的现象 空间来实现一些更有意思的想法。
FileWall的缺点也恰恰就在于它的这种工作方式,文件系统是一套很复杂的处理流程,并且会遇到 各个系统上一些细小的兼容性问题。我们往往需要在文件系统这里下大的功夫来稳定完善它。在内核中的不稳定情况会直接导致最严重的后果,就是计算机蓝屏死 机。这是一个噩梦,微软把我们从Win98的噩梦总拉了出来,我们不愿意再把大家带回去。