Analyse de Zcash, une plateforme de cryptomonnaie qui vise à préserver la vie privée entre toutes les parties

INTRODUCTION

Bien que la popularité de la cryptomonnaie soit en constante augmentation depuis quelques années, les experts du secteur s'inquiètent de plus en plus du phénomène de la cryptomonnaie (et par conséquent de la blockchain) qui suit une voie consistant à sacrifier certaines valeurs intrinsèques en échange de la rentabilité, et le plus préoccupant de ces sacrifices concerne la vie privée.

Depuis sa conception en 2008, comme l'explique le livre blanc Bitcoin original publié par Satoshi Nakamoto, l'un des principaux avantages de la mise en œuvre de la blockchain est qu'elle représente un grand livre décentralisé. Cela signifie que les informations de toutes les transactions sont stockées et mises à jour simultanément dans tous les nœuds de la chaîne, tandis que la vie privée n'est préservée que derrière le cryptage des blocs, ce qui signifie que les nœuds ont accès à toutes les informations des transactions.

Cependant, comme l'intérêt de la population pour la cryptomonnaie ne cesse de croître, certains ont commencé à s'interroger sur les moyens de préserver la confidentialité de certaines informations. Tout le monde ne se sent pas à l'aise avec le fait que son adresse numérique, son solde et les données de chaque transaction effectuée soient accessibles au public sur des milliers d'ordinateurs dans le monde entier. C'est pourquoi de multiples progrès ont été réalisés pour renforcer la confidentialité des données, et c'est pourquoi des projets comme Zcash ont attiré l'attention des utilisateurs potentiels.

Dans ce document, nous aborderons Zcash et son initiative qui prévoit de faire entrer la cryptomonnaie dans une nouvelle ère axée sur la confidentialité des transactions et des données des utilisateurs, ses principales caractéristiques, sa comparaison avec l'état actuel du marché et ce que son succès peut apporter à l'avenir des monnaies numériques comme alternative aux systèmes financiers traditionnels.

FONCTIONNALITÉS DE BASE

Comme nous l'avons déjà mentionné, l'objectif principal de Zcash est de donner à ses utilisateurs des options supplémentaires concernant la confidentialité de leurs données personnelles et des informations relatives à leur portefeuille et à leurs transactions. Pour ce faire, ils ont développé une nouvelle technologie permettant de créer les preuves nécessaires pour valider une transaction, sans pour autant révéler ces informations.

Resource_01.png

Cette technologie, appelée "zk-SNARKs" (acronyme de "zero-knowledge Succinct Non-interactive Argument of Knowledge") permet à l'une des parties impliquées de prouver à l'autre l'existence de certaines informations sans en révéler d'autres. Par exemple, la personne chargée de la preuve peut présenter le hachage cryptographique d'un nombre aléatoire et convaincre le vérificateur que ce nombre existe, sans le partager explicitement. En outre, les zk-SNARK sont un système qui permet à la personne chargée de prouver que le numéro n'existe pas seulement, mais qu'elle le connaît aussi, et tout cela sans partager de longues informations ou de multiples communications triviales en va-et-vient entre les parties. 

Ils expliquent qu'à un niveau élevé, les sk-SNARKs transforment d'abord l'information qui sera prouvée en une forme équivalente sur la connaissance d'une solution à certaines équations algébriques. La première étape de ce processus consiste à créer un circuit arithmétique qui représente l'équation qui sera prouvée, laquelle est composée d'une série d'opérations arithmétiques simples (addition, soustraction, multiplication et division). La figure 1 montre un exemple du circuit arithmétique qui représente l'équation (𝑎 + 𝑏) ∗ (𝑏 ∗ 𝑐), sur lequel une couche de vérification est créée, appelée "système de contraintes de rang 1" ou R1CS.

Cependant, la mise en œuvre d'un R1CS qui vérifie chaque étape du circuit signifierait que la vérification prendrait beaucoup de temps. Zcash a donc mis en œuvre un programme d'arithmétique quadratique pour regrouper plusieurs contraintes en une seule. Zcash change la vérification des nombres en polynômes, ce qui rend la vérification des identités plus sûre, et ensuite le système n'a plus qu'à vérifier que deux de ces polynômes correspondent à un point choisi au hasard, ce qui empêche également les utilisateurs malveillants de se préparer au processus de vérification.

Contrairement à Bitcoin, où la vérification de la transaction nécessite de relier les adresses de l'expéditeur et du destinataire, ainsi que les valeurs d'entrée et de sortie de la transaction sur la blockchain publique, l'expéditeur d'une transaction protégée n'a qu'à envoyer la preuve avec une forte probabilité que (1) les valeurs d'entrée s'additionnent aux valeurs de sortie, (2) il connaît les clés privées de dépense des notes d'entrée et (3) ces clés privées sont liées cryptographiquement à une signature sur l'ensemble de la transaction. Avec ces informations, l'algorithme de consensus est capable de vérifier automatiquement la validité d'une transaction même si les propriétaires des adresses souhaitent ne pas en révéler les détails, ce qui couvre la principale préoccupation concernant la vie privée qui s'est développée au sein de la communauté.

COMPARAISON AVEC D'AUTRES ACTIFS

Resource_02.png

