Windows中EFS加密及解密應用

Windows EFS 加密及解密應用
EFS特色簡介

   Windows 2000/XP/Server 2003 都配備了EFSEncrypting File System,加密檔案系統),它能夠幫助您針對存儲NTFS磁盤捲上的文件和文件夾執行加密操做。若是硬盤上的文件已經使用了EFS進行加密,即便***能訪問到你硬盤上的文件,因爲沒有解密的密鑰,文件也是不可用的。

  EFS加密基於公鑰策略。在使用EFS加密一個文件或文件夾時,系統首先會生成一個由僞隨機數組成的FEKFile Encryption Key,文件加密鑰匙),而後將利用FEK和數據擴展標準X算法建立加密後的文件,並把它存儲到硬盤上,同時刪除未加密的原始文件。接下來系統利用你的公鑰加密FEK,並把加密後的FEK存儲在同一個加密文件中。而在訪問被加密的文件時,系統首先利用當前用戶的私鑰解密FEK,而後利用FEK解密出文件。在首次使用EFS時,若是用戶尚未公鑰/私鑰對(統稱爲密鑰),則會首先生成密鑰,而後加密數據。若是你登陸到了域環境中,密鑰的生成依賴於域控制器,不然它就依賴於本地機器。

  提及來很是複雜,可是實際使用過程當中就沒有那麼麻煩了。EFS加密的用戶驗證過程是在登陸Windows時進行的,只要登陸到Windows,就能夠打開任何一個被受權的加密文件。換句話說,EFS加密系統對用戶是透明的。這也就是說,若是你加密了一些數據,那麼你對這些數據的訪問將是徹底容許的,並不會受到任何限制。而其餘非受權用戶試圖訪問你加密過的數據時,就會收到「訪問拒絕」的錯誤提示(圖1)。
 
1

  若是把未加密的文件複製到通過加密的文件夾中,這些文件將會被自動加密。如果將加密數據移出來,若是移動到NTFS分區上,數據依舊保持加密屬性。被EFS加密過的數據不能在Windows中直接共享。若是經過網絡傳輸經EFS加密過的數據,這些數據在網絡上將會以明文的形式傳輸。NTFS分區上保存的數據還能夠被壓縮,可是一個文件不能同時被壓縮和加密。再有,Windows的系統文件和系統文件夾沒法被加密。

  要提醒你們的是:要使用EFS加密功能,首先要保證操做系統是Windows 2000/XP/Server 2003Windows 98/Me操做系統就無緣使用了。其次要保證文件所在的分區格式是NTFS格式,FAT32分區裏的數據是沒法加密的。若是你要使用EFS加密,必須將FAT32格式轉換爲NTFS

  EFS應用實例

  讓咱們看看如何給文件夾加密。右擊選擇要加密的文件夾,選擇快捷菜單中的「屬性」,選擇「常規」標籤中的最下方「屬性」 「高級」,在「壓縮或加密屬性」一欄中,把「加密內容以便保護數據」打上√(圖2),點「肯定」。回到文件屬性點「應用」,彈出「確認屬性更改」窗口,在「將該應用用於該文件夾、子文件夾和文件」打上「√」,點「肯定」。這樣這個文件夾裏的原來有的以及新建的全部文件和子文件夾都被自動加密了。要解開加密的文件夾,把「加密內容以便保護數據」前面的「√」去掉,點肯定就能夠了。
 
2

  1.EFS選項添加至快捷菜單

  若是想將EFS選項添加至快捷菜單,請依次執行下列操做步驟:在「運行」對話框內輸入regedit,在註冊表編輯器內瀏覽至下列子鍵:

  HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced,而後新建一個DWORDEncryptionContextMenu,並將它的鍵值設爲1。注意,爲確保對註冊表進行修改,應在本身的計算機上擁有管理員賬號。這樣當用戶右鍵單擊某一存儲於NTFS磁盤捲上的文件或文件夾時,加密或解密選項便會出如今隨後彈出的快捷菜單上(圖3),很是方便。
 
 圖3
 
2. 禁用EFS

  若是你不喜歡EFS,能夠完全禁用它。只要在「運行」中輸入Regedit並回車,打開註冊表編輯器,依次展開到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\EFS,而後新建一個DwordEfsConfiguration,並將其鍵值設爲1,這樣本機的EFS加密就被完全禁用了。

