Avec Android 6.0, Google rend obligatoire le chiffrement intégral du stockage sur les nouveaux appareils qui en sont capables. Pour le constructeur, cela signifie tout terminal délivrant une puissance suffisante, afin que l’activation du processus ne provoque pas de ralentissement perceptible par l’utilisateur.
Quand Android 5.0 est sorti, le chiffrement intégral du stockage était déjà sur la table. On se rappelle d’ailleurs qu’entre l’annonce de Google et le renforcement du chiffrement dans iOS 8, le directeur du FBI, James Comey, s’était largement ému de ce virage : « Ce qui m’ennuie avec tout ceci est que des entreprises fassent expressément la promotion de quelque chose qui permettra aux gens de se placer hors de portée de la loi ». Depuis, le chemin s’est dégagé, la Maison Blanche ayant officiellement renoncé à affaiblir le chiffrement.
Chiffrement par défaut pour les nouveaux appareils s'ils ont assez de puissance
On ne sait pas si cette décision a joué, mais Google revient à la charge sur le chiffrement intégral des données dans la dernière version de son document « Compatibility Definition », daté du 16 octobre, et à destination des constructeurs équipant leurs terminaux du système mobile. Page 64, on trouve un chapitre particulièrement intéressant : si un appareil est capable de réaliser du chiffrement AES d’au moins 128 bits au rythme de 50 Mio/s (mébioctets par seconde), le chiffrement intégral doit obligatoirement être activé.
Plusieurs points sont à souligner. D’une part, cela ne concerne que les nouveaux appareils qui seront directement commercialisés avec Android 6.0. Pour rappel, le Nexus 6 lancé l’année dernière possédait bien un chiffrement activé par défaut. Il est donc logique de penser que les nouveaux modèles 5X et 6P l’ont eux aussi. D’autre part, la précision de performances minimales renvoie au demi-tour fait par Google sur Android 5.0, quand la puissance de calcul est devenu un problème réel. Le chiffrement de toutes les données en continu est en effet une opération gourmande, et certains appareils montraient clairement leurs limites, comme le montraient en mars dernier des tests réalisés par AnandTech et Ars Technica. Enfin, par chiffrement intégral, Google entend plus précisément les dossiers /data et /sdcard, tous ceux concentrant les données de l’utilisateur.
Personne ne doit posséder la clé de chiffrement
Enfin, et c’est un point crucial, le document précise bien que la clé de chiffrement ne doit jamais être donnée à l’utilisateur. Elle sera liée au mécanisme de déverrouillage de l’appareil et elle-même chiffrée via AES par un algorithme de « slow stretching » tel que PBKDF2 (pour rendre le mot de passe ou la séquence plus résistante aux attaques par force brute). En d’autres termes, si l’utilisateur a un trou de mémoire, la seule solution sera une réinitialisation complète de son appareil et donc la perte des données qui y seront stockées (si elles n’ont pas été sauvegardées ailleurs évidemment).
Les acheteurs de ces nouveaux portables ont donc intérêt à être informés des « risques ». Quant à ceux qui ont déjà un smartphone puissant, la question mérite d’être posée. Le chiffrement intégral permet de protéger efficacement les données en cas de perte ou de vol de l’appareil. Reste à voir si son activation provoque une chute visible des performances et/ou si cette sécurité supplémentaire vaut le risque de pertes des données en cas d’oubli du code de déverrouillage, quel qu’il soit.
On signalera quand même que si cette décision est importante, elle ne change rien pour l'écrasante majorité des smartphones actuellement en circulation. Il s'agit d'un souci récurrent sur le parc Android, comme on a pu le voir avec les failles Stagefright.