Protocole de preuve de brûlure : une application innovante sur Cardano
L'équipe Iagon a récemment relevé un défi en développant le protocole de preuve de combustion (PoB) pour l'écosystème Cardano. Cela fait suite à une question posée par une personnalité connue dans le domaine de la blockchain. Cet article présentera la solution de l'équipe Iagon, qui comprend principalement les aspects suivants :
Aperçu du mécanisme de preuve de brûlure et de ses applications
Les détails de mise en œuvre du plan PoB d'Iagon sur le réseau Cardano
Déployer et tester des contrats intelligents sur le réseau de test
Exécuter le protocole PoB en envoyant des jetons à l'adresse "trou noir".
Preuve de brûlage et ses applications
La brûlure de jetons ( consiste à détruire ), ce qui est une pratique courante, en envoyant essentiellement les jetons à une adresse « trou noir » inaccessible. Cette adresse n'a pas de clé privée, donc les jetons brûlés ne peuvent plus être récupérés. Le public peut vérifier que la destruction a bien eu lieu, mais ne connaît qu'une valeur de promesse « secrète ». Ce mécanisme peut empêcher les intermédiaires de censurer les fonds détruits.
Le mécanisme de combustion a plusieurs utilisations, il peut augmenter la valeur des jetons restants et servir de preuve d'engagement pour le protocole de blockchain. Une combustion de jetons à grande échelle peut créer une pression déflationniste, car elle réduit le nombre total de jetons en circulation. Bien que la combustion soit une transaction blockchain courante, elle nécessite néanmoins l'acceptation des mineurs. Bien que ces mécanismes aient certains avantages, il existe également des opposants à la combustion de jetons. Pour répondre à ce problème, Iagon s'engage à développer un protocole de combustion de jetons non censurable. Cette opération spéciale sans censure a attiré l'attention de personnalités bien connues dans l'industrie.
La sécurité de la preuve de brûlage repose sur le même mécanisme que les transactions de transfert de jetons, à savoir la fonction de hachage cryptographique. Ces fonctions sont faciles à calculer, mais difficiles à inverser. En essence, un léger changement dans l'entrée entraîne un résultat de sortie complètement différent. Cela signifie qu'inverser à partir de la sortie de la fonction de hachage prendra beaucoup de temps. En termes simples, en inversant le bit le moins significatif de la fonction de hachage cryptographique, on peut créer une adresse de trou noir. Tout ce qui est envoyé à cette adresse deviendra difficile ou impossible à récupérer.
La sécurité des transactions cryptographiques repose entièrement sur la cryptographie à clé publique et les fonctions de hachage cryptographiques : "Chaque fois que des fonds sont envoyés, un nouvel UTxO non dépensé ( est créé. "Cet UTxO enregistre le montant des fonds et la valeur de hachage de la clé publique du destinataire. Si le destinataire veut utiliser ces fonds, il doit signer une nouvelle transaction de dépense avec la même clé publique.
Pourquoi inverser le bit le moins significatif de la sortie de la fonction de hachage, au lieu d'utiliser directement la valeur de hachage 0x0 ? La raison est que l'utilisation d'une valeur connue rend la combustion immédiatement visible. Cependant, la conception du protocole est de brûler d'abord les fonds, puis de prouver qu'ils ont été brûlés dans une étape distincte avec ). Pour ce faire, il est nécessaire de créer d'abord un hachage de la valeur d'engagement. Ensuite, la valeur d'engagement montre qu'une adresse de trou noir a été créée.
Smart contract de preuve de brûlure sur le réseau Cardano
Les contrats intelligents Cardano sont des programmes qui fonctionnent sur le réseau Cardano, permettant aux développeurs d'exécuter des transactions financières ( selon des règles prédéfinies. Les contrats intelligents visent à établir des transactions transparentes et vérifiables entre les parties. Récemment, l'essor des services financiers décentralisés et des organisations décentralisées a propulsé une croissance rapide des applications de contrats intelligents.
Contrairement aux contrats intelligents d'Ethereum, Cardano utilise une structure différente. Il permet aux utilisateurs de simuler chaque transaction dans leur propre portefeuille, afin d'augmenter la difficulté des attaques sur le réseau. Les changements générés par les transactions sont enregistrés après validation par les nœuds de la blockchain. Pour cela, le contrat intelligent de Cardano contient trois composants :
Script de rachat : autorise ou interdit les dépenses des eUTxOs
Script de portefeuille : représente l'exécution de l'utilisateur, utilisé pour racheter des fonds et créer de nouveaux eUTxOs.
eUTxOs : chaque eUTxO contient des fonds et un point de données )datum(, utilisé par le bénéficiaire pour déterminer quand il peut réutiliser ces fonds.
Cela signifie que les contrats intelligents Cardano n'ont pas d'état centralisé sur le registre. Chaque eUTxO a un état indépendant ) données (, et est indivisible de ses fonds. Cela donne lieu aux quatre opérations possibles suivantes :
Brûlage : envoyer des fonds à une adresse de trou noir avec une valeur d'engagement de hachage secret.
Vérification de la combustion : vérifier que la combustion d'une valeur d'engagement a effectivement eu lieu.
Verrouiller : envoyer des fonds à une adresse avec clé
Rachat : Rachat des fonds bloqués auparavant
Il est important de noter que le point de terminaison s'exécute dans le portefeuille de l'utilisateur. Une fois que le script de point de terminaison a terminé de s'exécuter dans le portefeuille, la transaction générée sera transférée sur la blockchain. Dans ce cas, cette transaction déplacera des fonds vers le script de rachat. Ce script vérifie que les fonds ne peuvent être accessibles que par l'adresse cible qui détient son hachage.
Dans l'opération de verrouillage, la valeur de hachage peut être notre propre adresse. Dans l'opération de brûlage, la valeur de hachage pointe vers une adresse de trou noir. Nous réalisons cela en donnant à la valeur de hachage un engagement secret, puis en l'inversant. Étant donné que nous utilisons une fonction de hachage cryptographique, il est presque impossible de trouver une valeur de hachage correspondant au résultat.
Les intermédiaires qui prennent en charge les transactions ne peuvent pas savoir si la transaction est un brûlage ou un verrouillage. Avec ce script, les intermédiaires ne peuvent pas examiner sélectivement des transactions de brûlage. Les brûlages et les verrouillages utilisent le même format de racheteur, seul l'initiateur de la transaction sait s'il s'agit d'une transaction de brûlage ou de verrouillage. La valeur de brûlage peut être vérifiée en utilisant un point de terminaison de brûlage qui valide la valeur d'engagement donnée. Avant la publication de la valeur d'engagement, personne ne sait combien de fonds ont été détruits.
Déploiement de la testnet des contrats intelligents
Pour déployer un contrat intelligent sur le réseau de test, il est nécessaire d'exécuter les étapes suivantes :
Installer la chaîne d'outils Haskell
Construire des scripts Plutus
Démarrer le conteneur de connexion au protocole Cardano et au portefeuille
Récupérer le portefeuille et obtenir l'ID du portefeuille
Exécuter l'opération de brûlage de jetons
Exécuter l'opération de validation de la combustion
En suivant les étapes ci-dessus, l'extérieur ne peut pas savoir si la transaction est une combustion ou un verrouillage. Cependant, après la publication de ce script, les gens pourraient essayer de compiler un refus de rachat, correspondant au hachage du script de rachat qu'ils ont proposé. Cela nécessite un effort considérable, mais cela pourrait entraîner la censure de certaines combustions. Pour éviter que cela ne se produise et rendre les violations plus difficiles à mettre en œuvre, Iagon s'efforce d'améliorer la sécurité de cette solution.
Des contrats intelligents aux scripts de portefeuille
En tirant parti du fait que la plupart des opérations des contrats intelligents se déroulent dans le portefeuille de l'utilisateur, il est possible de créer des schémas d'exécution utilisant uniquement le portefeuille, rendant ainsi les contrats intelligents non nécessaires. La signification pratique de cette approche est qu'il est impossible d'empêcher sélectivement les transactions de contrats intelligents correspondantes à la combustion. Cependant, ceux qui souhaitent empêcher tous les brûleurs peuvent atteindre cet objectif en bloquant tous les scripts. En n'utilisant que le portefeuille, la seule façon de censurer les brûleurs est de censurer toutes les transactions Cardano. Cela représente une résistance ultime à la censure.
Pour réaliser cela, il est nécessaire de remplacer le hachage de la clé publique par le hachage de la valeur d'engagement et d'inverser le bit le moins significatif de la valeur d'engagement. Mais ce n'est pas suffisant. Cardano empêchera les erreurs d'entrée dans l'adresse en vérifiant la structure et le code CRC. Par conséquent, la manière la plus simple de générer une adresse à partir de l'engagement est d'utiliser des scripts spécifiques et la bibliothèque API de Cardano.
Vous pouvez utiliser le code fourni pour générer une adresse de brûlage, puis soumettre la transaction à la blockchain Cardano. Pour vérifier la combustion, il est nécessaire de consulter les transactions envoyées à l'adresse de brûlage.
Cet article divise la mise en œuvre du protocole de preuve de brûlage en deux méthodes : les contrats intelligents et les transactions de portefeuille. Cependant, en raison du manque d'infrastructure nécessaire pour les contrats intelligents Alonzo, comme la bibliothèque PAB ), nous recommandons d'utiliser les scripts de portefeuille. Quoi qu'il en soit, la bibliothèque PAB soutiendra le développement d'applications basées sur Cardano dans un avenir proche, et combinée avec les scripts de portefeuille, cela pourrait créer une solution de contrat intelligent plus complexe et plus résistante à la censure. Si vous souhaitez en savoir plus sur cette solution, vous pouvez consulter toutes les informations pertinentes sur Github.
Cette page peut inclure du contenu de tiers fourni à des fins d'information uniquement. Gate ne garantit ni l'exactitude ni la validité de ces contenus, n’endosse pas les opinions exprimées, et ne fournit aucun conseil financier ou professionnel à travers ces informations. Voir la section Avertissement pour plus de détails.
Mise en œuvre du protocole de preuve de brûlage sur Cardano : l'équipe Iagon crée une solution anti-censure
Protocole de preuve de brûlure : une application innovante sur Cardano
L'équipe Iagon a récemment relevé un défi en développant le protocole de preuve de combustion (PoB) pour l'écosystème Cardano. Cela fait suite à une question posée par une personnalité connue dans le domaine de la blockchain. Cet article présentera la solution de l'équipe Iagon, qui comprend principalement les aspects suivants :
Preuve de brûlage et ses applications
La brûlure de jetons ( consiste à détruire ), ce qui est une pratique courante, en envoyant essentiellement les jetons à une adresse « trou noir » inaccessible. Cette adresse n'a pas de clé privée, donc les jetons brûlés ne peuvent plus être récupérés. Le public peut vérifier que la destruction a bien eu lieu, mais ne connaît qu'une valeur de promesse « secrète ». Ce mécanisme peut empêcher les intermédiaires de censurer les fonds détruits.
Le mécanisme de combustion a plusieurs utilisations, il peut augmenter la valeur des jetons restants et servir de preuve d'engagement pour le protocole de blockchain. Une combustion de jetons à grande échelle peut créer une pression déflationniste, car elle réduit le nombre total de jetons en circulation. Bien que la combustion soit une transaction blockchain courante, elle nécessite néanmoins l'acceptation des mineurs. Bien que ces mécanismes aient certains avantages, il existe également des opposants à la combustion de jetons. Pour répondre à ce problème, Iagon s'engage à développer un protocole de combustion de jetons non censurable. Cette opération spéciale sans censure a attiré l'attention de personnalités bien connues dans l'industrie.
La sécurité de la preuve de brûlage repose sur le même mécanisme que les transactions de transfert de jetons, à savoir la fonction de hachage cryptographique. Ces fonctions sont faciles à calculer, mais difficiles à inverser. En essence, un léger changement dans l'entrée entraîne un résultat de sortie complètement différent. Cela signifie qu'inverser à partir de la sortie de la fonction de hachage prendra beaucoup de temps. En termes simples, en inversant le bit le moins significatif de la fonction de hachage cryptographique, on peut créer une adresse de trou noir. Tout ce qui est envoyé à cette adresse deviendra difficile ou impossible à récupérer.
La sécurité des transactions cryptographiques repose entièrement sur la cryptographie à clé publique et les fonctions de hachage cryptographiques : "Chaque fois que des fonds sont envoyés, un nouvel UTxO non dépensé ( est créé. "Cet UTxO enregistre le montant des fonds et la valeur de hachage de la clé publique du destinataire. Si le destinataire veut utiliser ces fonds, il doit signer une nouvelle transaction de dépense avec la même clé publique.
Pourquoi inverser le bit le moins significatif de la sortie de la fonction de hachage, au lieu d'utiliser directement la valeur de hachage 0x0 ? La raison est que l'utilisation d'une valeur connue rend la combustion immédiatement visible. Cependant, la conception du protocole est de brûler d'abord les fonds, puis de prouver qu'ils ont été brûlés dans une étape distincte avec ). Pour ce faire, il est nécessaire de créer d'abord un hachage de la valeur d'engagement. Ensuite, la valeur d'engagement montre qu'une adresse de trou noir a été créée.
Smart contract de preuve de brûlure sur le réseau Cardano
Les contrats intelligents Cardano sont des programmes qui fonctionnent sur le réseau Cardano, permettant aux développeurs d'exécuter des transactions financières ( selon des règles prédéfinies. Les contrats intelligents visent à établir des transactions transparentes et vérifiables entre les parties. Récemment, l'essor des services financiers décentralisés et des organisations décentralisées a propulsé une croissance rapide des applications de contrats intelligents.
Contrairement aux contrats intelligents d'Ethereum, Cardano utilise une structure différente. Il permet aux utilisateurs de simuler chaque transaction dans leur propre portefeuille, afin d'augmenter la difficulté des attaques sur le réseau. Les changements générés par les transactions sont enregistrés après validation par les nœuds de la blockchain. Pour cela, le contrat intelligent de Cardano contient trois composants :
Cela signifie que les contrats intelligents Cardano n'ont pas d'état centralisé sur le registre. Chaque eUTxO a un état indépendant ) données (, et est indivisible de ses fonds. Cela donne lieu aux quatre opérations possibles suivantes :
Il est important de noter que le point de terminaison s'exécute dans le portefeuille de l'utilisateur. Une fois que le script de point de terminaison a terminé de s'exécuter dans le portefeuille, la transaction générée sera transférée sur la blockchain. Dans ce cas, cette transaction déplacera des fonds vers le script de rachat. Ce script vérifie que les fonds ne peuvent être accessibles que par l'adresse cible qui détient son hachage.
Dans l'opération de verrouillage, la valeur de hachage peut être notre propre adresse. Dans l'opération de brûlage, la valeur de hachage pointe vers une adresse de trou noir. Nous réalisons cela en donnant à la valeur de hachage un engagement secret, puis en l'inversant. Étant donné que nous utilisons une fonction de hachage cryptographique, il est presque impossible de trouver une valeur de hachage correspondant au résultat.
Les intermédiaires qui prennent en charge les transactions ne peuvent pas savoir si la transaction est un brûlage ou un verrouillage. Avec ce script, les intermédiaires ne peuvent pas examiner sélectivement des transactions de brûlage. Les brûlages et les verrouillages utilisent le même format de racheteur, seul l'initiateur de la transaction sait s'il s'agit d'une transaction de brûlage ou de verrouillage. La valeur de brûlage peut être vérifiée en utilisant un point de terminaison de brûlage qui valide la valeur d'engagement donnée. Avant la publication de la valeur d'engagement, personne ne sait combien de fonds ont été détruits.
![])https://img-cdn.gateio.im/webp-social/moments-f7f162dc2a412b8d5ff903636b2e631b.webp(
Déploiement de la testnet des contrats intelligents
Pour déployer un contrat intelligent sur le réseau de test, il est nécessaire d'exécuter les étapes suivantes :
En suivant les étapes ci-dessus, l'extérieur ne peut pas savoir si la transaction est une combustion ou un verrouillage. Cependant, après la publication de ce script, les gens pourraient essayer de compiler un refus de rachat, correspondant au hachage du script de rachat qu'ils ont proposé. Cela nécessite un effort considérable, mais cela pourrait entraîner la censure de certaines combustions. Pour éviter que cela ne se produise et rendre les violations plus difficiles à mettre en œuvre, Iagon s'efforce d'améliorer la sécurité de cette solution.
![])https://img-cdn.gateio.im/webp-social/moments-7777b1db89195a287d84464f2b80b5e9.webp(
Des contrats intelligents aux scripts de portefeuille
En tirant parti du fait que la plupart des opérations des contrats intelligents se déroulent dans le portefeuille de l'utilisateur, il est possible de créer des schémas d'exécution utilisant uniquement le portefeuille, rendant ainsi les contrats intelligents non nécessaires. La signification pratique de cette approche est qu'il est impossible d'empêcher sélectivement les transactions de contrats intelligents correspondantes à la combustion. Cependant, ceux qui souhaitent empêcher tous les brûleurs peuvent atteindre cet objectif en bloquant tous les scripts. En n'utilisant que le portefeuille, la seule façon de censurer les brûleurs est de censurer toutes les transactions Cardano. Cela représente une résistance ultime à la censure.
Pour réaliser cela, il est nécessaire de remplacer le hachage de la clé publique par le hachage de la valeur d'engagement et d'inverser le bit le moins significatif de la valeur d'engagement. Mais ce n'est pas suffisant. Cardano empêchera les erreurs d'entrée dans l'adresse en vérifiant la structure et le code CRC. Par conséquent, la manière la plus simple de générer une adresse à partir de l'engagement est d'utiliser des scripts spécifiques et la bibliothèque API de Cardano.
Vous pouvez utiliser le code fourni pour générer une adresse de brûlage, puis soumettre la transaction à la blockchain Cardano. Pour vérifier la combustion, il est nécessaire de consulter les transactions envoyées à l'adresse de brûlage.
![])https://img-cdn.gateio.im/webp-social/moments-fed84a6717b012408df1b428b2d80586.webp(
Conclusion
Cet article divise la mise en œuvre du protocole de preuve de brûlage en deux méthodes : les contrats intelligents et les transactions de portefeuille. Cependant, en raison du manque d'infrastructure nécessaire pour les contrats intelligents Alonzo, comme la bibliothèque PAB ), nous recommandons d'utiliser les scripts de portefeuille. Quoi qu'il en soit, la bibliothèque PAB soutiendra le développement d'applications basées sur Cardano dans un avenir proche, et combinée avec les scripts de portefeuille, cela pourrait créer une solution de contrat intelligent plus complexe et plus résistante à la censure. Si vous souhaitez en savoir plus sur cette solution, vous pouvez consulter toutes les informations pertinentes sur Github.