程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> EFS加密 解密

EFS加密 解密

編輯:.NET實例教程


      隨著穩定性和可靠性的逐步提高,Windows XP已經被越來越多的人使用,很多人還用Windows XP自帶的EFS加密功能把自己的一些重要數據加密保存。雖然EFS易用性不錯,不過發生問題後就難解決了,例如不做任何准備就重裝了操作系統,那很可能導致以前的加密數據無法解密。最近一段時間我們已經可以在越來越多的論壇和新聞組中看到網友的求救,都是類似這樣的問題而導致重要數據無法打開,損失慘重。為了避免更多人受到損失,這裡我把使用EFS加密的注事項寫出來,希望對大家有所幫助。

 注意:文中的Windows XP皆指Professional版,Windows XP Home版並不支持EFS加密

  什麼是EFS加密

  EFS(Encrypting File System,加密文件系統)是Windows XP所特有的一個實用功能,對於NTFS卷上的文件和數據,都可以直接被操作系統加密保存,在很大程度上提高了數據的安全性。

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

     EFS加密原理圖:

   


  EFS加密有什麼好處

  首先,EFS加密機制和操作系統緊密結合,因此我們不必為了加密數據安裝額外的軟件,這節約了我們的使用成本。

  其次,EFS加密系統對用戶是透明的。這也就是說,如果你加密了一些數據,那麼你對這些數據的訪問將是完全允許的,並不會受到任何限制。而其他非授權用戶試圖訪問加密過的數據時,就會收到“訪問拒絕”的錯誤提示。EFS加密的用戶驗證過程是在登錄Windows時進行的,只要登錄到Windows,就可以打開任何一個被授權的加密文件。

  如何使用EFS加密

  要使用EFS加密,首先要保證你的操作系統符合要求。目前支持EFS加密的Windows操作系統主要有Windows 2000全部版本和Windows XP Professional。至於還未正式發行的Windows Server 2003和傳聞中的開發代號為Longhorn的新一帶操作系統,目前看來也支持這種加密機制。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved