Qu’est-ce que Zcash? Le guide le plus complet jamais conçu!

Qu’est-ce que Zcash? Un guide complet…

 À mesure que les crypto-monnaies sont plus acceptées et que le monde est de plus en plus décentralisé, la vie privée d’un individu est fortement compromise. Cela se produit principalement en raison de la façon dont la plupart des crypto-monnaies sont conçues en premier lieu.

Le fait est que la blockchain agit comme un registre ouvert. Chaque transaction effectuée par un utilisateur peut y être suivie. Bien que cela résout l’objectif de réduire la corruption et les pratiques malveillantes, cela compromet complètement une fois la confidentialité.

Est-il nécessaire que quelqu’un montre chaque partie de sa vie au monde entier? Est-ce mal que quelqu’un demande un peu d’intimité?

Pour répondre à ces questions, de nombreuses pièces ont vu le jour qui offrent à leurs utilisateurs une confidentialité totale. Les porte-drapeaux du genre de pièces de confidentialité sont: ZCash, Monero et Dash.

Nous avons déjà couvert Monero avant en profondeur.

Dans ce guide, nous allons couvrir Zcash.

Zcash est une crypto-monnaie peer-to-peer décentralisée. Il a été créé comme une fourchette de Bitcoin et tout comme Bitcoin, il a également une limite stricte de 21 millions de pièces. Mais c’est là que s’arrête la comparaison. Contrairement au bitcoin, Zcash offre une confidentialité complète et totale à ses utilisateurs grâce à l’utilisation d’une cryptographie ingénieuse.

Alors, jetons un coup d’œil sous le capot et voyons ce qui se passe dans les coulisses.

Zcash est-il un fork de Bitcoin?

Comme nous l’avons déjà mentionné. Zcash a commencé comme un fork de la blockchain Bitcoin le 28 octobre 2016. Auparavant, il s’appelait le protocole Zerocoin avant d’être transformé en système Zerocash et enfin, Zcash.

Comme l’indique la page Wikipédia de Zcash: «Le développement des améliorations du protocole et de l’implémentation de référence est dirigé par la Zerocoin Electric Coin Company, communément appelée Zcash Company.»

Le fondateur, PDG et la force motrice de Zcash est Zooko Wilcox.

Qu'est-ce que Zcash? Un guide complet

Crédit d’image: Z.Cash

Comment fonctionne Zcash?

«Zcash est une autre blockchain et une monnaie cryptographique qui permet des échanges privés (et généralement des informations privées) dans une blockchain ouverte. Cela permet aux organisations, aux acheteurs et aux nouvelles applications de contrôler qui a la chance de voir les points d’intérêt de leurs échanges, même en utilisant une blockchain mondiale sans autorisation. » – Zooko Wilcox

Comment se déroule une transaction Bitcoin normale?

Supposons qu’Alice veuille envoyer 1 BTC à Bob, que fera-t-elle?

Elle enverra 1 BTC à l’adresse publique de Bob. Les mineurs mettent ensuite les détails de la transaction dans leurs blocs et la transaction est considérée comme terminée.

Alors, en quoi les transactions ZCash sont-elles différentes des transactions Bitcoin normales??

Voyons d’abord une représentation graphique d’une transaction Zcash:

Qu'est-ce que Zcash? Un guide complet

Crédit d’image: Fossbytes

Que nous dit cette image?

Dans Zcash, vous avez le choix entre deux types de transactions.

Vous pouvez soit effectuer la transaction transparente normale, soit effectuer la transaction privée protégée.

Supposons qu’Alice veuille envoyer 1 Zec à Bob. (Zec = Zcash).

Si Bob est d’accord pour garder la transaction transparente et ouverte au monde entier, elle peut lui envoyer la Zec à son adresse transparente ou t-addr.

Cependant, s’il souhaite une certaine confidentialité et ne souhaite pas que les détails de la transaction soient rendus publics, il peut simplement faire envoyer l’argent à son adresse protégée, également appelée «z-addr»..

Si Alice et Bob utilisent leurs adresses protégées pour interagir, alors tous les détails de la transaction seront privés. Cela inclut l’identité d’Alice, l’identité de Bob et les détails de la transaction elle-même.

