关于 EFS Encrypting File System

EFS(Encrypting File System,加密文件系统)是Windows 2000/XP所特有的一个实用功能,对于NTFS卷上的文件和数据,都可以直接被操作系统加密保存,在很大程度上提高了数据的安全性。

 

概述  

EFS加密是基于公钥策略的。在使用EFS加密一个文件或文件夹时,系统首先会生成一个由伪随机数组成的FEK (File Encryption Key,文件加密钥匙),然后将利用FEK和数据扩展标准X算法创建加密后的文件,并把它存储到硬盘上,同时删除未加密的原始文件。随后系统利用你的公钥加密FEK,并把加密后的FEK存储在同一个加密文件中。而在访问被加密的文件时,系统首先利用当前用户的私钥解密FEK,然后利用FEK解密出文件。在首次使用EFS时,如果用户还没有公钥/私钥对(统称为密钥),则会首先生成密钥,然后加密数据。如果你登录到了域环境中,密钥的生成依赖于域控制器,否则它就依赖于本地机器。

 

好处

  首先,EFS加密机制和操作系统紧密结合,因此我们不必为了加密数据安装额外的软件,这节约了我们的使用成本。

  其次,EFS加密系统对用户是透明的。这也就是说,如果你加密了一些数据,那么你对这些数据的访问将是完全允许的,并不会受到任何限制。而其他非授权用户试图访问加密过的数据时,就会收到“访问拒绝”的错误提示。EFS加密的用户验证过程是在登录Windows时进行的,只要登录到Windows,就可以打开任何一个被授权的加密文件。

  如何使用EFS加密

  要使用EFS加密,首先要保证你的操作系统符合要求。目前支持EFS加密的Windows操作系统主要有Windows 2000全部版本和Windows XP Professional、Windows Vista Business或更高以及Windows 7 Professional或更高版系列的操作系统,所有家庭版和入门版的Windows都不支持该功能。其次,EFS加密只对NTFS分区上的数据有效(注意,这里我们指的是NTFS 3.1分区,有时也称作NTFS5.0(指随同Windows2000发布,win2000的版本号是5.0),这是指由Windows 2000/XP/Vista/7格式化过的NTFS分区;而由Windows NT4格式化的NTFS分区格式,虽然同样是NTFS文件系统,但它不支持EFS加密),你无法加密保存在FAT和FAT32分区上的数据。

  对于想加密的文件或文件夹,只需要用鼠标右键点击,然后选择“属性”,在常规选项卡下点击“高级”按钮,之后在弹出的窗口中选中“加密内容以保护数据”,然后点击确定,等待片刻数据就加密好了。如果你加密的是一个文件夹,系统还会询问你,是把这个加密属性应用到文件夹上还是文件夹以及内部的所有子文件夹。按照你的实际情况来操作即可。解密数据也是很简单的,同样是按照上面的方法,把“加密内容以保护数据”前的钩消除,然后确定。

  如果你不喜欢图形界面的操作,还可以在命令行模式下用“cipher”命令完成对数据的加密和解密操作,至于“cipher”命令更详细的使用方法则可以通过在命令符后输入“cipher/?”并回车获得。

  这里还有个窍门,用传统的方法加密文件,必须打开层层菜单并依次确认,非常麻烦,不过只要修改一下注册表,就可以给鼠标的右键菜单中增添“加密”和“解密”的选项。

 

注意事项  如果把未加密的文件复制到具有加密属性的文件夹中,这些文件将会被自动加密。若是将加密数据移出来(前提:你正在使用的账户有移动/复制/删除已加密文件的权限),如果移动到NTFS分区上,数据依旧保持加密属性;如果移动到FAT分区上,这些数据将会被自动解密。被EFS加密过的数据不能在Windows中直接共享。如果通过网络传输经EFS加密过的数据,这些数据在网络上将会以明文的形式传输。NTFS分区上保存的数据还可以被压缩,不过一个文件不能同时被压缩和加密。最后一点,Windows的系统文件和系统文件夹无法被加密。

 

EFS实战  

(由《电脑迷》提供,网易学院整理发布)

  提示:要使用EFS,必须满足两个条件:

  1. 文件需要保存在NTFS文件系统的分区上。

  2. 操作系统必须支持EFS加密。目前支持EFS的操作系统主要有:Windows 2000、Windows XP Professional(不包括Home版),还有Windows Server 2003,Vista,7。

 

