加密是指使用對稱式加密金鑰,對 Android 裝置上的所有使用者資料進行編碼的程序。裝置加密後,所有使用者建立的資料都會在寫入磁碟前自動加密,所有讀取作業都會在將資料傳回呼叫程序前自動解密資料。加密機制可確保即使未經授權的一方嘗試存取資料,也無法讀取資料。
Android 有兩種裝置加密方法:檔案型加密和全磁碟加密。
檔案型加密
Android 7.0 以上版本支援檔案型加密。檔案式加密可讓不同檔案使用不同的金鑰進行加密,且可獨立解鎖。支援檔案型加密的裝置也可以支援直接啟動,讓加密裝置直接啟動至螢幕鎖定畫面,方便快速存取無障礙服務和鬧鐘等重要裝置功能。
透過檔案型加密和讓應用程式瞭解加密的 API,應用程式可在受限的環境中運作。這可能發生在使用者提供憑證之前,同時保護私人使用者資訊。
中繼資料加密
Android 9 推出中繼資料加密功能支援,前提是硬體支援。使用中繼資料加密功能時,只要在啟動期間提供單一金鑰,即可加密 FBE 未加密的任何內容,例如目錄版面配置、檔案大小、權限和建立/修改時間。這個金鑰由 Keymaster 保護,而 Keymaster 則受到經過驗證的啟動程序保護。
全磁碟加密
Android 5.0 到 Android 9 支援全磁碟加密。全磁碟加密功能會使用單一金鑰 (以使用者的裝置密碼保護),保護裝置的整個 userdata 分區。在開機時,使用者必須先提供憑證,才能存取磁碟的任何部分。
雖然這有助於提升安全性,但也代表使用者重新啟動裝置時,手機的大部分核心功能無法立即使用。由於資料存取權受到單一使用者憑證保護,因此無法使用鬧鐘等功能、無法使用無障礙服務,而且手機無法接聽電話。