Qu'est-ce que Zcash? Un guide complet

Crédit d’image: Z.Cash

La raison pour laquelle Z-Cash atteint un niveau de confidentialité aussi élevé est celle de l’utilisation de zk-SNARKS ou de Zero-Knowledge Succinct Non-Interactive Arguments of Knowledge..

Avant de continuer, il est essentiel que nous comprenions ce que sont les preuves Zero-Knowledge et les zk-Snarks qui font de Zcash une pièce de confidentialité..

Que sont les preuves sans connaissance?

Les preuves Zero Knowledge ont vu le jour dans les années 1980 grâce au travail des chercheurs du MIT Shafi Goldwasser, Silvio Micali et Charles Rackoff. Ils travaillaient sur des problèmes liés aux systèmes de preuve interactifs, où un prouveur échange des messages avec un vérificateur (plus sur les prouveurs et les vérificateurs plus tard) pour les convaincre qu’ils ont une connaissance d’une certaine preuve sans déclarer ce que cette connaissance est..

Avant de faire leur découverte historique, la plupart des systèmes de preuve étaient basés sur les propriétés de «solidité» du système de preuve. On a toujours supposé que le «prouveur» pouvait être le malveillant dans tout scénario où il tenterait de tromper le vérificateur. Ces 3 chercheurs ont renversé l’idée en remettant en question la moralité du vérificateur au lieu du prouveur. La question qu’ils ont posée était la suivante: comment peut-on savoir avec certitude que le vérificateur ne divulguera pas les connaissances et des préoccupations ont également été soulevées quant à la quantité de connaissances sur le prouveur que le vérificateur apprendra à connaître au cours du processus de vérification..

Il existe diverses conséquences concrètes de cette énigme et l’une des plus célèbres concerne la protection par mot de passe. Supposons que vous souhaitiez vous connecter à un site Web à l’aide d’un mot de passe. Le protocole standard est que le client (vous) écrira son mot de passe et l’enverra au serveur, le serveur hachera alors le mot de passe et l’assimilera au hachage qu’il a stocké dans son système. Si les valeurs correspondent, vous pouvez entrer dans le système.

Vous pouvez voir l’énorme défaut de ce système, n’est-ce pas? Le serveur a la version en clair de votre mot de passe et votre vie privée est à la merci du serveur (le vérificateur dans ce scénario). Si le serveur est compromis ou attaqué, votre mot de passe appartiendra à la partie malveillante et les conséquences pourraient être désastreuses. Afin de contrer ces scénarios, les preuves de connaissance zéro sont absolument essentielles et révolutionnaires dans tous les sens du terme.

Il y a deux parties quand il s’agit d’une preuve de connaissance nulle (comme indiqué ci-dessus), le prouveur et le vérificateur. Zéro connaissance indique qu’un prouveur peut prouver au vérificateur qu’il possède une certaine connaissance sans lui dire ce qu’est réellement cette connaissance

Propriétés d’une preuve zéro connaissance

Pour qu’un ZKP fonctionne, il doit satisfaire certains paramètres:

  • Complétude: Si l’affirmation est vraie, un vérificateur honnête peut en être convaincu par un prouveur honnête..
  • Solidité: Si le prouveur est malhonnête, il ne peut pas convaincre le vérificateur du bien-fondé de la déclaration en mentant.
  • Zéro-connaissance: Si la déclaration est vraie, le vérificateur n’aura aucune idée de ce que la déclaration est réellement.

Alors maintenant que nous avons une idée de base de ce qu’est une preuve sans connaissance, voyons quelques exemples avant de plonger dans zk-snarks 

Cas n ° 1 de la grotte d’Alibaba

Dans cet exemple, le prouveur (P) dit au vérificateur (V) qu’il connaît le mot de passe de la porte secrète au fond de la grotte et qu’il veut le prouver au vérificateur sans lui dire réellement le mot de passe. Voici donc à quoi cela ressemble:

Crédit d’image: Scott Twombly (chaîne YouTube)

