Cybersécurité

Sécuriser l’IA sur les téléphones et objets connectés

Date:
Mis à jour le 25/05/2023
Les algorithmes d’intelligence artificielle commencent à se déployer sur les systèmes embarqués et non plus seulement sur le Cloud. Problème : ils se trouvent ainsi désormais sur un disque dur dont l’éditeur n’a plus le contrôle. Comment alors s’assurer qu’ils ne seront pas piratés ou tout simplement dérobés ? Dans le Startup Studio d’Inria, le projet Skyld conçoit un kit de développement qui permettra aux industriels de chiffrer leur logiciel et de l’obfusquer à l’exécution pour le mettre à l’abri des regards malveillants.
Main tenant un spartphone avec des applications socal media
© Freepik

 

Un million. Deux millions. Voire plus. Le coût de développement d’une intelligence artificielle et l’entraînement des données coûtent très cher. Cet algorithme confère un avantage concurrentiel. Il constitue un outil stratégique. Il représente aussi un actif de propriété intellectuelle. Autant de raisons de bien le protéger contre quiconque voudrait le détourner ou lui soulever le capot pour faire de la rétro-ingénierie à peu de frais. Et cela d’autant plus que, désormais, l’IA se fait suffisamment légère pour embarquer directement dans des téléphones et autres objets connectés.

Après un doctorat en cryptographie et un parcours dans plusieurs groupes industriels, Marie Paindavoine porte actuellement le projet d’entreprise Skyld dans le Startup Studio d’Inria au centre de recherche de Rennes. L’objectif : concevoir un kit de développement qui permettra aux industriels de protéger leur IA par chiffrement et obfuscation.

Protéger le code source

Cela devient d’autant plus nécessaire que l’algorithme est désormais entreposé directement sur les disques durs des téléphones et objets connectés.

Image
Portrait de Marie Paindavoine
Verbatim

Beaucoup plus que le Cloud, cet environnement est à la merci d’une attaque pour accéder à l’architecture de l’IA et l’ensemble des poids qui lui sont associés.

Auteur

Marie Paindavoine

Poste

Porteuse du projet d’entreprise Skyld

La solution en cours de développement va donc s’attacher à chiffrer l’algorithme. « Si un attaquant le récupère, il n’obtiendra qu’une suite inintelligible de 0 et de 1. Impossible de faire de la rétro-ingénierie. Nous protégeons aussi le code source durant l’exécution. En effet, à l’exception du chiffrement homomorphe, les systèmes ne peuvent pas faire de calcul sur les données chiffrées. Quand ils exécutent, les données sont donc déchiffrées. Pour que l’algorithme ne soit pas extractible même en cours d’exécution, nous effectuons alors de l’obfuscation logicielle. »

Mais ce n’est pas tout. « Les algorithmes d’IA consomment beaucoup de ressources. De plus en plus, les constructeurs leur allouent donc des accélérateurs matériels dédiés. Sur les nouvelles générations de portables, on trouve ainsi des "Neural Processor Units’" : des puces optimisées pour les réseaux de neurones. C’est déjà un défi de faire tenir une IA sur un objet connecté, il ne faut pas en plus que la solution de sécurité prive l’algorithme de ses accélérateurs. Notre masquage va respecter la structure de calcul et permettre au logiciel de s’exécuter sur ces puces dédiées. »

Cherche industriel pour preuve de concept

Outre Marie Paindavoine, deux ingénieurs travaillent actuellement sur le projet. « Le premier est financé par le Startup Studio. Le second par la chaire en Intelligence Artificielle du chercheur Inria Teddy Furon dans le domaine de la défense. Nous avons aussi des échanges avec Mohamed Sabt, un scientifique spécialiste en sécurité. » Les développements en cours visent à faire maturer un démonstrateur technologique. « Nous cherchons actuellement un industriel intéressé à réaliser une preuve de concept avec nous. Par exemple dans le domaine de la santé. Ce secteur développe des algorithmes innovants dont la valeur est souvent stratégique. Ce qui en fait une cible potentielle pour une attaque. Le besoin de protection en devient d’autant plus crucial. »

Le vol des algorithmes peut être aussi une première étape vers des attaques plus complexes. Parmi elles : l’injection d’exemples "adversariaux". « Cela consiste à perturber les entrées pour tromper les algorithmes. On leur présente du texte, du son, des images qui vont sciemment leur faire prendre une mauvaise décision. Je colle un sticker anodin sur un panneau de signalisation STOP. L’œil humain ne va pas y prêter attention. Mais une IA pourrait se laisser berner et prendre le sticker pour une indication de vitesse autorisée. »

C’est pourquoi, parallèlement à ces travaux de chiffrement, le projet Skyld amorce aussi un deuxième chantier.

Il y a un énorme enjeu d’explicabilité, d’auditabilité de ces algorithmes d’IA. Imaginons que je demande à un logiciel classique de confectionner un gâteau au chocolat. Je lui dis : voici du beurre, du sucre, des œufs, de la farine, du chocolat. Bats les œufs en neige comme ceci, mélange les ingrédients comme cela, mets au four à telle température et fais-moi un gâteau. C’est un processus qui est explicable. On comprend ce que le logiciel fait. L’algorithme d’IA ne fonctionne pas comme cela. On lui donne plein d’exemples et on lui dit : apprends à faire le gâteau au chocolat ! Débrouille-toi tout seul ! L’algorithme va passer par une sorte de force brute de l’ensemble des possibles. Il va essayer plusieurs directions. Il va explorer un ensemble beaucoup plus important que nécessaire. Puis il va finir par converger vers un gâteau au chocolat.

Le problème ? « Il a exploré tellement de directions et produit quelque chose de tellement énorme que ce n’est plus auditable. On ne sait pas comment il prend ses décisions. Trois œufs au lieu de quatre ? Mystère. Or, c’est justement sur ces directions inutiles pour le résultat final que l’algorithme est vulnérable. À ces endroits, l’attaquant va pouvoir créer des perturbations susceptibles de le tromper. L’accès au code source et aux paramètres du modèle va rendre ces attaques "adversariales" plus efficaces. » Mais pas forcément faciles à détecter.

D’où le besoin d’instaurer de la confiance. À terme, en s’appuyant sur les nombreuses recherches menées dans le domaine, le projet Skyld vise aussi à élaborer un système d’auditabilité de l’IA : « une sorte de vérification formelle de l’algorithme pour s’assurer qu’il est résistant à un certain type d’attaque. »

Titre

Projet Skyld : la cybersécurité pour les algorithmes d'intelligences artificielles

Visuel
Miniature Podcast Marie Paindavoine
Titre du lecteur

Podcast de Marie Paindavoine

Fichier audio
Audio file