Le chiffrement consiste à encoder toutes les données utilisateur sur un appareil Android à l'aide de clés de chiffrement symétriques. Une fois un appareil chiffré, toutes les données créées par l'utilisateur sont automatiquement chiffrées avant d'être écrites sur le disque. De même, toutes les lectures déchiffrent automatiquement les données avant de les renvoyer au processus appelant. Le chiffrement permet de s'assurer que même si une partie non autorisée tente d'accéder aux données, elle ne pourra pas les lire.
Android propose deux méthodes de chiffrement des appareils : le chiffrement basé sur les fichiers et le chiffrement complet du disque.
Chiffrement basé sur les fichiers
Android 7.0 et versions ultérieures sont compatibles avec le chiffrement basé sur les fichiers. Le chiffrement basé sur les fichiers permet de chiffrer différents fichiers avec des clés différentes qui peuvent être déverrouillées indépendamment. Les appareils compatibles avec le chiffrement basé sur des fichiers peuvent également être compatibles avec le démarrage direct, qui permet aux appareils chiffrés de démarrer directement sur l'écran de verrouillage, ce qui permet d'accéder rapidement aux fonctionnalités importantes de l'appareil, telles que les services d'accessibilité et les alarmes.
Grâce au chiffrement basé sur les fichiers et aux API qui informent les applications du chiffrement, les applications peuvent fonctionner dans un contexte limité. Cela peut se produire avant que les utilisateurs n'aient fourni leurs identifiants, tout en protégeant les informations privées des utilisateurs.
Chiffrement des métadonnées
Android 9 introduit la prise en charge du chiffrement des métadonnées, lorsque le matériel le permet. Avec le chiffrement des métadonnées, une seule clé présente au moment du démarrage chiffre tout le contenu qui n'est pas chiffré par FBE, comme les mises en page des répertoires, les tailles de fichiers, les autorisations et les heures de création/modification. Cette clé est protégée par KeyMint (anciennement Keymaster), qui est elle-même protégée par Verified Boot.
Chiffrement complet du disque
Android 5.0 à Android 9 sont compatibles avec le chiffrement de disque. Le chiffrement complet du disque utilise une seule clé, protégée par le mot de passe de l'appareil de l'utilisateur, pour protéger l'intégralité de la partition de données utilisateur d'un appareil. Au démarrage, l'utilisateur doit fournir ses identifiants avant qu'une partie quelconque du disque ne soit accessible.
Bien que cela soit excellent pour la sécurité, cela signifie que la plupart des fonctionnalités de base du téléphone ne sont pas immédiatement disponibles lorsque les utilisateurs redémarrent leur appareil. L'accès à leurs données étant protégé par leurs identifiants utilisateur uniques, des fonctionnalités telles que les alarmes ne pouvaient pas fonctionner, les services d'accessibilité n'étaient pas disponibles et les téléphones ne pouvaient pas recevoir d'appels.