Lorsque vous pensez aux cryptomonnaies, des termes comme "blockchain" ou "technologie de registre distribué" pourraient vous venir à l'esprit. Depuis la création de Bitcoin, des centaines d'autres monnaies numériques ont émergé. La plupart reposent sur des architectures de réseau similaires, permettant aux utilisateurs de transférer de la valeur ou d'interagir avec des applications décentralisées.
Dans les systèmes blockchain, de nouveaux blocs sont ajoutés périodiquement à la chaîne en croissance. Chaque bloc est lié cryptographiquement à son prédécesseur par une valeur de hachage. Ces blocs contiennent les transactions récentes diffusées par les utilisateurs.
Cependant, il y a généralement une période d'attente entre la diffusion de la transaction et son inclusion dans un bloc. Imaginez attendre à une gare. En fonction de la taille du wagon (taille du bloc) et du nombre d'autres personnes en attente (transactions en attente), vous pourriez ne pas attraper le prochain train. Ni même celui qui suit. Les temps de confirmation peuvent varier de quelques secondes à plusieurs heures.
Pour beaucoup, ce compromis est acceptable, offrant une grande sécurité sans coordination centralisée. D'autres soutiennent que la technologie blockchain a une date d'expiration, citant des problèmes de scalabilité comme un obstacle à l'adoption généralisée à long terme.
Certains croient que l'avenir des réseaux de paiement en cryptomonnaie réside dans une architecture complètement différente—Graphes acycliques dirigés (DAGs).
Qu'est-ce qu'un DAG ?
Un DAG est une structure de données alternative - pensez-y comme une base de données reliant différentes pièces d'information. Décomposons le terme "Graphique Acyclique Dirigé" pour comprendre sa signification.
Graphe acyclique dirigé.
Conceptuellement, les DAG ressemblent à l'image ci-dessus. Ils se composent de sommets (sphères) connectés par des arêtes (lignes). Ils sont orientés, se déplaçant dans une seule direction (comme indiqué par des flèches). Et ils sont acycliques (non circulaires), ce qui signifie que les sommets ne se bouclent pas sur eux-mêmes - si vous partez d'un point et suivez le graphique, vous ne pouvez pas revenir au même point. Cela deviendra plus clair sous peu.
De telles structures de données sont souvent utilisées pour modéliser des données. Dans les domaines scientifiques ou médicaux, les DAG peuvent être utilisés pour observer les relations entre les variables et déterminer comment elles s'influencent mutuellement. Par exemple, vous pourriez considérer des facteurs comme la nutrition, les cycles de sommeil et les symptômes physiques pour cartographier leurs connexions et comprendre leur impact sur un patient.
Pour nos besoins, nous sommes plus intéressés par la façon dont les DAG aident à atteindre un consensus dans les réseaux de cryptomonnaie distribués.
Comment fonctionnent les DAG?
Dans les cryptomonnaies basées sur un DAG, chaque sommet de la structure représente une transaction. Il n'y a pas de concept de blocs, et aucun minage n'est nécessaire pour étendre la base de données. Au lieu de regrouper les transactions en blocs, chaque transaction s'appuie sur une autre. Cependant, lorsque les nœuds soumettent des transactions, une petite opération de preuve de travail est effectuée. Cela garantit que le réseau n'est pas inondé de spam et valide les transactions précédentes.
Pour ajouter une nouvelle transaction, elle doit être basée sur des transactions plus anciennes. Disons qu'Alice crée une nouvelle transaction. Pour confirmer cette transaction, elle doit faire référence à des transactions précédentes. C'est similaire à la façon dont les blocs dans Bitcoin font référence à des blocs antérieurs, mais cela fait référence à plusieurs transactions.
Dans certains systèmes, un algorithme sélectionne sur quelles transactions ( ou "pourboires" ) une nouvelle transaction doit s'appuyer. Les pourboires avec un poids cumulatif plus élevé—une mesure du nombre de confirmations qu'a un chemin de pourboire—sont plus susceptibles d'être choisis.
Les transactions sur lesquelles Alice s'appuie ne sont pas confirmées. Mais une fois qu'Alice les référence, elles deviennent confirmées. La transaction d'Alice est maintenant non confirmée, donc d'autres doivent s'y appuyer pour qu'elle soit acceptée.
Les utilisateurs sont plus susceptibles de confirmer les transactions avec un poids "plus grand", garantissant ainsi que le système continue de croître. Sinon, rien n'empêcherait les utilisateurs de continuer à s'appuyer sur d'anciennes transactions.
Avec les blockchains, la protection contre la double dépense est simple. Les mêmes fonds ne peuvent pas être dépensés deux fois dans un même bloc : les nœuds détectent facilement toute tentative et rejettent les blocs contenant des transactions conflictuelles. Étant donné que la génération de blocs coûte cher aux mineurs, ils sont incités à rivaliser de manière équitable.
Les DAG ont également des mécanismes pour prévenir la double dépense. C'est quelque peu similaire, mais sans mineurs. Lorsque les nœuds confirment des transactions plus anciennes, ils évaluent l'ensemble du chemin jusqu'à la première transaction du DAG pour s'assurer que l'expéditeur a un solde suffisant. Il peut y avoir plusieurs chemins, mais un seul nécessite une vérification.
Si les utilisateurs construisent sur un chemin invalide, ils risquent de voir leurs propres transactions ignorées. Leur transaction peut être légitime, mais personne ne veut étendre ce chemin particulier en raison de transactions invalides précédentes.
Cela peut sembler contre-intuitif au début—n'auriez-vous pas plusieurs branches qui ne se connaissent pas ? Les gens ne pourraient-ils pas dépenser le même argent dans ces différentes branches ?
Bien que cela soit une possibilité, cela est traité par des algorithmes de sélection qui favorisent les conseils avec un poids cumulatif plus élevé. Au fil du temps, vous vous retrouvez avec une branche significativement plus forte que les autres. Les plus faibles sont écartées, et le réseau continue de se construire sur la branche la plus lourde.
Comme avec les blockchains, il n'y a pas de finalité absolue : vous ne pouvez jamais être sûr à 100 % qu'une transaction ne sera pas annulée. Bien que cela soit extrêmement peu probable, il est théoriquement possible de "défaire" les blocs Bitcoin ou Ethereum, annulant toutes les transactions qui s'y trouvent. Plus il y a de blocs ajoutés après celui contenant votre transaction, plus vous pouvez avoir confiance en elle. C'est pourquoi il est recommandé d'attendre six confirmations avant de dépenser.
Dans les DAG comme le Tangle d'IOTA, il existe un concept de confiance dans la confirmation. L'algorithme de sélection s'exécute 100 fois, puis calcule combien de fois votre transaction a été approuvée directement ou indirectement dans les conseils sélectionnés. Plus le pourcentage est élevé, plus vous pouvez être sûr que la transaction restera "réglée."
Cela peut sembler mener à une mauvaise expérience utilisateur. Mais ce n'est pas le cas. Si Alice envoie 10 MagicDAGTokens à Bob, elle n'a pas besoin de s'inquiéter de choisir les bons graphes de tips. En arrière-plan, son portefeuille pourrait :
Sélectionnez les conseils importants (rappelez-vous, ce sont ceux qui ont le plus de confirmations cumulatives).
Retracez le chemin des transactions précédentes, en vous assurant que les pourboires ont un solde suffisant pour être dépensés.
Une fois satisfaits, ils ajouteraient la transaction au DAG, confirmant les transactions construites dessus.
Pour Alice, cela ressemble à un flux de travail régulier de cryptomonnaie. Elle saisit l'adresse de Bob et le montant qu'elle souhaite dépenser, puis appuie sur envoyer. La liste ci-dessus est la preuve de travail que chaque participant exécute lors de la création d'une transaction.
➠ Vous voulez commencer à utiliser des cryptomonnaies ? Achetez du Bitcoin sur Gate !
Avantages et inconvénients des graphes acycliques dirigés
Avantages des DAGs
Vitesse
Non limité par les temps de bloc, tout le monde peut diffuser et traiter ses transactions à tout moment. Il n'y a pas de limite au nombre de transactions que les utilisateurs peuvent soumettre, tant qu'ils confirment celles antérieures.
Pas de minage
Les DAGs n'utilisent pas d'algorithmes de consensus PoW comme nous en avons l'habitude. Ainsi, leur empreinte carbone n'est qu'une fraction de celle des cryptomonnaies qui s'appuient sur le minage pour sécuriser les réseaux blockchain.
Zéro frais de transaction
Sans mineurs, les utilisateurs peuvent diffuser leurs transactions sans payer de frais. Néanmoins, certaines transactions nécessitent tout de même le paiement de petits frais à des types de nœuds spéciaux. Des frais bas ou nuls sont attrayants pour les micropaiements, car des frais élevés de réseau défont l'objectif des petites transactions.
Pas de problèmes de scalabilité
Dépourvus de temps de bloc, les DAG peuvent traiter beaucoup plus de transactions par seconde que les réseaux blockchain traditionnels. De nombreux partisans croient que cela les rendra précieux dans les cas d'utilisation de l'Internet des Objets (IoT), où diverses machines interagiront entre elles.
Inconvénients des DAGs
Pas entièrement décentralisé
Les protocoles s'appuyant sur des DAG ont divers éléments centralisés. Pour certains, cela devrait être une solution à court terme pour guider le réseau, mais il reste à voir si les DAG peuvent prospérer sans intervention tierce. Sinon, ils sont exposés à des vecteurs d'attaque qui pourraient finalement compromettre leurs réseaux.
Non testé à grande échelle
Bien que les cryptomonnaies basées sur le DAG existent depuis plusieurs années, elles sont loin d'être largement utilisées. Ainsi, il est difficile de prédire quelles motivations les futurs utilisateurs pourraient avoir pour exploiter le système.
Conclusion
Les graphes acycliques dirigés sont sans aucun doute une technologie intrigante pour construire des réseaux de cryptomonnaie. Jusqu'à présent, relativement peu de projets utilisent cette structure de données, et ils ne sont pas encore complètement développés.
Néanmoins, s'ils peuvent réaliser leur potentiel, ils soutiendront des écosystèmes hautement évolutifs. La technologie DAG a d'innombrables cas d'utilisation dans des domaines nécessitant un haut débit et des services gratuits, tels que l'Internet des Objets (IoT) et les micropaiements.
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.
Comprendre les Graphes acycliques orientés (DAGs) dans les Cryptomonnaies
Introduction
Lorsque vous pensez aux cryptomonnaies, des termes comme "blockchain" ou "technologie de registre distribué" pourraient vous venir à l'esprit. Depuis la création de Bitcoin, des centaines d'autres monnaies numériques ont émergé. La plupart reposent sur des architectures de réseau similaires, permettant aux utilisateurs de transférer de la valeur ou d'interagir avec des applications décentralisées.
Dans les systèmes blockchain, de nouveaux blocs sont ajoutés périodiquement à la chaîne en croissance. Chaque bloc est lié cryptographiquement à son prédécesseur par une valeur de hachage. Ces blocs contiennent les transactions récentes diffusées par les utilisateurs.
Cependant, il y a généralement une période d'attente entre la diffusion de la transaction et son inclusion dans un bloc. Imaginez attendre à une gare. En fonction de la taille du wagon (taille du bloc) et du nombre d'autres personnes en attente (transactions en attente), vous pourriez ne pas attraper le prochain train. Ni même celui qui suit. Les temps de confirmation peuvent varier de quelques secondes à plusieurs heures.
Pour beaucoup, ce compromis est acceptable, offrant une grande sécurité sans coordination centralisée. D'autres soutiennent que la technologie blockchain a une date d'expiration, citant des problèmes de scalabilité comme un obstacle à l'adoption généralisée à long terme.
Certains croient que l'avenir des réseaux de paiement en cryptomonnaie réside dans une architecture complètement différente—Graphes acycliques dirigés (DAGs).
Qu'est-ce qu'un DAG ?
Un DAG est une structure de données alternative - pensez-y comme une base de données reliant différentes pièces d'information. Décomposons le terme "Graphique Acyclique Dirigé" pour comprendre sa signification.
Graphe acyclique dirigé.
Conceptuellement, les DAG ressemblent à l'image ci-dessus. Ils se composent de sommets (sphères) connectés par des arêtes (lignes). Ils sont orientés, se déplaçant dans une seule direction (comme indiqué par des flèches). Et ils sont acycliques (non circulaires), ce qui signifie que les sommets ne se bouclent pas sur eux-mêmes - si vous partez d'un point et suivez le graphique, vous ne pouvez pas revenir au même point. Cela deviendra plus clair sous peu.
De telles structures de données sont souvent utilisées pour modéliser des données. Dans les domaines scientifiques ou médicaux, les DAG peuvent être utilisés pour observer les relations entre les variables et déterminer comment elles s'influencent mutuellement. Par exemple, vous pourriez considérer des facteurs comme la nutrition, les cycles de sommeil et les symptômes physiques pour cartographier leurs connexions et comprendre leur impact sur un patient.
Pour nos besoins, nous sommes plus intéressés par la façon dont les DAG aident à atteindre un consensus dans les réseaux de cryptomonnaie distribués.
Comment fonctionnent les DAG?
Dans les cryptomonnaies basées sur un DAG, chaque sommet de la structure représente une transaction. Il n'y a pas de concept de blocs, et aucun minage n'est nécessaire pour étendre la base de données. Au lieu de regrouper les transactions en blocs, chaque transaction s'appuie sur une autre. Cependant, lorsque les nœuds soumettent des transactions, une petite opération de preuve de travail est effectuée. Cela garantit que le réseau n'est pas inondé de spam et valide les transactions précédentes.
Pour ajouter une nouvelle transaction, elle doit être basée sur des transactions plus anciennes. Disons qu'Alice crée une nouvelle transaction. Pour confirmer cette transaction, elle doit faire référence à des transactions précédentes. C'est similaire à la façon dont les blocs dans Bitcoin font référence à des blocs antérieurs, mais cela fait référence à plusieurs transactions.
Dans certains systèmes, un algorithme sélectionne sur quelles transactions ( ou "pourboires" ) une nouvelle transaction doit s'appuyer. Les pourboires avec un poids cumulatif plus élevé—une mesure du nombre de confirmations qu'a un chemin de pourboire—sont plus susceptibles d'être choisis.
Les transactions sur lesquelles Alice s'appuie ne sont pas confirmées. Mais une fois qu'Alice les référence, elles deviennent confirmées. La transaction d'Alice est maintenant non confirmée, donc d'autres doivent s'y appuyer pour qu'elle soit acceptée.
Les utilisateurs sont plus susceptibles de confirmer les transactions avec un poids "plus grand", garantissant ainsi que le système continue de croître. Sinon, rien n'empêcherait les utilisateurs de continuer à s'appuyer sur d'anciennes transactions.
Avec les blockchains, la protection contre la double dépense est simple. Les mêmes fonds ne peuvent pas être dépensés deux fois dans un même bloc : les nœuds détectent facilement toute tentative et rejettent les blocs contenant des transactions conflictuelles. Étant donné que la génération de blocs coûte cher aux mineurs, ils sont incités à rivaliser de manière équitable.
Les DAG ont également des mécanismes pour prévenir la double dépense. C'est quelque peu similaire, mais sans mineurs. Lorsque les nœuds confirment des transactions plus anciennes, ils évaluent l'ensemble du chemin jusqu'à la première transaction du DAG pour s'assurer que l'expéditeur a un solde suffisant. Il peut y avoir plusieurs chemins, mais un seul nécessite une vérification.
Si les utilisateurs construisent sur un chemin invalide, ils risquent de voir leurs propres transactions ignorées. Leur transaction peut être légitime, mais personne ne veut étendre ce chemin particulier en raison de transactions invalides précédentes.
Cela peut sembler contre-intuitif au début—n'auriez-vous pas plusieurs branches qui ne se connaissent pas ? Les gens ne pourraient-ils pas dépenser le même argent dans ces différentes branches ?
Bien que cela soit une possibilité, cela est traité par des algorithmes de sélection qui favorisent les conseils avec un poids cumulatif plus élevé. Au fil du temps, vous vous retrouvez avec une branche significativement plus forte que les autres. Les plus faibles sont écartées, et le réseau continue de se construire sur la branche la plus lourde.
Comme avec les blockchains, il n'y a pas de finalité absolue : vous ne pouvez jamais être sûr à 100 % qu'une transaction ne sera pas annulée. Bien que cela soit extrêmement peu probable, il est théoriquement possible de "défaire" les blocs Bitcoin ou Ethereum, annulant toutes les transactions qui s'y trouvent. Plus il y a de blocs ajoutés après celui contenant votre transaction, plus vous pouvez avoir confiance en elle. C'est pourquoi il est recommandé d'attendre six confirmations avant de dépenser.
Dans les DAG comme le Tangle d'IOTA, il existe un concept de confiance dans la confirmation. L'algorithme de sélection s'exécute 100 fois, puis calcule combien de fois votre transaction a été approuvée directement ou indirectement dans les conseils sélectionnés. Plus le pourcentage est élevé, plus vous pouvez être sûr que la transaction restera "réglée."
Cela peut sembler mener à une mauvaise expérience utilisateur. Mais ce n'est pas le cas. Si Alice envoie 10 MagicDAGTokens à Bob, elle n'a pas besoin de s'inquiéter de choisir les bons graphes de tips. En arrière-plan, son portefeuille pourrait :
Sélectionnez les conseils importants (rappelez-vous, ce sont ceux qui ont le plus de confirmations cumulatives).
Retracez le chemin des transactions précédentes, en vous assurant que les pourboires ont un solde suffisant pour être dépensés.
Une fois satisfaits, ils ajouteraient la transaction au DAG, confirmant les transactions construites dessus.
Pour Alice, cela ressemble à un flux de travail régulier de cryptomonnaie. Elle saisit l'adresse de Bob et le montant qu'elle souhaite dépenser, puis appuie sur envoyer. La liste ci-dessus est la preuve de travail que chaque participant exécute lors de la création d'une transaction.
➠ Vous voulez commencer à utiliser des cryptomonnaies ? Achetez du Bitcoin sur Gate !
Avantages et inconvénients des graphes acycliques dirigés
Avantages des DAGs
Vitesse
Non limité par les temps de bloc, tout le monde peut diffuser et traiter ses transactions à tout moment. Il n'y a pas de limite au nombre de transactions que les utilisateurs peuvent soumettre, tant qu'ils confirment celles antérieures.
Pas de minage
Les DAGs n'utilisent pas d'algorithmes de consensus PoW comme nous en avons l'habitude. Ainsi, leur empreinte carbone n'est qu'une fraction de celle des cryptomonnaies qui s'appuient sur le minage pour sécuriser les réseaux blockchain.
Zéro frais de transaction
Sans mineurs, les utilisateurs peuvent diffuser leurs transactions sans payer de frais. Néanmoins, certaines transactions nécessitent tout de même le paiement de petits frais à des types de nœuds spéciaux. Des frais bas ou nuls sont attrayants pour les micropaiements, car des frais élevés de réseau défont l'objectif des petites transactions.
Pas de problèmes de scalabilité
Dépourvus de temps de bloc, les DAG peuvent traiter beaucoup plus de transactions par seconde que les réseaux blockchain traditionnels. De nombreux partisans croient que cela les rendra précieux dans les cas d'utilisation de l'Internet des Objets (IoT), où diverses machines interagiront entre elles.
Inconvénients des DAGs
Pas entièrement décentralisé
Les protocoles s'appuyant sur des DAG ont divers éléments centralisés. Pour certains, cela devrait être une solution à court terme pour guider le réseau, mais il reste à voir si les DAG peuvent prospérer sans intervention tierce. Sinon, ils sont exposés à des vecteurs d'attaque qui pourraient finalement compromettre leurs réseaux.
Non testé à grande échelle
Bien que les cryptomonnaies basées sur le DAG existent depuis plusieurs années, elles sont loin d'être largement utilisées. Ainsi, il est difficile de prédire quelles motivations les futurs utilisateurs pourraient avoir pour exploiter le système.
Conclusion
Les graphes acycliques dirigés sont sans aucun doute une technologie intrigante pour construire des réseaux de cryptomonnaie. Jusqu'à présent, relativement peu de projets utilisent cette structure de données, et ils ne sont pas encore complètement développés.
Néanmoins, s'ils peuvent réaliser leur potentiel, ils soutiendront des écosystèmes hautement évolutifs. La technologie DAG a d'innombrables cas d'utilisation dans des domaines nécessitant un haut débit et des services gratuits, tels que l'Internet des Objets (IoT) et les micropaiements.