Windows系统EFS加密/解密原理介绍

EFS加密是windows系统自带的加密方式,一个系统用户对文件加密后,只有以该用户的身份登陆才能读取该文件。EFS加密的文件和文件夹名字颜色是绿色,或者在该文件或文件夹的高级属性是加密属性。这样做在很大程度尚提高了数据的安全性,但是如果秘钥文件丢失或者重装系统就会导致加过密的文件不能打开,今天的教程主要介绍的就是如果电脑使用ESF加密后却因为其他原因导致无法打开文件,我们应该怎么解密。

EFS加密原理介绍

  • 要想解密,我们首先要了解是怎么加的密,下面介绍EFS加密原理。
  • 当我们使用EFS对一个NTFS文件进行加密时,Windows系统会生成一个伪随机数FEK(也就是文件加密的钥匙),用这个FEK对文件进行加密同时将文件的原位进行覆写,随后系统利用公钥再进行一次对FEK的加密,加密后的FEK存储在加密文件的EFS属性中。
  • 用户访问被加密的文件时,系统是利用私钥先解密FEK,再使用FEK解密文件,这里我们所说的公钥和私钥统称为秘钥,如果用户登录到了域环境中使用,那么决定秘钥生成的是域控制器,如果用户没有登录域环境,那么秘钥的生成依赖于本地机器。
  • 通常情况下要解密EFS加密的文件需要依赖于用户私钥,私钥保存在Windows分区的Documents and Settings\%UserName%\Application Data\Microsoft\Crypto\RSA\%UserSID%路径下,这个SID是一个安全的标识符,用来表示账号唯一特征,在账号创建时由Windows系统分配。Windows系统为保护私钥还会对私钥再进行一次加密,称为主密钥,主密钥位于Windows分区的Documents and Settings\%UserName%\Application Data\Microsoft\Protect\%UserSID%,然后再用用户密码生成的密钥对主密钥进行加密。
  • 简单对上述这一加密过程进行归纳就形成了“用户密码->主密钥->私钥->FEK->EFS加密文件”的加密链。如果想要对EFS进行解密,我们需要得到的信息包括用户密码、主密钥、私钥。

    EFS无秘钥情况下解密思路

    1. 查看现有系统占用空间情况,查找或重组加密FEK的私钥、主密钥、
    2. 查看现有mft文件目录的占用空间,根据用户密码进行校验匹配,解密用户文件,
    3. 对解密出来的文件进行校验和逻辑分析,提取所需数据即可。
    4. 如果使用EFS对文件进行了加密,应该及时将秘钥进行备份并妥善保管。
    5. 如果EFS秘钥文件丢失应停止继续使用计算机,降低秘钥被覆盖的可能。

原文地址:https://blog.51cto.com/sun510/2456317

时间: 2024-08-28 18:54:52

Windows系统EFS加密/解密原理介绍的相关文章

Linux运维之加密/解密原理、自建CA及搭建基于https的Apache

