《雷神的微软平台安全宝典》简介
在使用微软基础设施和企业部署这么多年的过程中,微软的文件加密系统(EPS)是我迄今为止见过的最安全但也是最未被充分应用的技术之一。在企业级或者中等规模的开发过程中很少被使用,无论是个人还是团队在安全控制中都孤立的来使用(EPS)。由于EPS易于个人设置和自主使用,但是在大规模部署时需要进行认证,恢复代理管理,备份,存储以及在实现访问模型方面要进行详细计划。EPS的错误部署可能导致数据的丢失。虽然通过物理途径可以解决,但是为了说得更具体,举个例子假设在一次失败的场景中设计不合理的EPS控制导致加密文件阻止文件的解密。
EPS最简单的形式是一个基于Windows操作系统的特色,它允许用户(管理员或者其他用户)给文件夹或者单个文件加密。最典型的应用是通过EPS在文件夹层次上的加密,这保证了所有添加到加密文件夹的文件都会自动进行加密。在本章中的例子是基于目录下创建文件夹进行的,当选中一个文件夹加密时这个文件夹将标记为已加密。如上文所述,当一个文件夹加密后此文件夹内的文件都将被其所有者加密。对文件夹加密非常简单;只需要单击高级属性,然后选择加密内容以保护数据即可。如图2.1所示
EPS是一种基于用户的加密控制。基本上他的工作方式如下:当用户对一个文件或者文件夹加密时:EPS会为用户生成一个证书并将其私有密钥放在用户的配置文件中。公钥与用户创建的文件一并存储,只有这样用户才能解密这些文件。正因为如此,恢复代理证书通常与不同的用户账号联系并且用户的公钥也嵌入到这个文件中。正因为如此,即使用户丢失了用来加密文件的证书而恢复代理用户或者是更明确的私有密钥的持有者也能够解密文件,同样的恢复代理的公钥是自动和加密文件一起存储的,也可以为文件分配其他用户的公钥,以便允许他们解密文件。这就使得多个用户可以共享一个已加密的文件。当EPS证书通过CA(证书管理机构)分配时或在某个域领域中EPS操作的第一次请求时自动创建,用户的公钥存储在AD当中。对恢复代理认证也是如此。实际上,公钥自动被包含在域中,EPS文件的创建方式为:在基于策略设定的AD中直接抽取出来。我将在后面对此进行更多详细描述。
我们利用一点时间来详述一下加密过程。当出现多个用户共享一个加密文件时,了解这些文件工作的原理以及加密过程有助于我们更好地理解EPS是如何在企业或者更小的AD环境中工作的。EPS证书并没有什么神奇的。它是由RSA算法生成的一个私有公用密钥组,EPS通过这个密钥进行简单的X.509认证。如图2.2
当为用户创建这些证书时,采用RSA算法生成公钥和私钥,并把他们存储在用户证书当中。只有公钥存放在AD中。数据使用公钥进行加密,私钥进行解密,这就是公钥之所以公开的原因,这样其他用户才可以为你加密数据,而只有持有私钥的用户才能进行解密。这样,数据被某些用户用公钥加密后不能立即对数据进行解密。
在我认识的大多数人当中,他们对RSA密钥的印象是对于某个加密文件使用密钥进行加密或者解密工作。其实这种方法不仅仅用户EPS,也可以应用到人和基于RSA的加密过程中。实际情况是在文件加密之前已经生成一个强随机的密钥。这个密钥默认是基于高级加密标准(AES)的密码。RSA算法加密的是密钥,而非数据本身。公共RSA密钥用来加密AES密钥,而AES密钥才是用来加密实际数据的。