Mã hóa là quá trình mã hóa tất cả dữ liệu người dùng trên thiết bị Android bằng các khóa mã hóa đối xứng. Sau khi thiết bị được mã hóa, tất cả dữ liệu do người dùng tạo sẽ tự động được mã hóa trước khi đưa vào đĩa và tất cả sẽ tự động đọc dữ liệu giải mã trước khi đưa dữ liệu đó trở lại quy trình gọi. Mã hóa đảm bảo rằng ngay cả khi một bên trái phép cố gắng truy cập dữ liệu, họ sẽ không thể đọc được.
Android có hai phương pháp mã hóa thiết bị: mã hóa dựa trên tệp và mã hóa toàn bộ đĩa.
Mã hóa dựa trên tập tin
Android 7.0 trở lên hỗ trợ mã hóa dựa trên tệp . Mã hóa dựa trên tệp cho phép các tệp khác nhau được mã hóa bằng các khóa khác nhau có thể được mở khóa độc lập. Các thiết bị hỗ trợ mã hóa dựa trên tệp cũng có thể hỗ trợ Khởi động trực tiếp , cho phép các thiết bị được mã hóa khởi động thẳng vào màn hình khóa, do đó cho phép truy cập nhanh vào các tính năng quan trọng của thiết bị như dịch vụ trợ năng và báo thức.
Với tính năng mã hóa dựa trên tệp và các API giúp ứng dụng nhận biết được mã hóa, ứng dụng có thể hoạt động trong một bối cảnh hạn chế. Điều này có thể xảy ra trước khi người dùng cung cấp thông tin xác thực của họ trong khi vẫn bảo vệ thông tin riêng tư của người dùng.
Mã hóa siêu dữ liệu
Android 9 giới thiệu hỗ trợ mã hóa siêu dữ liệu , trong đó có hỗ trợ phần cứng. Với mã hóa siêu dữ liệu, một khóa duy nhất hiện diện khi khởi động sẽ mã hóa mọi nội dung không được FBE mã hóa, chẳng hạn như bố cục thư mục, kích thước tệp, quyền và thời gian tạo/sửa đổi. Khóa này được bảo vệ bởi Keymaster, từ đó được bảo vệ bằng quá trình khởi động đã được xác minh.
Mã hóa toàn bộ đĩa
Android 5.0 lên đến Android 9 hỗ trợ mã hóa toàn bộ đĩa . Mã hóa toàn bộ đĩa sử dụng một khóa duy nhất—được bảo vệ bằng mật khẩu thiết bị của người dùng—để bảo vệ toàn bộ phân vùng dữ liệu người dùng của thiết bị. Khi khởi động, người dùng phải cung cấp thông tin xác thực của họ trước khi có thể truy cập được bất kỳ phần nào của đĩa.
Mặc dù điều này rất tốt cho việc bảo mật nhưng điều đó có nghĩa là hầu hết chức năng cốt lõi của điện thoại sẽ không khả dụng ngay lập tức khi người dùng khởi động lại thiết bị của họ. Vì quyền truy cập vào dữ liệu của họ được bảo vệ bằng thông tin xác thực người dùng duy nhất nên các tính năng như cảnh báo không thể hoạt động, dịch vụ trợ năng không khả dụng và điện thoại không thể nhận cuộc gọi.