EFS是什么意思?
EFS只能加密存储在磁盘上的数据,这是一种安全的本地信息加密服务。EFS使用核心文件加密技术在NTFS卷上存储加密文件。
它可以防止入侵者未经允许物理访问敏感数据(窃取笔记本电脑、硬盘等)。)
EFS是如何运作的
当用户使用EFS加密文件时,必须有一个公钥和一个私钥。如果用户没有,EFS服务会自动生成一对。对于新手用户来说,即使完全不懂加密,也可以加密文件,可以是单个文件,也可以是文件夹,这样所有写入文件夹的文件都会自动加密。
一旦用户发出加密文件的命令或试图将文件添加到加密文件夹,EFS将采取以下步骤:
第一步:NTFS首先在该文件所在卷的卷信息目录下创建一个名为efs0.log的日志文件(该目录隐藏在根目录下),在复制过程中出现错误时使用该文件进行恢复。
第二步:然后EFS调用CryptoAPI设备环境。设备环境使用Microsoft基本加密提供程序1.0来生成密钥。当这个设备环境打开时,EFS生成FEK(文件加密密钥)。FEK的长度为128位(仅限美国和加拿大),该文件采用DESX加密算法加密。
步骤3:获得公钥/私钥对;如果这个密钥不可用(当EFS第一次被调用时),EFS生成一个新的密钥对。EFS使用1024位RSA算法加密FEK。
步骤4: EFS为当前用户创建一个数据解密块(DDF ), FEK存储在这里,然后用公钥加密。
第五步:如果在系统中设置了加密代理,EFS将同时创建一个数据恢复字段(DRF),然后把用恢复代理密钥加密的FEK放在DRF中。对于定义的每个恢复代理,EFS将创建一个数据恢复代理(DRA)。Winxp没有恢复代理的功能,所以没有这个步骤。此区域的目的是当用户解密文件时,解密的文件可能不可用。这些用户称为恢复代理。恢复代理在EDRP(加密数据恢复策略)中定义,这是一种域安全策略。如果未设置域的EDRP,则使用本地EDRP。在任一情况下,当加密发生时,EDRP必须存在(因此至少定义了一个恢复代理)。DRF包含由RSA加密的FEK和恢复代理的公钥。如果EDRP列表中有多个恢复代理,FEK必须用每个恢复代理的公钥加密,因此必须为每个恢复代理创建一个DRF。
第六步:加密文件包括加密数据,DDF和所有DRF被写入磁盘。
第7步:在加密文件所在的文件夹下创建一个名为Efs0.tmp的临时文件。要加密的内容将被复制到这个临时文件中,然后原始文件将被加密的数据覆盖。默认情况下,EFS使用128位DESX算法加密文件数据,但Windows也允许更强大的168位3DES算法加密文件,这就是FIPS算法。
步骤8:删除步骤1中创建的文本文件和步骤7中生成的临时文件。
加密过程的图片请参考/EFS/PIC/Attribute/EFS _ example . gif。
紫色:EFS属性大小
天蓝色:计算机安全标识符和用户号。它指定EFS存储证书的文件夹。为了拿到文件。
文件夹的名称,EFS会做一些转换。
5a 56b 378 1c 365429 a 851ff 09d 040000-数据存储在$EFS。
78b 3565 a 29543619ff 15a 8000004d 0-换算后的结果。
2025018970-69384732-167712168-1232-转换为十进制。
s-1-5-21-2025018970-693384732-167712168-1232-加上安全标识符前缀。
生成的文件夹是:
% user profile % \ application data \ Microsoft \ Crypto \ RSA \ S-1-5-21-2025018970-693384732167712168-1232 \
粉色:公钥特征
黄色:私钥全局唯一标识符(也称为容器名)。当EFS从CryptoAPI提供者获得设备环境时,使用该名称。如果$EFS属性只有一个DDF,则可以从$efs计算出容器名称。但是当更多的用户加入这个文件时(将会有更多的DDF和DRF),私钥全局唯一标识符并不能保存所有的用户,其他的必须根据公钥的存储特性从证书中恢复。
红色:加密提供程序的名称(Microsoft base cryptographic provider v . 1.0)。
绿色:用户名,DDF和DRF的所有者。
蓝色:加密FEK。通常情况下,FEK是128比特,但经过1024比特的RSA密钥加密后,其长度就变成了1024比特。