Le prouveur emprunte l’un des chemins A et B, supposons qu’il décide initialement de passer par le chemin A et d’atteindre la porte secrète à l’arrière. Quand ils le font, le vérificateur V entre à l’entrée, sans savoir quel chemin le prouveur a réellement emprunté et déclare vouloir voir le prouveur apparaître à partir du chemin B.

Dans le diagramme, comme vous pouvez le voir, le prouveur apparaît bien dans le chemin B. Mais que se passerait-il si c’était une chance stupide? Et si le prouveur ne connaissait pas le mot de passe et empruntait le chemin B, était coincé à la porte et par pure fortune, le vérificateur lui a dit de sortir du chemin B, celui sur lequel ils se trouvaient de toute façon?

Donc, pour tester la validité, l’expérience est effectuée plusieurs fois. Si le prouveur peut apparaître au bon chemin à chaque fois, il prouve au vérificateur que le prouveur connaît bien le mot de passe même si le vérificateur ne sait pas ce qu’est réellement le mot de passe.

Voyons comment les trois propriétés de la connaissance nulle sont satisfaites dans cet exemple:

  • Exhaustivité: puisque la déclaration était vraie, le prouveur honnête a convaincu le vérificateur honnête.

  • Solidité: si le prouveur était malhonnête, il n’aurait pas pu tromper le vérificateur car le test a été fait plusieurs fois. Finalement, la chance du prouveur a dû s’épuiser.

  • Zero-Knowledge: le vérificateur n’a jamais su quel était le mot de passe, mais il était convaincu que le prouveur en avait la possession.

Cas n ° 2 Trouver Waldo

Tu te souviens d’avoir trouvé Waldo? Bien sûr, vous le faites, vous devez l’avoir vu quelque part, que ce soit dans la vraie vie ou en ligne. Pour ceux qui ne le savent pas, Finding Waldo est un jeu où vous devez trouver «Waldo» parmi une mer de gens. C’est un simple jeu «Repérez le gars». Juste pour vous donner une idée de base, voici à quoi ressemble le jeu:

Qu'est-ce que Zcash? Un guide complet

Crédit d’image: Youtube (IntoConnection)

Et l’idée est de trouver Waldo qui ressemble à ceci:

Qu'est-ce que Zcash? Un guide complet

Crédit d’image: Pinterest

Cela semble assez simple, non? Trouvez ce gars parmi la mer d’autres personnes que vous voyez dans le jeu. Ok, alors d’où vient le concept de Zero Knowledge? Imaginez qu’il y ait deux personnes Anna et Carl. Anna dit à Carl qu’elle sait où se trouve Wally mais qu’elle ne veut pas lui montrer où il se trouve exactement. Alors, comment peut-elle lui prouver qu’elle a retrouvé Wally sans montrer sa position exacte?

Il y avait un article intéressant de Naor, Naor et Reingold qui montre deux solutions Zero Knowledge à ce problème. Il existe une «solution moyenne technologie» et une «solution basse technologie». Parlons des deux.

Solution de moyenne technologie

La raison pour laquelle cette solution est «mid-tech» est que notre prouveur et notre vérificateur ont besoin d’accéder à une photocopieuse pour faire ce travail. Voilà comment ça se passe. Premièrement, Anna et Carl feraient une photocopie du jeu original. Puis Anna, tout en s’assurant que Carl ne regarde pas, découpera Waldo de la photocopie et détruira les restes. Après cela, elle peut montrer la découpe de Waldo à Carl et prouver qu’elle savait où se trouvait Waldo après tout sans indiquer son emplacement exact à Carl..

Il y a des problèmes avec cette solution. Bien qu’il remplisse les critères «Zero Knowledge», il ne remplit pas les critères «Soundness». Anna aurait pu tricher ici de plusieurs façons. Elle aurait pu avoir une découpe aléatoire de Waldo avec elle depuis le tout début et aurait pu la montrer à Carl sans vraiment savoir où se trouvait Waldo. Alors, quelle est la solution à cela?

