加密fek
① 如何解决加密文件求大神帮助
EFS加密实际上综合了对称加密和不对称加密: *随即生成一个文件加密密钥(称为FEK),用来加密和解密文件。 *这个FEK会被当前用账户的公钥进行加密,加密后的FEK副本保存在文件$EFS属性的DDF字段里 *要想解密文件,首先必须用当前用户的私钥去解密FEK,然后用FEK去解密文件。 系统还会对EFS添加两层保护措施: 1. win会用64字节的主密钥对私密钥进行加密 2. 为了保护主密钥,系统会对主密钥本身进行加密 、 、 、 所以这个解密的条件是: 1. 必须知道该被删账户的密码 2. 该被删账户的配置文件必须存在 注:新建用户的SID不可能和老账户一样,所以想通过新建一个与原来名字相同的账户是不能解密的。 选自《黑客攻击与防卫》
② windows 文件读写加密原理
EFS加密是windows系统自带的加密方式。
2EFS加密原理 当用户生成加密文件时, 随机密码产生器生成一个对称密钥FEK,既用作加密文件,又用作解密文件;EFS使用FEK加密文件中的数据。
③ 为什么EFS只对NTFS格式文件加密是微软有技术难题吗
EFS是Encrypting File System,加密文件系统的缩写,他可以被应用在windows 2000以上的操作系统且为NTFS5格式的分区上(windows xp home不支持).
EFS 只能对存储在磁盘上的数据进行加密,是一种安全的本地信息加密服务.EFS使用核心的的文件加密技术在NTFS卷上存储加密文件.
它可以防止那些未经允许的对敏感数据进行物理访问的入侵者(偷取笔记本电脑,硬盘等)
EFS是如何工作的
当一个用户使用EFS去加密文件时,必须存在一个公钥和一个私钥,如果用户没有,EFS服务自动产生一对。对于初级用户来说,即使他完全不懂加密,也能加密文件,可以对单个文件进行加密,也可以对一个文件夹进行加密,这样所有写入文件夹的文件将自动被加密。
一旦用户发布命令加密文件或试图添加一个文件到一个已加密的文件夹中,EFS将进行以下几步:
第一步:NTFS首先在这个文件所在卷的卷信息目录下(这个目录隐藏在根目录下面)创建一个叫做efs0.log的日志文件,当拷贝过程中发生错误时利用此文件进行恢复。
第二步:然后EFS调用CryptoAPI设备环境.设备环境使用Microsoft Base Cryptographic Provider 1.0 产生密匙,当打开这个设备环境后,EFS产生FEK(File Encryption Key,文件加密密匙).FEK的长度为128位(仅US和Canada),这个文件使用DESX加密算法进行加密。
第三步: 获取公有/私有密匙对;如果这个密匙还没有的话(当EFS第一次被调用时),EFS产生一对新的密匙.EFS使用1024位的RSA算法去加密FEK.
第四步:EFS为当前用户创建一个数据解密块Data Decryptong Field(DDF),在这里存放FEK然后用公有密匙加密FEK.
第五步:如果系统设置了加密的代理,EFS同时会创建一个数据恢复块Data Recovery Field(DRF),然后把使用恢复代理密匙加密过的FEK放在DRF.每定义一个恢复代理,EFS将会创建一个Data Recovery Agent(DRA).Winxp没有恢复代理这个功能,所以没有这一步.,这个区域的目的是为了在用户解密文件的中可能解密文件不可用。这些用户叫做恢复代理,恢复代理在EDRP(Encryption Data Recovery Policy,加密数据恢复策略)中定义,它是一个域的安全策略。如果一个域的EDRP没有设置,本地EDRP被使用。在任一种情况下,在一个加密发生时,EDRP必须存在(因此至少有一个恢复代理被定义)。DRF包含使用RSA加密的FEK和恢复代理的公钥。如果在EDRP列表中有多个恢复代理,FEK必须用每个恢复代理的公钥进行加密,因此,必须为个恢复代理创建一个DRF。
第六步:包含加密数据、DDF及所有DRF的加密文件被写入磁盘。
第七步: 在加密文件所在的文件夹下将会创建一个叫做Efs0.tmp的临时文件.要加密的内容被拷贝到这个临时文件,然后原来的文件被加密后的数据覆盖.在默认的情况下,EFS使用128位的DESX算法加密文件数据,但是Windows还允许使用更强大的的168位的3DES算法加密文件,这是FIPS算法必须打开,因为在默认的情况下它是关闭的.
第八步:在第一步中创建的文本文件和第七步中产生的临时文件被删除。
加密过程图片可参考 http://www.ntfs.com/images/encryption.gif
文件被加密后,只有可以从DDF或是DRF中解密出FEK的用户才可以访问文件.这种机制和一般的安全机制不同并意 味着要想访问文件,除了要有访问这个文件的权力外还必须拥有被用户的公有密匙加密过的FEK.只有使用私有密匙解密文件的用户才可以访问文件.这样的话会有一个问题:就是一个可以访问文件的用户可把文件加密之后,文件真正的拥有者却不能访问文件.解决这个问题的办法:用户加密文件的时候只创建一个文件解密块Data Decryption Field(DDF),但是只后他可以增加附加用户到密匙队列.这种情况下,EFS简单地把FEK用想给其他用户访问权的用户的私有密匙加密.然后用这些用户的公有密匙加密FEK,新增加的DDF和第一个DDF放在一起(这些新增加的用户对文件只有访问的权力).
解密的过程和加密的过程是相反的,参考http://www.ntfs.com/images/decryption.gif
④ 完全磁盘加密保护的是什么状态的数据
是EFS加密系统。
EFS(Encrypting File System,加密文件系统)是Windows 2000/XP所特有的一个实用功能,对于NTFS卷上的文件和数据,都可以直接被操作系统加密保存,在很大程度上提高了数据的安全性。
EFS加密是基于公钥策略的。在使用EFS加密一个文件或文件夹时,系统首先会生成一个由伪随机数组成的FEK (File Encryption Key,文件加密钥匙),然后将利用FEK和数据扩展标准X算法创建加密后的文件,并把它存储到硬盘上,同时删除未加密的原始文件。随后系统利用你的公钥加密FEK,并把加密后的FEK存储在同一个加密文件中。而在访问被加密的文件时,系统首先利用当前用户的私钥解密FEK,然后利用FEK解密出文件。在首次使用EFS时,如果用户还没有公钥/私钥对(统称为密钥),则会首先生成密钥,然后加密数据。如果你登录到了域环境中,密钥的生成依赖于域控制器,否则它就依赖于本地机器。
1.仅对管理员开放 如一楼所说的 就是进行加密 设置密码 2 对指定用户开放 举一个最常见的例子 windows xp安装时默认的共享方式是“简单共享”,从而导致无法设置共享密码,您可以取消这种共享方式,改用带有用户名和密码的共享方式。具体的操作步骤如下所述。 1.取消默认的“简单共享”。双击打开“我的电脑”,依次选择“工具→文件夹选项”,在打开的对话框中单击“查看”标签,接着用鼠标点去“使用简单共享(推荐)”项前的对勾。 2.创建共享用户。在系统桌面上用鼠标依次选择“开始→控制面板”,随后打开“用户账号”,创建一个带有密码的用户,如创建用户名为abc。 3.设置需要共享的文件夹。右击需要共享的文件夹(假设该共享文件夹为files),单击“共享和安全”按钮,随后选择“共享→共享该文件夹”,单击“权限”按钮,接着单击“删除”按钮将原先任何用户(everyone)都可以共享该文件夹的权限删除,再单击“添加”按钮,依次单击“高级→立即查找”,选择用户abc,单击“确定”按钮添加用户abc,并选择用户abc的共享权限。以后局域网中的电脑要想查看您所设置的共享文件夹内容时,只有输入正确的用户名和密码才能进入
⑤ 电脑文件加密后怎么样复原
1,系统自带的efs加密系统原理如下:
首先用sid生成密钥(公钥和私钥)和fek,再用公钥来加密fek,用fek和x算法创建加密后的文件并存到硬盘上,最后删除原始文件。
2,加密时,用私钥解密fek,再用fek加密文件,然后文件夹变绿色了。
3,加密后,将文件拷贝到其它电脑上,由于其他电脑上的sid和加密时的sid并不相同,于是无法解密fek,也无法解密出文件,于是文件就无效了,打不开了。
4,在本地打开时,由于sid是正确的,于是fek也正确解密了,再用fek解密文件时,也就正确解密出正确的文件了,就和没有加密前是一样的。
⑥ 系统重装之后加密文件夹如何解密
使用EFS加密的文件,在文件加密后会在系统下产生一个公钥,然后在您当前用户账户下产生一个私钥。解密该文件是需要同时拥有公钥和私钥的情况下才能够正常解密,二者不可缺其一。
目前您的系统已经进行了重新安装,那么系统下的公钥已经没有了,其次重新安装系统后,用户账户需要重新配置,即使您重新配置账户时相关的用户账户信息和原账户一模一样,但是您的这个账户下也是没有解密需要的私钥,故您的这个情况目前是无法解密该文件的。
在文件使用EFS加密之后,系统会提示您备份密钥文件,在执行备份之后,该文件会保存在此电脑>>文档(默认路径)。如果持有密钥备份信息,那么您在将加密文件复制到其他设备上之后,在将密钥信息文件也导入到新的设备中,那么您可以在新设备下打开加密文件。如果没有该文件的话是无法打开的。
重装windows10后不能解密。如果有备份证书的,密码也记得,请问怎样解密。
有证书的情况下,可以尝试win+R后输入certmgr.msc,进入证书,选中个人后右键,选择所有任务,导入。根据向导进行提示,浏览选择证书时,选择现在持有的CER证书,导入到个人存储区中。
完成后选中个人,查看右边的证书列表,找到刚刚导入的证书,右键该证书,选择所有任务,用相同秘钥续订证书,完成后再看下是否解密成功。
这个操作可以解决,不过不需要 相同密钥续订证书。因续订失败,报错说“请求不包含证书模板信息”。但是导入后就行了
-------------.
点击“开始→运行”菜单项,在出现的对话框中输入“certmgr.msc”,回车后,在出现的“证书”对话框中依次双击展开“证书-当前用户→个人→证书”选项,在右侧栏目里会出现以你的用户名为名称的证书。选中该证书,点击鼠标右键,选择“所有任务→导出”命令,打开“证书导出向导”对话框。
在向导进行过程中,当出现“是否要将私钥跟证书一起导出”提示时,要选择“是,导出私钥”选项,接着会出现向导提示要求密码的对话框。为了安全起见,可以设置证书的安全密码。当选择好保存的文件名及文件路径后,点击“完成”按钮即可顺利将证书导出,此时会发现在保存路径上出现一个以PFX为扩展名的文件。
当其他用户或重装系统后欲使用该加密文件时,只需记住证书及密码,然后在该证书上点击右键,选择“安装证书”命令,即可进入“证书导入向导”对话框。按默认状态点击“下一步”按钮,输入正确的密码后,即可完成证书的导入,这样就可顺利打开所加密的文件
⑦ 电脑有些文件加密后变成绿色,怎么复原。
1,系统自带的EFS加密系统原理如下: 首先用SID生成密钥(公钥和私钥)和FEK,再用公钥来加密FEK,用FEK和X算法创建加密后的文件并存到硬盘上,最后删除原始文件。 2,加密时,用私钥解密FEK,再用FEK加密文件,然后文件夹变绿色了。 3,加密后,将文件拷贝到其它电脑上,由于其他电脑上的SID和加密时的SID并不相同,于是无法解密FEK,也无法解密出文件,于是文件就无效了,打不开了。 4,在本地打开时,由于SID是正确的,于是FEK也正确解密了,再用FEK解密文件时,也就正确解密出正确的文件了,就和没有加密前是一样的。
⑧ 文件被加密,如何解密呢急
XP系统EFS加密破解的一线希望
如果某个用户把自己的登录帐户删除,那么其他用户将无法访问其EFS加密文件。更可恶的是,一旦公司里的某个用户心怀怨气,恶意加密了本属于别的用户的重要文件,将会导致严重问题。一般情况下,这些EFS加密文件已经被判了死刑,但是实际上只要满足以下条件的话,我们还是可以在末日来临之前打开逃生的天窗:
(1) 必须知道该被删帐户的密码。
(2) 该被删帐户的配置文件必须存在。如果使用“本地用户和组”管理单元删除帐户,则配置文件保留的机会很大,如果使用“用户帐户”控制面板删除帐户,则有一半机会保留配置文件。如果配置文件不幸被删,则只能祈祷可以借助Easy Recovery之类的数据恢复工具进行恢复。
可能有些朋友会觉得这两个条件比较苛刻,此处卖个关子先……
EFS加密原理
大家知道,EFS加密实际上综合了对称加密和不对称加密:
(1) 随机生成一个文件加密密钥(叫做FEK),用来加密和解密文件。
(2) 这个FEK会被当前帐户的公钥进行加密,加密后的FEK副本保存在文件$EFS属性的DDF字段里。
(3) 要想解密文件,首先必须用当前用户的私钥去解密FEK,然后用FEK去解密文件。
看到这里,似乎EFS的脉络已经很清晰,其实不然,这样还不足于确保EFS的安全性。系统还会对EFS添加两层保护措施:
(1) Windows会用64字节的主密钥(Master Key)对私钥进行加密,加密后的私钥保存在以下文件夹:
%UserProfile%\Application Data\Microsoft\Crypto\RSA\SID
提示 Windows系统里的各种私有密钥,都用相应的主密钥进行加密。Windows Vista的BitLocker加密,也用其主密钥对FVEK(全卷加密密钥)进行加密。
(2) 为了保护主密钥,系统会对主密钥本身进行加密(使用的密钥由帐户密码派生而来),加密后的主密钥保存在以下文件夹:
%UserProfile%\Application Data\Microsoft\Protect\SID
整个EFS加密的密钥架构如图1所示。
图1
提示 EFS密钥的结构部分,参考自《Windows Internals 4th》的第12章。
回到“任务描述”部分所述的两个条件,现在我们应该明白原因了:
(1) 必须知道该被删帐户的密码:没有帐户密码,就无法解密主密钥。因为其加密密钥是由帐户密码派生而来的。
提示 难怪Windows XP和2000不同,管理员重设帐户密码,也不能解密EFS文件。
(2) 该被删帐户的配置文件必须存在:加密后的私钥和主密钥(还包括证书和公钥),都保存在配置文件里,所以配置文件万万不可丢失,否则就会彻底“鬼子不能进村”。重装系统后,原来的配置文件肯定被删,这时候当然不可能恢复EFS文件。
可能有用户会想,只需新建一个同名的用户帐户,然后把原来配置文件复制给新帐户,不就可以解密EFS文件了?原因在于帐户的SID,因为新建用户的SID不可能和老帐户一样,所以常规方法是不可能奏效的。我们必须另辟蹊径,让系统再造一个完全一样的SID!
恢复步骤
为了方便描述,这里假设被删帐户的用户名为Admin,Windows安装在C盘。
1.再造SID
注意 本方法取自“声明”部分提到的那篇文章。
首先确认被删帐户的SID,这里可以进入以下文件夹:
C:\Documents and Settings\Admin\Application Data\Microsoft\Crypto\RSA
在其下应该有一个以该被删帐户的SID为名的文件夹,例如是S-1-5-21-4662660629-873921405-788003330-1004(RID为1004)
现在我们要设法让新建帐户同样具有1004的RID,这样就能达到目的。
在Windows中,下一个新建帐户所分配的RID是由HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account注册表项的F键值所确定的。F键值是二进制类型的数据,在偏移量0048处的四个字节,定义下一个帐户的RID。那么也就是说,只需要修改0048处的四个字节,就能达到目的(让新建帐户获得1004的RID)
确认好以后,别忘记把Admin帐户的配置文件转移到别的地方!
(1) 默认情况下,只有system帐户才有权限访问HKEY_LOCAL_MACHINE\SAM,这里在CMD命令提示符窗口,运行以下命令,以system帐户身份打开注册表编辑器:
pexec -i -d -s %windir%\regedit.exe
提示 可以在以下网站下载psexec:
http://www.sysinternals.com/Utilities/PsExec.html
(2) 定位到HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account注册表项,双击打开右侧的F键值。
(3) 这里要说明一下,Windows是以十六进制、而且以反转形式保存下一个帐户的RID。什么意思呢?也就是说,如果是1004的RID,对应十六进制就是03EC,但是我们必须把它反转过来变成EC03,再扩展为4个字节,就是EC 03 00 00。
所以,我们应该把F键值的0048偏移量处,把其中四个字节改为“EC 03 00 00”,如图2所示。
图2
(4) 重要:别忘了重启计算机!
(5) 重启以后,新建一个同名帐户Admin,它的SID应该和以前是完全一样。如果不相信的话,可以借助GetSID或者PsGetSID等工具测试一下。
2.“破解”EFS
接下来的方法就非常简单了,用新建的Admin帐户身份登录系统,随便加密一个文件,然后注销,用管理员帐户登录系统,把原来保留的配置文件复制到C:\Documents and Settings\Admin文件夹下。
再用Admin帐户登录系统,现在可以解密原来的EFS文件了。
疑难解答
1.如果已经重装系统,那怎么办?
“声明”部分提到的那篇文章里提到,如果还记得原来帐户的密码,并且配置文件没有被删除的话,还有希望。这时候可以借助sysinternals的NEWSID工具把系统的计算机SID重设为原来的值,再用前面描述的方法构造所需的RID,这样就可以获得所需的帐户SID。剩余步骤完全一样。
http://www.sysinternals.com/Utilities/NewSid.html
2.有用户曾经遇到这样的问题:登录系统时收到提示说密码过期,需要重设,重设密码登录后发现打开EFS文件。
KB890951提到这个问题。其解释是因为在修改密码时,系统还没有加载配置文件(有点语焉不详),原文如下:
This problem occurs because the user profile for the current user is not loaded correctly after you change the password.
配置文件和EFS有何相干?看完本文,大家应该知道,EFS的私钥和主密钥都是保存在配置文件里的。由于配置文件没有加载,所以主密钥的加密版本没有得到更新(没有跟上帐户密码的变化),导致主密钥无法正确解密,从而无法解密私钥和FEK。这就是问题的真正原因。
该KB提供了一个内部补丁,可以解决这个问题。KB890951的链接如下:
http://support.microsoft.com/kb/890951
3.有关公钥的问题
为了容易理解,笔者故意忽略了公钥。公钥保存也保存在帐户的配置文件里:
%UserProfile%\Application Data\Microsoft\SystemCertificates\My\Certificates
在EFS恢复的操作中,必须确保公钥也要复制到新帐户的配置文件里。尽管看起来公钥与EFS解密无关(它负责加密)。
原来,加密文件$EFS属性的DDF字段里除了有帐户SID和加密的FEK副本外,还有公钥的指纹信息(Public Key Thumbprint)和私钥GUID信息(私钥的某种散列值)。
系统在扫描加密文件$EFS属性中的DDF字段时,根据用户配置文件里的公钥中所包含的公钥指纹和私钥GUID信息,当然还有帐户的SID,来判断该帐户是否具有对应的DDF字段,从而判断该用户是否属于合法的EFS文件拥有者。
所以公钥也很重要。
当然公钥是可以“伪造”的(可以伪造出所需的公钥指纹和私钥GUID),以欺骗EFS系统,具体方法可以参考国外的那篇原稿,此处不再赘述。
加强EFS的安全
由于EFS把所有的相关密钥都保存在Windows分区,所以这可能给EFS带来一定的安全隐患。目前有一些第三方工具号称可以破解EFS,这些工具首先攻击SAM配置单元文件,尝试破解帐户密码,从而破解帐户密码→主密钥的加密密钥→主密钥→EFS私钥→FEK的“密钥链”。