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