原文见:
http://www.it580.com/index.php?option=content&task=view&id=538&Itemid=34 如何避免不慎使用EFS加密带来的损失
作者: Xiami
2004年07月08日,星期四
如果你由于对EFS加密不了解致使重要数据丢失,那么也别气馁,就当买了个教训。毕竟通过这事情你还是能学会很多东西的。那就是:备份密钥!设置有效的恢复代理!
对于上面讲到的情况1,备份密钥可以避免这种悲剧的发生。在运行中输入“certmgr.msc”然后回车,打开证书管理器。密钥的导出和导入工作都将在这里进行。
在你加密过文件或文件夹后,打开证书管理器,在“当前用户”-“个人”-“证书”路径下,应该可以看见一个以你的用户名为名称的证书(如果你还没有加密任何数据,这里是不会有证书的)。右键点击这个证书,在“所有任务”中点击“导出”。之后会弹出一个证书 导出向导,在向导中有一步会询问你是否导出私钥,在这里要选择“导出私钥”,其它选项按照默认设置,连续点击继续,最后输入该用户的密码和想要保存的路径并确认,导出工作就完成了。导出的证书将是一个pfx为后缀的文件。
重装操作系统之后找到之前导出的pfx文件,鼠标右键点击,并选择“安装PFX”,之后会出现一个导入向导,按照导入向导的提示完成操作(注意,如果你之前在导出证书时选择了用密码保护证书,那么在这里导入这个证书时就需要提供正确的密码,否则将不能继续 ),而之前加密的数据也就全部可以正确打开。
对于情况2,我们对Windows XP和Windows 2000两种情况分别加以说明。
由于Windows XP没有默认的恢复代理,因此我们加密数据之前最好能先指定一个默认的恢复代理(建议设置Administrator为恢复代理,虽然这个账户没有显示在欢迎屏幕上,不过确实是存在的)。这样设置:
首先要获得可以导入作为恢复代理的用户密钥,如果你想让Administrator成为恢复代理,首先就要用Administrator账户登录系统。在欢迎屏幕上连续按Ctrl+Alt+Del两次,打开登录对话框,在用户名处输入Administra tor,密码框中输入你安装系统时设置的Administrator密码,然后登录。首先在硬盘上一个方便的地方建立一个临时的文件,文件类型不限。这里我们以C盘根目录下的一个1.txt文本文件文件为例,建立好后在运行中输入“CMD”然后回车,打开 命令提示行窗口,在命令提示符后输入“cipher /r:c:\1.txt”,回车后系统还会询问你是否用密码把证书保护起来,你可以按照你的情况来决定,如果不需要密码保护就直接按回车。完成后我们能在C盘的根目录下找到1.txt.cer和1.txt.pfx两个文件(为了显示的清楚我在文件夹选项中设 置了显示所有文件类型的扩展名,这样我们可以更清楚地了解到底生成了哪些文件)。
之后开始设置恢复代理。对于1.txt.pfx这个文件,同样需要用鼠标右键点击,然后按照向导的提示安装。而1.txt.cer则有些不同,在运行中输入“gpedit.msc”并回车,打开组策略编辑器。在“计算机配置-Windows设置-安全设置 -公钥策略-正在加密文件系统”菜单下,在右侧窗口的空白处点击鼠标右键,并选择“添加数据恢复代理”,然后会出现“添加故障恢复代理向导”按照这个向导打开1.txt.cer,如果一切无误就可以看见图五的界面,这说明我们已经把本机的Administ rator设置为故障恢复代理。
如果你愿意,也可以设置其它用户为恢复代理。需要注意的是,你导入证书所用的1.txt.pfx和1.txt.cer是用哪个账户登录后生成的,那么导入证书后设置的恢复代理就是这位用户。
在设置了有效的恢复代理后,用恢复代理登录系统就可以直接解密文件。但如果你在设置恢复代理之前就加密过数据,那么这些数据恢复代理仍然是无法打开的。
而对于Windows 2000就更加简单,Windows 2000有恢复代理,因此只要用恢复代理(默认的就是Administrator)的账号登录系统,就可以解密文件。