Le chiffrement homomorphe permet d’effectuer du calcul sur des données sans jamais les voir en clair. Avantage : une confidentialité totale sur toute la chaîne de traitement. Inconvénient : la technique se prête mal à l’utilisation des réseaux de neurones, algorithmes clés en machine learning. Le centre Inria de l’Université de Rennes tente de lever ce verrou scientifique en collaboration avec Zama, une entreprise parisienne au carrefour de la cryptographie et de l’intelligence artificielle.
En quelques années, les réseaux de neurones se sont imposés pour toute sorte de traitement automatique. Ils effectuent par exemple de la détection de tumeurs sur de l’imagerie médicale. Seul bémol : ces algorithmes ne savent travailler qu’à partir de données en clair. Ce qui en limite l’usage car les possesseurs de données rechignent parfois à les divulguer pour des raisons de sécurité, de propriété intellectuelle ou de vie privée. D’où l’intérêt de pouvoir effectuer du calcul dans le domaine chiffré. Ainsi, l’hébergeur ou le prestataire de services ne voit jamais en clair ni l’information de départ ni le résultat final auquel seul l’utilisateur peut accéder.
En cryptographie, cette prouesse est rendue possible par une technique que l’on appelle le chiffrement homomorphe.
Mais pour l’instant, elle s’avère inutilisable avec des réseaux de neurones. Un déblocage de ce verrou permettrait de démultiplier les usages. C’est tout l’enjeu de la thèse de doctorat effectuée actuellement par Samuel Tap dans le cadre d’une collaboration* entre l’entreprise Zama et l’équipe de recherche Linkmedia d’Inria*.
“Appliquer le chiffrement homomorphe à des réseaux de neurones chargés d’effectuer de l’inférence, en théorie, c’est possible, explique Samuel Tap. Mais cela entraîne un ralentissement du calcul. On ne peut pas faire du temps réel sur des algorithmes très complexes. Tout le travail actuel consiste donc à minimiser ce ralentissement pour ne plus impacter l’expérience utilisateur. Cela permettra ensuite l’adoption généralisée.”
Des bâtons dans les roues
“Avec le chiffrement homomorphe, on peut faire des opérations sur des nombres chiffrés, précise Teddy Furon, chercheur Inria. Par exemple des additions ou des multiplications. Mais on ne peut pas enchaîner beaucoup de ces opérations. Or les réseaux de neurones profonds sont organisés dans une multitude de couches successives. Donc, par essence, ils enchaînent justement de grandes quantités d’opérations. Ce qui rend le chiffrement homomorphe et les réseaux de neurones peu compatibles.”
Pourquoi en est-il ainsi ? “Parce que pour garantir la sécurité du schéma de chiffrement, on doit lui rajouter un aléa, indique Samuel Tap. Cet aléa est nécessaire, mais il nous met des bâtons dans les roues. Car plus on enchaîne d’opérations, plus il grandit. Et par effet d’avalanche, il finit par rendre le déchiffrement… incorrect !” D’où la tentation de réduire l’aléa mais sans compromettre la sécurité. Pour ce faire, les chercheurs utilisent un opérateur de cryptographie appelé bootstrap. “Grâce à lui, nous allons pouvoir continuer nos calculs avec un aléa plus petit. Le jeu va consister à trouver à quel endroit il est intéressant de le minimiser. Scientifiquement, c’est un problème compliqué.”
Amener la technologie en production
“Nous devons étudier comment le bruit généré par l’aléa se propage dans le réseau de neurones, comment il s’amplifie, à quel moment il devient trop grand et nous oblige donc à faire un bootstrap extrêmement coûteux en temps de calcul,” ajoute Teddy Furon.
“Au final, il existe très peu de paramétrages possibles du schéma de chiffrement qui vont nous donner ce que nous souhaitons, constate Samuel Tap. C’est pour cela qu’aujourd’hui, outre l’aspect temps de calcul, le chiffrement homomorphe pose aussi la question de la praticité d’usage. Sur le papier, nous pouvons tout faire. Mais il s’avère plus difficile de trouver des exemples concrets qui fonctionnent. L’espace des paramètres utilisables est très faible. Il va donc y avoir tout un travail pour sélectionner les paramètres les plus fiables. Il nous faut créer les outils capables d’amener cette technologie en production dans le monde réel sur des cas d’usages suffisamment complexes pour que cela ait un lien avec la vie quotidienne.”
À noter au passage que le chiffrement homomorphe s’appliquera aux données, mais il concernera aussi le réseau de neurones lui-même. Ainsi le développeur d’une intelligence artificielle pourra la mettre au service de ses clients sans devoir divulguer les secrets de sa conception.
Entraînement de réseaux
Et ce n’est pas tout. “Jusqu’à présent, nous avons évoqué l’inférence d’informations, conclue Teddy Furon. Maintenant, il existe un autre scénario : Alice possède des données sensibles. Bob sait entraîner des réseaux. Alice aimerait bien que Bob entraîne un réseau à effectuer certaines tâches. Mais pour autant elle ne veut pas dévoiler ses données. Donc comment peut-on apprendre un réseau de neurones sur des données chiffrées ? Là, on arrive en terre inconnue. Il y a plein de choses dans un entraînement classique de réseau de neurones qu’on ne pourra pas faire en chiffrement homomorphe. Il va donc falloir revisiter les méthodes d’entraînement puis trouver d’autres manières de procéder. Et cela, à l’heure actuelle, c’est le graal…!”
|