Que sont les zkSNARK ? | Le guide complet PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Que sont les zkSNARK? | Le guide complet

Alors que de plus en plus de gens ont embrassé Bitcoin et la technologie étonnante qui le fait fonctionner, ils ont également découvert certains de ses écueils les plus importants. L'un de ceux-ci est le concept d'une transaction totalement anonyme. Bien que Bitcoin soit souvent considéré comme «anonyme», il n'est en fait que «pseudonyme», car les transactions de chaque adresse Bitcoin sont suivies sur le public. blockchain. Il existe cependant d'autres crypto-monnaies qui ont pu développer des blockchains qui assurent une confidentialité totale dans leurs protocoles. Une telle crypto-monnaie est Zcash qui utilise une implémentation révolutionnaire de confidentialité appelée zkSNARKs.

Dans cet article, nous examinerons les bases des zkSNARK, comment ils cachent la confidentialité et comment ils se développeront à l'avenir.

Zéro connaissance

Les zkSNARK sont basés sur un principe cryptographique relativement récent appelé zéro connaissance des preuves. Dans l'initiale document académique qui ont théorisé les protocoles Zero Knowledge, ils ont été définis comme:

«Un protocole à connaissance nulle est une méthode par laquelle une partie (le prouveur) peut prouver à une autre partie (le vérificateur) que quelque chose est vrai, sans révéler aucune information en dehors du fait que cette déclaration spécifique est vraie.»

Donc, essentiellement une preuve de connaissance nulle peut permettre à une personne de prouver qu'elle sait quelque chose de secret sans révéler ce qu'est ce secret. Cela a des implications importantes dans de nombreuses situations dans lesquelles nous devons échanger un secret mais ne pouvons pas faire entièrement confiance à la partie à laquelle nous envoyons ces informations.

Par exemple, pensez à la manière dont vos mots de passe en ligne fonctionnent. Lorsque vous insérez votre mot de passe sur un site Web, ce mot de passe est envoyé au serveur et stocké sous une forme hachée. Bien que les hachages tentent de masquer le mot de passe, entre les mains d'un pirate informatique compétent, un hachage peut être tout aussi dangereux qu'un texte brut. Par conséquent, vous divulguez un secret à un site Web et comptez sur la fiabilité supposée du site pour le protéger. Ne serait-il pas beaucoup plus sûr si vous pouviez démontrer votre connaissance du mot de passe en résolvant une preuve cryptographique?

C'est exactement ainsi que fonctionnent les preuves de connaissance zéro et elles sont particulièrement importantes dans les protocoles de confidentialité crypto. Vous voulez être en mesure de prouver à la partie avec laquelle vous effectuez des transactions que vous détenez bien la clé privée de votre portefeuille sans réellement révéler cette clé privée. Selon la théorie, pour qu'une preuve de connaissance nulle soit valide, elle doit répondre aux exigences suivantes:

  • Complétude: Si l'entrée est vraie, la preuve retournera toujours «vrai».
  • Solidité: Si l'entrée est fausse, vous ne pouvez pas tromper la preuve de connaissance nulle pour qu'elle renvoie «vrai».
  • Zéro-connaissance: Le vérificateur n'apprend rien de plus que si l'énoncé est vrai

Maintenant que nous avons jeté les bases des preuves de connaissance zéro, voyons comment elles ont été incorporées dans zkSNARKS.

zkSNARKs et Blockchains

Les zkSNARKs développent la théorie mathématique des preuves de connaissance zéro et leur permettent d'être utilisées dans des blockchains avec une complexité de calcul réduite. «ZkSNARKs» signifie Zero Knowledge Succinct Non Interactive Argument of Knowledge. Oui, c'est une bouchée, mais décomposons cela mot par mot.

  • Zéro-connaissance: Expliqué ci-dessus
  • Succinct Peut être vérifié très rapidement
  • Non interactif: Une preuve où un seul message peut être envoyé du prouveur au vérificateur. Il n'y a pas besoin de va-et-vient des messages.
  • Argument de la connaissance: Le prouveur peut convaincre le vérificateur que des informations existent et qu'il est la seule personne à pouvoir accéder à ces informations sans révéler ces informations.

Dans les transactions régulières, lorsqu'un paiement est envoyé d'une partie à l'autre, les détails de ce paiement sont visibles par tous les nœuds du réseau. Cela comprend toutes les entrées et sorties de la transaction qui contiennent des informations sur les adresses publiques et les montants. Cependant, avec une transaction sans connaissance, la seule information que l'on puisse glaner est qu'une transaction a eu lieu. Il n'y a aucune information sur l'expéditeur, le destinataire ou le montant. Vous trouverez ci-dessous une représentation visuelle simple du fonctionnement de Zero Knowledge Transaction dans un protocole blockchain.

