FileVault
作業系統 | macOS |
---|---|
許可協定 | 專有 |
FileVault是一款磁碟加密程式,內嵌於Mac OS X 10.3 (2003)和更新的版本。它的工作方式允許Mac電腦上的卷宗被即時地加密。
版本沿革與關鍵功能
[編輯]FileVault 首次隨附於 Mac OS X Panther (10.3),[1]當時的版本只允許加密用戶目錄,而非啟動宗卷。 作業系統使用一個加密的稀疏磁碟鏡像(一個單一的大檔案)為用戶目錄的數據提供虛擬磁碟。 Mac OS X Leopard 和 Mac OS X Snow Leopard 使用更現代的 稀疏磁碟鏡像包[2] ,將數據拆分成8 MB大小的檔案(被稱作 bands )存放於檔案包中。 Apple將採用這兩種方法加密的版本稱為legacy FileVault。[3]
Mac OS X Lion (10.7) 及之後的系統隨附重新設計過的 FileVault 2,[3] 新版的軟件將直接加密整個OS X的啟動宗卷(自然也包括用戶目錄),並拋棄了之前使用磁碟鏡像的方法。採用這種加密方法,已授權的用戶資訊將從一個單獨的非加密引導卷宗讀取。[4] (分區格式為 Apple_Boot)。
FileVault
[編輯]原始版本的 FileVault 隨附於Mac OS X Panther,且只被用於加密用戶目錄。
主密碼和恢復金鑰
[編輯]啟動 FileVault 功能時,系統會要求用戶設置一個主密碼,當用戶忘記密碼時,便可以使用這個主密碼或是恢復金鑰直接解密檔案。[3]
數據遷移
[編輯]遷移 FileVault 用戶目錄時有以下兩個限制條件:[5]
- 目標電腦上不可以存留此前遷移過的數據
- 目標電腦上不可以存留用戶帳戶
若遷移助手檢測到目標電腦上有用戶帳戶,或曾經建立過用戶帳戶:
- 遷移數據前,FileVault 必須在源電腦上被停用
若 FileVault 數據是使用 10.4 或更早版本的 Mac 上的內建實用工具建立的,那麼在轉移到新機器上時,數據將仍使用舊的磁碟格式儲存。若用戶手動關閉 FileVault 再重新啟動,(此操作會重新加密磁碟數據),數據會以新格式儲存。
手動加密
[編輯]不使用用 FileVault ,用戶也可以用 磁碟實用工具建立用戶目錄之下任意子目錄的加密。 (例如, ~/Documents/private)。這種方式除了檔案存放在用戶自訂的目錄之外,和 FileVault 沒有明顯的不同。
只加密部分用戶目錄會造成一些應用在訪問加密檔案時出現問題,除非先掛載加密鏡像,否則用戶檔案往往不可用。為特定檔案製作 symbolic links 可以緩解此問題。
軟件限制和問題
[編輯]備份
[編輯]Time Machine 在非 OS X Server 環境下備份時會登出用戶帳戶。 已有一些案例指明其備份的用戶目錄可能不完整。 當備份目標電腦使用 OS X Server 時,TimeMachine 允許用戶在登入時備份FileVault 用戶目錄。
因為 FileVault 限制了其他用戶對當前用戶數據的訪問,因此一些第三方軟件在備份用戶目錄時,會要求排除其它用戶的目錄才可以繼續備份過程。[6][7]
問題
[編輯]legacy FileVault已被證明存在一些缺陷,通過破解1024-bit RSA 或 3DES-EDE演算法,加密數據可被解密。
和 Legacy FileVault 使用的 CBC 操作模式比較, (請參閱磁碟加密原理), FileVault 2 使用的 XTS-AESW 模式更健壯。 其他問題包括將macOS置於睡眠模式時,金鑰存在的泄露風險。[8] 2008 年發佈的一篇研究顯示,數據在室溫下將殘留在動態隨機存取記憶體 (DRAM)里長達數秒至數分鐘之久,在處理器冷卻下來之後可存留更長時間。這使得研究人員能夠執行冷啟動攻擊來從主流的一些磁碟加密方式中恢復解密金鑰,這也包括FileVault, 研究人員利用其採用的金鑰擴充後的冗餘儲存方式(這種方法用來提高解密效率,用於諸如金鑰排程演算法中)完成攻擊。研究人員建議,物主在離開電腦時可將電腦關機而非置於休眠模式,來確保數據安全。[9]
早期版本的FileVault自動將用戶密碼儲存在系統「鑰匙串」內,需要用戶手動停用該密碼來彌補這一安全漏洞。
2006年,第23屆混沌通訊大會討論了Unlocking FileVault: An Analysis of Apple's Encrypted Disk Storage System 的主題後,Jacob Appelbaum 和 Ralf-Philipp Weinmann 發佈了 VileFault which decrypts encrypted Mac OS X disk image files.[8]
A free space wipe using 磁碟實用工具 left a large portion of previously deleted file remnants intact. Similarly, FileVault compact operations only wiped small parts of previously deleted data.[10]
FileVault 2
[編輯]安全性
[編輯]FileVault使用用戶登入密碼作為加密權杖,並採用AES的XTS-AES模式將數據劃分成128位元的塊,同時生成一枚256位金鑰來加密磁碟,這一標準也是NIST推薦的標準。[11][12]當用戶解鎖後,其他用戶也可以訪問這些數據,直到電腦關機。[3]
效能
[編輯]約有3%的I/O的效能下降會出現在使用AES指令集的CPU上(如Intel Broadwell 架構CPU, OS X 10.10.3環境),[13] 早期的酷睿CPU,或者其他不使用該指令集的處理器會有更明顯的效能下降。
主密碼和恢復金鑰
[編輯]系統執行時執行 FileVault2,電腦會建立一個恢復金鑰,並在螢幕上顯示出來,提示用戶保管,並且提供了一個將金鑰上載至 Apple 的可選項。恢復金鑰共有120位,由全部英文字母和數字 1-9 組成,系統會呼叫/dev/random的亂數生成器生成整枚金鑰。因此其安全性取決於macOS 使用的亂數生成演算法,根據密碼學家 2012 年的聲明指出,該演算法是安全的。[14]
除非重新加密整個卷宗,否則將無法修改恢復金鑰。[3]
OS X 10.9 或更早版本的 FileVault 2可以執行終端命令來檢查金鑰是否正常工作,命令為:
sudo fdesetup validaterecovery
金鑰必須顯示為類似以下格式:
xxxx-xxxx-xxxx-xxxx-xxxx-xxxx
若工作正常,系統會返回 true 狀態。[15]
另請參閱
[編輯]參考資料
[編輯]- ^ Apple Previews Mac OS X "Panther". Apple Press Info. Apple. June 23, 2003 [January 21, 2013]. (原始內容存檔於2017-03-25).
- ^ ScottW. Live FileVault and Sparse Bundle Backups in Leopard. macosx.com. November 5, 2007 [January 21, 2013]. (原始內容存檔於October 29, 2013).
- ^ 3.0 3.1 3.2 3.3 3.4 Apple Inc. OS X: About FileVault 2. Apple Inc. August 9, 2012 [September 5, 2012]. (原始內容存檔於2014-10-29).
- ^ Apple Inc. Best Practices for Deploying FileVault 2 (PDF). Apple Inc: 40. August 17, 2012 [September 5, 2012]. (原始內容 (PDF)存檔於August 22, 2017).
- ^ Archived - Mac OS X 10.3, 10.4: Transferring data with Setup Assistant / Migration Assistant FAQ. Apple support. Apple. [January 21, 2013]. (原始內容存檔於2014-03-01).
- ^ Using Encrypted Disks. CrashPlan PROe support. CrashPlan PROe. [January 21, 2013]. (原始內容存檔於2013-01-14).
- ^ Using CrashPlan with FileVault. CrashPlan support. CrashPlan. [January 21, 2013]. (原始內容存檔於2013-10-20).
- ^ 8.0 8.1 Appelbaum, Jacob; Weinmann, Ralf-Philipp. Unlocking FileVault: An Analysis of Apple's disk encryption (PDF). 23rd Chaos Communication Congress. Berlin. December 29, 2006 [March 31, 2007]. (原始內容存檔 (PDF)於2018-06-23).
- ^ Halderman, J. Alex; et al. Lest We Remember: Cold Boot Attacks on Encryption Keys (PDF). 17th USENIX Security Symposium. San Jose, CA. February 2008 [2022-07-20]. (原始內容存檔 (PDF)於2021-04-17).
- ^ Zdziarski, Jonathan. File Vault's Dirty Little Secrets. January 1, 2008.
- ^ Apple, Inc. Best Practices for Deploying FileVault 2 (PDF). Apple, Inc: 28. August 17, 2012 [September 5, 2012]. (原始內容 (PDF)存檔於August 22, 2017).
- ^ Dworkin, Morris. Recommendation for Block Cipher Modes of Operation: The XTS-AES Mode for Confidentiality on Storage Devices (PDF). NIST Special Publication. January 2010, (800–3E) [2022-07-20]. doi:10.6028/NIST.SP.800-38E. (原始內容存檔 (PDF)於2011-08-13).
- ^ How Fast is the 512 GB PCIe X4 SSD in the 2015 MacBook Pro?. Tech ARP. [2022-07-20]. (原始內容存檔於2021-08-22).
- ^ Choudary, Omar; Felix Grobert; Joachim Metz. Infiltrate the Vault: Security Analysis and Decryption of Lion Full Disk Encryption. July 2012 [January 19, 2013]. (原始內容存檔於2022-07-20).
- ^ fdesetup(8) Mac OS X Manual Page. Apple. August 21, 2013 [August 9, 2014]. (原始內容存檔於2016-03-24).