La solution à cela est des tests méticuleux et minutieux. Premièrement, Anna et Carl prendront une photocopie du match. Ensuite, Carl dessinera un motif distinctif au dos de la photocopie. Après cela, Carl escortera Anna dans une pièce où elle sera isolée et n’aura aucune chance de tricher. Si Anna sort avec une découpe de Waldo, Carl peut être convaincu qu’elle savait réellement où se trouvait Waldo sans révéler la solution. Ils peuvent répéter cette expérience plusieurs fois et Carl peut comparer les différentes découpes de Waldo pour être encore plus sûr de la validité de la revendication d’Anna.

Solution basse technologie

Cette solution nécessitait un équipement très basique. L’idée est simple. Procurez-vous un énorme carton, deux fois plus grand que le jeu et découpez-y un petit rectangle. Maintenant, quand carl ne regarde pas, Anna peut déplacer le carton sur le jeu de telle manière que le rectangle soit directement au-dessus de Waldo. Maintenant, elle peut dire à Carl de jeter un coup d’œil et voici ce qu’il verra:

Qu'est-ce que Zcash? Un guide complet

Crédit d’image: Cryptographie appliquée aux enfants par Naor, Naor et Reingold

Ainsi, bien que Carl puisse avoir une idée très basique de l’endroit où Waldo peut réellement être, il ne connaît pas l’emplacement exact. Anna a donc prouvé à Carl qu’elle savait où se trouve Waldo sans préciser son emplacement exact.

Comment rendre les preuves sans connaissance non interactives?

Avec les anciens systèmes de vérification sans connaissance, il y avait un gros problème. Pour que cela fonctionne, le prouveur et le vérificateur devaient être en ligne en même temps. En d’autres termes, le processus était «interactif». Cela a rendu l’ensemble du système inefficace et presque impossible à mettre à l’échelle. Les vérificateurs ne pourraient pas être en ligne en même temps que les vérificateurs tout le temps? Il fallait un système pour rendre cela plus efficace.

En 1986, Fiat et Shamir ont inventé l’heuristique Fiat-Shamir et ont réussi à changer la preuve interactive de connaissance zéro en preuve de connaissance zéro non interactive. Cela a aidé l’ensemble du protocole à fonctionner sans aucune interaction. La procédure derrière elle est très simple.

Donc, pour vous donner un exemple, voici comment les preuves de connaissance zéro fonctionnaient avant Fiat et Shamir. Prouvons cela en utilisant de simples logarithmes discrets.

  • Anna veut prouver à Carl qu’elle connaît une valeur x telle que y = g ^ x à une base g.

  • Anna choisit une valeur aléatoire v à partir d’un ensemble de valeurs Z, et calcule t = g ^ v et envoie t à Carl.

  • Carl choisit une valeur aléatoire c de l’ensemble Z et l’envoie à Anna.

  • Anna calcule r = v-c * x et renvoie r à Carl.

  • Carl vérifie si t = g ^ r * y ^ c tient ou non (puisque r = vc * x, y = g ^ x et par simple substitution, g ^ (vc * x) * g ^ c * x = g ^ v = t).

  • Carl ne connaît pas la valeur de x, en vérifiant simplement si t = g ^ r * y ^ c il peut vérifier qu’Anna connaît bien la valeur de x.

Maintenant, alors que l’interaction ci-dessus est zéro-connaissance, le problème est qu’Anna et Carl doivent être en ligne et échanger des valeurs pour que cela fonctionne..

Comment Anna peut-elle prouver à Carl qu’elle a connaissance de quelque chose sans que Carl soit en ligne? Elle peut le faire en utilisant une simple fonction de hachage cryptographique, comme l’ont théorisé Fiat et Shamir.

Voyons comment l’exemple ci-dessus fonctionnerait de manière non interactive:

  • Anna veut prouver à Carl qu’elle connaît une valeur x telle que y = g ^ x à une base g.

  • Anna choisit une valeur aléatoire v dans un ensemble de valeurs Z et calcule t = g ^ v.

  • Anna calcule c = H (g, y, t) où H () est une fonction de hachage.

  • Anna calcule r = v – c * x.

  • Carl ou n’importe qui peut alors vérifier si t = g ^ r * y ^ c.

