EFS加密和解密
EFS是一种系统自带的文件加密技术,下面就讲如何进行EFS加密以及如何解密的相关知识……
大家对Windows2000/XP/2003系统提供的EFS(加密文件系统)功能一定不陌生吧!它应用在NTFS文件系统中,能有效保护机器中的重要数据不被非法侵犯。通常情况下,用户在Windows图形界面中对文件或文件夹进行EFS加密和解密操作。这里笔者介绍它的另一种使用方法——命令。
命令格式:
CIPHER[/E|/D][/S:directory][/A][/I][/F][/H][pathname[...]]
CIPHER /K
CIPHER /R:filename
参数介绍:
/A 使用于目录和文件
/D 解密指定的目录
/E 加密指定的目录
/F 强制加密所有指定的对象
/H 显示具有隐藏、系统属性的文件
/I 出现错误后,继续执行指定操作
/K 为运行 cipher 的用户创建新文件加密密钥
/R 生成一个 EFS 恢复代理密钥和证书,然后将它写入一个 .PFX 文件(含有证书和密钥)和一个 .CER 文件(只含有证书)中
/S 在指定目录及其所有子目录的目录中执行指定操作
应用实例:
一、加密目录文件夹和文件
1.加密F盘下的efs目录
点击“开始→运行”,在运行对话框中输入“CMD”命令,弹出“命令提示符”窗口,进入到“F:\>”提示符下,然后运行“cipher /e efs”命令,接着系统提示“正在加密 f:\ 中的目录,efs [OK],一个目录中一个目录被加密”信息后,完成“efs”目录的加密操作。
如果要加密efs目录下的所有子目录,运行“cipher /e /s:efs”命令即可。
2.加密F盘下efs1目录中的“”文件
在命令提示符窗口中运行“cipher /e /a ”命令后,系统提示“[OK],1 个目录中的 1 个文件(或目录)已被加密”信息后,完成对文件的加密。
如果要加密该目录下的所有文件,运行“cipher /e /a efs1\*”命令即可。
二、查询加密目录和加密文件
使用命令可以查询系统中哪些目录和文件被加密,如查询F盘中的efs目录是否被加密,在命令提示符窗口中输入“cipher efs”命令,然后系统提示“E efs”信息,说明efs目录已被加密。
要查询efs目录中哪些文件已被加密,运行“cipher efs\*”命令即可。
三、解密目录文件夹
在命令提示符窗口中运行“cipher/d efs”命令后,就将efs目录解密。要解密efs目录下的所有子目录运行“cipher/d/s:efs”命令即可。
要解密efs1目录文件,运行“cipher/d/a ”命令,解密该目录所有文件,运行“cipher /d /a efs1\*”命令即可。
四、导出证书和私匙
在命令提示符下运行“ cipher /R:rtj”,其中rtj为导出文件的文件名,接着系统提示“请键入密码来保护 .PFX 文件:”,两次输入密码后,就在所在目录下生成“rtj.CER”和“rtj.PFX”这两个文件。其中rtj.CER为用户证书,rtj.PFX为证书和密钥文件。
一旦用户丢失了证书和密钥无法解密EFS加密文件,只要将rtj.CER和rtj.PFX文件导入即可。
EFS加密出了问题怎么办?
几天前,一位朋友给我发出十万火急的求援消息,他在公司计算机中用EFS加密的文件不能打开了了,里面有所有重要客户资料。他说由于系统用户配置问题,他删除了自己的账户,重新建了一个相同用户名的账户,但是不料以前加密的文件夹再也不能打开了。不过,幸好这位仁兄使用的Windows 2000,我告诉他可以使用恢复代理来解密,才使他放下心来。
类似这样的求救可以在众多技术论坛中看到,且越来越多,并非每个朋友都是幸运的,由于重要数据无法打开导致损失惨重的事件也是屡见不鲜。如果你也使用Windows 2000/XP,并对数据加密,为避免受到损失,就需要了解EFS加密,并成为个中高手。
什么是EFS
从Windows 2000开始,微软对NTFS文件系统进行了升级,将在Windows NT中使用的4.0升级为5.0,其最大的特点就是安全特性更加强大,特别是增加了加密文件系统EFS,用来在使用NTFS文件系统的卷上直接加密数据,能让用户在系统上使用公钥加密去保护私有的数据。
你可以为某个隐私的文件或文件夹加密,以防止他人使用。没有正确权限的人即使能访问到硬盘,若试图操作加密的文件或文件夹,则会收到一条“拒绝访问”错误消息。
另外,用户验证过程是在登录Windows时进行的,这就保证了EFS加密系统对计算机用户来说是透明的。通俗地说,只要具有权限的账户登录到Windows,就可以像打开任何一个普通文件一样使用自己加密的文件,而不像通常的加密软件会弹出一个对话框,让你输入密码,这就大大方便了使用者。
用ESF加密文件
当你使用了Windows 2000/XP/2003系统(注意Windows XP家庭版不支持EFS加密文件系统),且格式化磁盘为NTFS文件系统,你就具有了应用EFS的条件。
要使用EFS加密,只须打开资源管理器,在需要加密的文件(夹)上点鼠标右键,选“属性”,在“属性” 对话框中点“高级cipher命令”打开“高级属性”对话框,勾选“加密内容以便保护数据”(图1)(取消该选项前的钩即可解密文件)。
图 1
“确定”后点击“应用”,如果加密的是文件夹,则会弹出图2所示对话框,你可以根据需要选择是仅加密此文件夹还是将此文件夹下的子文件夹和文件也一起加密。
图 2
最后点击“确定”后,在默认情况下,一般你会发现文件(夹)在资源管理器中显示的颜变为彩,表示已经被加密(或压缩)了。
提示:你也可以不使文件(夹)变,在资源管理器中,点“工具→文件夹选项→查看”,将“用彩显示加密或压缩的NTFS文件”取消即可。
EFS加密解密技巧
在实际应用中,我们还可以通过各种技巧来完成EFS加密的相关操作。
1.添加“加密”右键菜单
如果觉得上述加密方法还是太烦琐,可以在“运行”中输入“regedit”,打开注册表编辑器,到HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/Advanced,在右边窗口中点击鼠标右键,选择“新建→Dword值”,取键名为“EncryptionContextMenu”,
并设置键值为“1”。
退出注册表编辑器,打开资源管理器,任意选中一个NTFS分区上的文件(夹),点鼠标右键,菜单中多出了一个“加(解)密”的选项。你可以直接点击此菜单,即可完成加密解密操作。
2.禁止加密某个文件夹
如果你想设置禁止加密某个文件夹,可以在这个文件夹中创建一个名为“Desktop.ini”的文件,然后用记事本编辑内容为:
Encryption
Disable=1
但是这个方法不能禁止已加密文件夹的文件以及子文件夹。
3.彻底禁止EFS加密
要在机器上彻底禁用EFS加密,可以通过修改注册表实现。点击“开始→运行”,输入“Regedit”回车,打开注册表编辑器,到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\EFS,在“编辑”菜单上点击“新建→Dword值”,输入“EfsConfiguration”作为键名,并设置键值为“1”,这样本机的EFS加密就被禁用了。如果想重新使用EFS加密时,只要把键值改为“0”即可。
备份加密证书
重新安装系统后要打开加密文件的解决办法
EFS加密原理
让我们来简单了解一下EFS是如何工作的。在EFS中,数据靠FEK(文件加密钥匙)加密,而FEK跟用户的公钥一起加密保存;解密的时候顺序刚好相反,首先用私钥解密出FEK,然后用FEK解密数据。简言之,系统是靠你的公钥/私钥(统称密钥)来加解密的。
那么密钥从何而来呢?密钥是通过用户的SID产生的。在Windows 2000/XP中,每一个用
户都有一个SID(安全标示符),首次使用EFS时,系统会根据SID首先生成密钥。SID都是惟一的,如同人的指纹,因而用户的密钥也绝不会相同,这就保证了EFS加密的可靠。目前,据官方消息说EFS还未证实被破解过。
需要注意的是,如果重新安装了系统,就会产生一个新的SID,即使你安装系统的时候采用的是原来的用户名和密码,也无法直接打开原来被加密的文件(夹)了,很多朋友经常由于忽略了这一点而导致数据损失。
备份密钥
既然EFS采用加密密钥来进行加解密,那么只要加密密钥存在,我们就能恢复数据。因此,将密钥备份下来以作不时之需是最好的办法。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论