加密入门(一):EFS

EFS 是 Encrypting File System 的缩写,意为加密文件系统,是 NTFS 文件系统的内建安全功能,Windows XP 之后的版本都完全支持这一特性(注意:Windows 入门版、家庭版和家庭高级版并不支持这一功能)。

EFS 的最大特点是简单易用,因为 EFS 是基于用户帐户的加密方案,也就是说只有用对文件进行加密的用户帐户登录才能使用,尽管这种加密方案存在着诸多缺点与限制,但是无疑是最简单的加密方案,用户只要能进入自己的账户即可访问,无需记忆多余的密码。

1. 文件系统转换

EFS 必须在 NTFS 分区才能使用,如果硬盘分区是 FAT32 分区格式,请按照以下步骤转换为 NTFS 分区格式:

  1. 按下 Win + R 快捷键,在弹出的运行对话框中输入 cmd 并回车,启动命令提示符。
  2. 在弹出的命令提示符窗口中输入以下命令:

    convert X: /fs:ntfs

    其中 X: 为你所要转换的分区盘符,输入完毕后按下回车键,等待完成后关闭窗口即可。

注意不要在转换过程中关闭命令提示符窗口,以免造成数据丢失。

2. EFS 加密解密

使用 EFS 加密非常简单,仅需三步即可完成:

  1. 运行资源管理器,右键点击所要加密的文件或文件夹,选择“属性”。
  2. 在属性对话框中点击“高级”按钮,在高级属性对话框中勾选“加密内容以便保护数据”。
  3. 点击两次确定关闭“高级属性”和“属性”对话框,Windows 会要求选择加密范围,做出选择之后 Windows 就会开始加密过程。

如果将未加密的文件复制到 EFS 加密的文件夹中,这些文件将会被自动加密。如果将加密数据移动或复制到其他 NTFS 分区时,数据依旧保持加密属性,如果将其移动或复制到 FAT32 分区时,Windows 会询问是否解密,确认之后 Windows 会将其解密后复制或移动。

加密之后的文件或文件夹在资源管理器中将以绿色文字显示,如果你使用加密时所用的用户身份登录,那么 Windows 会在你访问这些加密数据时自动解密。但是对于攻击者来说,加密数据是无法读取修改的,因为这些数据已被 Windows 加密。

如果需要将 EFS 加密的数据解密,只要按照上述步骤取消“加密内容以便保护数据”选项即可。

3. EFS 数据恢复密钥

由于 EFS 与用户帐户绑定,所以强烈推荐大家导出 EFS 数据恢复密钥,以免 Windows 出现问题导致加密数据无法访问。请按以下步骤导出数据恢复密钥。

  1. 按下 Win + R 快捷键,在运行对话框中输入 certmgr.msc,启动证书管理器。
  2. 在证书管理器左栏中,双击“个人”,单击“证书”。
  3. 在右栏中,右击“预期目的”为“加密文件系统”的证书,选择“所有任务”子菜单,然后点击“导出”。
  4. 在证书导出向导中点击“下一步”,点击“是,导出私钥”,点击“下一步”继续。
  5. 选择“个人信息交换”,点击“下一步”继续。
  6. 键入要使用的密码,确认该密码,点击“下一步”继续。
  7. 选择文件的名称和位置,点击“下一步”继续。
  8. 确认设置之后点击“完成”按钮,Windows 在导出完成之后会弹出对话框提示“导出完成”。

请按照以下步骤导入数据密钥:

  1. 双击导出的数据恢复密钥文件,启动证书导入向导,点击“下一步”继续。
  2. 确认将要导入的文件及其路径,点击“下一步”继续。
  3. 输入保护私钥的密码,请选择“标明该密钥为可导出”复选框,点击“下一步”继续。
  4. 选择“把所有证书保存到以下存储器中”,然后单击“浏览”并选择“个人”存储器,点击“下一步”继续。
  5. 确认设置之后点击“完成”按钮,Windows 在导入完成之后会弹出对话框提示“导入完成”。

EFS 作为一种简单的加密手段,适合对于数据安全要求不高的用户使用,对于数据安全要求较高的用户来说,BitLocker 或者更为专业的加密软件无疑是更好的选择。

本文历史:

  • 2011 年 3 月 11 日:初稿完成
  • 2011 年 8 月 13 日:将 EFS 与 Bitlocker 拆分为两篇文章,并进行改写。

14 Responses to “加密入门(一):EFS”

  1. Sandox说道:

    不错,很详细。不过文中的这两个方法都没怎么用过。EFS倒是给我造成了最大的杯具。。。你懂的。。。

  2. 绵羊说道:

    今天稀奇了,在伞饭群里碰到一个也叫terry的,并且叫terry cheng ……

  3. 柴子说道:

    TrueCrypt是个好东西,可以两层加密,一个加密过的任意后缀文件,可以用两层密码分别打开不同加密内容,最爽的是能跨平台。。好吧,我想起了我虚拟机里那个iso镜像了。。。打开温习一下 – -!

    • Terry Chen说道:

      TrueCrypt和GPG都是好东西,GPG用来传递信息最爽了,拿了Public Key就能给别人传东西,灰常安全和方便。TrueCrypt的双层加密也很贱,加密之后相当有欺骗性。相比之下,微软的这两个太小儿科了,除了方便没有什么优势,尤其是EFS,典型的防君子不防小人,而且往往还把自己这个君子给防住了,多少人因为没有备份而悲剧。。。什么虚拟机镜像?

      • 柴子说道:

        先把那些隐私文件做成ISO镜像,嘎嘎,然后先加密一下,再放进TrueCrypt的双层加密盘中…… 最后把这个TrueCrypt的加密文件丢到虚拟机里,当然,虚拟机里装的肯定不是win OS,并且开机有密码神马神马的

  4. Fooleap说道:

    Terry的文章都很详细,TrueCrypt感觉很不错,GnuPG没试过,有机会试试。

  5. 天毅说道:

    我来一个最绝的,大家的数据估计也没什么好加密的,也就一些影片之类的。我直接去掉后缀,放在program files下的某个程序文件夹下。反正高手要找怎么都能找到,对付菜鸟这样足矣。如果用truecrypt加密,看一次片还解密一次,会死人的!N个G的影片啊……

    • Terry Chen说道:

      我是因为身边有人花钱买了什么国产加密软件(具体什么忘了)加密一些东西(我可以肯定不是什么片。。。不过我也不知道是什么),所以才想到写篇文章介绍一下免费的方案。我自己从来都不加密的,确实没什么东西可加密。。。

    • 柴子说道:

      解密不是解压,密盘容量与解密速度无关,也就是几秒钟的事儿

  6. A.shun说道:

    上次过来无法访问,然后就看到天毅在 tw 三个说主机出问题

    恭喜恢复

  7. A.shun说道:

    系统自带的感觉弱(win7 没用过
    但花钱买就完全没必要了
    加密软件好的选择还是很多