win2000 NTFS格式下加密文件的相关问题 解决办法

jml_boy 2003-07-07 11:46:44
从Windows 2000开始,在NTFS文件系统的分区上,Windows就可以帮助你加密文件了。方法是,在你想加密的文件或文件夹上点击鼠标右键,点击“属性”,在属性的“常规”选项卡上点击“高级”按钮,会弹出一个窗口,选中窗口中的“加密内容以便保护数据”就可以实现在NTFS卷上对文件的加密。

这被称作为EFS(Encrypting File System,加密文件系统)。这种加密的好处是,加密的过程是完全透明的,也就是说,如果你加密了这些文件,你对这些文件的访问将完全允许(并不需要你输入密码,因为验证过程在你登录Windows的时候就进行了),而其它人则不能访问或者移动这些数据。

现在问题来了,昨天,你的Windows突然崩溃,在无计可施的情况下你只能选择重装系统,接下来一切进行的很顺利,可是你突然发现原来被加密过的数据已经打不开了。你可能想当然地认为,只要再建立一个跟原来加密时相同的用户名和密码,用那个新建的用户就可以打开。可是遗憾的是,你想错了。如果你的电脑是单机环境或者在工作组中,你的数据就已经永远打不开了。只有在域环境下,你才可以得到域管理员的帮助,解密这些文件。

原因是这样的,当你使用EFS加密后,系统会根据你的SID(Security Identifier,安全标示符)自动生成一个密钥,而你如果要解密这些文件就需要使用到这个密钥。对于系统而言,并不是根据用户名来区别不同的用户,而是根据SID,这个SID是唯一的。SID和用户名的关系跟人的姓名和身份证号码的关系是一样的。虽然有同名同姓的人,但是他们的身份证号码绝对不会相同;虽然有相同的用户名(指网络上的,因为本地用户不能有相同的用户名),但是他们的SID是绝对不同的。这也就解释了为什么重装系统后即使使用之前的用户名和密码登陆也不能打开以前的加密文件。

所以在重装系统之前最好能把加密的数据全部解密。然而,为了应付突发的系统崩溃,就需要你备份好你的密钥,这样系统崩溃后只要重装系统,并导入你的密钥,就可以继续使用之前的加密文件了。

备份密钥的方法是这样的:

在运行中输入“certmgr.msc”并回车,打开证书管理器,在 “当前用户”-“个人”-“证书”目录下,用鼠标右键点击颁发给你的证书,在“所有任务”中点击“导出”,并选择“Export The Private Key”(导出私钥),其它选项按照默认设置。输入该用户的密码和保存路径就可以了。

在重装了系统之后,照旧运行certmgr.msc,并在“所有任务”中选择导入,选择好之的证书,然后按照向导,就可以完成对密钥的导入。或者直接在导出的pfx文件上点击鼠标右键,选择“安装PFX”。这时,你的加密数据已经可以访问了。

需要注意的是,EFS加密可以在Windows 2000和Windows XP Professional中使用,Windows XP Home不支持EFS加密。
...全文
26 点赞 收藏 1
写回复
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
zygsj 2003-09-08
我的系统是win2000,没有装sp包,c,d,e为fat32分区,f盘为ntfs分区,f盘里的我的文档用了"加密数据",结果一天上午,不知道睡动了我的机子,f盘的文件都打不开,"拒绝访问".我的天哪,我做了半年的工程图全在里面!我也没有重装系统.也没有删除证书,权限为“所有人”。可就不是打不开!找到了一个软件;Advanced EFS Data Recovery,可以解开efs加的密,可注册版需要99美元,不注册的话只能打开小于512字节的文件,而且还是外国的.我要死了!各位高手救命呀!
回复
发动态
发帖子
Windows Server
创建于2007-08-02

6567

社区成员

Windows 2016/2012/2008/2003/2000/NT
申请成为版主
社区公告
暂无公告