Dual-Boot
使用磁碟加密的預引導身份驗證在技術上如何工作?
我正在尋找一種解決方案來完全加密我的雙啟動 SSD 驅動器(它仍然是新的和空的,我想在我放任何東西之前設置加密)。
雖然網路上有很多關於這個問題的混亂,但似乎 TrueCrypt 可能能夠做到這一點,儘管我可能需要它的引導載入程序在額外的引導磁碟上。根據我的閱讀,一些 Linux 工具(包括一些修改後的 GRUB2)也可能能夠做到這一點。
但是,我有疑問,我讀過的任何文章都沒有真正深入到回答一個基本問題:如果整個磁碟都被加密,並且某些預啟動工具要求使用者提供密鑰來解密它,不是嗎?意味著這個工具必須在要啟動的作業系統下執行?換句話說,是否有工具讓作業系統不知道它看到的磁碟實際上是加密的?
如果沒有這樣的工具,這是否意味著解密工具必須以某種方式在啟動時將解密資訊傳遞給作業系統?我可以想像這將很難跨平台。
如果整個磁碟都是加密的,並且某些預啟動工具要求使用者提供密鑰來解密它,這是否意味著該工具必須在要啟動的作業系統下執行?
是的,差不多。基於硬體的全盤加密執行此操作:加密完全由設備(硬碟/快閃記憶體)或可能在通往物理設備的鏈上的控制器中處理,並且對作業系統不“可見”。
有了這個,作業系統的 I/O 就像它處理一個普通的、未加密的設備一樣,魔法發生在硬體(和/或韌體 - 在任何情況下都“低於”作業系統)中。
如果沒有這樣的工具,這是否意味著解密工具必須以某種方式在啟動時將解密資訊傳遞給作業系統?
如果加密不能在作業系統“下方”完成(如上所述,或者可能使用虛擬化技術——但是你有兩個(或更多)作業系統在執行),那麼確實必須有某種形式的資訊傳輸。是的,這意味著跨作業系統很難。
如果您沒有硬體/韌體幫助,您還需要對引導程式碼(至少是引導載入程序)進行未加密。
維基百科磁碟加密文章對此有更多的了解。