3.
跳過不加密父文件夾下的某個子文件夾

  在加密的過程當中咱們經常遇到這樣的事情,咱們須要加密某一個文件夾,而此文件夾下還有不少的子文件夾,這時候咱們若是不想加密位於此文件夾下的某一個子文件夾該怎麼辦呢?不少的用戶每每採起的方法是將不須要加密的子文件夾剪切出來,單獨存放,而後再加密文件夾。但是這樣一來卻破壞了原來的目錄結構,加密和保持原有的目錄結構好象是魚與熊掌不可兼得,怎麼辦?其實你大可沒必要這麼辛苦,只須要在不須要加密的子文件夾下創建一個「Desktop.ini」文件便可。具體地說就是在不須要加密的子文件夾下創建一個名爲「Desktop.ini」的文件,用記事本程序打開錄入如下內容:

  [encryption]

  Disable=1

  錄入完畢保存並關閉該文件,之後要加密父文件夾的時候,當加密到該子文件夾就會遇到錯誤的信息,如圖所示(圖4),點「忽略」按鈕就能夠跳過對該子文件夾的加密,但其父文件夾的加密不會受到絲毫的影響。
 
 圖4
4.
在命令提示符下加密、解密文件

  有些用戶喜歡在命令提示符下工做,EFS也早爲這些用戶準備好了。用CIPHER命令便可輕鬆完成對文件和文件夾的加密、解密工做。其命令格式以下:

  CIPHER [/E   /D] 文件夾或文件名 [參數]

  例如要給F盤根目錄下的abcde文件夾加密就輸入:「CIPHER /e f:\abcde」,如圖所示(圖5),回車後便可完成對文件夾的加密。要給F盤根目錄下的abcde文件夾解密則輸入:「CIPHER /D f:\abcde」,回車後便可完成對文件夾的解密。/E是加密參數,/D是解密參數,其它更多的參數和用法請在命令提示符後輸入:「CIPHER /?」來查看。

 
5

5 EFS加密的破解

  在EFS加密體系中,數據是靠FEK加密的,而FEK又會跟用戶的公鑰一塊兒加密保存;解密的時候順序恰好相反,首先用私鑰解密出FEK,而後用FEK解密數據。可見,用戶的密鑰在EFS加密中起了很大做用。

  密鑰又是怎麼來的呢?在Windows 2000/XP中,每個用戶都有一個SIDSecurity Identifier,安全標識符)以區分各自的身份,每一個人的SID都是不相同的,而且有惟一性。能夠這樣理解:把SID想象爲人的指紋,雖然同名同姓甚至同時出生的人不少,但世界上任意兩我的的指紋卻徹底不一樣。所以,這具備惟一性的SID就保證了EFS加密的絕對安全和可靠。由於理論上沒有SID相同的用戶,於是用戶的密鑰也就毫不會相同。在第一次加密數據時,系統就會根據SID生成加密者(該用戶)的密鑰,而且會把公鑰及私鑰分開保存,供用戶加密和解密數據使用。

  許多人由此就認爲使用EFS加密很是安全,但是如今網上有一款叫作Advanced EFS Data Recovery軟件就能夠破解EFS加密!不過使用該軟件有個前提,那就是硬盤上要保留有相應的密鑰,並且該軟件目前僅能破解通過Windows 2000加密的文件,對Windows XP的加密還沒法破解,因此使用XP的朋友能夠安心一段時間了。一段時間之後呢?我也不知道,我只知道世上沒有不透風的牆。你們能夠從網上下載該軟件的試用版,試用版只能解密文件的前512字節。

  如今,假設咱們的Windows 2000安裝在C盤,事先用Administrators組的帳戶Work加密了一個文本文件efs1.txt。註銷該帳戶,用同屬於Administrators組的另外一個帳戶Luck登陸,直接打開efs1.txt文件試試,看到「訪問拒絕」的錯誤提示了吧?這說明通過EFS加密後的文件非受權用戶的確沒法訪問。接下來運行Advanced EFS Data Recovery,在「EFS Related Files」標籤下點擊右側的「Scan For keys」,而後指定在C盤中掃描密鑰,圖中顯示爲綠色的就是可用密鑰(圖6)。而後點擊「Encrypted files」標籤,再點擊右側的「Scan for encrypted files」按鈕,在D盤上搜索全部加密文件,會獲得如圖所示的結果(圖7),其中的efs1.txt就是咱們事先加密的文件,點擊「Save files」按鈕指定保存的位置便可。打開該文件看看,沒有任何問題,該文件已經被解密了
 
 
 
 
7   注意,若是你要解密的文件比較大的話,那就須要使用註冊版,不然沒法破解。
相關文章
相關標籤/搜索