Sujet Gemalto REDOCS’17

Gestion de la confidentialité des données dans une architecture de type blockchain

Slides

Technologies Blockchain : qu’est-ce que c’est ?

Les technologies dites « blockchain » sont des technologies permettant de gérer de manière distribuée un livre (de l’anglais ledger) via le maintien d’une liste ordonnée de « blocs ». Chaque bloc est formé par une donnée consolidée (hash) calculée à partir d’un ensemble de données ou de transactions et qui est lié au bloc précédent. Selon les cas d’usages, certaines vérifications sont faites sur les données ou les transactions par les valideurs avant de les insérer dans un bloc, mais cette étape n’est pas toujours nécessaire.

Technologies Blockchain : pourquoi les industriels s’y intéressent ?

L’utilisation des technologies blockchain semble particulièrement appropriée dès lors qu’il existe au sein d’un cercle de partenaires business le besoin de partager dans ce cercle une vision commune et consensuelle d’un historique de transactions et/ou de données échangées, et cela sans avoir besoin de nommer une hiérarchie au sein de ce cercle et tout en empêchant qu’un petit nombre de membres de ce cercle puisse se coordonner pour empêcher le bon fonctionnement du système.

Les principaux bénéfices attendus par l’utilisation de la technologie blockchain dans un cas d’usage industriel sont :

    • La réduction des coûts et/ou de la complexité et/ou
    • L’amélioration des processus d’auditabilité (automatisation, confiance) et/ou
    • Augmentation de la transparence tout en gardant le contrôle

Description du projet

La fabrique hyperledger (https://github.com/hyperledger/fabric) est une implémentation de la technologie blockchain qui propose une architecture modulable permettant de plugger diverses implémentations de fonctions. En particulier, il est possible de développer des blockchains « privés » dont les données ne sont pas accessibles par tous, contrairement aux blockchains public comme par exemple Bitcoin.

L’objectif de ce projet est de découvrir le modèle Hyperledger-fabric ainsi que les fonctionnalités permettant de protéger la confidentialité des données via l’utilisation de membership service ou de contrat confidentiels. La première étape du projet consiste à comprendre et à analyser plus précisément l’architecture modulable de la fabrique hyperledger ainsi que les différents modèles d’attaquants associés. Il est important ici de prendre en compte le niveau de confiance associé à chaque entité présente dans le système: utilisateur final, client, entité de validation, service de membership, auditeur de membership. En particulier, il est important de déterminer pour chaque entité les clés auxquelles cette entité à accès, et à quelles données chaque entité peut avoir accès.

La seconde étape du projet consiste étudier des améliorations possibles de la fabrique Hyperledger avec l’objectif de réduire autant que possible le niveau de confiance nécessaire dans chacune des entités du système. Par exemple, un des projets de la fabrique hyperledger est d’arriver à distribuer la fonction de service de membership afin de réduire le niveau de confiance dans l’entité centralisée gérant ce service. Un autre axe d’amélioration serait de proposer une architecture et une fonction permettant de chiffrer les données et de les partager au sein d’un cercle de partenaires business sans pour autant que les valideurs aient nécessairement accès à toutes les clés de déchiffrement.

On cherchera également à identifier le protocole de consensus le plus adapté au contexte du blockchain « privé » dans lequel les valideurs ne sont pas rémunérés selon que leur « bloc » est sélectionné ou non pour être inscrit dans le ledger. L’objectif principal étant d’avoir confiance dans le résultat du consensus et qu’il ne soit pas possible pour un groupe de valideurs de perturber le bon fonctionnement du réseau blockchain.

La dernière étape de ce projet consiste à définir un cas d’usage particulier faisant intervenir plusieurs cercles de partenaires business qui partagent le même ledger mais qui souhaitent conserver leurs données confidentielles au sein d’un même cercle. Ce cas d’usage doit permettre d’illustrer comment l’architecture proposée (en se reposant sur la fabrique hyperledger et en y intégrant les améliorations proposées) peut être utilisée. L’analyse des propriétés de sécurité, et plus particulièrement celles liées à la confidentialité des données, ainsi que les niveaux de confiance nécessaires dans chacune des entités du système permettra de mettre en évidence les avantages de l’architecture retenue.