La cryptographie derrière Bitcoin a résolu un problème paradoxal: une monnaie sans régulateur, qui néanmoins ne peut pas être contrefaite. Aujourd’hui, un mélange similaire de mathématiques et de code promet de réaliser un autre exploit apparemment magique en permettant à quiconque de partager ses données avec le Cloud, et tout en néanmoins les gardant entièrement privées. Mardi dernier, un ensemble d’entrepreneurs de Bitcoin et du MIT Media Lab a révélé un prototype pour un système baptisé « Enigma », conçu pour atteindre un objectif vieux de plusieurs décennies dans la sécurité des données appelé cryptage « homomorphe »: Une façon de crypter les données de telle sorte qu’elles peuvent être partagées avec un tiers et utilisées dans les calculs sans jamais être décryptées.
Ce truc mathématique, qui permettrait aux ordinateurs non approuvés d’ exécuter avec précision des calculs sur des données sensibles sans risquer que les données puissent être pirater ou surveiller, est devenu au risque de violation de pirates ou de surveillance, est seulement devenu plus urgent à une époque où des millions d’utilisateurs partagent constamment leurs secrets avec les services de cloud allant d’Amazon et Dropbox en passant par Google et Facebook. Et grâce aux trucs de Bitcoin dans leur arsenal, les créateurs d’Enigma disent qu’ils peuvent maintenant réaliser des calculs sur des données chiffrées plus efficacement que jamais.
« Vous pouvez le voir comme une boîte noire», précise Guy Zyskind, chercheur diplômé du MIT Media Lab et l’un des créateurs d’Enigma. « Vous envoyez toutes les données que vous voulez, et elles fonctionnent dans la boîte noire qui ne renvoie que le résultat. Les données réelles ne sont jamais révélées, ni à l’extérieur ni pour les ordinateurs exécutant les calculs à l’intérieur ».
La technique d’Enigma -ce que les cryptographes appellent « le calcul multipartisme sécurisé » (secure multiparty computation) fonctionne en imitant quelques-unes des caractéristiques de l’architecture de réseau décentralisé de Bitcoin: elle crypte les données en les divisant en éléments et en distribuant de manière aléatoire les morceaux indéchiffrables de ces éléments à des centaines d’ordinateurs dans le réseau Enigma connus comme des «nœuds».
Chaque nœud effectue des calculs sur son morceau discret de l’information avant que l’utilisateur recombine les résultats pour obtenir une réponse en clair. Grâce à quelques astuces mathématiques que les créateurs d’Enigma ont mises en œuvre, les nœuds sont en mesure d’effectuer collectivement chaque type de calcul que les ordinateurs font normalement, mais sans accéder à toute autre partie des données à l’exception du petit morceau qui leur a été affecté.
Pour garder une trace de qui possède des données, et où les éléments de toutes données fournies ont été distribués, Enigma stocke les métadonnées dans le blockchain de Bitcoin, l’enregistrement infalsifiable de messages copiés sur des milliers d’ordinateurs pour prévenir la contrefaçon et la fraude dans l’économie Bitcoin. (Comme les autres schémas de cryptographies décentralisées de style Bitcoin, l’architecture d’Enigma peut sembler presque comme une machine de Rube Goldberg dans sa complexité. Pour une explication technique complète, lisez le livre blanc du projet (1). En plus de ce livre blanc, Guy Zyskind et Oz Nathan disent qu’ils prévoient de publier le code open-source pour le projet d’ici la fin de l’été.)
«Je peux prendre mon âge, ce morceau de données, et de le diviser en morceaux, et le donner à une dizaine de personnes, » souligne Guy Zyskind. « Si vous demandez à chacune de ces personnes, elles n’ont seulement qu’un morceau aléatoire. Seulement en combinant assez de ces pièces, ils peuvent décrypter les données d’origine ».
Il est important de noter que tout nouvel et non prouvé schéma de chiffrement doit être abordé avec prudence. Mais si le cryptage d’Enigma fonctionne comme ses créateurs les promettent, cela aura de vastes implications. Les bases de données privées pourraient être hébergées et interrogées dans le Cloud sans risquer de révéler le contenu de la base de données. Cela pourrait également permettre à un moteur de recherche d’obtenir des résultats de recherche sans jamais voir en clair la demande de recherche de l’utilisateur.
Les créateurs de Enigma suggèrent le projet pourrait également permettre aux utilisateurs d’Internet de partager en toute sécurité toutes sortes de données avec des sociétés pharmaceutiques et des annonceurs sans risque sur leur vie privée. Les entreprises pourraient exécuter des calculs sur des données chiffrées et obtenir des résultats utiles sans pouvoir accéder et voir les données de n’importe quel utilisateur spécifique.
« Aucune personne ne veut donner ses données à une compagnie quand vous ne savez pas ce qu’elle va faire avec elles », lance Oz Nathan, co-créateur d’Enigma. « Mais si vous avez garanti d’une vie privée, l’analyse de données peut être beaucoup plus puissante. Les gens vont effectivement être prêts à partager plus « .
Les créateurs Enigma sont loin d’être les premiers à suggérer un plan pour atteindre les objectifs de chiffrement homomorphique. Un chercheur chez IBM, Craig Gentry, a réalisé une percée majeure en 2009 quand il a proposé le premier schéma de cryptage homomorphique complet, une technique mathématique qui a permis que tout calcul soit effectué sur des données cryptées sans compromis en matière de sécurité et sans réseau complexe d’Enigma d’ordinateurs distribués.
Mais la méthode de Craig Gentry était aussi extrêmement lente: l’exécution d’un calcul comme une recherche Google pouvait prendre un trillion de fois plus de temps que de faire la même tâche sans cryptage. Depuis lors, Craig Gentry a considérablement accéléré le processus, mais ce dernier multiplie encore le temps nécessaire pour un calcul de près d’un million de fois.
Les créateurs de Enigma disent que leur processus de cryptage décentralisée, d’autre part, ne multiplie les exigences de calcul pour un calcul de moins de 100 fois. Ils espèrent réduire davantage que dans un proche avenir à une augmentation de dix fois. Ils notent également que les exigences de calcul pour tout calcul Enigma dépendent du nombre de ganglions envahis. Les plus ordinateurs impliqués, plus sécuriser les données de l’utilisateur, mais le ralentissement du processus.
Un obstacle considérable pour Enigma, cependant, est qu’il nécessite que des centaines, voire des milliers d’utilisateurs adoptent le système et exécutent son code avant de pouvoir commencer à travailler en toute sécurité. Pour obtenir cette adhésion initiale, Oz Nathan et Guy Zyskind ont créé un système d’incitation: Chaque fois que quelqu’un demande un calcul à partir du réseau Enigma, il ou elle paie des frais Bitcoin. Une infime partie de cet argent est versé à un ordinateur dans le réseau Bitcoin pour enregistrer des métadonnées d’Enigma dans la blockchain.
Mais une plus grande partie de la taxe va dans les nœuds du réseau Enigma comme une récompense pour stocker et traiter les données chiffrées de l’utilisateur. Et le logiciel Enigma peut également être configuré pour récompenser le propriétaire des données, de sorte qu’un client Enigma, comme un annonceur, peut payer les utilisateurs pour le privilège d’exploiter leurs données, mais sans jamais les voir dans une forme décryptée.
Cette tentative de recruter autant de nœuds que possible est conçue pour lutter contre une vulnérabilité fondamentale dans le schéma d’Enigma: Si suffisamment de nœuds Enigma travaillent ensemble, ils peuvent faire équipe pour décrypter et voler les données de l’utilisateur. Mais ce genre de collusion est peu probable, assure Guy Zyskind. Il compare le problème à un soi-disant «51 % attaque » en Bitcoin, dans laquelle la majorité des nœuds de Bitcoin s’accordent collectivement pour reprendre la blockchain et frauder les utilisateurs. Ce genre d’attaque Bitcoin n’a jamais eu lieu, souligne Guy Zyskind, et il dit même que le problème de collaboration malveillante dans Enigma est encore moins probable.
Pour garder les nœuds d’Enigma honnêtes et veiller à ce que les calculs des nœuds soient exacts, le système comprend également un « dépôt de garantie » que chacun doit payer en Bitcoin pour rejoindre le réseau. Si un nœud est détecté par d’autres nœuds dans le réseau pour être malhonnête, son dépôt est saisi et distribué aux autres nœuds. « Cela contrebalance tout et tue l’incitation de triche pour les personnes», précise Guy Zyskind.
Enigma peut être en mesure de faire en sorte que l’exploitation de données très personnelles soit plus sûre du point de vue de la vie privée. «Mon travail … a toujours exploré un avenir où les capteurs et les ordinateurs sont beaucoup plus omniprésent que ce qu’ils sont aujourd’hui, » souligne Sandy Pentland qui est le conseiller sur Enigma auprès de Guy Zyskind et Oz Nathan. « L’avènement de Bitcoin a changé profondément ces discussions en ajoutant des outils pour protéger la vie privée dans une toute nouvelle façon. Enigma est le résultat de cette collision entre Bitcoin et la vie privée et la recherche en matière de sécurité « .
http://www.wired.com/2015/06/mits-bitcoin-inspired-enigma-lets-computers-mine-encrypted-data/
1) http://enigma.media.mit.edu/