EFS简介

EFS(Encrypting File System,加密文件系统)是Windows操作系统中基于NTFS(New Technology File System,新技术文件系统)实现对文件进行加密与解密服务的一项技术。EFS采用核心文件加密技术,当文件或文件夹被加密之后,对于合法Windows用户来说不会改变其使用习惯。当操作经EFS加密后的文件时与操作普通文件没有任何区别,所有的用户身份认证和解密操作由系统在后台自动完成。而对于非法Windows用户来说,则无法打开经EFS加密的文件或文件夹。在多用户Windows操作系统中,不同的用户,可通过EFS加密自己的文件或文件夹,实现对重要数据的安全保护。

EFS的特点

EFS技术的特点主要体现在以下几个方面。

  1. 对于用户来说,EFS技术采用了透明加密操作方式,即所有的加密和解密过程对用户来说是感觉不到的。这是因为EFS运行在操作系统的内核模式下,通过操作文件系统,向整个系统提供实时、透明、动态的数据加密和解密服务。当合法用户操作经EFS加密的数据时,系统将自动进行解密操作。
  2. 由于FEK和用户主密钥的生成都与登录账户的用户名和口令相关,所以用户登录操作系统的同时已经完成了身份验证。在用户访问经EFS技术加密的文件时,用户身份的合法性已经得到验证,无须再次输入其认证信息。
  3. EFS允许文件的原加密者指派其他的合法用户以数据恢复代理的身份来解密经加密的数据,同一个加密文件可以根据需要由多个合法用户访问。
  4. EFS技术可以与Windows操作系统的权限管理机制结合,实现对数据的安全管理。

EFS的缺陷

  1. EFS技术中密钥的生成基于登录账户的用户名和口令,但并不完全依赖于登录账户的用户名和口令,如FEK由用户的SID生成。当重新安装了操作系统后,虽然创建了与之前完全相同的用户名和口令,但此账户非彼账户,导致原来加密的文件无法访问。为解决此问题,EFS提供了密钥导出或备份功能,但此操作仅取决于用户的安全意识。
  2. 由于EFS将所有的密钥都保存在Windows分区中,攻击者可以通过破解登录账户进一步获取所需要的密钥,以解密并得到加密文件。
  3. EFS技术可以防止非法用户访问受保护的数据,但是具有删除权限的用户可以删除经EFS加密的文件或文件夹,安全性受到威胁。

EFS证书

文件加密后,即使被复制到其他电脑中,如果没有同时复制该文件的EFS证书,也是不能正常访问的

证书的导出

使用快捷键win+R,输入CertMgr.msc,点击确定打开证书管理界面



在出现的“证书”对话框中依次双击展开“证书-当前用户→个人→证书”选项,在右侧栏目里会出现以你的用户名为名称的证书



接着点击鼠标右键,选择“所有任务→导出”命令,打开“证书导出向导”对话框



点击下一步



当出现“是否要将私钥跟证书一起导出”提示时,要选择“是,导出私钥”选项



选择要导出的文件格式,默认选择个人信息交换—PKCS#12(.PFX),格式,点击下一步



输入证书加密的密码,点击下一步



选择好保存的文件名及文件路径后,点击“完成”按钮即可顺利将证书导出,此时会发现在保存路径上出现一个以PFX为后缀的文件





证书的安装









EFS加密

方法一

选中要加密的文件夹,右键点击属性



在属性页面点击高级,勾选加密内容以便保护数据,点击确定



回到文件夹属性页面,点击应用,点击确定



加密完成后,文件夹多了上锁的标识。若需解密,按照上述步骤,取消勾选【加密内容以便保护数据即可】

解密时如果出错,如下图所示:



首先看在高级设置里面电脑是否没有将存档和索引属性下面的可以存档文件夹(A)子选项勾选上



如果勾选上之后还是无法解密在对文件夹进行加密以后鼠标右键会有一个文件所有权的属性,我们将鼠标移动到哪里,选择右边的个人,然后再进行解密就行了

方法二

  1. 同时按下Win键+R键,输入regedit回车

  2. 在注册表中定位到

    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced,空白处右击鼠标,选择新建DWORD(32位)值

  3. 将数值名称重命名为EncryptionContextMenu,修改数值数据为1,确认选择了十六进制(H),点击确定即可

  4. 在任意文件上右击,即可看到菜单中新增了加密的选项,一键加密



    解密时,鼠标右键点击需解密的文件或文件夹,点击解密即可。如果出错,参照方法一种的解决办法