上几次博文我们具体讨论了Apache(httpd)的基础知识: HTTP协议基础(参见博文:http://sweetpotato.blog.51cto.com/533893/1656137) Apache2.2的基本配置(参见博文:http://sweetpotato.blog.51cto.com/533893/1657668) Apache2.2的虚拟主机(参见博文:http://sweetpotato.blog.51cto.com/533893/1660229) 本次博文我们具体讨论下加密/

Base64加密解密原理以及代码实现(VC++)

Base64加密解密原理以及代码实现 转自:http://blog.csdn.net/jacky_dai/article/details/4698461 1. Base64使用A--Z,a--z,0--9,+,/ 这64个字符.    2. 编码原理:将3个字节转换成4个字节( (3 X 8) = 24 = (4 X 6) )先读入3个字节,每读一个字节,左移8位,再右移四次,每次6位,这样就有4个字节了.    3. 解码原理:将4个字节转换成3个字节.先读入4个6位(用或运算),每次左移6位

Windows系统内存分析工具的介绍

? Windows系统内存分析工具的介绍(进程管理器,资源管理器,性能监视器, VMMap, RamMap,PoolMon) 微软官方提供多种工具来分析Windows 的内存使用情况,除了系统自带的任务管理器(Task Manager), 资源监视器(Resource Manager), 性能监视器(Performance Monitor), 还有SysInternals工具, ?RamMap, PoolMon用以分析内存问题.本文简单介绍上述工具的快速使用方法,如果需要了解深入了解,请参考微软

Openssl加密解密原理与命令使用--尚未完善

Openssl加密解密原理: 示例: 比如A与B通信发送数据: 加密原理: 在A把要发送的内容通过单向加密方式进行数据指纹计算,计算出数据指纹后,会用自己的私钥加密数据指纹,并把加密的数据指纹添加到原数据的后面.然后对整个数据(原数据+数据指纹)进行对称加密算法进行计算(让明文转换成密文),得出的数据为整个数据的密码,再用B的公钥进行这个密码进行加密,并放到这个数据的后面一并发给B. 解密原理: 1.B用自己的私钥能够解密---------至此说明数据保密的. 2.B用私钥解密出来的密码,去解密

加密解密技术介绍和OpenSSL介绍

网络上实现安全传输是一件非常必要的事情,此篇博文主要介绍一下四种常见的加密解密技术和PKI机制以及如何通过openssl建立私有CA. 一.加密解密技术 (1)对称加密 主要加密算法: 1.DES:Data Encryption Standard 数据加密标准 加密端:将明文划分为64bits为一块,用密钥加密产生64bits的密文 解密端:还原回64bits密文 加密和解密均使用56bits的密钥 2.3DES:Triple DES:也就是进行三次DES加密 3.AES:Advanced En

Base64加密解密原理以及代码实现

1. Base64使用A--Z,a--z,0--9,+,/ 这64个字符.    2. 编码原理:将3个字节转换成4个字节( (3 X 8) = 24 = (4 X 6) )先读入3个字节,每读一个字节,左移8位,再右移四次,每次6位,这样就有4个字节了.    3. 解码原理:将4个字节转换成3个字节.先读入4个6位(用或运算),每次左移6位,再右移3次,每次8位.这样就还原了. Base64是一种非经常见的编码规范,其作用是将二进制序列转换为人类可读的ASCII字符序列,经常使用在需用通过文

加密解密原理,自建CA

目前数据的加密方式有3种:单向加密,对称加密,公钥加密(非对称加密),我们常见的加密算法有DES,MD5,SHA1...SHA512,RSA,都有各自不同的用处.简单介绍下这3中加密方式. 单向加密 通过某种Hash 函数对原始数据进行提取,提取得到一端固定长度的密文(不管文件有多大,密文长度不变),这段数据也常被称为数据指纹或特征码. 特点:1)单向加密,只能由原始数据得到特征码,而不能由特征码逆向推出原始数据. 2)雪崩效应,原始数据微小的改变会导致特征码巨大的变化 应用:常被应用于数字签名

加密解密原理和基于Openssl构建自有CA

一.加密解密过程描述: 互联网数据传输需要实现:数据隐秘性,数据完整性,身份认证和密钥交换: 例如:Alice向Bob传输数据: 数据加密过程: 1.Alice生成原数据,用单向加密算法计算出原数据的特征码: 2.用自己的私钥加密原数据特征码并附加在原数据的后面: 3.用对称加密算法为整个数据加密生成对称加密密匙: 4.用Bob提供的公钥加密对称加密密匙,并附加在加密的数据后面一并发送给Bob. 数据解密过程: 1.Bob接收到数据,用自己的私钥解密对称加密密匙:确定数据接收方Bob的身份: 2

17、加密解密技术介绍

1.通讯机制: 同一主机间通讯机制:IPC.message quence,shm(共享内存),semerphone 不同主机间通讯机制:socket(ip:port),一般来说socket通讯都是成对出现:CIP:PORT<--->SIP:PORT 2.传输层协议: tcp.udp.sctp:传输层协议单元为段,用端口区分不同应用 port用来标识进程地址:进程向内核注册使用某端口(独占的) 3.如何保证安全的信息通讯? ssl:secure socket layer:安全套接字层,ssl是一