zkLedger est une technologie qui démontre qu'il est possible d'améliorer la sécurité, la rapidité, la confidentialité et la décentralisation, en utilisant la cryptographie et d'autres technologies associées à la chaîne de blocs.
Là l'intimité dans blockchain C'est toujours un domaine en recherche constante, et un exemple clair est zkLedger, une technologie qui vise à tirer parti du meilleur du monde de Tests ZKP ou Zero Knowledge, pour créer des plates-formes blockchain axées sur la sécurité et la confidentialité.
Mais qu'est-ce qui différencie le zkLedger du reste de la technologie blockchain qui existe déjà? Quels sont ses avantages? Comment ça marche?
zkLedger, une blockchain haute vitesse, confidentialité et sécurité
Le développement de zkLedger a commencé avec un papier présenté lors de l'événement 15e Symposium USENIX sur la conception et la mise en œuvre de systèmes en réseau (NSDI 2018) par Neha Narula (MIT Media Lab), Willy Vasquez (Université du Texas) et Madars Virza (MIT Media Lab). Au cours de l'événement, Narula a décrit zkLedger comme suit:
zkLedger, est le premier système conçu pour protéger la vie privée des participants au grand livre et fournir un audit rapide et manifestement correct en toutes circonstances, spécialement conçu pour les entreprises, les banques et les entités financières.
L'idée en ce sens est claire : créer un ssystème qui peut être facilement audité, sans compromettre la confidentialité à tout moment des personnes qui utilisent ce système.
Pour y parvenir, zkLedger s'appuie sur son système d'audit sur un schéma de cryptographie qui utilise des preuves non interactives à connaissance nulle de type Schnorr. Ceci est une alternative au connu zk-SNARK y zk-STARK. La principale différence est que les ZKP de type Schnorr, ne nécessitent pas une configuration fiable et ils ne reposent que sur des hypothèses cryptographiques largement utilisées. De plus, ces hypothèses cryptographiques sont plus faciles à programmer et donc plus faciles à déboguer et à mettre en œuvre.
L'intégrité est la clé de zkLedger
D'autre part, zkLedger fournit un système d'intégrité, dont la base est que le registre, ou grand livre, ne peut pas cacher des transactions à l'auditeur, et les participants peuvent utiliser des mécanismes pour produire et vérifier rapidement des transactions. Cette fonctionnalité offre deux avantages :
- L'auditabilité du réseau garantit que tout dans le grand livre est visible pour l'auditeur (ou quiconque a ce rôle au sein du système), laissant aux autres l'accès nécessaire pour vérifier qu'une transaction a été effectuée et rien de plus. En d'autres termes, des informations telles que le "graphique ou le lien des transactions", les montants, les adresses ou toute donnée mettant en danger la vie privée des parties, sont accessibles "ouvertement" au public.
- Offre un vitesse de traitement très élevéeComme les tests de Schnorr sont plus courts, ils sont plus faciles à générer et à traiter. De plus, l'utilisation de la mise en cache rend le système de transactions et d'audit rapide. Un bon exemple de cela est qu'un processus d'audit sur un zkLedger peut prendre environ 10 millisecondes pour vérifier 100 XNUMX transactions.
Les audits, le point fort de zkLedger
Ce qui précède est amélioré en raison du fait que; zkLedger dispose depuis ses bases et son code d'une série de fonctionnalités conçues pour faciliter les audits. Par exemple, zkLedger dispose de fonctionnalités d'audit natives, qui vous permettent d'obtenir facilement des sommes, des moyennes mobiles, des variances, des écarts types et des ratios.
Ainsi, un auditeur peut utiliser ces primitives pour mesurer le levier financier, la liquidité des actifs, les expositions au risque de contrepartie et la concentration du marché, pour le système dans son ensemble ou pour des participants individuels.
Comme on peut le voir, ce type de technologie est particulièrement utile pour les entreprises, les banques et les services financiers qui veulent et exigent ce niveau d'audit afin de se conformer aux exigences réglementaires, mais qui ont en même temps besoin de la flexibilité et de la puissance de la blockchain. .pour vos opérations.
Principales caractéristiques de zkLedger
Parmi les principales caractéristiques de zkLedger, nous pouvons mentionner les suivantes:
C'est une blockchain avec des capacités étendues de confidentialité et d'audit
zkLedger vise à Maintenez un niveau élevé de confidentialité et d'audit sur vos systèmes. Pour atteindre ces deux objectifs, zkLedger fonde son fonctionnement cryptographique sur un nouveau type de preuves ZKP de type Schnorr, plus précisément sur les General Schnorr Proofs et un système d'engagements Pedersen.
Les engagements de Pedersen permettent à zkLedger maintenir la confidentialité du système et en même temps accepter le fonctionnement d'un système d'audit. Ceci est possible car les commits Pedersen autorisent zkLedger, créer des structures au niveau consensuel du réseau, que l'auditeur peut ensuite vérifier et faire son travail. L'auditeur dans tous les cas vous ne pourrez accéder qu'aux informations dont vous avez besoin, et qu'il est dans le système de consensus du réseau, refusant l'accès privilégié à toute information qui n'est pas autorisée. Dans un sens, le système Pedersen ne fournit que des informations de travail à l'auditeur.
Les informations proposées par le système Pedersen sont protégées dans tous les cas par un ZKP de type Schnorr (Schnorr General Tests). Ainsi, les informations proposées ne sont qu'un résultat cryptographique que l'auditeur peut vérifier sur le réseau, sans avoir réellement accès aux données réelles de nos opérations.
Une blockchain à haut rendement
L'utilisation des engagements Pedersen et ZKP de type Schnorr fait également de zkLedger un réseau construit pour être très efficace. Schnorr est une technologie conçue avec le principe d'être rapide à générer et de vérifier qu'elle occupe très peu d'espace de stockage. Dans ce cas, l'utilisation de Schnorr dans zkLedger garantit que les nœuds n'ont pas besoin d'être extrêmement puissants pour faire leur travail. De plus, les besoins de stockage sont considérablement réduits.
La vérification de consensus zkLedger implémente un système de rôle assez intéressant qui offre des transactions très rapides. En premier lieu, les participants n'ont pas à interagir pour construire des preuves de la transactionAu lieu de cela, le dépensier peut créer lui-même la transaction. À ce stade, si un acteur malveillant tente d'encoder des valeurs incorrectes dans les commits d'autres acteurs, ils échoueront car seules les parties qui disposent des informations relatives à la dépense (le dépensier qui a construit la transaction, le collecteur qui sait combien ils doivent payer) ils peuvent répondre avec certitude au test cryptographique et à l'audit ultérieur du réseau.
Ce système est connu sous le nom d'audit et de test de cohérence des jetons zkLedger, et il peut être vérifié publiquement, améliorant la sécurité des paiements et, en même temps, les rendant très rapides. De plus, pour éviter la génération de pièces qui n'existent pas, zkLedger inclut une série de règles de consensus qui évitent ce comportement (dans le même style que ce qui se passe dans Monero (XMR)) créant une série de tests de portée qui évitent cette attaque.
Balance Test, l'algorithme de consensus zkLedger
L'une des principales caractéristiques de zkLedger est son algorithme de consensus appelé Preuve d'équilibre (PoBal) ou test d'équilibre. La preuve d'équilibre vise deux choses:
- Ce zkLedger est un réseau haut débit.
- Que il est impossible de cacher les soldes ou des informations de compte.
De cette manière, Proof of Balance répond aux deux besoins en utilisant une série de tests cryptographiques conçus à cet effet. Tout d'abord, une transaction dans zkLedger est une entrée pour chaque "banque", cette entrée a une série d'engagements cryptographiques uniques qui les lient sans ambiguïté à ladite transaction. L'objectif de ce premier système est de garantir que :
- Une opération de transfert il ne peut pas créer ou détruire des actifs.
- La « banque de dépenses » doit donner son consentement Pour transfert.
Dans cette situation, zkLedger a créé une série de tests cryptographiques pour s'assurer que le dépensier peut gérer ces fonds et les utiliser librement et de manière autonome. Le premier de ces tests est Preuve de soldes qui permet de savoir que le dépensier a réellement des actifs en sa possession pour l'opération.
Puis Un deuxième test est effectué pour s'assurer que la "banque" a bien les actifs à transférer. C'est possible grâce à l'Asset Test, l'idée de ce test est de démontrer que l'utilisateur a vraiment les atouts au sein de la banque de dépenses pour réaliser la transaction.
Différence avec d'autres modèles
Dans une blockchain normale (comme dans Bitcoin (BTC)) cela est possible en UTXO et l'arborescence des transactions créée par les transactions précédentes jusqu'à atteindre le coinbase.
Cependant, zkLedger ne suit pas ce système, en fait, zkLedger ne rend à aucun moment l'arborescence des transactions publique, la preuve d'actifs est donc chargée de vérifier cryptographiquement que l'utilisateur dispose d'actifs et que ladite transaction peut être effectuée sans problèmes de double dépense ou de génération de pièces inexistantes.
Enfin, le Test de cohérence garantit que les banques ne peuvent pas ajouter des données au grand livre qui empêchent une autre banque d'ouvrir ses engagements au vérificateur. De cette manière, le système est protégé afin que chacun puisse y participer sur un pied d'égalité.
Vitesse de transaction
La preuve de solde (PoBal) est la clé de la vitesse de fonctionnement élevée de zkLedger. Lors de tests en laboratoire, zkLedger a été en mesure de surpasser les autres technologies de blockchain populaires. Dans un réseau de 12 serveurs Xeon (4 Core) et 24 Go de RAM, zkLedger a pu :
- Auditez 100 XNUMX transactions en 6 millisecondes, en mode en ligne.
- Auditez 100 XNUMX transactions en 3500 millisecondes, en mode hors ligne.
- Créez une entrée (transaction) en 8 millisecondes. Ceci traduit en secondes est 125 XNUMX transactions par seconde, mais la configuration évolue en mode linéaire. De plus, le système est parallélisable augmentation de la capacité de traitement à mesure que le réseau s'agrandit.
Cela place zkLedger, au niveau des réseaux privés à haut débit comme le cas de HyperLedger, avec la mise en garde que votre système est plus ouvert et public pour la vérification des informations.
Cas d'utilisation de ZkLedger
Comme nous l'avons mentionné au début, le principal cas d'utilisation de zkLedger est axé sur la possibilité de offrir une infrastructure blockchain aux banques, entreprises et autres entités financières. L'utilité de la technologie dans cet environnement est incontestable et c'est là que ses capacités d'audit, sa vitesse et ses propriétés de confidentialité sont les plus éblouissantes.
Un bon cas d'utilisation de la technologie serait de créer un CBDC ou monnaie numérique de la banque centrale, où les principes de confidentialité que l'argent et ces systèmes doivent avoir à tout moment sont vraiment respectés.
Un autre environnement qui peut bénéficier de ce système est celui des compagnies d'assurance. Dans ces cas, zkLedger peut s'assurer de l'adéquation des informations partagées entre les compagnies d'assurance, banques et autres entités, tout en maintenant l'auditabilité du système dans tous les sens, sans avoir à révéler des informations sensibles entre les acteurs concernés, y compris les clients et les conditions dans lesquelles leurs clauses d'assurance ont été activées.
Cours Ethereum 101
MoyenneDans ce cours Ethereum 101, vous approfondirez vos connaissances en cryptographie en entrant dans l'écosystème Ethereum et en sachant tout sur ses caractéristiques, son évolution et ses outils.