Ainsi, comme vous pouvez le voir, aucune preuve de connaissance n’a été rendue non interactive. Et c’est ce qui a jeté les bases de Zk-Snarks.

Quelle est l’utilisation de Zk-Snarks?

Zk-Snarks signifie «Argument non interactif succinct de connaissance zéro de la connaissance». Son utilisation dans la technologie blockchain moderne est immense. Pour comprendre son application, il est important de savoir comment fonctionne un contrat intelligent. Un contrat intelligent est essentiellement un dépôt de fonds qui est activé une fois qu’une fonction particulière est effectuée.

Par exemple. Anna met 100 ETH dans un contrat intelligent qu’elle conclut avec Carl. Carl doit faire une tâche particulière, à l’issue de laquelle Carl obtiendra les 100 ETH du contrat intelligent.

Cela se complique lorsque les tâches que Carl doit accomplir sont à plusieurs niveaux et confidentielles. Supposons que vous ayez conclu un contrat intelligent avec Anna. Désormais, vous n’obtiendrez le paiement que si vous faites A, B et C. Que faire si vous ne voulez pas révéler les détails de A, B et C parce qu’ils sont confidentiels pour votre entreprise et que vous ne voulez pas que des concurrents sais ce que tu as à faire?

Ce que fait Zk-Snarks, c’est qu’il prouve que ces étapes ont été prises dans le contrat intelligent sans révéler quelles sont réellement ces étapes. Il est très utile de vous protéger, vous et la vie privée de votre entreprise. Il peut simplement révéler une partie du processus sans montrer l’ensemble du processus lui-même et prouver que vous êtes honnête au sujet de vos réclamations..

Comment fonctionne un Zk-Snark?

Un Zk-Snark se compose de 3 algorithmes: G, P et V.

G est un générateur de clé prend une entrée «lambda» (qui doit rester confidentielle et ne doit en aucun cas être révélée) et un programme C. Il procède ensuite à la génération de deux clés accessibles au public, une clé de vérification pk et une vérification clé vk. Ces clés sont à la fois publiques et disponibles pour toutes les parties concernées.

P est le prouveur qui va utiliser 3 items comme entrée. La clé de démonstration pk, l’entrée aléatoire x, qui est accessible au public, et la déclaration privée dont ils veulent prouver la connaissance sans révéler ce qu’elle est réellement. Appelons cette déclaration privée “w”. L’algorithme P génère une preuve prf telle que: prf = P (pk, x, w).

L’algorithme du vérificateur V renvoie essentiellement une variable booléenne. Une variable booléenne n’a que deux choix, elle peut être TRUE ou elle peut être FALSE. Ainsi, le vérificateur prend la clé de vérification, l’entrée publique x et la preuve prf comme entrées telles que:

V (vk, x, prf)

..et retourne TRUE si le prouveur est correct et faux sinon.

Maintenant, à propos du paramètre lambda. La valeur du «Lambda» doit rester confidentielle car tout le monde peut alors l’utiliser pour générer de fausses preuves. Ces fausses preuves renverront une valeur TRUE indépendamment du fait que le prouveur ait réellement connaissance de l’instruction privée «w» ou non.

Fonctionnalité de Zk-Snark

Pour montrer la fonctionnalité d’un Zk-Snark, nous allons utiliser le même exemple de fonction que Christian Lundkvist a utilisé dans son article pour Consensys. Voici à quoi ressemble le programme d’exemple:

fonction C (x, w)

{

retour (sha256 (w) == x);

}

Fondamentalement, la fonction C prend en entrée 2 valeurs, une valeur de hachage publique «x» et la déclaration secrète qui doit être vérifiée «w». Si la valeur de hachage SHA-256 de w est égale à «x», la fonction renvoie TRUE sinon elle retourne FALSE. (SHA-256 est la fonction de hachage utilisée dans Bitcoin).

Ramenons nos vieux amis Anna et Carl pour cet exemple. Anna est le prouveur et Carl le sceptique est le vérificateur.

