加密

加密程序是指使用對稱式加密金鑰,對 Android 裝置上的所有使用者資料進行編碼。裝置加密後,所有使用者建立的資料都會在寫入磁碟前自動加密,且所有讀取作業都會在將資料傳回呼叫程序前自動解密。加密機制可確保未經授權的第三方即使嘗試存取資料,也無法讀取資料。

Android 提供兩種裝置加密方法:檔案型加密和全磁碟加密。

檔案型加密

Android 7.0 以上版本支援檔案型加密。檔案加密功能可讓不同檔案使用不同金鑰加密,且這些金鑰可獨立解鎖。支援檔案加密的裝置也支援直接啟動,加密裝置可直接啟動至鎖定畫面,方便快速存取重要裝置功能,例如無障礙服務和鬧鐘。

透過檔案型加密和可讓應用程式感知加密的 API,應用程式可在有限的環境中運作。這類要求可能在使用者提供憑證前發生,但仍會保護私密的使用者資訊。

中繼資料加密

Android 9 推出中繼資料加密支援功能,但須有硬體支援。透過中繼資料加密功能,開機時的單一金鑰會加密 FBE 未加密的內容,例如目錄版面配置、檔案大小、權限,以及建立/修改時間。這項金鑰受到 KeyMint (先前稱為 Keymaster) 保護,而 KeyMint 則受到驗證開機程序保護。

全磁碟加密

Android 5.0 至 Android 9 支援全磁碟加密。全磁碟加密會使用單一金鑰 (受使用者裝置密碼保護),保護裝置的整個使用者資料分割區。開機後,使用者必須提供憑證,才能存取磁碟的任何部分。

這項做法有助於提升安全性,但使用者重新啟動裝置後,手機的大部分核心功能都無法立即使用。由於使用者資料受到單一使用者憑證保護,因此鬧鐘等功能無法運作、無法使用無障礙服務,且手機無法接聽電話。