ITEN计算机信息反泄密研究机构,ITEN研究所-专业计算机信息安全机构

knowledge
技术知识

磁盘加密与文件加密

磁盘加密和文件透明加密都是对写到硬盘上的数据加密,当读取时则自动解密。但其工作原理和使用场景都有很大的不同。

磁盘加密一般位于磁盘驱动这一层,只要是要写入到硬盘上的文件,不论上层是任何进程,其均会进行加密后再写入到磁盘中。而当要读取文件,同样的,不会分辨是何进程的请求,所有的读取行为进行加密。举个例子,我们用AutoCAD保存一个文件到硬盘上,对于硬盘来讲这个文件的确加密的。我们再用QQ将这个文件传给好友,你是不是认为既然这文件是加密的让别人收到自然是打不开的?错!对于磁盘加密来说,因为他是无法区分进程的,那么无论是AutoCAD还是QQ去读这个文件时,读到内存的都是明文,所以你的好友收到的也是明文。磁盘加密对于磁盘这个设备而言,其所有的数据是加密。但对于坐在电脑前的用户而言,其所看到的效果却是所有的数据都不加密

再来说一下文件透明加密,当然象EFS、BitLock等也可以算是文件透明加密的一种,但我们不打算在这里讨论这些技术。我们要讨论的是对不同的进程区别读取明文或密文的透明加密技术。还是按上面的例子,当将AutoCAD设为受控软件之后,其生成到硬盘上的文件将会加密,当然其读取加密的文件将会得到明文。这时如果我们用QQ将这个文件传给好友,那么和你想象的一样,你的好友只能得到加密的文件,因为文件透明加密可以识别进程,QQ只能读到密文。

从上面可以看到,对于文件透明加密而言,进程的识别是极其重要的一个环节,如果不能准确无误的识别进程,那可能会导致该加密的文件不加密,而不该读取的加密文件却读取到了。

再说一下用途,硬盘加密主要防止文件被外人窃取,比如在硬盘意外遗失的情况下,当无法提供正确的口令时,将不提供解密,也就是此时读取到的数据为乱码,以此来保护硬盘中的资料。具体的应用比如笔记本,某些厂商会提供一种解决方案,当你想要打开某个分区时,会要求输入密码等。这样当笔记本被偷了,也可以防止硬盘中的资料泄密。再比如有些硬盘厂商如Seagate,也提供硬盘加密的解决方案,当硬盘被窃取后挂到其他人的机器,这时候因为磁盘加密驱动不工作,所以也无法读到其中的数据。

文件透明加密因为在更上层工作,其能够控制到的精度更细,所以也能实现更灵活的应用。现在一种主流的应用就是防止文件的作者泄密,象上面所述的AutoCAD写文件,QQ发文件,发出去的是乱码。这样可以很好的防止员工将公司的文件泄密到外部。