Cet article met en évidence les problèmes liés à la pertinence de l'échange atomique de différentes pièces entre elles sans la participation d'intermédiaires. Nous avons essayé de décrire les caractéristiques d'un tel échange et les exigences des devises numériques pour prendre en charge cette fonctionnalité. De plus, nous avons examiné les problèmes urgents de conception et de lancement d'échanges décentralisés basés sur l'échange atomique, ainsi que les inconvénients et les risques de leur utilisation.
Par définition, le propriétaire de la crypto-monnaie travaille avec ses pièces sans la participation d'un tiers de confiance, c'est-à-dire sans confiance. Il est tout à fait naturel que les utilisateurs souhaitent échanger ces devises selon le même principe. Les échanges centralisés existants ne peuvent pas répondre à ces exigences. En témoignent les nombreuses restrictions des échanges eux-mêmes et les fréquents cas d'effraction.
Comment se passe l'échange sur un site centralisé? Alice est inscrite à la bourse et passe une commande pour l'achat d'un certain nombre de pièces d'une certaine crypto-monnaie. Bob, qui est déjà inscrit sur cet échange, voit la commande et, s'il est satisfait du prix, y consent. Les soldes des comptes de cet échange avec Bob et Alice changent. Après cela, ils peuvent retirer cet argent dans leur portefeuille.
Dans cette situation, Alice et Bob font confiance à l'échange. Plus précisément, ils font confiance aux propriétaires de l'échange qu'ils ne prendront pas l'argent et ne disparaîtront pas avec eux. Dans un sens, les utilisateurs doivent faire confiance aux ingénieurs qui ont conçu et développé l'échange, et aux autres professionnels qui offrent une protection fiable contre les pirates et les escrocs.
Idées et exigences en matière de devises
L'idée de l'échange atomique a été proposée comme alternative. Le swap atomique est un échange qui est soit inextricablement effectué, soit pas du tout effectué. Cette approche vous permet de faire un échange, même si les utilisateurs ne se font pas confiance. De plus, le participant ne perdra pas de pièces, même si l'adversaire veut délibérément le piéger.
Le swap atomique est une idée à fort potentiel et peut être mise en œuvre de différentes manières et pour des devises numériques complètement différentes. Par conséquent, dans cet article, nous nous limitons aux spécificités de l'opération de swap atomique spécifiquement pour les crypto-monnaies telles que Bitcoin et Ether.
Pour qu'une monnaie numérique prenne en charge avec succès le swap atomique, elle doit satisfaire à certaines exigences fondamentales.
Le principal est la possibilité de créer un contrat intelligent avec la possibilité d'un retard. De plus, pour effectuer une transaction entre deux systèmes comptables différents, il est nécessaire que les deux puissent utiliser la même fonction de hachage cryptographique pour définir les conditions de dépenses des pièces (par exemple, SHA-256). Il est nécessaire que le contrat soit exécuté correctement lorsque l'utilisateur fournit le résultat de l'exécution de la fonction de hachage. De plus, pour la mise en œuvre réussie du swap atomique, un canal de communication est nécessaire, car les utilisateurs doivent discuter en chaîne des conditions d'échange.
Principe de fonctionnement
Le swap atomique utilise les verrous dits à durée limitée (HTLC). En fait, ce sont des contrats qui sont pris en charge par le système de comptabilité de la monnaie numérique lui-même. Une paire de contrats spéciaux garantit que si les pièces de la même monnaie changent de propriétaire, les pièces de la deuxième monnaie aussi. Et si l'une des parties aux contrats ne confirme pas le transfert à temps, les pièces seront restituées aux propriétaires d'origine. Ainsi, les pièces des deux monnaies sont bloquées jusqu'à ce que toutes les conditions soient remplies et confirmées. Soit l'échange de pièces sera atomique, soit sera rejeté complètement.

Considérez ce processus dans un diagramme plus détaillé. Imaginez deux monnaies numériques pour lesquelles la technologie blockchain est utilisée: α et β. Il y a deux participants: Alice (A) et Bob (B). Tout d'abord, Alice crée une nouvelle adresse sur la blockchain de la monnaie α et la transmet à Bob. Bob crée également une nouvelle adresse, mais dans la blockchain monétaire β, et la transmet à Alice.

Alice initie une transaction avec un contrat intelligent, sur lequel elle bloque ses pièces, qu'elle veut échanger avec Bob. Bob vérifie ce contrat intelligent (effectue un audit manuel ou automatisé), crée son contrat intelligent basé sur le contrat d'Alice et le lui transmet. À son tour, Alice vérifie le contrat intelligent de Bob sur la blockchain β et, si tout est correct, publie sa valeur de hachage secrète sur la blockchain β tout en débloquant les pièces bloquées par Bob. Avec cette valeur de hachage, Bob peut débloquer des pièces que Alice a bloquées sur la blockchain α. Ainsi, un échange est effectué. Jusqu'à la première publication de la valeur de hachage, tous les participants restent avec leurs pièces, et après que les participants sont libres d'accéder aux pièces de l'adversaire. C'est pourquoi l'échange peut être considéré comme sans confiance.
Heure de confirmation
Pour effectuer un échange de confiance de swap atomique, vous n'avez besoin que de 4 transactions, 2 dans chaque blockchain, ainsi que d'une communication hors chaîne entre les entités pour transmettre le texte du contrat intelligent. Par conséquent, le temps nécessaire pour effectuer un échange à l'aide de l'échange atomique peut prendre de 1 heure à l'heure spécifiée dans le contrat intelligent des sujets dans un délai.
Devises prenant en charge le swap atomique
Les devises qui prennent actuellement en charge le swap atomique comprennent:
- Bitcoin et ses fourchettes: Litecoin, Monacoin, Zcoin, Viacoin, etc.
- Ethereum et projets similaires dont les contrats intelligents sont écrits dans des langages de programmation et exécutés sur des machines virtuelles.
Il convient de noter qu'il n'y a toujours pas de norme unique pour l'échange atomique. Tous ceux qui utilisent actuellement le swap atomique utilisent la cryptographie et les contrats intelligents sans une seule norme.
Échanges décentralisés
Sur la base du swap atomique, vous pouvez construire des échanges décentralisés qui vous permettront de travailler avec plusieurs systèmes comptables, avec chacun sa propre blockchain. Mais lors de la conception de tels échanges décentralisés, vous devez vous rappeler que n'importe qui devrait pouvoir laisser son offre d'achat ou de vente. Par conséquent, vous devez d'abord avoir un protocole qui vous permet de créer un carnet de commandes de manière décentralisée.
Quant aux garanties d'exécution des commandes, il y a des fonctionnalités ici. Dans le cas d'échanges centralisés, la totalité du solde est à l'échange. Par conséquent, malgré le fait que l'utilisateur peut annuler sa commande à tout moment, jusqu'au moment où elle est annulée, l'échange exécutera cette commande dans tous les cas. Pour les échanges décentralisés, des sanctions en cas de manquement aux obligations sont exigées. Jusqu'à présent, cette approche pour résoudre ce problème est la meilleure de celles qui étaient disponibles au moment de 2018.
Inconvénients
Dans les échanges décentralisés, il n'est pas encore possible de mettre en œuvre les soi-disant dark pools - un carnet de commandes spécial dans lequel personne ne voit les commandes. Cette approche est utilisée dans les échanges centralisés pour masquer les offres d'échange de gros montants, car elles peuvent manipuler le marché. Pour implémenter des pools sombres sur un échange décentralisé, vous devez utiliser une cryptographie sophistiquée.
De plus, les transactions avec des monnaies fiduciaires ne sont pas encore disponibles sur les bourses décentralisées. Les monnaies Fiat n'ont pas de système comptable où un contrat intelligent pourrait être prescrit. Par conséquent, il n'est pas possible d'effectuer un échange atomique entre une monnaie fiduciaire et une monnaie numérique.
Problème de vente de panique
Avec l'utilisation massive du swap atomique, il y a un problème difficile à résoudre. Supposons qu'il existe un système comptable dans lequel des frais de traitement des transactions très élevés sont facturés, et les transactions elles-mêmes sont confirmées pendant très longtemps. Les utilisateurs commencent à vendre cette devise, car sa bande passante est faible, et créent des ordres sur un échange décentralisé, mais ces ordres, lorsqu'ils sont exécutés, créent des contrats intelligents dans la même blockchain que la devise qu'ils essaient de vendre. Ainsi, le réseau est encore plus chargé, les transactions en attente forment une file d'attente encore plus grande et les utilisateurs veulent encore plus vendre cette devise, passer plus de commandes et augmenter la file d'attente des transactions.

Par analogie, on peut citer un exemple tiré de la physique nucléaire. Lors de la désintégration d'un noyau de l'isotope de l'uranium 235, il émet généralement de 1 à 8 neutrons libres. Chaque neutron formé pendant la désintégration peut provoquer la désintégration du noyau d'uranium voisin, ce phénomène est appelé une réaction en chaîne de fission du noyau. En fait, c'est le principe de l'explosion de la bombe atomique. De plus, le problème de l'extinction des explosions nucléaires n'a toujours pas été résolu correctement. Bien sûr, le problème de la vente de panique dans les échanges décentralisés basés sur l'échange atomique n'est pas si important par rapport au problème des bombes atomiques, mais cette analogie reflète très clairement l'essence de la propagation en avalanche du processus de panique sur le marché.
Risques liés à l'utilisation du swap atomique
En raison de l'absence d'un tiers, l'utilisation du swap atomique présente des risques. Si l'utilisateur n'a pas audité le contrat que l'opposant lui a envoyé, il est possible que l'opposant vole l'argent du premier utilisateur. En outre, si après l'exécution du contrat intelligent, le premier utilisateur a pris l'argent et que l'adversaire n'a pas exécuté le script de rachat à temps, l'adversaire peut perdre son argent.
Conclusions
En évaluant le travail du swap atomique, nous pouvons conclure que l'idée est prometteuse pour créer une technologie pour l'échange d'actifs numériques sur une base de confiance. Plus de temps et d'expérience pratique sont nécessaires avant que l'occasion se présente de dire sans équivoque exactement comment le swap atomique doit être mis en œuvre. Cependant, il existe aujourd'hui des échanges décentralisés qui utilisent l'échange atomique: BarterDEX sur la plate-forme Komodo, Altcoin, ainsi que le projet 0x. Le fait qu'il existe une demande pour une telle technologie d'échange indique les besoins de l'économie numérique moderne.