使用EFS对你电脑上的脱机文件加密
文件加密系统的原理
EFS可以让用户使用不对称和对称密码算法来加密文件。当用户对一个文件进行加密时,系统首先检测用户的电脑上是否有可用的公共基础结构证书服务器(例如由微软提供的证书服务器)。如果存在的话,那么公共基础结构证书服务器这时就会给用户一个新的EFS数字证书,这个证书的期限为两年。如果系统没有检测到公共基础结构证书服务器的话,那么这时系统就会为用户创建一个独立的EFS证书,这个证书的期限为100年。
当用户对一个文件加密时,系统会创建一个随机的相对称的密钥(这个密钥叫做文件加密密钥——FEK)和文件本身合成在一起。Windows系统使用FEK来对文件加密,不管有多少个用户对同一文件进行加密,每个文件都只有一个FEK,而且是唯一的。Windows使用用户独立不对称的公共密钥来加密FEK。如果用户是一个指定的数据恢复代理,系统这时会把文件的FEK副本和数据恢复代理用户的EFS公共密钥加密在一起。对每个加密过文件的用户,Windows系统把用户的EFS公共密钥和FEK副本加密在一起。每个用户的EFS加密私钥可以还原出FEK(这个FEK是对文件进行解密的),这个私钥被存放在用户的帐户配置文件中。每个EFS的私密密钥都是被一个称作“主钥匙”所保护的,这个主钥匙是系统根据用户的密码所创建的。EFS是经过严格测试的、可靠的一种文件加密系统(如果想了解更多的关于EFS的知识,可以参考2005年10月刊文章“EFS——比你想象的还要稳定、安全”)。
脱件文件
使用脱机文件,即使没有连接到网络也可以继续处理网络文件和程序。在服务器上通常是默认支持脱机文件的,但是要想在客户端电脑上使用脱机文件,就必须为客户端配置使用脱机文件,客户端还必须允许支持在共享文件夹上使用脱机文件。当用户的电脑连上一个支持脱机文件的共享文件夹上时,共享文件夹上的文件就会被下载到用户本地电脑的脱机文件缓存中。这样一来,即使用户的电脑没有和网络上的共享文件夹连接时,也仍然可以在本地电脑上继续对文件进行处理。当用户的电脑重新和服务器或网络上的共享文件夹连接上时,系统将会在网络断开时在用户电脑上打开或更新的文件与保存在网络上的文件的版本进行比较。只要在脱机时更改的文件尚未被其他人更改,用户所作的更改都将复制到网络上。如果其他人对您脱机时更新的网络文件作了更改,系统会提示保存您的版本、保存网络上的版本或两个版本均保存。文件同步只会在用户电脑和服务器断开连接、在用户登录和注销或是用户事先已设定的一个计划任务中才发生。
使用EFS对脱机文件加密
在Windows XP和之后的操作系统中,用户可以对存储在本地电脑中的所有脱机文件进行加密。要想使用对脱机文件加密这个功能,用户必须得配置自己的电脑支持脱机文件,当然在此之前用户不需要对单独的文件进行加密。当用户配置客户机支持对本地脱机文件缓存中的文件夹加密时,这时系统将会使用特定的EFS数字证书为脱机缓存文件夹进行加密。让人感到有点不足的地方是,系统这时会使用机器密钥对所有用户的个人脱机文件加密。很明显,这个方法不及使用不同用户的加密密钥加密安全。但是微软已经申明将会在以后的系统版本中对此项功能作出更加安全的改动。
在本地的Windows XP系统中对脱机文件数据库加密
1. 在开始菜单中选择设置,再选择控制面板。如果控制面板是以经典方式显示的话,就双击文件夹选项。如果控制面板是以分类别显示的话,选择外貌,再选择文件夹选项。
2. 在脱机文件选项中选择脱机文件。
3. 如果没有启用脱机文件的话,就在启用脱机文件选项前打上勾。
4. 启用把脱机文件夹中的数据加密成安全数据,然后点击确定。
做完了以上步骤以后,这时系统就会用cscui.dll自动对脱机文件进行加密了。要对脱机文件中的文件进行加密还需要满足以条下件:
1. 本地的脱机文件夹必须是存放在NTFS分区上。
2. 在脱机文件夹加密启用以后,在本地登录的用户必须具有本地计算机管理员权限。这是因为系统需要对系统注册表进行修改,而修改注册表需要管理员权限。
3. 使用EFS加密脱机文件选项必须没有被计算机管理员或组策略禁止。
组策略和脱机文件缓存
和Windows其它的重要功能一样,你可以使用组策略来控制脱机文件缓存。有很多组策略设置可以对脱机文件生效。想要了解更多的关于组策略和脱机文件之间信息,请参考微软Windows XP系统的工具文档(组策略在脱机文件上的应用),也可以在微软的网站上(http://www.microsoft.com/resources/documentation/Windows/XP/all/reskit/en-us/Default.asp?url=/resources/documentation/Windows/XP/all/reskit/en-us/prde_ffs_phvy.asp)找到相关文章。虽然有很多组策略设置可以对脱机文件生效,但是只有一个组策略设置可以对脱机文件和EFS同时生效:那就是对脱机文件加密。如果这个组策略被启用的话,在运行Windows XP的电脑上,整个脱机文件缓存都将会被加密,并且这时你不能单独地对文件进行加密。
EFS加密文件的使用要点
EFS只能加密保护被存放在磁盘上的文件。当一个已授权的用户打开加密过的文件时,系统会把加密过的文件解密成原来的文件。当用户在网络上传送这些加密文件的时候,文件是以明文的形式传送的。所以微软建议使用网际协议安全(IPSec)、安全套接字层或其它一些网络加密协议在网上传送重要文件。对我而言,我不知道微软为什么要阻止同时使用脱机文件和远程桌面,换句话说就是每次你只能进行其中一种操作。最后,对很多远程同步技术而言,有时候同步操作会失败或会中断其它一些正常操作。例如,如果在你的电脑脱机前,系统没有完成文件同步的话,你很有可能被系统阻止访问脱机文件;直到下一次电脑重新和服务器连接上并完成文件的同步,这时你才可以访问脱机文件。虽然脱机文件使用起来有一些不足,但是毕竟Windows XP和之后的系统为用户提供了一个可行安全的对脱机文件加密的功能。