La encriptación es el proceso de codificar todos los datos del usuario en un dispositivo Android con claves de encriptación simétricas. Una vez que se encripta un dispositivo, todos los datos creados por el usuario se encriptan automáticamente antes de escribirse en el disco, y todas las lecturas desencriptan automáticamente los datos antes de devolverlos al proceso de llamada. La encriptación garantiza que, incluso si una parte no autorizada intenta acceder a los datos, no podrá leerlos.
Android tiene dos métodos para encriptar dispositivos: la encriptación basada en archivos y la encriptación de disco completo.
Encriptación basada en archivos
Android 7.0 y versiones posteriores admiten la encriptación basada en archivos. La encriptación basada en archivos permite encriptar diferentes archivos con diferentes claves que se pueden desbloquear de forma independiente. Los dispositivos que admiten la encriptación basada en archivos también pueden admitir el arranque directo, que permite que los dispositivos encriptados arranquen directamente a la pantalla de bloqueo, lo que habilita el acceso rápido a funciones importantes del dispositivo, como los servicios de accesibilidad y las alarmas.
Con la encriptación basada en archivos y las APIs que permiten que las apps conozcan la encriptación, las apps pueden operar dentro de un contexto limitado. Esto puede ocurrir antes de que los usuarios proporcionen sus credenciales y, al mismo tiempo, proteger la información privada del usuario.
Encriptación de metadatos
Android 9 introduce compatibilidad con la encriptación de metadatos, cuando hay compatibilidad con el hardware. Con la encriptación de metadatos, una sola clave presente al momento del inicio encripta el contenido que no está encriptado por la FBE, como los diseños de directorios, los tamaños de archivos, los permisos y las horas de creación o modificación. Esta clave está protegida por KeyMint (anteriormente Keymaster), que, a su vez, está protegida por el Arranque verificado.
Encriptación de disco completo
Android 5.0 hasta Android 9 admiten la encriptación de disco completo. La encriptación de disco completo usa una sola clave, protegida con la contraseña del dispositivo del usuario, para proteger toda la partición de datos del usuario de un dispositivo. Al iniciar el sistema, el usuario debe proporcionar sus credenciales antes de que se pueda acceder a cualquier parte del disco.
Si bien esto es excelente para la seguridad, significa que la mayoría de las funciones principales del teléfono no están disponibles de inmediato cuando los usuarios reinician sus dispositivos. Debido a que el acceso a sus datos está protegido por sus credenciales de usuario únicas, no podían funcionar funciones como las alarmas, los servicios de accesibilidad no estaban disponibles y los teléfonos no podían recibir llamadas.