La première chose que Carl, en tant que vérificateur, doit faire est de générer la clé de vérification et de vérification à l’aide du générateur G. Pour cela, Carl doit générer la valeur aléatoire «lambda». Comme indiqué ci-dessus cependant, il doit être très prudent avec Lambda car il ne peut pas faire savoir à Anna sa valeur pour l’empêcher de créer de fausses preuves..

Quoi qu’il en soit, voici à quoi cela ressemblera:

  • G (C, lambda) = (pk, vk).

Maintenant que les deux clés sont générées, Anna doit prouver la validité de l’énoncé en générant la preuve. Elle va générer la preuve en utilisant l’algorithme de démonstration P. Elle va prouver qu’elle connaît la valeur secrète «w» qui hache (lors de l’analyse via SHA-256) pour donner la sortie x. Ainsi, l’algorithme de démonstration pour la génération de preuves ressemble à ceci:

  • prf = P (pk, x, w).

Maintenant qu’elle a généré la preuve «prf», elle va donner la valeur à Carl qui va enfin exécuter l’algorithme de vérification de Zk-Snarks.

Voici à quoi cela ressemblera:

  • V (vk, x, prf).

Ici, vk est la clé de vérification et x est la valeur de hachage connue et prf est la preuve qu’il a obtenue d’Anna. Si cet algorithme renvoie TRUE, cela signifie qu’Anna était honnête et qu’elle avait en effet la valeur secrète «w». S’il renvoie FALSE, cela signifie qu’Anna mentait en sachant ce que “w” était.

Comment Z-Cash est-il extrait?

L’extraction de blocs dans Zcash se fait via l’équihash.

Equihash est un algorithme de preuve de travail conçu par Alex Biryukov et Dmitry Khovratovich. Il est basé sur un problème d’anniversaire généralisé.

Une des principales raisons pour lesquelles equihash est utilisé est de rendre l’exploitation minière aussi hostile que possible à l’ASIC. Le problème avec des devises comme Bitcoin est que la plupart des pools de minage monopolisent le jeu minier en investissant beaucoup d’argent sur les ASIC pour extraire autant de bitcoin que possible..

Rendre votre ASIC minier hostile signifie que l’exploitation minière sera plus démocratique et moins centralisée.

Voici ce que le blog Zcash avait à dire à propos d’Equihash:

«Nous pensons également qu’il est peu probable qu’il y ait des optimisations majeures d’Equihash qui donneraient un avantage aux mineurs qui connaissent l’optimisation. C’est parce que le problème d’anniversaire généralisé a été largement étudié par les informaticiens et les cryptographes, et Equihash est proche du problème d’anniversaire généralisé. Autrement dit: il semble qu’une optimisation réussie d’Equihash serait probablement aussi une optimisation du problème d’anniversaire généralisé. “

Nous avons donc beaucoup entendu parler de ce «problème d’anniversaire», qu’est-ce que c’est? Quel est le problème d’anniversaire ou le paradoxe de l’anniversaire?

Si vous rencontrez un inconnu au hasard dans la rue, les chances sont très faibles pour vous deux d’avoir le même anniversaire. En fait, en supposant que tous les jours de l’année ont la même probabilité d’avoir un anniversaire, les chances qu’une autre personne partage votre anniversaire est de 1/365, soit 0,27%..

En d’autres termes, c’est vraiment bas.

Cependant, cela dit, si vous rassemblez 20 à 30 personnes dans une même pièce, les chances que deux personnes partagent exactement le même anniversaire augmentent astronomiquement. En fait, il y a 50 à 50 chances pour 2 personnes de partager le même anniversaire dans ce scénario!

Pourquoi cela arrive-t-il? C’est à cause d’une simple règle de probabilité qui va comme suit. Supposons que vous ayez N possibilités différentes qu’un événement se produise, alors vous avez besoin de la racine carrée de N éléments aléatoires pour qu’ils aient 50% de chances de collision.

Donc, en appliquant cette théorie pour les anniversaires, vous avez 365 possibilités différentes d’anniversaires, vous avez donc juste besoin de Sqrt (365), soit ~ 23 ~, des personnes choisies au hasard pour 50% de chances que deux personnes partagent des anniversaires.

Distribution de pièces Zcash

