Google Adiantum : Chiffrement cheap pour Android 9

Adiantum, c’est une nouvelle méthode de chiffrement pour ses données qu’est en train de préparer Google. De quoi sécuriser les éléments de son appareil même quand celui-ci n’est pas très haut de gamme et donc pas très performant.

Depuis Android 6.0, il est nécessaire de proposer une fonction de chiffrement sur la plupart des appareils. Google exige que l’utilisateur puisse protéger ses données stockées dans l’appareil avec un code difficilement déchiffrable. Pour se faire, la marque se base sur un protocole très connu qu’est l’AES pour Advanced Encryption Standard.

2019-02-15 12_42_15-minimachines.net

Cela permet, entre autres, de protéger vos images, vos emails et autres données quand quelqu’un trouve un appareil et qu’il n’a pas le code nécessaire à son utilisation. Petit problème, utiliser AES de manière transparente, c’est à dire décoder les données de votre téléphone sans que cela ne prenne trois minutes pour ouvrir une image, demande des ressources matérielles minimales.

Si vous utilisez un smartphone récent, une tablette milieu ou haut de gamme ou une TVBox performante, pas de soucis. Le SoC employé est probablement un ARMv8 qui emploie lui même un élément matériel capable de prendre en charge la compression et la décompression AES à la volée. C’est à dire qu’il va appliquer votre clé de déchiffrement de la même manière qu’une paire de lunettes corrige la vue d’un myope. Vous passerez instantanément de fichiers chiffrés à des fichiers lisibles juste en traversant la moulinette de son déchiffrement.

Mais si vous avez un appareil plus entrée de gamme, il est possible qu’aucun système matériel ne soit intégré et, même en connaissant le code, le travail de déchiffrement serait alors très long et fastidieux. On passerait de transparent à totalement pénible. Google a donc autorisé les fabricants de certains appareils à ne pas employer de solutions de chiffrements sur leurs engins ce qui est un vrai souci pour l’utilisateur en terme de sécurité.

2019-02-15 12_19_23-minimachines.net

Adiantum devrait résoudre le souci, cette solution de chiffrement mise au point par Google se veut aussi performante que l’AES 256 même sur des SoC ARM n’ayant pas de fonctions de déchiffrement matériel. Google présente un graphique montrant l’emploi d’un SoC Cortex-A7, employé par des constructeurs de smartphones entrée de gamme par exemple, et sa capacité de chiffrement et déchiffrement sous Adiantum face à un AES-256. On passe d’un débit de 24 Mo/s en chiffrement AES à 112 Mo/s en Adiantum et  de 20 Mo/s en déchiffrement à 112 Mo/s. Cinq fois plus performant donc et la possibilité de protéger ses données efficacement même sur un appareil entrée de gamme. 

Pourquoi Google s’intéresse t-il à ce problème ? Probablement parce que lors de ses dernières mises à jour, la marque a du laisser des exceptions au chiffrement pour ne pas trop pénaliser ce type d’appareils. L’entrée de gamme qui se vend massivement dans les pays en voie de développement n’aurait pas pu passer à un chiffrement AES. Les appareils seraient donc restés bloqués dans des versions plus anciennes d’Android. Avec cette combinaison Adiantum / AES, Android va donc pouvoir devenir universellement chiffré.

Reste qu’il s’agit d’une solution de chiffrement logicielle et non matérielle. Il serait donc possible de glisser du code en aval de ce déchiffrement logiciel pour un constructeur, possible également d’infecter un smartphone pour  qu’il trie des données. Rajouter une routine d’analyse de tous les éléments transitant par Adiantum de manière invisible, communicant uniquement des éléments précis comme des mots de passe. Un constructeur peu scrupuleux pourrait s’adonner à ce genre de pratique. Ou un gouvernement cherchant à analyser et contrôler les comportements de ses citoyens par exemple.

Si Google a bien publié les sources de son système de chiffrement, si un livre blanc dévoile les arcanes d’Adiantum, cela n’empêche pas de se poser  également des questions sur la sécurité mise en place. AES a été choisi suite à un concours lancé par une agence du département du commerce aux US et implanté après de nombreuses évaluations techniques. C’est un protocole qui ne dépend de personne et qui fonctionne de manière indépendante de toute entité commerciale. Quid d’Adiantum qui dépend exclusivement de Google et de ses laboratoires  de recherche ? 

4 commentaires sur ce sujet.
  • 15 février 2019 - 13 h 44 min

    Il ne suffit –hélas– pas d’avoir une architecture ARMv8, encore faut-il que le logiciel la reconnaisse et l’exploite. Contre-exemple : Raspbian compilé en 32 bit pour ARMv7 ; ainsi même sur une Raspberry Pi3B+ v8 top-moumoute, le CPU mouline. Pour une session SSH ou pour un serveur web *correctement* configuré cela ne coûte qu’à la création de la session TSL, mais sur un système avec beaucoup d’I/O ou pour un nœud TOR, qui passe son temps à chiffrer / déchiffrer, vérifier des signatures, on est certain de ne jamais saturer la bande passante, le CPU étant le point faible. D’où l’importance du choix de l’algorithme pour un niveau de sécurité donné (ex. : courbes elliptiques vs RSA)

    Répondre
  • 15 février 2019 - 17 h 32 min

    Je suis d’accord sur tout l'(excellent) article, bons points comme risques potentiels (et on sait de quoi on parle avec Google). Super bien résumé, bravo.

    Répondre
  • to
    15 février 2019 - 20 h 17 min

    Ils expliquent sur leur blog que si le hardware permet AES il faut le privilegier et que adiantum c’est plus rapide en software. Ils disent aussi que le truc a ete prouvé solide et il est open source, bref je vois pas trop le probleme.

    Sinon le nom vient de l’art floral et signifie : sincerite et discretion.

    c’est mignon.

    Répondre
  • 16 février 2019 - 3 h 54 min

    C’est justement le “ils disent”. Là où AES est connu, validé et éprouvé par la communauté. On n’a pas ce recul pour Adiantumnn. Ça n’est pas forcément un problème, mais au moins un point d’attention.

    Répondre
  • LAISSER UN COMMENTAIRE

    *

    *