EFS加密解密

  a.最简单的办法就是在目标对象上点击鼠标右键,选择“属性”,打开属性对话框,然后在常规选项卡上点击“高级”按钮,打开高级属性对话框,选中“加密内容以便保护数据”这个选项,反之解密。

  b.每次加密都需要打开其高级属性对话框,非常麻烦。我们可以打开注册表编辑器,定HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Explorer/Advanced,在这里新建一个名为EncryptionContextMenu的DWORD值,并将其数值设置为“1”,这样用鼠标右键点击一个文件或文件夹的时候,右键菜单中就会有加密(如果目标对象尚未被加密)或者解密(如果目标对象已经被加密)选项,只要选择相应的选项就可以直接完成操作。

 

加密后文件的共享

  默认情况下,加密后的文件只有加密者可以访问。如果因为特殊情况,你需要将你自己加密后的文件和别人共享,那么还需要额外的设置。要注意的是,这个特性仅在Windows XP之后的操作系统中提供,Windows 2000下无法共享EFS加密后的文件。同时共享只能用于单个文件,而无法用于整个文件夹。

  在这个对话框中点击“添加”按钮,就可以选择你希望可以打开这个文件的用户。不过要注意,这里添加用户并不是添加用户的名称,而是添加用户的公钥,也就是说希望共享文件的用户必须有自己的公钥。

 

密钥的备份和恢复

  为什么有很多人在使用EFS的时候出现问题呢?笔者认为最大的原因在于很多人并没有真正理解EFS的加密方式。说到加密,密钥是一个非常重要的概念。EFS是一种公钥加密,那么这里就要说说什么是公钥加密了。在使用EFS加密一个文件或文件夹时,系统首先会生成一个由伪随机数组成的FEK (File Encryption Key,文件加密钥匙),然后利用FEK和数据扩展标准X算法创建加密后的文件,并把它存储到硬盘上,同时删除未加密的原始文件。随后系统利用你的公钥加密FEK,并把加密后的FEK存储在同一个加密文件中。而在访问被加密的文件时,系统首先利用当前用户的私钥解密FEK,然后利用FEK解密出文件。在首次使用EFS时,如果用户还没有公钥/私钥对(统称为密钥),则会首先生成密钥,然后加密数据。

  从这段话中我们可以看出两个重点:文件的加密和解密都需要密钥的参与,而密钥分为公钥和私钥两种。很明显,无论是加密还是解密文件,都需要用到个人密钥。加密文件的时候使用公钥,解密文件的时候则使用相对应的私钥。那么无论是丢失了公钥还是私钥,都会给我们的使用带来麻烦,尤其是私钥,丢失之后就再也无法解密文件了。

  为了保证数据安全,我们最好能在加密文件之后立即将自己的密钥备份出来,并保存到安全的地方,以防系统崩溃或其他原因导致数据无法解密。如何备份密钥呢?运行“certmgr.msc”打开证书管理器,在“当前用户/个人/证书”路径下,应该可以看见一个以你的用户名为名称的证书(如果你还没有加密任何数据,这里是不会有证书的)。用鼠标右键点击这个证书,在“所有任务”中点击“导出”。之后会弹出一个证书导出向导,在向导中有一步会询问你是否导出私钥,在这里要选择“导出私钥”,其它选项按照默认设置,连续点击继续,最后输入该用户的密码和想要保存的路径并确认,导出工作就完成了。导出的证书将是一个pfx为后缀的文件。这个pfx文件最好能保存到其他位置,并且要保证该文件的安全。

 

恢复密钥

  当用户的密钥丢失后,例如重装了操作系统,或者无意中删除了某个帐户,我们只要找到之前导出的pfx文件,用鼠标右键点击,并选择“安装PFX”,之后会出现一个导入向导,按照导入向导的提示完成操作(注意,如果你之前在导出证书时选择了用密码保护证书,那么在这里导入这个证书时就需要提供正确的密码,否则将不能继续),而之前加密的数据也就全部可以正确打开。

  讲到这里,相信你对EFS的基本使用方法已经有了一个大概的认识,不过光有理论知识是不够的,笔者希望大家都多在实践中掌握EFS的使用。 由于EFS安全性非常高,如果使用不慎或方法不当则可能造成非常麻烦的后果,所以建议大家先用不重要的文件进行EFS加密的试验。

 

 

转载于百度百科,如果想了解更多,请在百度百科输入关键字EFS。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值