Puisque Zcash est un fork de Bitcoin, il y a quelques similitudes.

Zcash a également une offre maximale de 21 millions de pièces et elles devraient toutes être extraites d’ici 2032. Tous les quatre ans, la récompense de bloc est divisée par deux pour garder l’approvisionnement sous contrôle..

Contrairement à la plupart des autres pièces, Zcash n’a pas été pré-miné et n’est pas non plus financé par l’ICO.

Zcash avait un groupe d’investisseurs fermés qui ont alors financé avec 1 million de dollars pour lancer leur développement. Les investisseurs se sont alors vu promettre une récompense de 10% de l’offre totale de manière incrémentielle au cours de la première période de 4 ans. Cette récompense s’appelle “Récompense du fondateur”.

Certains de ces investisseurs fermés étaient des noms notables tels que Barry Silbert, Erik Voorhes, Roger Ver et Naval Ravikant..

La réglementation Zcash est-elle difficile?

La réglementation Zcash est évidemment difficile en raison des mesures de sécurité supplémentaires, cependant, il existe un moyen pour les forces de l’ordre de vérifier la réglementation en cas de besoin. Cela se fait via deux méthodes:

  • Afficher la clé.
  • Mémos.

Chaque utilisateur de Zcash a sa propre «clé de vue».

Si nécessaire, l’utilisateur peut partager sa clé de vue avec quelqu’un d’autre. La clé de vue supprime alors, par essence, toutes les transactions cachées. Avec la clé de vue, tout le monde pourra voir les transactions de cette personne en particulier et l’adresse du destinataire.

Les transactions Zcash sont également accompagnées d’un champ mémo.

Le champ mémo peut contenir des informations supplémentaires qui ne sont visibles que par le destinataire.

Selon Zooko Wilcox: «Ce mémo pourrait transporter des données entre les institutions financières partout où elles sont tenues par la loi de transmettre ces données.»

Zcash a-t-il un avenir?

Zcash faisait face à un problème de contrefaçon assez sérieux qui était une conséquence directe de leur programmation zk-snark.

Dans Zcash 1.0, les transactions privées reposent sur des paramètres publics SNARK pour la création et la vérification de preuves à connaissance nulle. La génération de ces paramètres publics SNARK nécessite la création d’une paire de clés publique / privée, puis la destruction de la clé privée et la conservation de la clé publique.

Cependant, c’est là que les choses se compliquent.

Si quelqu’un obtient cette clé privée, il peut créer des pièces de monnaie contrefaites!

Ce n’est généralement pas un problème dans un grand livre ouvert comme Bitcoin où toutes les transactions sont ouvertes au monde entier. Cependant, dans Zcash, la confidentialité empêche quiconque de vérifier l’état des pièces.

Voici comment Zooko Wilcox décrit la clé privée ou, comme il aime l’appeler, le problème des «déchets toxiques»:

«Nous appelons la clé privée« les déchets toxiques », et notre protocole est conçu pour garantir que les déchets toxiques ne naissent jamais du tout. Imaginez avoir un tas de différents sous-produits chimiques dans votre usine, dont chacun est individuellement inoffensif, mais si vous les laissez tous se mélanger, ils formeront une substance dangereuse difficile à gérer en toute sécurité. Notre approche consiste à séparer les produits chimiques inoffensifs individuellement jusqu’à ce qu’ils soient détruits, afin que les déchets toxiques ne se produisent jamais du tout. »

Ainsi, afin de réduire les chances qu’un attaquant de mettre la main sur les «déchets toxiques», une cérémonie élaborée a été organisée.

La cérémonie

La cérémonie est magnifiquement documentée dans le podcast Radiolab et vous pouvez écoute ici.

Le but de la cérémonie était le suivant:

Créez un calcul multipartite sécurisé dans lequel plusieurs personnes génèrent chacune un «fragment» de la paire de clés publique / privée.

Une fois que cela est créé, chaque membre détruit son fragment de clé privée, puis se réunit pour rejoindre les fragments de clé publique pour créer la clé publique.

Donc, fondamentalement, si un seul participant détruit son fragment de clé privée, il est impossible de le recréer. L’expérience n’échoue que si tous les participants ont été malhonnêtes.

