[Blockchain Business Cases] Les ZKP pour anonymiser et exploiter les données de véhicules

Suite de notre série de Business Cases autour des blockchains et cryptoactifs : nous présentons une succession de projets réalisés récemment par notre équipe pour des organisations de différents secteurs.

1er volet (9 octobre) : AR24 – La blockchain Tezos au service du KYC

2e volet (7 novembre) : Unchain Immo – La blockchain utilisée en pratique dans l’immobilier

3e volet (10 décembre) : Les ZKP pour anonymiser et exploiter les données de véhicules

4e volet (13 janvier) : Scenso.TV – La blockchain au service du spectacle vivant en VOD

5e volet (4 février) : Marché du Film du Festival de Cannes – Plus de transparence dans l’industrie du cinéma grâce à la blockchain

CONTEXTE

RCI Bank and Services est la financière du groupe Renault (filiale à 100%).

Le démonstrateur présenté dans cet article a été réalisé par RCI Bank and Services et Blockchain Partner. Il a pour objectif l’anonymisation de données issues de véhicules à partir des technologies de Zero Knowledge Proofs (ZKP).

Les équipes de RCI Bank and Services et les ingénieurs en R&D de Blockchain Partner ont collaboré pour appliquer les ZKP au traitement des données de géolocalisation. L’enjeu est de pouvoir bénéficier de données qui soient conformes aux dispositions du RGPD sans avoir à demander un consentement explicite du consommateur et de l’usager.

PREAMBULE SUR L’INTERET DES ZKP

Les « Zero Knowledge Proofs » (ZKP) forment un ensemble d’outils puissants pour résoudre conjointement des problématiques de confiance et de confidentialité.

Ces technologies font l’objet de recherches actives qui se sont intensifiées ces dernières années.
En les associant intelligemment à d’autres technologies (blockchain, protocole Aztec, etc.) présentées en annexe de cet article, elles peuvent dès aujourd’hui permettre de créer des solutions novatrices et inédites aussi bien dans le traitement de la donnée que dans sa potentielle commercialisation.

CE QUE PERMET LA SOLUTION

Notre solution permet l’obtention de preuves anonymisées et intègres.

Elle est conforme à ce que le RGPD préconise, en particulier :
Privacy by design via une anonymisation réelle des données
● Une transparence vis-à-vis de l’automobiliste sur l’utilisation des données

L’utilisateur final n’étant ni identifié ni identifiable, son consentement explicite n’est pas obligatoire ; il convient cependant de l’informer que ses données sont récupérées à des finalités techniques.

FONCTIONNEMENT DE LA SOLUTION

La solution se décompose comme suit :
● Des voitures A, B et C produisent des données liées à la conduite et leur utilisation. Ces données sont enregistrées localement.
● Elles sont envoyées sous forme de notes toutes les 6 secondes (la taille d’une note est de 20 bits).
● Ces informations sont transformées pour être insérées dans un jeton et anonymisées (utilisation du protocole Aztec, qui permet de déployer des ZKP sur Ethereum)
● Ces jetons transitent sur la blockchain Ethereum et sont envoyés à un “noeud mixer” avant de les envoyer au receveur – ici RCI Bank and Services.

In fine, RCI Bank and Services
peut visualiser à l’aide d’une webapp les données décodées et donc s’en servir à des fins commerciales afin de mieux connaître l’utilisation des véhicules ou de la revendre à des sociétés tierces.
• disposera d’un jeu de trois données de conduite issues de l’ensemble des trois voitures initiales, mais il lui sera impossible de lier l’un de ces jeux de données à une voiture en particulier.


CONCLUSIONS ET PERSPECTIVES

Le démonstrateur a prouvé que l’utilisation de ZKP combinée à une blockchain était pertinente pour anonymiser une donnée et en prouver l’intégrité. Cela ouvre la voie à de nouveaux débouchés commerciaux tout en respectant les législations en vigueur sur le traitement de cette donnée.

Il faut noter que l’utilisation des ZKP nécessite de pouvoir résoudre des problèmes cryptographiques complexes, ce qui implique de recourir à un matériel disposant d’une puissance de calcul élevée. Cette remarque vaut aussi pour les données transférées par le véhicule qu’il convient d’optimiser au maximum au regard du poids non négligeable des données de localisation.

En outre, se pose la question du nombre de véhicules que le système est capable de supporter. Le démonstrateur a réussi à prouver que l’anonymisation des données était fonctionnelle pour 10 véhicules. Notre ambition prochaine à travers une nouvelle phase de R&D est d’accroître sensiblement ce nombre de véhicules afin d’aboutir à un prototype robuste.

____

 

ANNEXE

Définitions des termes techniques :

Les ZKP (“preuves à divulgation nulle de connaissance” en français) sont des méthodes cryptographiques qui permettent à une entité, le « prouveur », de prouver à une autre entité, le « vérificateur », qu’une proposition est vraie sans toutefois révéler d’autres informations que la véracité de la proposition, grâce à l’échange d’une preuve dite “cryptographique”.

Nous avons choisi une implémentation de ce champ d’étude avec le protocole open-source Aztec, solution de confidentialité implémentée sur la blockchain Ethereum. Ce choix est explicité plus bas.

La blockchain permet dans ce projet d’attester des identités et des différentes parties prenantes impliquées, mais aussi de contenir les preuves pour les auditer à posteriori.

Dans l’architecture du démonstrateur figurent également des mixeurs qui permettent d’anonymiser des données en masquant leur provenance de sorte que le receveur ne puisse pas en retrouver l’origine. Ils prennent la forme de nœuds sur la blockchain. Ce mécanisme d’anonymisation est intitulé “Join and split transaction”, soit littéralement “joindre et scinder” les transactions pour séparer l’origine de la donnée et sa résultante.

Les transactions contiennent les notes, qui permettent de prouver l’intégrité des données. Elles forment un couple d’informations, pour l’une publique (identifiant de la personne) et l’autre privée, protégées par un chiffrement. Prouver l’intégrité des données est possible si la somme des inputs à l’entrée est équivalente à la somme des outputs à la sortie du mixer. Ce système est intitulé “Checksum”. Cette équivalence est une garantie pour les acteurs que la donnée n’est pas manipulée et donc fausse.

Précisions sur le choix du protocole Aztec :

Nous avons choisi le protocole Aztec après avoir étudié les deux alternatives suivantes :

● ZSL (Zero Knowledge Layer) : Implémentation de ZKP sur Quorum (Protocole développé par JP Morgan)
● NuCypher : Protocole s’appliquant sur Ethereum et reprenant ZKP

Aztec dispose une souplesse non-négligeable : il est utilisable sur une version privée ou publique d’Ethereum. En outre, il propose de nombreux outils à destination des développeurs.

ZSL est encore relativement peu mature, et Quorum est destiné à des applications financières (en témoigne le JPMorgan Coin qui transitera sur Quorum).

NuCypher nous a semblé moins approprié à ce cas d’usage et son développement moins abouti à cet effet. De plus, NuCypher repose sur un modèle sous licence.

____

Cliquez ici pour être alerté(e) par mail des prochains Blockchain Business Cases :

Retour haut de page