详解EFS加密技术
在windows vista下,有两⼤加密技术:EFS和Bitlocker。其实,EFS加密从windows 2000开始就有了。如何⽤好EFS加密技术保护⾃⼰数据呢?这⾥进⾏详细说明。
什么是EFS加密
加密⽂件系统 (EFS) 是 Windows 的⼀项功能,它允许您将信息以加密的形式存储在硬盘上。
EFS原理:EFS所⽤的加密技术是基于公钥的。它易于管理,不易受到攻击,并且对⽤户是透明的。如果⽤户想要访问⼀个加密的NTFS⽂件,并且有这个⽂件的私钥,那么就能像打开普通⽂档那样打开这个⽂件,⽽没有该⽂件的私钥拥护将被拒绝访问。
这是在另⼀个账户下访问加密的⽂件时失败的信息。
其实从设计上来看,EFS加密是相当安全的⼀种公钥加密⽅式,只要别⼈⽆从获得你的私钥,那么以⽬前的技术⽔平来看是完全⽆法破解的。和其他加密软件相⽐,EFS最⼤的优势在于和系统紧密集成,同时对于⽤户来说,整个过程是透明的。例如,⽤户A加密了⼀个⽂件,那么就只有⽤户A可以打开这个⽂件。当⽤户A登录到Windows的时候,系统已经验证了⽤户A的合法性,这种情况下,⽤户A在Windows资源管理器中可以直接打开⾃⼰加密的⽂件,并进⾏编辑,在保存的时候,编辑后的内容会被⾃动加密并合并到⽂
件中。在这个过程中,该⽤户并不需要重复输⼊⾃⼰的密码,或者⼿⼯进⾏解密和重新加密的操作,因此EFS在使⽤时⾮常便捷。
EFS 的⼀些重要功能:
加密⽅法⼗分简单;仅须选中⽂件或⽂件夹属性中的复选框即可启⽤加密。
您可以控制哪些⼈能够读取这些⽂件。
在关闭⽂件时⽂件即被加密,但是当打开这些⽂件时,⽂件将会⾃动处于备⽤状态。
如果不再希望对某个已加密的⽂件实施加密,清除该⽂件的属性中的复选框即可。
完全⽀持EFS加密和解密的操作系统包括:Windows Vista Business/Enterprise/Ultimate。Windows Vista Home Basic/Home Premium只能在有密钥的情况下打开被EFS加密的⽂件,但⽆法加密新的⽂件。
下⾯以Windows Vista Ultimate为例介绍EFS加密功能的使⽤:
⽂件的加密和解密是很简单的,我们只需要在Windows资源管理器中⽤⿏标右键单击想要加密或解密的
⽂件或⽂件夹,选择“属性”,打开“属性”对话框的“常规”选项卡,接着单击“⾼级”按钮,打开“⾼级属性”对话框。
如果希望加密该⽂件或⽂件夹,请选中“加密内容以便保护数据”;如果希望解密⽂件或⽂件夹,请反选“加密内容以便保护数据”,然后单击“确定”即可;如果选择加密或解密的对象是⼀个包含⼦⽂件夹或⽂件的⽂件夹,那么单击“确定”后,我们将看到“确认属性更改”对话框。
在这⾥,我们可以决定将该属性更改应⽤给哪些对象。例如,如果希望同时加密或解密该⽂件夹中包含的⼦⽂件夹和⽂件,可以选择“将更改应⽤于此⽂件夹、⼦⽂件夹和⽂件”;如果只希望加密或解密该⽂件夹,则可以选择“仅将更改应⽤于此⽂件夹”。
默认情况下,被加密的⽂件或⽂件夹在Windows资源管理器中会显⽰为绿⾊。同时,显⽰蓝⾊的为选择了“压缩内容以便节省磁盘空间”:
当然,可以更改默认设置,打开⽂件夹选项:
证书的备份和还原
⼀个加密密钥始终关联到(或链接到)⼀个加密证书。若要备份加密密钥,您需要备份⽤于加密的证书。
如何给文件夹加密码很多⼈使⽤EFS加密的时候都吃了亏。上⽂已经介绍过,EFS是⼀种公钥加密体系,因此加密和解密操作都需要证书(也叫做密钥)的参与。例如很多⼈都是这样操作的:在系统中⽤EFS加密了⽂件,某天因为⼀些原因直接重装了操作系统,并创建了和⽼系统⼀样⽤户名和密码的帐户,但发现⾃⼰之前曾经加密过的⽂件都打不开了。
如果仅仅是设置过NTFS权限的⽂件,我们还可以让管理员获取所有权并重新指派权限,但对于EFS加密过的⽂件,那就⼀点办法都没有了,因为解密⽂件所需的证书已经随着系统重装灰飞烟灭,在⽬前的技术⽔平下,如果要在缺少证书的情况下解密⽂件,⼏乎是不可能的。
所以要安全使⽤EFS加密,⼀定要注意证书的备份和还原,很多⼈正是因为不了解这个情况⽽吃亏。好在从Windows Vista开始,当我们第⼀次⽤EFS加密功能加密了⽂件后,系统会提醒我们备份⾃⼰的证书。
备份的步骤:
登录到以前加密⽂件时所⽤的帐户。
1、单击打开“证书管理器(certmgr.msc)”。如果系统提⽰您输⼊管理员密码或进⾏确认,请键⼊密码或提供确认。
2、单击“个⼈”⽂件夹旁边的箭头将其展开。
当双击证书时,证书的⽤途将显⽰在“常规”选项卡上的“这个证书的⽤途如下”下⾯。
单击“预期⽤途”下⾯的列出“加密⽂件系统”或“允许加密磁盘上的数据”的证书。(可能需要滚动到右侧才能看到此信息。如果你还进⾏过其他需要证书的操作,例如访问加密⽹站,或者使⽤⽹络银⾏系统,这⾥可能会出现多个证书。我们需要的是“预期⽬的”被标记为“加密⽂件系
统”的证书)
3、单击“操作”菜单,指向“所有任务”,然后单击“导出”。
在导出向导中,单击“是,导出私钥”,然后单击“下⼀步”。(只有将私钥标记为可导出且可以访问它时才会显⽰该选项。)
4、单击“个⼈信息交换”,然后单击“下⼀步”。
因为是⽤于加密⽂件系统的证书,因此证书的格式不可选择,使⽤默认选项即可。但这⾥要介绍另外⼀个选项“如果导出成功,删除密钥”。选中该选项后,系统会在成功导出证书后⾃动将当前系统⾥的密钥删除,这样加密的⽂件就⽆法被任何⼈访问了。为什么要这样做?对于安全性要求较⾼的⽂件,我们可
以把导出的证书利⽤U盘等移动设备保存并随⾝携带,只在需要的时候才导⼊到系统中,平时系统中不保留证书,这样可以进⼀步防⽌他⼈在未经授权的前提下访问机密数据。设置好相应的选项后单击“下⼀步”。
注意:如果可能的话,根据要使⽤证书的⽅式选择要使⽤的格式。对于带有私钥的证书,请使⽤个⼈信息交换格式。如果要将⼀个⽂件中的多个证书从⼀台计算机移到另⼀台计算机,请使⽤加密消息语法标准。如果需要在多个操作系统上使⽤证书,请使⽤ DER 编码的⼆进制X.509 格式。
5、键⼊要使⽤的密码,确认该密码,然后单击“下⼀步”。导出过程将会创建⼀个⽂件来存储证书。
输⼊⽂件的名称和位置(包括完整路径),或者单击“浏览”,导航⾄其位置,然后输⼊⽂件名。
6、单击“完成”。
注意:将 EFS 证书的备份副本存储在安全的位置并使⽤密码进⾏保护。
当然,在另⼀台计算机上或重装系统后,要查看加密的⽂件,必须导⼊证书,与上⾯导⼊相似,这⾥就不细说了。
对于Windows Vista Ultimate,还可以通过安装"BitLocker和EFS增强”更新(Windows Ultimate Extras)来将EFS恢复证书保存到Microsoft 的“数字保险箱”。
这个功能也不错,⽽且操作更简单。
解惑:
有⼀种错误的概念,认为加密⽂件系统就是给⽂件加上密码。实际上,EFS是⼀种可以将敏感的数据加密并存储在NTFS⽂件系统上⾯的技术,离开了NTFS⽂件系统它将⽆法实现。
附录:
个⼈信息交换 (PKCS #12)
个⼈信息交换格式(PFX,也称为 PKCS #12)允许证书及相关私钥从⼀台计算机传输到另⼀台计算机或可移动媒体。
由于导出私钥可能使私钥暴露于⽆关⽅,因此 PKCS #12 格式是此版本的 Windows 中唯⼀受⽀持的⽤于导出证书及其关联私钥的格式。
加密消息语法标准 (PKCS #7)
通过 PKCS #7 格式可以将某个证书及其证书路径中的所有证书从⼀台计算机传输到另⼀台计算机,或从计算机传输到可移动媒体。
DER 编码的⼆进制 X.509
ASN.1 的 DER(区别编码规则),如 ITU-T Recommendation X.509 中所定义,可以由不在运⾏ Windows Server 2003 的计算机上的证书颁发机构使⽤,因此它⽀持互操作性。DER 证书⽂件使⽤ .cer 扩展名。