ETFFIN Finance >> cours Finance personnelle >  >> Crypto-monnaie >> Chaîne de blocs

zk-SNARK

Qu'est-ce que zk-SNARK ?

Zk-SNARK est un acronyme qui signifie "Zero-Knowledge Succinct Non-Interactive Argument of Knowledge". Un zk-SNARK est une preuve cryptographique qui permet à une partie de prouver qu'elle possède certaines informations sans révéler ces informations. Cette preuve est rendue possible grâce à une clé secrète créée avant la transaction. Il est utilisé dans le cadre du protocole de la crypto-monnaie, Zcash.

Points clés à retenir

  • Zk-SNARK est un protocole de preuve à connaissance nulle utilisé dans le cryptage, et est un acronyme qui signifie "Zero-Knowledge Succinct Non-Interactive Argument of Knowledge".
  • Cette preuve a été développée et introduite pour la première fois à la fin des années 1980, et est maintenant utilisé par la crypto-monnaie Zcash pour résoudre un problème d'anonymat perçu avec les blockchains de type Bitcoin.
  • Les preuves Zk-SNARK reposent sur une configuration initiale de « système de confiance » qui a été critiquée comme une faille de sécurité inhérente.

Comprendre zk-SNARK

Pour de nombreux membres originaux de la communauté des crypto-monnaies, principalement la communauté Bitcoin, la confidentialité était un objectif et une caractéristique supposés des crypto-monnaies. Cependant, la vie privée a toujours été une préoccupation de second ordre, étant donné le besoin de la crypto-monnaie de créer un système « sans confiance » garantissant l'intégrité de la monnaie électronique et des transactions numériques.

Au début des années 2010, Les utilisateurs de Bitcoin supposaient parfois que leurs transactions étaient anonymes car leurs identités hors ligne n'étaient pas associées aux clés publiques des utilisateurs. Mais jusqu'à la fin de la décennie, efforts coordonnés des data scientists, pirates informatiques, et les forces de l'ordre ont prouvé qu'il est non seulement possible mais relativement facile de ré-identifier les personnes qui ont fourni des données pseudonymes à plusieurs sources.

En raison du manque perçu de confidentialité de certaines des crypto-monnaies originales comme Bitcoin, les développeurs ont commencé à travailler sur des pièces axées sur la confidentialité. Le plus important d'entre eux était Zcash, soutenu par une technologie connue sous le nom de zk-SNARKs.

Preuve de connaissance zéro

Un zk-SNARK (« argument de connaissance succinct et non interactif à zéro connaissance ») utilise un concept connu sous le nom de « preuve de connaissance zéro ». L'idée derrière ces preuves a été développée pour la première fois dans les années 1980. Mettre tout simplement, une preuve à connaissance nulle est une situation dans laquelle chacune des deux parties à une transaction est en mesure de se vérifier mutuellement qu'elles disposent d'un ensemble particulier d'informations, tout en ne révélant pas quelle est cette information.

Pour la plupart des autres types de preuves, au moins une des deux parties doit avoir accès à toutes les informations. Une preuve traditionnelle peut être comparée à un mot de passe utilisé pour accéder à un réseau en ligne. L'utilisateur soumet le mot de passe, et le réseau lui-même vérifie le contenu du mot de passe pour vérifier qu'il est correct. Pour ce faire, le réseau doit également avoir accès au contenu du mot de passe.

Une version sans connaissance de cette situation impliquerait que l'utilisateur démontre au réseau (via une preuve mathématique) qu'il a le bon mot de passe sans révéler le mot de passe lui-même. Les avantages en matière de confidentialité et de sécurité dans cette situation sont clairs :si le réseau n'a pas le mot de passe stocké quelque part à des fins de vérification, le mot de passe ne peut pas être volé.

La base mathématique de zk-SNARKS est complexe. Néanmoins, des preuves de ce type permettent à une partie de démontrer non seulement qu'une information particulière existe, mais aussi que la partie en question a connaissance de cette information. Dans le cas de Zcash, Les zk-SNARK peuvent être vérifiés presque instantanément, et le protocole ne nécessite aucune interaction entre le prouveur et le vérificateur.

Critique des zk-SNARKs

Il y a, bien sûr, préoccupations liées aux zk-SNARK. Par exemple, si quelqu'un a pu accéder à la clé privée qui a été utilisée pour créer les paramètres du protocole de preuve, ils pouvaient créer de fausses preuves qui semblaient néanmoins valables pour les vérificateurs. Cela permettrait à cette personne de créer de nouveaux jetons de Zcash via un processus de contrefaçon. Afin d'éviter que cela ne se produise, Zcash a été conçu de manière à rendre les protocoles de preuve élaborés et répartis sur plusieurs parties.

Alors que la construction du processus de proving Zcash a été achevée de manière à minimiser la possibilité de contrefaçon de jetons via de fausses preuves, il existe également au moins une autre préoccupation liée à la crypto-monnaie. Zcash a été créé avec une "taxe" de 20% prélevée sur tous les blocs créés au cours des premières années du jeton. Cette taxe est connue sous le nom de « taxe de fondateur, " et il sert à rémunérer les développeurs de la crypto-monnaie.

Les critiques ont suggéré que les fondateurs pourraient potentiellement utiliser cette facette du système pour créer un nombre infini de jetons Zcash sans que personne d'autre ne soit au courant de l'existence de ces jetons. Pour cette raison, il n'est pas tout à fait possible de connaître le nombre exact de jetons Zcash existants à ce stade.

Depuis 2019, certains développeurs ont travaillé pour améliorer zk-SNARKs en supprimant la configuration de confiance. Une équipe appelée Suterusu a développé un système appelé zK-ConSNARK qui prétend fonctionner sans configuration de confiance, peut fournir une protection de la vie privée pour les blockchains grand public comme Bitcoin, et a l'inflation la plus faible pour toutes les crypto-monnaies existantes.