EFS加密的更多相关文章

  1. EFS加密解密----重装系统后

    重装系统尤其是格式化重装系统之后,如果没有正确地备份私钥,那么加密的文件将无法打开,加密的文件也暂时没有办法进行快速破解. 并非重装后用相同用户名+密码就可以解密的. Advanced EFS Dat ...

  2. 记一次重装系统后恢复EFS加密文件过程

    之前用了8年的win7系统被我删注册表给折腾挂了, 无法进入系统, 无法进入安全模式, 无法使用光盘修复 只能重装系统,习惯性的重装前GHOST备份了一下 今天忽然发现有好几个项目文件居然成了绿色的, ...

  3. 清除windows的EFS加密

        所使用软件为aefsdr_setup_en,搜索名为advanced.efs.data.recovery   1.         创建需要加密的文件   2.         进行加密   ...

  4. 使用Windows EFS(怎么给文件夹加密)进行文件加密

    和Windows BitLocker一样,Encrypting File System(EFS,加密文件系统)是Windows内置的一套基于公共密钥的加密机制,可以加密NTFS分区上的文件和文件夹,能 ...

  5. EFS解密----未重装系统

    一种方法.(手动删除私钥测试通过) 利用软件advanced efs data recovery 二种方法. 前提:在系统未重装或私钥未丢失.两个软件: PsExec和  IceSword.前者是国外 ...

  6. powershell小工具,efs加解密三剑客。

    powershell  efs  加密  解密  列出  decryption  list --------前言:我编写这两个脚本的目的,大家不可不知!-------- 1 是为系统管理员,网管员编写 ...

  7. 加密入门(三):TrueCrypt(转)

    http://terrychen.info/encryption-truecrypt/ TrueCrypt 是一款功能强大的开源加密工具,利用 TrueCrypt 可以创建一个加密文件作为虚拟加密卷, ...

  8. EFS 你应该知道的事

    需要备份或者还保留这个路径 %USERPROFILE%\AppData\Roaming\Microsoft\Crypto\RSA certmgr.msc 个人证书导出你开始使用EFS加密后的证书 ci ...

  9. Windows加密技术概述

    Windows加密是安全体系的重要基础和组成部分.现代CPU的保护模式是系统安全的硬件基石,基于CPU硬件的特权分级,Windows让自身的关键系统代码运行在高处理器特权级的内核模式,各种应用程序则运 ...

随机推荐

  1. Linux实战(18):Centos强制踢掉某登录用户的方法

    [root@localhost ~]# pkill -kill -t pts/2

  2. elasticsearch备份和还原(基于hdfs)

    备份和还原,为什么elasticsearch还需要备份呢,明明可以设置副本做到高可用,那怕啥呢? 其实在实际的生产环境中,一般最终的结果数据都是要备份的,这样的做的目的,就是能够以最快的速度还原数据, ...

  3. 1.8HDFS细节

  4. python爬取花木兰豆瓣影评,并进行词云分析

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 python免费学习资 ...

  5. Redis5设计与源码分析读后感(四)压缩列表

    一.引言 上一节我们总结了跳跃表的知识,我们知道了有序数组可以用跳跃表实现,也可以用压缩列表来实现,这一篇文章我们来总结一下压缩列表相关的知识. 二.压缩列表简介 定义:压缩列表 ziplist 本质 ...

  6. 搜索引擎学习(三)Lucene查询索引

    一.查询理论 创建查询:构建一个包含了文档域和语汇单元的文档查询对象.(例:fileName:lucene) 查询过程:根据查询对象的条件,在索引中找出相应的term,然后根据term找到对应的文档i ...

  7. gRPC-Protocol语法指南

    语法指南 (proto3) Defining A Message Type Scalar Value Types Default Values Enumerations Using Other Mes ...

  8. Spring 的依赖注入应用代替工厂模式

    接口 package FactoryExample; public interface Human { void eat(); void walk(); void show(); } 实现 实现一 p ...

  9. 理解pytorch几个高级选择函数(如gather)

    目录 1. 引言 2. 维度的理解 3. gather函数 4. index_select函数 5. masked_select函数 6. nonzero函数 1. 引言   最近在刷开源的Pytor ...

  10. 可变参数__VA_ARGS__使用

    1. 调试功能一般会使用到宏+可变参数的方式 1.1 ##__VA_ARGS__      之详细解析 例如: case A. #define my_print1(...)    printf(__V ...