史萊姆論壇

史萊姆論壇 (http://forum.slime.com.tw/)
-   資訊系統安全備援防護技術文件 (http://forum.slime.com.tw/f139.html)
-   -   關於EFS加密 (http://forum.slime.com.tw/thread110254.html)

psac 2004-05-22 03:23 PM

關於EFS加密
 
關於EFS加密

鑒於最近詢問有關EFS加密問題的朋友較多, 所以我從微軟知識庫中選了幾篇資料以供大家參考。

Microsoft Knowledge Base Article - 230520
HOW TO:
在 Windows 2000 中使用 EFS 加密資料
這篇文章中的資訊適用於:

Microsoft Windows 2000 Advanced Server
Microsoft Windows 2000 專業版
Microsoft Windows 2000 Server

本文的發佈號曾為 CHS230520
本工作的內容
概要

加密資料
使用 Cipher.exe 工具
概要
本文介紹在 Windows 2000 中如何使用加密文件系統 (EFS) 加密資料。

加密文件系統 (EFS) 是 Microsoft 用來在使用 NTFS 文件系統的捲上直接加密資料的文件加密技術。您可以像使用非加密資料那樣使用加密的資料。另外,您可以為加密的資料配置權限,以防止未經授權的使用。沒有正確權限的人若試突開啟、複製、移動或重命名加密的文件或資料夾,就會收到一條「訪問遭拒」錯誤消息。


加密資料
右鍵按下開始按鈕,按下瀏覽,然後瀏覽到想要加密的文件或資料夾。
右鍵按下所需的文件或資料夾,然後按下內容。

按下進階,然後按下選加密內容以便保護資料複選框,然後按下確定。
對於要加密的每個文件或資料夾重複執行步驟 2-3。

備註:
如果您加密一個資料夾,則該檔案夾中包含的所有文件和資料夾都將得到加密。

使用 Cipher.exe 工具

您可以使用 Cipher.exe 工具在 MS-DOS 命令提示字元下顯示或加密資料。如想使用 Cipher.exe 工具加密一個文件,請在 MS-DOS 命令提示字元下鍵入類似於下行的指令:
cipher [/E | /D] [/S:dir] [/i] [/F] [/Q] [dirname [...]

下表中定義了每一個指令行參數開關。如想在 MS-DOS 命令提示字元下檢視此資訊,請在 MS-DOS 命令提示字元下鍵入 cipher /?。

參數開關 說明

/E 加密指定的目錄。將標記這些目錄,這樣以後增加的文件將被加密。

/D 解密指定的目錄。將標記這些目錄,這樣以後增加的文件將不加密。
/S 對給定目錄中的目錄和所有子目錄執行指定的操作。

/I 即使在發生錯誤後也繼續執行指定的操作。預設情況下,CIPHER 在遇到錯誤時會停下。

/F 強制對所有指定的目錄執行加密操作,甚至包括那些已加密的目錄。已加密的目錄在預設情況下將被跳過。

/Q 只報告最重要的資訊。
dirname 指定一種模式,或指定目錄。



在不使用參數時,CIPHER 將顯示當前目錄及其包含的所有文件的加密狀態。您可以使用多個目錄名和萬用字元。多個參數之間必須留有空格。

備註:EFS 對於使用了 System 內容的文件不起作用。

如果您加密 Windows 系統檔案,則您的電腦可能會變得無法使用。

另外要注意,EFS 不能用於壓縮的文件或資料夾。

Cipher.exe 這一指令行實用工具還有其他一些參數開關可用,如想檢視它們,請使用 cipher /? 指令。


Microsoft Knowledge Base Article - 241201
HOW TO:制作備份加密文件系統私鑰

這篇文章中的資訊適用於:

Microsoft Windows XP Professional
Microsoft Windows 2000 Advanced Server
Microsoft Windows 2000 Professional
Microsoft Windows 2000 Server
本文的發佈號曾為 CHS241201
本工作的內容
概要

從故障恢復代理匯出私鑰
疑難排除
參考
概要
本文介紹如何制作備份加密文件系統 (EFS) 私鑰,以便可以在電腦上的資料副本丟失時恢復加密的資料。

在使用 EFS 加密電腦上的文件時,EFS 公鑰用來加密文件,而 EFS 私鑰用來解密這些文件。

如果在一個文件加密後您丟失了私鑰,則將無法恢復此文件。

警告:
在將私鑰匯出到磁牒後,須將該磁牒儲存在一個安全地方。 如果有人能獲取您的 EFS 私鑰,則他或她就能夠訪問到您的加密資料。


從故障恢復代理匯出私鑰
使用本機管理員帳戶登入到電腦。

備註: 必須使用內裝的管理員帳戶,而不只是使用一個普通的具有管理員權限的帳戶。

按下開始,按下執行,鍵入 secpol.msc,然後按下確定。
按下公鑰原則旁邊的加號 (+) 以展開此項。

按下經過加密的資料恢復代理類別。

在右邊的視窗中將顯示一個頒發給「管理員」的證書,並說明它是用來進行「文件恢復」的。

右鍵按下此項,然後按下「所有工作」>「匯出」。

按下下一步。
確保選項了「是,匯出私鑰」選項,然後按下下一步。

在匯出文件格式對話視窗中,如果想刪除與「管理員」帳戶關聯的私鑰,則請按下選「如果匯出成功,刪除密鑰」複選框。

按下下一步。

鍵入並驗證一個密碼以加強匯出密鑰的安全,然後按下下一步。

系統會提示您將證書和私鑰儲存到一個文件中。

應將此文件制作備份到一個磁牒或可移動媒體設備中,然後將此制作備份存放在一個可在物理上確保制作備份安全的地方。 鍵入適當的檔案名,然後按下下一步。

當正在完成證書匯出嚮導對話視窗出現時,請驗證您選項的選項,然後按下完成。


當「匯出成功」對話視窗出現時,按下確定。

必須重新啟動電腦以完成私鑰的刪除程序。


疑難排除

如果您的電腦是 Windows 域的一個成員,則域管理員可能會將某些用戶指定為 EFS 恢復代理,他們即使在某一特定用戶的私鑰丟失時也可以恢複數據。


如果您的電腦未加入 Windows 域(例如,是一台獨立的電腦,或者是關於 Microsoft Windows NT 4.0 的域結構中的一台電腦),那麼本機管理員帳戶就是您的指定 EFS 恢復代理。


由於這一點,只有在您以前制作備份了本機管理員私鑰的情況下,才可以恢復經過加密的資料。

參考
有關其他資訊,請按下下列文章編號,檢視相應的 Microsoft 知識庫文章:
CHS223316 加密文件系統的最佳做法

230520 How to Encrypt Data Using EFS in Windows 2000(在 Windows 2000 中如何使用 EFS 加密資料)

242296 How to Restore an EFS Private Key for Encrypted Data Recovery(還原用於加密資料恢復的加密文件系統私鑰)

若要下載「Encrypting File System for Windows 2000」(在 Windows 2000 中加密文件系統)白皮書,請訪問下面的 Microsoft Web 站點:
http://www.microsoft.com/windows2000...ty/encrypt.asp

Microsoft Knowledge Base Article - 307877
HOW TO: 在 Windows XP 中加密文件
這篇文章中的資訊適用於:
Microsoft Windows XP Professional
本文的發佈號曾為 CHS307877
本工作的內容
概要

如何加密文件
疑難排除
參考
概要
本文介紹了如何使用 Windows XP 的加密文件系統(EFS)功能將文件以加密格式存儲在硬碟上。

加密是將資料轉換為其他人無法讀取的格式的程序。 如果資料存儲在硬碟上,您可以使用 EFS 自動加密資料。 備註:管理員可以恢復由另一用戶加密的資料。

Microsoft Windows XP Home Edition 沒有 EFS 功能。


如何加密文件
您只能對格式化為 NTFS 文件系統的捲上的文件進行加密。 要加密文件,請按照以下步驟操作:

按下開始,指向所有程式,指向附件,然後按下 Windows 檔案總管。
找到您希望加密的文件,右鍵按下該檔案,然後按下內容。

在一般選擇項上,按下進階。

在「壓縮或加密內容」下,選「加密內容以便保護資料」複選框,然後按下確定。
按下確定。 如果需要加密的文件位於未加密的資料夾中,則會出現一個加密警告對話視窗。請使用以下步驟之一:
如果您只希望對文件加密,按下「只加密文件」,然後按下驗證。
如果您希望對文件和該檔案所在的資料夾加密,按下「加密文件及其父資料夾」,然後按下確定。
如果另一用戶試突開啟已加密的文件,此嘗試將失敗。 例如,如果另一用戶試突開啟一個已加密的 Microsoft Word 我的文件,則會出現類似的下列消息:

Word 無法開啟此我的文件: 用戶名 無訪問權限
( 驅動器:\檔案名.doc)
如果另一用戶試突將加密的文件複製或移動到硬碟上的另一位置,將出現下列消息:

複製文件或資料夾時出錯
無法複製檔案名 :訪問被拒絕。


請確定磁牒未滿或未被寫保護而且文件未被使用。

疑難排除
您無法對使用 FAT 文件系統的捲上的文件或資料夾進行加密。

您必須將您要加密的文件或資料夾存儲在 NTFS 捲上。

您無法將已加密的文件或資料夾存儲在未受信委派的遠端伺服器上。

要解決此問題,請將遠端伺服器配置為受信委派。

為此:
以管理員權限帳戶登入到域控制器。
啟動 Active Directory 用戶和電腦管理單元。
在左視窗中,擴展域容器。 找到您的目標伺服器,右鍵按下該伺服器,然後按下內容。

在一般選擇項上,選「信任此電腦作為委派」複選框(如果此複選框尚未被選)。 出現的「Active Directory」消息時,按下確定。

按下確定,然後退出 Active Directory 用戶和電腦。

您無法從 Macintosh 客戶電腦訪問已加密的文件。

您無法在您所新增的加密資料夾中開啟其他用戶存儲的我的文件。

如果另一用戶在已加密的資料夾中新增我的文件,該我的文件(預設情況下)被加密為僅有此用戶有權訪問該我的文件。 因此,您所加密的資料夾中可能包含您無法開啟的文件。


如果您需要訪問這些文件,請求將您的用戶帳戶增加到共享加密文件的用戶帳戶列表中。

參考
有關其他資訊,按下以下文章編號,檢視 Microsoft 知識庫中的相應文章:
CHS223316加密文件系統的最佳做法

Microsoft Knowledge Base Article - 223316
Best Practices for Encrypting File System(加密文件系統的最佳做法)
這篇文章中的資訊適用於:
Microsoft Windows 2000 Server
Microsoft Windows 2000 Advanced Server
Microsoft Windows 2000 Professional
Microsoft Windows 2000 Datacenter Server
本文的發佈號曾為 CHS223316
概要
Windows 包括對使用 NTFS 文件系統的捲上的資料直接加密的功能,以便其他用戶無法使用該資料。

如果在對象的"內容"對話視窗中設定了內容,則可以對文件和資料夾進行加密。

由於加密/解密程序對用戶是透明的,因此,對於要充分利用文件加密的組織來說,嚴格遵循文件加密準則是非常重要的。

更多資訊

以下是標準做法的列表:

加密所有用戶的"My Documents"資料夾 (User_profile\My Documents)。這將確保預設情況下加密個人資料夾(其中存儲了大多數 Office 我的文件)。

告知用戶一定不要加密單個文件,而是只加密資料夾。程序以各種方式對文件進行處理。始終在資料夾級別上加密文件將確保文件不會被意外地解密。

與恢復證書關聯的私鑰是極其敏感的。它們應該在物理上安全的電腦上產生,或者應該將其證書完全匯出到受加強密碼保護的 PFX 文件中,並存儲在安全軟碟上。

應該將恢復代理證書分配給不用於任何其他用途的特殊恢復代理帳戶。

在更改恢復代理(應定期進行)時,不要破壞恢復證書或私鑰。

保留所有這些證書或私鑰,直到已經用它們加密的所有文件都得到更新為止。


根據組織單元的大小,為每個組織單元 (OU) 指定兩個或多個恢復代理帳戶。

指定兩台或多台用於恢復的電腦,為每個指定的恢復代理帳戶指定一台電腦,並賦予相應管理員使用恢復代理帳戶的權限。

提供兩個恢復代理帳戶是為了提供文件恢復冗余。

在兩台電腦上儲存這些密鑰可以提供進一步的冗余,以支持丟失資料的恢復。

執行恢復代理存檔程序,以確保可以使用過時的恢復密鑰恢復加密的文件。

必須匯出恢復證書和私鑰,並以安全的受控方式存儲它們。


理想情況下,就像所有安全的資料一樣,應該將檔案存儲在受控制的訪問電子倉庫中,而且應該具有以下兩個檔案:一個主檔案和一個制作備份檔案。

主檔案應儲存在現場,而制作備份檔案應位於現場之外的安全位置。

避免在您的列印伺服器結構中使用列印假離線檔案,或者確保在加密的資料夾中產生列印假離線檔案。


每次用戶加密和解密文件時,"加密文件系統"都會佔用一些 CPU 系統預先配置。在許多客戶端將使用 EFS 的伺服器上明智地計劃伺服器。


有關"加密文件系統"(EFS) 的其他資訊,請參閱以下 Microsoft Web 站點上的"Encrypting File System for Windows 2000"(Windows 2000 的加密文件系統):

http://www.microsoft.com/windows ... ecurity/encrypt.asp

另請參閱"Data Protection and Recovery in Windows XP"(Windows XP 中的資料保護和恢復),它包括與 Windows 2000 有關的資訊:

http://www.microsoft.com/WINDOWSXP/p...ry/default.asp

我使用的不是XP系統, 但是我用朋友的機器試驗了一下, 不加入域是完全可行的。
現在我來介紹一下方法:

一開始他的電腦上也找不到那張證書,為何呢?
是因為Windows XP沒有預設的恢復代理,因此我們加密資料之前最好能先指定一個預設的恢復代理(建議設定Administrator為恢復代理),如果你想讓Administrator成為恢復代理,首先就要用Administrator帳戶登錄系統,在歡迎螢幕上連續按Ctrl+Alt+Del兩次,開啟登入對話視窗,在用戶名處輸入Administrator,密碼框中輸入你安裝系統時設定的Administrator密碼,然後登入。


首先在硬碟上一個方便的地方建立一個臨時的文件,檔案類型不限。


這裡我以C碟根目錄下的一個try.txt文本文件文件為例,建立好後在執行中輸入「CMD」然後Enter鍵,開啟指令提示行視窗,在命令提示字元後輸入「cipher /r:c:\try.txt」,Enter鍵後系統還會詢問你是否用密碼把證書保護起來,你可以按照你的情況來決定,如果不需要密碼保護就直接按Enter鍵。

完成後我們能在C碟的根目錄下找到try.txt.cer和try.txt.pfx兩個文件。

之後開始設定恢復代理:執行「secpol.msc」, 「公鑰原則-正在加密文件系統」表單下,在右側視窗的空白處點擊滑鼠右鍵,並選項「增加資料恢復代理」,然後會出現「增加故障恢復代理嚮導」按照這個嚮導開啟try.txt.cer,於是我們已經把本機Administrator設定為故障恢復代理, 於是我們得到了證書。


要注意的是以後匯出證書也輸入「secpol.msc」, 在「公鑰原則-正在加密文件系統」選項右側視窗的那張證書匯出, 而不要用「certmgr.msc」。
我朋友的電腦上沒有抓圖工具,那張圖我就不貼出來了。

你用我的方法試一定會成功的。

應該是這樣的,不過和根SID無多大關係, 你可以參看我們早先討論過的那張貼子,那裡面我講EFS加密原理的時候講得很清楚(有關於兩份FEK拷貝):
http://forums.zdnet.com.cn/cgi-bin/topic.cgi?

mach12 2004-05-23 06:46 PM

thanks for your sharing

psac 2006-04-01 10:40 AM

讓資料更安全 6招實戰EFS加密技巧

 使用Windows 2000/XP/Server 2003的用戶一定聽說或接觸過EFS,但由於其較為複雜,弄不好就會丟失掉資料。因此,很多人並沒有使用它。其實,EFS並沒有我們想像中的那樣難,關鍵要真正玩轉它,我們需要掌握好幾個關鍵招數……

  術語精靈

  EFS:Encrypting File System,加密文件系統。它可以說明 你針對儲存於在NTFS磁牒捲上的文件和資料夾進行加密操作。

  NTFS:Windows 2000/XP/2003支持的、一個特別為網路和磁牒配額、文件加密等管理安全特性設計的磁牒格式。NTFS支持文件加密管理功能,可為用戶提供更高層次的安全保證。

  MMC:Microsoft Management Console的簡稱,是一個整合了用來管理網路、電腦、服務及其他系統元件的系統管理工具。MMC不執行管理功能,但整合系統管理工具。可以增加到控制台的主要工具檔案類型稱為管理單元,其他可增加的項目包括 ActiveX 控件、指向 Web 頁的連接、資料夾、工作板視圖和工作。

由於EFS的用戶驗證程序是在你登入Windows時進行的,所以只要使用權用戶登入到Windows,就可以開啟任何一個被使用權的加密文件。因此,實際上EFS對用戶來說是透明的。也就是說如果你加密了某些資料後,你對這些資料的訪問將不會有任何限制,而且不會有任何提示,你根本感覺不到它的存在。但是當其他非使用權用戶試圖訪問加密過的資料時,就會收到「訪問拒絕」的錯誤提示,從而保護我們的加密文件。

  小提示:

  如果你要使用EFS加密文件系統,必須將Windows 2000/XP/Server 2003的加密文件所在分區格式化為NTFS格式。

  實戰一:實戰EFS資料夾加密

  第一步:右擊選項要加密的資料夾,選項「內容」,然後按下彈出視窗中的「一般」標籤,再按下最下方的「內容→進階」,在「壓縮或加密內容」一欄中,把「加密內容以便保護資料」勾選上(如圖1)。 [attachment=186479]
第二步:按下「確定」按鈕,回到文件內容再按下「套用」按鈕,會彈出「驗證內容更改」視窗,在「將該套用用於該檔案夾、子資料夾和文件」打上「√」,最後按下「確定」按鈕即開始加密文件。這樣這個資料夾裡的原來有的以及新增的所有文件和子資料夾都被自動加密了。

  第三步:如果想取消加密,只需要右擊資料夾,取消「加密內容以便保護資料」的勾選,確定即可。

  小提示

  在指令行模式下也可用「cipher」指令完成對資料的加密和解密操作,在指令符後輸入「cipher/?」並Enter鍵可以得到具體的指令參數使用方法。

實戰二:右鍵輕鬆加密解密

  用上述方法加密文件須驗證多次,非常麻煩,其實只要修改一下註冊表,就可以給滑鼠的右鍵表單中增添「加密」和「解密」選項,以後在需要時用右擊即可完成相關操作。按下「開始→執行」,輸入regedit後Enter鍵,開啟註冊表編輯器,定位到[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Exporer/Advanced],在「編輯」表單上按下「新增→DWORD值」,然後輸入EncryptionContextMenu作為鍵名,並設定鍵值為「1」。結束註冊表編輯器,開啟檔案總管,任意選一個NTFS分區上的文件或者資料夾,右擊就可以在右鍵表單中找到相應的「加密」和「解密」選項,直接按下就可以完成加密/解密的操作(如圖2)。

[attachment=186480]
實戰三:多用戶禁止特殊資料夾加密

  在多用戶共用電腦的時候,我們通常將用戶指定為普通用戶權限,但是普通用戶帳戶在預設值的情況下是允許使用加密功能,因此如果在一些多用戶共用的電腦上有人利用EFS加密文件,勢必會給其他用戶帶來許多麻煩。所以需要設定某些特定的資料夾禁止被加密,或者禁止文件加密功能。

  先來說說如何只想禁止加密某個資料夾,方法是只要在該檔案夾中用記事本新增一個名為Desktop.ini的文件,然後增加如下內容:
[Encryption]
Disable=1

  最後儲存這個文件即可。這樣如果以後其他用戶試圖加密該檔案夾時就會出現錯誤訊息,無法進行下去。注意,你只能使用這種方法禁止其他用戶加密該檔案夾,資料夾中的子資料夾將不受保護。

  實戰四:禁用EFS加密功能

  如果要徹底禁用EFS加密,可以開啟「註冊表編輯器」,定位到[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\EFS],在「編輯」表單上按下「新增→Dword值」,然後輸入EfsConfiguration作為鍵名,並設定鍵值為「1」,這樣本地機的EFS加密就被禁用了。

  實戰五:匯出EFS密鑰

  使用Windows 2000/XP的EFS加密後,如果重裝系統,那麼原來被加密的文件就無法開啟了!如果你沒有事先做好密鑰的制作備份,那麼資料是永遠打不開的。由此可見,做好密鑰的被制作備份就很重要。

  第一步:首先以本機帳號登入,最好是具有管理員權限的用戶。然後按下「開始→執行」,輸入「MMC」後Enter鍵,開啟控制台介面。

  第二步:按下控制台的「控制台→增加移除管理單元」,在彈出的「增加/移除管理單元」對話視窗中按下「增加」按鈕,在「增加獨立管理單元」對話視窗中選項「證書」後,按下「增加」按鈕增加該單元。

  如果是管理員,會要求選項證書方式,選項「我的用戶證書」,然後按下「關閉」按鈕,按下「確定」按鈕返回控制台。

  第三步:依次展開左邊的「控制台根節點→證書→個人→證書→選項右邊視窗中的賬戶」,右擊選項「所有工作→匯出」,彈出「證書匯出嚮導」(如圖3)。
[attachment=186481]
第四步:按下「下一步」按鈕,選項「是,匯出私鑰」,按下「下一步」按鈕,勾選「私人訊息交換」下面的「如果可能,將所有證書包括到證書路徑中」和「啟用加強保護」項,按下「下一步」按鈕,進入設定密碼介面。

  第五步:輸入設定密碼,這個密碼非常重要,一旦遺忘,將永遠無法獲得,以後也就無法匯入證書。輸入完成以後按下「下一步」按鈕,選項儲存私鑰的位置和檔案名。

  第六步:按下「完成」按鈕,彈出「匯出成功」對話視窗,表示你的證書和密鑰已經匯出成功了,開啟儲存密鑰的路徑,會看到一個「信封+鑰匙」的圖示,這就是你寶貴的密鑰!丟失掉了它,不僅僅意味著你再也打不開你的資料,也意味著別人可以輕易開啟你的資料。

 實戰六:匯入EFS密鑰

  由於重裝系統後,對於被EFS加密的文件我們是不能夠開啟的,所以重裝系統以前,一定記住匯出密鑰,然後在新系統中將制作備份的密鑰匯入,從而獲得權限。

  小提示

  ★確保你匯入的密鑰有檢視的權利,否則就是匯入了也沒有用的。這一點要求在匯出時就要做到

  ★記住匯出時設定的密碼,最好使用和匯出是相同的用戶名。

  第一步:雙按匯出的密鑰(就是那個「信封+鑰匙」圖示的文件),會看到「證書匯入嚮導」歡迎介面,按下「下一步」按鈕,驗證路徑和密鑰證書,然後按下「下一步」繼續(如圖4)。

[attachment=186482]
第二步:在「密碼」後面輸入匯出時設定的密碼,把密碼輸入後勾選「啟用強密鑰保護」和「標誌此密鑰可匯出」(以確保下次能夠匯出),然後按下「下一步」繼續。

  第三步:根據提示,依次按下「下一步」按鈕,OK了,按下完成按鈕,看到「匯入成功」就表示你已經成功匯入密鑰了。

  試試看,原來打不開的文件,現在是不是全部都能開啟了呢?

  小提示

  ★EFS加密的文件打不開了,把NTFS分區轉換成FAT32分區或者使用相同的用戶名和密碼登入甚至重新Ghost回原系統都不能解決問題,因此制作備份和匯入EFS密鑰就顯得非常重要。

  ★Windows XP家用版並不支持EFS功能。

psac 2006-04-01 11:00 AM

EFS加密和安全

EFS加密和安全
作者:
.com.cn
隨著穩定性和可靠性的逐步提高,Windows 2000/XP已經被越來越多的人使用,很多人還用Windows 2000/XP原有的的EFS加密功能把自己的一些重要資料加密儲存。雖然EFS易用性不錯,不過發生問題後就難解決了,例如不做任何準備就重裝了作業系統,那很可能導致以前的加密資料無法解密。最近一段時間我們已經可以在越來越多的論壇和新聞組中看到網友的求救,都是類似這樣的問題而導致重要資料無法開啟,損失慘重。為了避免更多人受到損失,這裡我把使用EFS加密的注事項寫出來,希望對大家有所說明 。
注意,下文中的Windows XP皆指Professional版,Windows XP Home版並不支持EFS加密。
什麼是EFS加密
EFS(Encrypting File System,加密文件系統)是Windows 2000/XP所特有的一個實用功能,對於NTFS捲上的文件和資料,都可以直接被作業系統加密儲存,在很大程度上提高了資料的安全性。
EFS加密是關於公鑰原則的。在使用EFS加密一個文件或資料夾時,系統首先會產生一個由偽隨機陣列成的FEK (File Encryption Key,文件加密鑰匙),然後將利用FEK和資料增強標準X算法新增加密後的文件,並把它儲存於到硬碟上,同時移除未加密的原始文件。隨後系統利用你的公鑰加密FEK,並把加密後的FEK儲存於在同一個加密文件中。而在訪問被加密的文件時,系統首先利用當前用戶的私鑰解密FEK,然後利用FEK解密出文件。在首次使用EFS時,如果用戶還沒有公鑰/私鑰對(統稱為密鑰),則會首先產生密鑰,然後加密資料。如果你登入到了域環境中,密鑰的產生依賴於域控制器,否則它就依賴於本機機器。
EFS加密有什麼好處
首先,EFS加密機制和作業系統緊密結合,因此我們不必為了加密資料安裝額外的軟體,這節約了我們的使用成本。
其次,EFS加密系統對用戶是透明的。這也就是說,如果你加密了一些資料,那麼你對這些資料的訪問將是完全允許的,並不會受到任何限制。而其他非使用權用戶試圖訪問加密過的資料時,就會收到「訪問拒絕」的錯誤提示。EFS加密的用戶驗證程序是在登入Windows時進行的,只要登入到Windows,就可以開啟任何一個被使用權的加密文件。
如何使用EFS加密
要使用EFS加密,首先要保證你的作業系統符合要求。目前支持EFS加密的Windows作業系統主要有Windows 2000全部版本和Windows XP Professional。至於還未正式發行的Windows Server 2003和傳聞中的開發代號為Longhorn的新一帶作業系統,目前看來也支持這種加密機制。其次,EFS加密只對NTFS5分區上的資料有效(注意,這裡我們提到了NTFS5分區,這是指由Windows 2000/XP格式化過的NTFS分區;而由Windows NT4格式化的NTFS分區是NTFS4格式的,雖然同樣是NTFS文件系統,但它不支持EFS加密),你無法加密儲存在FAT和FAT32分區上的資料。
對於想加密的文件或資料夾,只需要用滑鼠右鍵點擊,然後選項「內容」,在一般選擇項下點擊「進階」按鈕,之後在彈出的視窗中選「加密內容以保護資料」,然後點擊確定,等待片刻資料就加密好了。如果你加密的是一個資料夾,系統還會詢問你,是把這個加密內容套用到資料夾上還是資料夾以及內部的所有子資料夾。按照你的實際情況來操作即可。解密資料也是很簡單的,同樣是按照上面的方法,把「加密內容以保護資料」前的鉤消除,然後確定。
http://www.cctips.com/backup/xp/efs/Snap1.png
如果你不喜歡圖形介面的操作,還可以在指令行模式下用「cipher」指令完成對資料的加密和解密操作,至於「cipher」指令更詳細的使用方法則可以通過在指令符後輸入「cipher/?」並Enter鍵獲得。
注意事項:如果把未加密的文件複製到具有加密內容的資料夾中,這些文件將會被自動加密。若是將加密資料移出來,如果移動到NTFS分區上,資料依舊保持加密內容;如果移動到FAT分區上,這些資料將會被自動解密。被EFS加密過的資料不能在Windows中直接共享。如果通過網路傳輸經EFS加密過的資料,這些資料在網路上將會以明文的形式傳輸。NTFS分區上儲存的資料還可以被壓縮,不過一個文件不能同時被壓縮和加密。最後一點,Windows的系統檔案和系統檔案夾無法被加密。
這裡還有個竅門,用傳統的方法加密文件,必須開啟層層表單並依次驗證,非常麻煩,不過只要修改一下註冊表,就可以給滑鼠的右鍵表單中增添「加密」和「解密」的選項。
在執行中輸入「regedit」並Enter鍵,開啟註冊表編輯器,定位到HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion /Explorer/Advanced ,在「編輯」表單上點擊「新增-Dword值」,輸入「EncryptionContextMenu」作為鍵名,並設定鍵值為「1」。現在結束註冊表編輯器,開啟檔案總管,任意選一個NTFS分區上的文件或者資料夾,然後點擊滑鼠右鍵,就可以在右鍵表單中找到相應的選項,直接點擊就可以完成加密解密的操作。
如果你想設定禁止加密某個資料夾,可以在這個資料夾中新增一個名為「Desktop.ini」的文件,然後用記事本開啟,並增加如下內容:
[Encryption]
Disable=1
之後儲存並關閉這個文件。這樣,以後要加密這個資料夾的時候就會收到錯誤訊息,除非這個文件被移除。
而如果你想在本地機上徹底禁用EFS加密,則可以通過修改註冊表實現。在執行中輸入「Regedit」並Enter鍵,開啟註冊表編輯器,定位到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\EFS,在「編輯」表單上點擊「新增-Dword值」,輸入「EfsConfiguration」作為鍵名,並設定鍵值為「1」,這樣本地機的EFS加密就被禁用了。而以後如果又想使用時只需把鍵值改為「0」。
如何保證EFS加密的安全和可靠
前面我們已經瞭解到,在EFS加密體系中,資料是靠FEK加密的,而FEK又會跟用戶的公鑰一起加密儲存;解密的時候順序剛好相反,首先用私鑰解密出FEK,然後用FEK解密資料。可見,用戶的密鑰在EFS加密中起了很大作用。
密鑰又是怎麼來的呢?在Windows 2000/XP中,每一個用戶都有一個SID(Security Identifier,安全標示符)以區分各自的身份,每個人的SID都是不相同的,並且有唯一性。可以這樣理解:把SID想像成人的指紋,雖然世界上已經有幾十億人(同名同姓的也有很多),可是理論上還沒有哪兩個人的指紋是完全相同的。因此,這具有唯一性的SID就保證了EFS加密的絕對安全和可靠。因為理論上沒有SID相同的用戶,因而用戶的密鑰也就絕不會相同。在第一次加密資料的時候,作業系統就會根據加密者的SID產生該用戶的密鑰,並把公鑰和私鑰分開儲存起來,供用戶加密和解密資料。
這一切,都保證了EFS機制的可靠。
其次,EFS機制在設計的時候就考慮到了多種突發情況的產生,因此在EFS加密系統中,還有恢復代理(Recovery Agent)這一概念。
舉例來說,公司財務部的一個職工加密了財務資料的報表,某天這位職工辭職了,安全起見你直接移除了這位職工的賬戶。直到有一天需要用到這位職工新增的財務報表時才發現這些報表是被加密的,而用戶帳戶已經移除,這些文件無法開啟了。不過恢復代理的存在就解決了這些問題。因為被EFS加密過的文件,除了加密者本人之外還有恢復代理可以開啟。
對於Windows 2000來說,在單機和工作組環境下,預設值的恢復代理是 Administrator ;Windows XP在單機和工作組環境下沒有預設值的恢復代理。而在域環境中就完全不同了,所有加入域的Windows 2000/XP電腦,預設值的恢復代理全部是域管理員。
這一切,都保證了被加密資料的安全。
如何避免不慎使用EFS加密帶來的損失
如果你也和我一樣,由於對EFS加密不瞭解致使重要資料遺失,那麼也別氣餒,就當買了個教訓。畢竟通過這事情你還是能學會很多東西的。那就是:制作備份密鑰!設定有效的恢復代理!
對於上面講到的情況1,制作備份密鑰可以避免這種悲劇的發生。在執行中輸入「certmgr.msc」然後Enter鍵,開啟證書管理器。密鑰的匯出和匯入工作都將在這裡進行。
在你加密過文件或資料夾後,開啟證書管理器,在「當前用戶」-「個人」-「證書」路徑下,應該可以看見一個以你的用戶名為名稱的證書(如果你還沒有加密任何資料,這裡是不會有證書的)。右鍵點擊這個證書,在「所有工作」中點擊「匯出」。之後會彈出一個證書匯出嚮導,在嚮導中有一步會詢問你是否匯出私鑰,在這裡要選項「匯出私鑰」,其它選項按照預設值設定,連續點擊繼續,最後輸入該用戶的密碼和想要儲存的路徑並驗證,匯出工作就完成了。匯出的證書將是一個pfx為後面的文件。
http://www.cctips.com/backup/xp/efs/Snap2.png
重裝作業系統之後找到之前匯出的pfx文件,滑鼠右鍵點擊,並選項「安裝PFX」,之後會出現一個匯入嚮導,按照匯入嚮導的提示完成操作(注意,如果你之前在匯出證書時選項了用密碼保護證書,那麼在這裡匯入這個證書時就需要提供正確的密碼,否則將不能繼續),而之前加密的資料也就全部可以正確開啟。
對於情況2,我們對Windows XP和Windows 2000兩種情況分別加以說明。
由於Windows XP沒有預設值的恢復代理,因此我們加密資料之前最好能先指定一個預設值的恢復代理(建議設定Administrator為恢復代理,雖然這個賬戶沒有顯示在歡迎螢幕上,不過確實是存在的)。這樣設定:
首先要獲得可以匯入作為恢復代理的用戶密鑰,如果你想讓Administrator成為恢復代理,首先就要用Administrator帳戶登錄系統。在歡迎螢幕上連續按Ctrl+Alt+Del兩次,開啟登入對話視窗,在用戶名處輸入Administrator,密碼項中輸入你安裝系統時設定的Administrator密碼,然後登入。首先在硬碟上一個方便的地方建立一個臨時的文件,檔案類型不限。這裡我們以C碟根目錄下的一個1.txt文本文件文件為例,建立好後在執行中輸入「CMD」然後Enter鍵,開啟指令提示行視窗,在命令提示字元後輸入「cipher /r:c:\1.txt」,Enter鍵後系統還會詢問你是否用密碼把證書保護起來,你可以按照你的情況來決定,如果不需要密碼保護就直接按Enter鍵。完成後我們能在C碟的根目錄下找到1.txt.cer和1.txt.pfx兩個文件(為了顯示的清楚我在資料夾選項中設定了顯示所有檔案類型的副檔名,這樣我們可以更清楚地瞭解到底產生了哪些文件)。

之後開始設定恢復代理。對於1.txt.pfx這個文件,同樣需要用滑鼠右鍵點擊,然後按照嚮導的提示安裝。而1.txt.cer則有些不同,在執行中輸入「gpedit.msc」並Enter鍵,開啟群組原則編輯器。在「電腦設定-Windows設定-安全性設定-公鑰原則-正在加密文件系統」表單下,在右側視窗的空白處點擊滑鼠右鍵,並選項「增加資料恢復代理」,然後會出現「增加故障恢復代理嚮導」按照這個嚮導開啟1.txt.cer,如果一切無誤就可以看見圖五的介面,這說明我們已經把本地機的Administrator設定為故障恢復代理。

如果你願意,也可以設定其它用戶為恢復代理。需要注意的是,你匯入證書所用的1.txt.pfx和1.txt.cer是用哪個帳戶登錄後產生的,那麼匯入證書後設定的恢復代理就是這位用戶。
在設定了有效的恢復代理後,用恢復代理登入系統就可以直接解密文件。但如果你在設定恢復代理之前就加密過資料,那麼這些資料恢復代理仍然是無法開啟的。
而對於Windows 2000就更加簡單,Windows 2000有恢復代理,因此只要用恢復代理(預設值的就是Administrator)的帳號登入系統,就可以解密文件。
如何在本地機上共享經EFS加密過的資料
加密過的文件只有加密者本人和恢復代理可以開啟,如果你要和本地機的其它用戶共享加密文件又該怎麼辦?這在Windows 2000中是不行的,不過在Windows XP中可以做到。
選一個希望共享的加密文件(注意,只能是文件,而不能是資料夾),在文件上用滑鼠右鍵點擊,並選項「內容」,之後在內容對話視窗的「一般」選擇項上點擊「進階」按鈕,然後再點擊「詳細資料」,之後你可以看見類似圖六的視窗,在這裡你可以決定誰可以開啟這個加密文件以及察看文件的恢復代理是具體是誰。

對EFS加密的幾個錯誤認識
很多人對EFS理解的不夠徹底,因此在使用程序中總會有一些疑問。一般情況下,我們最一般的疑問有以下幾種:
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加密過的文件為例,如果沒有合適的密鑰,雖然無法開啟加密文件,不過仍然可以移除(有些小人確實會這樣想:你竟然敢加密了不讓我看!那好,我就移除了它,咱們都別看)。所以對於重要文件,最佳的做法是NTFS權限和EFS加密並用。這樣,如果非法用戶沒有合適的權限,將不能訪問受保護的文件和資料夾;而即使擁有權限(例如為了非法獲得重要資料而重新安裝作業系統,並以新的管理員身份給自己指派權限),沒有密鑰同樣還是打不開加密資料。
5, 我只是用Ghost恢復了一下系統,用戶帳戶和相應的SID都沒有變,怎麼以前的加密文件也打不開了?
這也是正常的,因為EFS加密所用到的密鑰並不是在新增用戶的時候產生,而是在你第一次用EFS加密文件的時候。如果你用Ghost新增系統的映射前還沒有加密過任何文件,那你的系統中就沒有密鑰,而這樣的系統製作的映射當然也就不包括密鑰。一旦你加密了文件,並用Ghost恢復系統到新增映射的狀態,解密文件所用的密鑰就丟失掉了。因此這個問題一定需要主意!
 

psac 2006-04-01 11:04 AM

Windows中EFS加密及解密套用



EFS加密的破解
   在EFS加密體系中,資料是靠FEK加密的,而FEK又會跟用戶的公鑰一起加密儲存;解密的時候順序剛好相反,首先用私鑰解密出FEK,然後用FEK解密資料。可見,用戶的密鑰在EFS加密中起了很大作用。
   密鑰又是怎麼來的呢?在Windows 2000/XP中,每一個用戶都有一個SID(Security 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」按鈕指定儲存的位置即可。開啟該檔案看看,沒有任何問題,該檔案已經被解密了。


所有時間均為台北時間。現在的時間是 03:00 PM

Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2024, Jelsoft Enterprises Ltd.

『服務條款』

* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *


SEO by vBSEO 3.6.1