Par rapport à d'autres actifs, le principal avantage de Zcash est très clair : la possibilité de maintenir le détail des transactions dans le plus grand secret. Ils utilisent le mot "option" puisque l'une ou les deux parties sont autorisées à divulguer les données de leur côté (adresse ou saisie) à des parties de confiance, ce qui permet de répondre aux exigences en matière d'audit et de conformité. Il en résulte quatre types de transactions prises en charge par Zcash : privées, protégées, non protégées et publiques (schéma 2). La variété des types de transactions permet également de répondre aux besoins d'un large éventail de clients, ce qui donne à Zcash un avantage sur la concurrence.

En outre, Zcash offre de multiples caractéristiques qui distinguent son système d'autres réseaux similaires, notamment la capacité d'inclure des mémos cryptés dans les transactions comme moyen pour l'expéditeur de partager des informations importantes avec le destinataire, la divulgation séparée des adresses et des volumes de paiement, la possibilité de créer des transactions qui nécessitent plusieurs signatures pour être validées (transactions à signatures multiples), et tout cela en maintenant des frais de transaction de 0,0001 Zcash.

Étant donné que Zcash est à l'origine basé sur la même base de code que Bitcoin, il existe également de nombreuses similitudes entre les deux, notamment le même total maximum de jetons pouvant être exploités (21 millions), le même nombre de jetons donnés en récompense de la construction réussie d'un nouveau bloc (6,25 ZEC et BTC, respectivement). Ces similitudes servent également de passerelle aux utilisateurs potentiels pour entrer dans le réseau tout en n'étant pas totalement ignorants de son fonctionnement en termes de disponibilité et d'exploitation, tout en leur donnant la possibilité de tester les fonctionnalités qui font de Zcash une amélioration considérable en matière de respect de la vie privée.

POSSIBILITÉS À LONG TERME

Malgré le fait que Zcash soit l'une des premières applications de la technologie zk-SNARK, ce type de validation confidentielle des transactions pourrait également être ajouté à d'autres registres distribués comme couche de sécurité supplémentaire, ce qui pourrait être utile pour les clients institutionnels ou d'autres utilisateurs de haut niveau ayant des exigences de confidentialité plus strictes.

Il est encore trop tôt en termes de puissance de calcul pour penser à l'avenir des zk-SNARKs, mais Zcash garantit que son équipe de scientifiques est parmi les plus compétentes en la matière, et qu'elle travaillera en permanence sur de nouvelles façons de mettre en œuvre ce système, dont elle a déjà révélé deux exemples : 

Resource_03.png

Les contrats privés intelligents

Les contrats intelligents sont l'épine dorsale d'Ethereum et la source de sa popularité. Ils permettent à deux parties méfiantes de parvenir à un accord pour une transaction qui ne devient effective que lorsque certaines conditions sont remplies, tout en garantissant que chacune des parties est correctement indemnisée en cas de violation ou d'interruption. Toutefois, tout comme les transactions sur Bitcoin, les détails des contrats sont accessibles au public par l'intermédiaire du réseau Ethereum.

Hawk est un projet visant à mettre en œuvre des mécanismes de preuve de connaissance zéro pour des contrats similaires, où les utilisateurs peuvent créer les contrats de manière intuitive et leur compilateur se charge du protocole cryptographique pour communiquer avec la blockchain, et il permet également aux parties de garder les détails de leur fin de contrat privés, tandis que les conditions d'exécution des transactions restent totalement imperméables à toute altération, que ce soit de la part des parties concernées ou d'acteurs malveillants externes.

Canaux de paiement privés

Une autre application potentiellement utile des mécanismes de preuve de l'absence de connaissance vient avec leur mise en œuvre dans les canaux de paiement. Étant donné que les transactions dans les blockchains publics nécessitent du temps pour être correctement validées et ajoutées au block respectif, non seulement la confidentialité des transactions est compromise, mais des problèmes d'extensibilité et de latence viennent également s'ajouter.

BOLT (Blind Off-chain Lightweight Transactions), développé par Ian Miers et Matthew Green, s'inspire du Lightning Network pour offrir des canaux de paiement rapides et évolutifs qui tirent parti de l'accent mis par Zcash sur la protection de la vie privée. Ils combinent l'utilisation de canaux de paiement mis en place par le commerçant, qui permettent d'effectuer de multiples petites transactions en quelques millisecondes (sans confirmation de bloc), et la possibilité d'acheminer les paiements par l'intermédiaire de tiers, évitant ainsi de devoir maintenir un canal direct entre le commerçant et chaque client.

Même si ce projet est né de l'idée de combiner Zcash et le Lightning Network, les développeurs affirment qu'il est possible de configurer BOLT pour qu'il fonctionne avec la plupart des jetons si les primitives peuvent être ajoutées au réseau, puisque la confidentialité assurée par BOLT n'est pas assurée en soi par la blockchain mais par la façon dont ils établissent et ferment les canaux de manière anonyme.

CONCLUSION

À mesure que la cryptomonnaie gagne en importance dans notre société, il est important de continuer à se concentrer sur les questions qui sont profondément associées à ses fonctionnalités actuelles et de garder l'esprit ouvert sur la manière de les résoudre, car leur adoption dépend de l'amélioration de l'image que la population générale a d'elle.

Des projets comme Zcash, Hawk et BOLT poursuivent un objectif similaire par des voies différentes : convaincre les personnes intéressées par la cryptomonnaie que leurs données peuvent être protégées, sans avoir besoin de faire confiance à un centre de données centralisé ou à un mécanisme de conservation. Ils sont la preuve que lorsque la créativité rencontre la vision, presque tout peut être accompli, et cela donne une meilleure image de l'avenir non seulement du marché de la cryptomonnaie, mais aussi de tout le secteur des finances personnelles numériques.