zk-SNARK

 Définition

Un zk-SNARK (argument de connaissance succinct non interactif à divulgation nulle de connaissance) est un système de preuve cryptographique permettant à une partie (le prouveur) de convaincre une autre partie (le vérificateur) qu'elle connaît un secret ou qu'un calcul a été correctement effectué, sans révéler le secret lui-même et sans nécessiter d'échanges. La propriété « succincte » signifie que la preuve est petite (souvent quelques centaines d'octets seulement) et rapide à vérifier, quelle que soit la complexité du calcul à prouver. Les zk-SNARK constituent le fondement mathématique de Zcash. protocole de confidentialité, l'ère zkSync Enroulement ZK, Les systèmes blockchain basés sur Groth16, et de plus en plus sophistiqués Applications DeFi.

 Propriétés de zk-SNARK expliquées

« zk-SNARK = Connaissance nulle + Succinct + Non interactif + Argument de connaissance »

Preuve à divulgation nulle de connaissance : le prouveur convainc le vérificateur sans révéler le mot de passe secret (« Je connais le mot de passe ») → Preuve obtenue sans divulguer le mot de passe

En bref : la preuve est très légère (~200 octets) et rapide à vérifier (quelques millisecondes), même si le calcul sous-jacent a pris des heures.

Non interactif : un seul message de preuve (pas d’échange) Le prouveur génère la preuve → L’envoie au vérificateur → Terminé (contrairement aux protocoles « interactifs » qui nécessitent plusieurs tours).

Argument de connaissance : Preuve convaincante que le prouveur « connaît » effectivement le secret. Solidité cryptographique : impossible à falsifier sans connaître le secret.

 Applications de zk-SNARK dans le domaine des cryptomonnaies

ApplicationUtilisation de zk-SNARKPasserelle
Transactions privéesJustifiez la validité du transfert sans révéler le montant ni l'expéditeur.Zcash (transactions protégées)
Rollups ZKDémontrer la bonne exécution de milliers de transactionszkSync Era, Scroll, Linea
DeFi privéeDémontrer un solde suffisant sans révéler le montantRéseau aztèque
Vérification d'identitéProuver un attribut sans révéler son identitéID de polygone
Ponts ZKProuver l'état de la chaîne source à la chaîne de destinationzkBridge, Succinct
VoteProuvez que vous avez voté correctement sans révéler votre vote.Protocole MACI

 Limitations de zk-SNARK

LimitationDétails
Configuration de confiance requiseLa plupart des zk-SNARK (Groth16) nécessitent une cérémonie unique de « déchets toxiques ».
Calcul coûteuxLa génération de preuves est une opération intensive (qui s'améliore grâce à l'accélération matérielle).
Vulnérabilité quantiqueLes zk-SNARKs actuels ne sont pas résistants à la physique quantique (en utilisant des courbes elliptiques).
Complexité du codeDes mathématiques extrêmement complexes ; difficiles à auditer

Configuration de confiance : Les zk-SNARKs basés sur Groth16 nécessitent une cérémonie de calcul multipartite pour générer les paramètres initiaux. Si un participant conserve le secret « toxique », il pourrait produire de fausses preuves. Le système de confiance Zcash impliquait six participants (cérémonie Sprout) afin de minimiser ce risque.

Les zk-STARKs (voir les liens connexes) ne nécessitent pas d'installations de confiance et sont résistant au quantum mais produire des épreuves plus importantes.

 QFP

Q : Quelle est la différence entre zk-SNARK et zk-STARK ?

SNARKs : Preuves plus courtes (200 octets), vérification plus rapide, nécessitent une configuration de confiance, non résistantes à l’informatique quantique. STARKs : Preuves plus longues (40 à 200 Ko), ne nécessitent pas de configuration de confiance, résistantes à l’informatique quantique. Pour les applications blockchain nécessitant des vérifications fréquentes (ZK rollups), la taille réduite des preuves et la rapidité de vérification des SNARKs les rendent souvent préférables malgré la nécessité d’une configuration de confiance.

Q : Comment les rollups ZK utilisent-ils les zk-SNARK ?

Un algorithme ZK Rollup traite des milliers de transactions hors chaîne, puis génère une preuve zk-SNARK unique attestant de leur validité. Cette preuve (quelques centaines d'octets) est ensuite envoyée à Ethereum, qui la vérifie en quelques millisecondes, prouvant ainsi la validité de milliers de transactions avec un minimum de données sur la chaîne. C'est cette magie mathématique qui permet à Ethereum d'atteindre une scalabilité de 100 à 1 000 fois supérieure.

Q : L'implémentation zk-SNARK de Zcash est-elle reconnue comme sécurisée ?

Le protocole Sapling de Zcash (2018) utilise le zk-SNARK de Groth16 et a fait l'objet d'audits approfondis. La cérémonie des Puissances de Tau de Zcash a réuni 87 participants. Aucune falsification de transactions Zcash protégées n'a jamais été démontrée en pratique. Le risque lié à la configuration de confiance, bien que réel, est atténué par une large participation.

Conseil UPay : Comprendre le concept des zk-SNARKs (prouver la véracité d'une affirmation sans en révéler le secret) permet d'appréhender un domaine en pleine expansion du développement blockchain. Tous les principaux agrégats ZK (zkSync, Scroll, Polygon zkEVM), tous les protocoles de confidentialité (Aztec, Zcash) et un nombre croissant de solutions de conformité utilisent les zk-SNARKs ou des systèmes de preuve similaires. L'idée de base – un calcul vérifiable sans divulgation de données – est sans doute l'innovation cryptographique la plus transformatrice dans le domaine de la blockchain depuis la preuve de travail du Bitcoin.

Avertissement : Ce contenu est fourni à des fins éducatives uniquement et ne constitue pas un conseil financier.

Payer — Rendre la crypto encyclopédique

Actualités et Événements