La nécessité de protéger les données contre tout accès non autorisé est une vieille rengaine. Les communications militaires ont été les premières à exiger un système de chiffrement qui empêche l'ennemi, en cas d'interception, de comprendre le contenu d'un message. Le chiffrement César est l'une des techniques de chiffrement les plus anciennes, il a été utilisé par Jules César pour ses messages secrets. L’Allemagne a pendant la seconde guerre mondiale, utilisé la machine Enigma pour chiffrer et déchiffrer les communications.
Aujourd'hui, le chiffrement ne protège pas que les communications militaires, il est aussi utilisé pour protéger les données numériques en général. Les informations résidant dans les ordinateurs et autres appareils électroniques ou transférées sur les réseaux sont considérées comme un véritable atout immatériel stratégique avec une valeur économique énorme, qui est en mesure d'attirer des intérêts tout à fait illégal (à savoir le vol d’identité, les cyber- attaques, etc). Le chiffrement des données améliore l'efficacité de la protection des données, mais il existe encore une contrainte : la donnée chiffrée doit être déchiffrée avant même que l’on travaille dessus.
Le chiffrement homomorphe
Pour résoudre le problème de traitement des données chiffrées sans avoir à les déchiffrer avant (et donc les rendre vulnérables à nouveau) les scientifiques de l’IT et les mathématiciens ont longtemps travaillé au chiffrement homomorphe, un concept introduit par Rivest, Adleman et Dertouzos en 1978. L’adjectif homomorphe indique un système de chiffrement qui permet d'effectuer des calculs sur des données directement chiffrées, sans la nécessité de les déchiffrer en premier.
En d'autres termes, éditer deux jeux de données chiffrées donne un résultat chiffré qui - si déchiffré - est égal à ce qui serait obtenu si la même opération était réalisée sur les deux ensembles de données non chiffrées.
Exemple
- Imaginez deux chiffres qui ne sont pas chiffrés 30 et 50
- Imaginez que vous chiffrez les deux nombres pour obtenir 43 et 72
- La somme des deux nombres chiffrés vous donne le résultat chiffré 115 (43 + 72)
- Dans le chiffrement homomorphe si vous déchiffrez 115 vous obtiendrez comme résultat 80 (30 + 50)
La force du chiffrement homomorphe est évidente ! Le premier vrai schéma de chiffrement homomorphe (FHE) a été développé par le chercheur américain Craig Gentry en 2009. Un schéma FHE soutient le calcul arbitraire (il permet un nombre illimité de deux opérations, à savoir addition et multiplication) et il est donc plus puissant qu'un système de chiffrement partiellement homomorphe (PHE) qui ne supporte que l'addition ou la multiplication des données chiffrées (le schéma FHE par Gentry fonctionne en gérant multiplication et addition dans le même temps, AND et XOR en algèbre de Boole).
Applications de chiffrement homomorphe pour le Cloud
Des services Web et en particulier le Cloud Computing peuvent utiliser la technologie de chiffrement homomorphe PHE comme un excellent outil de protection des données. La possibilité de traiter les informations dans le Cloud sans avoir besoin de déchiffrer les données au préalable rendrait le Cloud lui-même beaucoup plus sûr : l'utilisateur peut envoyer une requête chiffrée au serveur Cloud pour effectuer une opération sur les données chiffrées et obtenir un résultat chiffré qui sera déchiffré avec sa propre clé.
Le système entièrement homomorphe développé par Craig Gentry (devenu maintenant chercheur chez IBM dans le domaine des systèmes cryptographiques) a été défini par ses détracteurs comme étant trop lent et trop complexe pour être utilisé dans le Cloud. Le chiffrement implique des calculs complexes qui nécessitent du temps pour être exécuté, ce qui ralentit la vitesse du processus. L'idée de base est qu’un chiffrement plus rapide ne modifie pas les services Web et donc les fournisseurs d’accès à internet pourraient l'utiliser pour toutes les données circulant sur le Web.
Récemment, en Février 2016, les chercheurs de Microsoft en collaboration avec des universitaires ont publié un document (CryptoNets : Application des réseaux de neurones à des données chiffrées avec haut débit et précision) qui prétend avoir accéléré le chiffrement homomorphe. Le schéma original de Gentry, était en fait 100 trillions de fois plus lent à faire des calculs sur des données chiffrées que sur des données non chiffrées ; IBM a considérablement amélioré la performance des calculs qui sont maintenant 2 millions de fois plus rapide, de même pour Microsoft qui dit avoir fait un grand pas en avant en termes de vitesse. Les chercheurs ont développé une intelligence artificielle appelée CryptoNets (PDF), un réseau neuronal qui peut traiter des données chiffrées sans la nécessité de les déchiffrer. Le document explique également comment cette technologie peut être appliquée au Cloud pour traiter des données chiffrées sans la clé de déchiffrement.
Conclusion
Le chiffrement homomorphe représente l'avenir des techniques cryptographiques car il vous permet d'effectuer des opérations sur des données chiffrées sans la nécessité de les déchiffrer. Tirer profit des schémas du PHE serait particulièrement bénéfique pour le Cloud Computing, il vous offrirait un système de protection efficace des données et la solution à d’importants problèmes de confidentialité... Par exemple, dans le domaine médical, l'analyse comparative des données du Cloud réalisée par des chercheurs ne seraient possible que sur des ensembles de données de séquences d'ADN. L'un des principaux problèmes du chiffrement homomorphe est la vitesse d'exécution, mais récemment Microsoft semble avoir surmonté avec succès ce défi. Les prochaines années nous diront si l'utilisation du PHE sera vraiment mise en œuvre au niveau mondial sur les plates-formes du Cloud.