加密是使用對稱加密金鑰對 Android 裝置上的所有使用者資料進行編碼的過程。一旦裝置被加密,所有使用者建立的資料在提交到磁碟之前都會自動加密,並且所有讀取都會在將資料傳回呼叫程序之前自動解密資料。加密可確保即使未經授權的一方嘗試存取數據,他們也無法讀取數據。
Android 有兩種裝置加密方法:基於檔案的加密和全碟加密。
基於文件的加密
Android 7.0及更高版本支援基於檔案的加密。基於文件的加密允許使用不同的密鑰對不同的文件進行加密,這些密鑰可以獨立解鎖。支援基於文件的加密的設備還可以支援直接啟動,這允許加密設備直接啟動到鎖定螢幕,從而能夠快速存取重要的設備功能,例如輔助服務和警報。
借助基於文件的加密和使應用程式能夠識別加密的 API,應用程式可以在有限的上下文中運行。這可能發生在用戶提供憑證之前,同時仍保護私人用戶資訊。
元資料加密
Android 9 引入了對元資料加密的支持,其中存在硬體支援。透過元資料加密,啟動時出現的單一金鑰可以加密 FBE 未加密的任何內容,例如目錄佈局、檔案大小、權限和建立/修改時間。此金鑰受 Keymaster 保護,而 Keymaster 又受驗證啟動保護。
全碟加密
Android 5.0至Android 9支援全碟加密。全盤加密使用單一金鑰(受使用者裝置密碼保護)來保護整個裝置的使用者資料分割區。啟動時,使用者必須提供其憑證,然後才能存取磁碟的任何部分。
雖然這對於安全性來說非常有用,但這意味著當用戶重新啟動裝置時,手機的大部分核心功能無法立即可用。由於對資料的存取受到單一使用者憑證的保護,因此警報等功能無法運行,輔助服務不可用,電話無法接聽電話。