1. 程式人生 > >【技術共享】微軟的EFS加密 終於可以解密了~

【技術共享】微軟的EFS加密 終於可以解密了~

【技術共享】微軟的EFS加密 終於可以解密了~

【技術共享】微軟的EFS加密 終於可以解密了~

絕對原創】最新研究成果,EFS加密檔案真的可以解密!各位不要放棄哈~

我是一名正在讀計算機專業的博士,前一段時間花費了幾個月研究EFS解密技術,終於成功了,現在總結一下,給各位一個啟示~

關於EFS加密:

EFS(Encrypting File System,加密檔案系統)是Windows系統特有的一個實用功能,對於NTFS捲上的檔案和資料,都可以直接被作業系統加密儲存,在很大程度上提高了資料的安全性。但是,如果不小心重灌系統或損壞硬碟等將導致EFS加密檔案無法開啟,無法複製,但可以刪除。EFS加密解密都是透明完成,如果使用者加密了一些資料,那麼其對這些資料的訪問將是完全允許的, 並不會受到任何限制,因此,檔案被EFS加密後並不會被察覺,只有重灌系統後才發現,但為時已晚。值得注意的是,如果把未加密的檔案複製到具有加密屬性的資料夾中,這些檔案將會被自動加密。

判斷是不是EFS加密最簡單的辦法就是看檔案的顏色,如果檔名為綠色,肯定是EFS加密。如果顏色正常,也可以在檔案上點選滑鼠右鍵,選擇“屬性”,開啟屬性對話方塊,然後在常規選項卡上點選“高階”按鈕,開啟高階屬性對話方塊,如果“加密內容以便保護資料”這個選項被選中,肯定是EFS加密。

EFS是一種公鑰加密,在使用EFS加密一個檔案或資料夾時,系統首先會生成一個由偽隨機陣列成的FEK (File Encryption Key,檔案加金鑰匙),然後利用FEK和資料擴充套件標準X演算法建立加密後的檔案,並把它儲存到硬碟上,同時刪除未加密的原始檔案。隨後系統利用你的公鑰加密FEK,並把加密後的FEK儲存在同一個加密檔案中。而在訪問被加密的檔案時,系統首先利用當前使用者的私鑰解密FEK,然後利用FEK解密出文件。

在首次使用EFS時,如果使用者還沒有公鑰/私鑰對(統稱為金鑰),則會首先生成金鑰,然後加密資料。檔案的加密和解密都需要金鑰的參與,而金鑰分為公鑰和私鑰兩種。加密檔案的時候使用公鑰,解密檔案的時候則使用相對應的私鑰。

解密EFS加密檔案有兩種情況:

1) 備份了之前系統的相關檔案

如果你在重灌系統前備份了"C:\Documents and Settings\<使用者名稱>\Application Data\Microsoft\"這個資料夾的話(<使用者名稱>指的是你之前系統的使用者名稱),恭喜你,你的EFS檔案有救了(可以聯絡我幫你解密QQ77121335)!否則請看另一種情況。

2) 之前的系統檔案沒備份

如果你在重灌系統前沒有備份任何檔案,也不要放棄,只要你的資料還在硬碟,就一定能找回,只不過是時間的問題(通常需要幾十分鐘,分割槽越大時間越久),這個時候一定要記住:不要再對硬碟進行任何操作,不要再次重灌系統,不要開機,不要拷貝檔案,等待專業人員,否則你很可能覆蓋掉有用的資料,造成EFS金鑰丟失,永遠都不可能解密了。找回金鑰檔案後,恭喜你,你的EFS檔案可以解密了!QQ77121335

常見問題解答:

  1. 為什麼開啟加密過的檔案時沒有需要我輸入密碼?
    這正是EFS加密的一個特性,同時也是EFS加密和作業系統緊密結合的最佳證明。因為跟一般的加密軟體不同,EFS加密不是靠雙擊檔案,然後彈出一個對話方塊,然後輸入正確的密碼來確認的使用者的;EFS加密的使用者確認工作在登入到Windows時就已經進行了。一旦你用適當的賬戶登入,那你就能開啟相應的任何加密檔案,並不需要提供什麼額外的密碼。

2.我的加密檔案已經打不開了,我能夠把NTFS分割槽轉換成FAT32分割槽來挽救我的檔案嗎?
這當然是不可能的了。很多人嘗試過各種方法,例如把NTFS分割槽轉換成FAT32分割槽;用NTFS DOS之類的軟體到DOS下去把檔案複製到FAT32分割槽等,不過這些嘗試都以失敗告終。畢竟EFS是一種加密,而不是一般的什麼許可權之類的東西,這些方法對付EFS加密都是無濟於事。而如果你的金鑰丟失或者沒有做好備份,那麼一旦發生事故所有加密過的資料就都沒救了。

3.我加密資料後重裝了作業系統,現在加密資料不能打開了。如果我使用跟前一個系統相同的使用者名稱和密碼總應該就可以了吧?
這當然也是不行的,我們在前面已經瞭解到,跟EFS加密系統密切相關的金鑰是根據每個使用者的SID得來的。儘管你在新的系統中使用了相同的使用者名稱和密碼,但是這個使用者的SID已經變了。這個可以理解為兩個同名同姓的人,雖然他們的名字相同,不過指紋絕不可能相同,那麼這種想法對於只認指紋不認人名的EFS加密系統當然是無效的。

4.被EFS加密過的資料是不是就絕對安全了呢?
當然不是,安全永遠都是相對的。以被EFS加密過的檔案為例,如果沒有合適的金鑰,雖然無法開啟加密檔案,不過仍然可以刪除(有些小人確實會這樣想:你竟然敢加密了不讓我看!那好,我就刪除了它,咱們都別看)。

5.我只是用Ghost恢復了一下系統,使用者賬戶和相應的SID都沒有變,怎麼以前的加密檔案也打不開了?
這也是正常的,因為EFS加密所用到的金鑰並不是在建立使用者的時候生成,而是在你第一次用EFS加密檔案的時候。如果你用Ghost建立系統的映象前還沒有加密過任何檔案,那你的系統中就沒有金鑰,而這樣的系統製作的映象當然也就不包括金鑰。一旦你加密了檔案,並用Ghost恢復系統到建立映象的狀態,解密檔案所用的金鑰就丟失了。因此這個問題一定需要注意!