Publié le 4 août 2020.
Par La Rédaction

C’est quoi le chiffrement homomorphe dans votre smartphone ?

Publié le 4 août 2020.
Par La Rédaction
Creation : servicesmobiles©

Creation : servicesmobiles©

Le chiffrement homomorphe est un schéma de chiffrement qui permet au logiciel d'effectuer des calculs sur des données chiffrées sans avoir accès aux données non chiffrées. Elle permet d'assurer la confidentialité des données dès la conception.

Pendant des décennies, nous avons bénéficié de la cryptographie moderne pour protéger nos données sensibles pendant la transmission et le stockage. Cependant, nous n’avons jamais été en mesure de protéger les données pendant leur traitement. En 2009, IBM a inventé le chiffrement entièrement homomorphe, qui prend en charge les deux opérations fondamentales, permettant ainsi le traitement des données sans y donner accès, mais à cette époque, il était trop lent pour une utilisation pratique. Depuis, le chiffrement homomorphe s’installe dans de nombreux cas d’usage.

Microsoft propose une application smartphone nommée HappyKidz qui permet aux parents de surveiller le bien-être de leur enfant de manière non invasive sur la base d’indicateurs comportementaux mesurables. L’application recueille des données comportementales sur l’utilisation du smartphone, les data sont chiffrées avec un chiffrement homomorphe qui envoie les données chiffrées sur un serveur. Le serveur calcule un score de bien-être pour l’enfant en utilisant l’intelligence artificielle et envoie le résultat chiffré au parent pour le déchiffrer localement.

Cette architecture profite des techniques modernes d’apprentissage automatique tout en préservant la confidentialité des enfants à partir du serveur. Contrairement aux applications existantes, il ne contrôle pas, n’accède pas et ne rapporte pas les données comportementales brutes.

Orange aussi est impliqué dans la recherche et l’utilisation du chiffrement homomorphe depuis de nombreuses années. Aujourd’hui, seuls quelques rares systèmes sont disponibles, mais des acteurs majeurs comme IBM ou Microsoft se positionnent sur ce créneau. De son côté, Orange travaille sur plusieurs aspects, comme trouver les moyens les plus efficaces de traiter chaque ligne de code pour une utilisation optimale du chiffrement, augmenter les performances d’évaluation ou encore concevoir des schémas permettant une fonctionnalité précise (vote électronique, data mining sur des données chiffrées, traitement d’images et de vidéos, traitement de trafic crypté, etc).

Nos smartphones ont de plus en plus de données sensibles, informations bancaires, informations de santé, information d’identité. Des questions se posent donc : comment pouvons-nous sous-traiter l’analyse médicale sans divulguer nos informations médicales ? Comment pouvons-nous faire une identification biométrique sans révéler nos caractéristiques ? Pouvons-nous faire des statistiques sur des données que nous ne connaissons pas ? Oui, nous pouvons, grâce à un mécanisme cryptographique appelé le chiffrement homomorphe.

Chiffrement homomorphe

L’inventeur du chiffrement homomorphe (FHE – Fully Homomorphic Encryption), le chercheur d’IBM Craig Gentry, a comparé le système à l’une de ces boîtes avec les gants utilisés pour manipuler les produits chimiques toxiques. Les opérations sont effectuées à l’intérieur de la boîte de chiffrement et les données ne la quittent jamais. Le chiffrement homomorphe diffère des méthodes de chiffrement traditionnel dans la mesure où il permet au calcul d’être effectué directement sur des données chiffrées sans nécessiter l’accès à une clé secrète. Le résultat d’un tel calcul reste sous forme chiffrée, et peut ultérieurement être révélé par le propriétaire de la clé secrète.

Le scénario est le suivant :

  • Une partie A chiffre ses données, envoie le texte chiffré résultant à une entité externe B, qui exécute un algorithme choisi sur les données chifrées reçues. Il obtient le résultat chiffré de l’exécution de l’algorithme sur les données initiales.
  • Ce résultat chiffré est renvoyé à A, qui est le seul à pouvoir le déchiffrer.
  • La partie A a externalisé l’exécution d’un algorithme sur ses données tout en les protégeant puisque l’entité B n’a aucun moyen d’obtenir des informations ni sur l’entrée, ni sur le résultat.

Ce type de chiffrement peut techniquement être utilisé avec toutes les données.

Application

IBM est à la pointe sur le sujet et y travaille depuis plus de 10 ans, ils ont lancé depuis quelques mois une boîte à outils de chiffrement entièrement homomorphe pour MacOS et iOS.

Le FHE nécessite un changement du paradigme de programmation auquel les développeurs sont habitués, ce qui rend son intégration un peu plus difficile dans les applications. IBM souhaite changer cela en mettant à disposition une boîte à outils pour MacOS, iOS et bientôt pour Linux et Android. Les développeurs ayant une connaissance de base des outils de la plate-forme peuvent être opérationnels en suivant assez rapidement quelques instructions simples.

Plusieurs implémentations open source de schémas de chiffrement homomorphes existent aujourd’hui.

Lire aussi