Que sont les zkSNARK ? | Le guide complet PlatoBlockchain Data Intelligence. Recherche verticale. Aï.

Un autre terme pour ces transactions est une «transaction protégée». Les zkSNARKs sont utilisés pour prouver que les conditions d'une transaction valide ont été remplies sans rien révéler. L'expéditeur de cette transaction devra construire une preuve qui montre ce qui suit:

  • Les valeurs d'entrée sont égales aux valeurs de sortie
  • L'expéditeur a en effet le contrôle des clés privées du portefeuille
  • Il existe un lien cryptographique entre la clé de dépense privée et la signature de la transaction. Cela éliminera la possibilité qu'un tiers puisse altérer la transaction.

Bien sûr, c'est la théorie de base derrière zkSNARKS et les preuves de connaissance zéro. Un examen plus approfondi nécessiterait une compréhension des mathématiques informatiques avancées et de la cryptographie (mathématiques de la lune selon Vitalik Buterin).

zkSNARKS en cours d'utilisation

Étant donné que les zkSNARK ont un impact si important sur les crypto-monnaies, ils sont déjà utilisés sur un certain nombre de chaînes et sont envisagés par d'autres. Plus particulièrement, ils ont été popularisés pour leur utilisation dans le Protocole Zcash.

Zcash est l'une des crypto-monnaies les plus populaires au monde avec un capitalisation boursière actuelle de 4.3 milliards de dollars. Il y a également eu un certain nombre de fourches de Zcash et de fourches de fourches. Par exemple, vous avez Zclassic qui est un fork de Zcash. Zclassic a également engendré deux de ses propres pièces fourchues en ZenCash ainsi que le Bitcoin privé. Ces deux chaînes utilisent des zkSNARK pour leurs transactions protégées. Ensuite, il y a aussi les ambitions de la deuxième crypto-monnaie la plus précieuse, Ethereum, pour inclure les zkSNARK dans leur protocole. Cela fera partie de leur mise à niveau Metropolis qui comprendra un certain nombre de fonctionnalités telles que Preuve de pieu.

Actuellement, la complexité de calcul impliquée dans la génération d'un grand nombre de ces preuves est assez élevée. Cela limite leur application dans de nombreux autres cas d'utilisation potentiels. Pourtant, au fur et à mesure que l'on travaille à ce sujet et que la puissance de calcul progresse, nous verrons probablement une technologie similaire dans un certain nombre d'applications dépendant de la confidentialité.

Défis potentiels

L'une des préoccupations les plus importantes concernant les blockchains à connaissance zéro est qu'elles doivent s'appuyer sur une certaine «clé maîtresse». Avoir une clé principale active pour une blockchain valant des milliards est sans aucun doute un gros problème. C'est une ombre qui est restée sur la blockchain Zcash depuis sa création. Bien que l'équipe de ZCash ait affirmé avoir détruit la clé principale lors de sa cérémonie Zcash, il y a toujours un risque qu'elle ait pu fuir ou que quelqu'un en ait une copie. Cependant, il pourrait bientôt y avoir une alternative à cela sous la forme d'une autre adaptation unique appelée «zkSTARK». Le principal avantage de cette technologie par rapport aux zkSNARK est qu'elle n'aurait pas à s'appuyer sur une clé principale ou une cryptographie à clé publique. Tout ce dont ils auraient besoin, c'est d'un algorithme simple pour fonctionner. Les zkSTARKs pourraient également être beaucoup plus efficaces en termes de puissance de calcul nécessaire pour compléter les preuves. La technologie en est cependant à ses balbutiements et fait encore l'objet de recherches par de nombreux cryptographes. Il serait intéressant de voir comment la technologie évoluera au cours des prochaines années.

Conclusion

Bitcoin a été développé pour un certain nombre de raisons, dont l'une était de redonner un contrôle financier personnel aux individus. La vie privée du titulaire a probablement été une autre des considérations les plus importantes. Mais à mesure que l'adoption de la crypto-monnaie a augmenté, les gouvernements et les agences ont également la capacité de suivre méticuleusement ces transactions sur la blockchain très publique.

Cependant, avec une technologie telle que zkSNARKs, ces transactions seront protégées et les parties resteront totalement anonymes. Il existe également de nombreuses autres applications qui bénéficieront de ces avancées technologiques. Bien que la technologie soit encore nouvelle et que des questions demeurent, on ne peut pas écarter la demande d'une crypto-monnaie véritablement privée.

Source : https://unhashed.com/cryptocurrency-coin-guides/what-are-zksnarks/

Horodatage:

Plus de Non haché