Vous devriez lire Morgan Peck’s compte de première main de la cérémonie. Les efforts déployés par ces personnes pour le mener sont extrêmement louables.

Voici la déclaration de Zooko Wilcox sur les résultats de la cérémonie:

«Nous avons réalisé un exploit remarquable d’ingénierie cryptographique et infosec afin de générer des paramètres publics SNARK pour Zcash 1.0« Sprout ». La conception générale de cette cérémonie était basée sur le calcul multipartite, les trous d’air et les traces de preuves indélébiles. Six personnes différentes ont chacune participé à une partie de la cérémonie. Le calcul multipartite garantit que même si les cinq autres étaient compromis, ou étaient secrètement de connivence, pour essayer de reconstruire les déchets toxiques, un seul témoin se comportant honnêtement et supprimant son fragment de déchets toxiques l’empêcherait d’être reconstructible. . Malgré la force remarquable de cette cérémonie, j’ai l’intention de plaider pour une mise à niveau majeure du protocole Zcash l’année prochaine qui ajoutera une couche de détection en plus de la couche actuelle de prévention.

Ethereum + Zcash = <3 ?

Zcash est une crypto-monnaie lancée par Zerocoin Electic Coin Company le 9 septembre 2016 et est le premier exemple de crypto-monnaie mariant les concepts de la technologie blockchain avec Zk-Snarks. Il vise à fournir à ses utilisateurs des espaces de transaction totalement sûrs et protégés sans révéler de détails (tels que leurs adresses) à qui que ce soit..

Ethereum souhaite intégrer Zk-Snarks alors qu’il entre dans sa phase Metropolis et la façon dont ils prévoient de le faire est de créer une alliance avec Zcash qui comprendra un échange de valeur mutuel. Le développeur en chef de Zcash, Zooko Wilcox, a fait une présentation dans DevCon2 à Shanghai qui a exploré l’avenir d’une telle alliance. Selon lui, il existe 3 façons d’intégrer Z-Cash et par extension, zk-snarks à Ethereum.

La première méthode s’appelle Baby Zoe (Zoe = Zcash sur Ethereum). Il ajoute un pré-compilateur zk-snark sur Ethereum et crée un mini contrat intelligent Zcash sur Ethereum. L’idée est de voir si le système Ethereum peut créer un DAPP activé zk-snark

La deuxième méthode consiste à intégrer la calculabilité Ethereum à l’intérieur du Zcash. Comme Wilcox le dit, le plus grand atout d’Ethereum est sa calculabilité et les gens veulent voir s’ils peuvent l’intégrer sur une blockchain basée sur zk-snark comme Zcash. Les gens peuvent-ils créer des DAPPS sans aucune preuve de connaissances? C’est quelque chose qu’ils attendent de voir.

Le troisième et l’aspect le plus excitant est Project Alchemy. Il s’agit essentiellement de la connexion et de l’interopérabilité des deux blockchains de sorte que l’on puisse se déplacer de manière transparente entre les deux. La façon dont Zcash prévoit de le faire est de cloner le relais BTC. C’est un script Ethereum qui a été écrit pour créer un client léger Bitcoin dans Ethereum. Le clone Zcash utilisera le même concept pour créer un client léger Zcash dans Ethereum.

Si cela fonctionne, nous aurons le premier système de monnaie décentralisé au monde qui facilite la création de DAPPS sans aucune connaissance enracinée..

Combien vaut Zcash aujourd’hui?

Zcash est certainement l’une des pièces les plus chaudes et les plus excitantes du moment. Il fonctionne plutôt bien depuis sa création.

Crédit d’image: Nomics

Au moment de la rédaction, la capitalisation boursière de Zcash s’élève à 6348866483 $.

Le coût de 1 Zec s’élève à 70,80 $.

Il est assez évident de voir pourquoi les gens apprécient la confidentialité fournie par Zcash dans un monde de plus en plus transparent.

Qu'est-ce que Zcash? Un guide complet

En fait, Edward Snowden lui-même a donné son sceau d’approbation à Zcash:

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me