Succinct Atomic Swap (SAS) ist eine neue Art des Atomaustauschs, der diese Art von Vorgängen vereinfacht und gleichzeitig Austauschmöglichkeiten bietet, die viel schneller, billiger, sicherer und ohne Zwischenhändler sind.
LEntwickler von tecnología blockchain Sie konzentrieren sich zunehmend darauf, neue Funktionen einzuführen, insbesondere solche, die den übergreifenden Betrieb mehrerer Blockchains ermöglichen, und eine dieser Technologien ist die Succinct Atomic Swap (SAS) oder Succinct Atomic Exchanges.
Der prägnante Atomic Swap oder SAS, Sie sind eigentlich eine Weiterentwicklung des Atomtausch was wir bereits in verschiedenen Blockchains sehen können. Der Unterschied besteht darin, dass SAS bestrebt ist, die Funktionsweise dieser Technologie einfacher, effizienter und sicherer zu gestalten.
Succinct Atomic Swap (SAS) zur Verbesserung von Atomic Swaps
Die Idee des Succinct Atomic Swap (SAS) hat ihren Ursprung im Kopf von Ruben Somsen, der am 11. Mai 2020 die folgende Nachricht auf die Bitcoin-Entwicklungsliste schrieb: SAS: Prägnanter Atomic Swap. In dieser Nachricht beschrieb Somsen eine Idee, die es ermöglichte, atomare Austausche schnell, mit weniger Komplexität von Code und Skripten und mit geringer Aktivität auf der Blockchain zu erstellen. All dies unter Ausnutzung der Flexibilität von ECDSA und sogar einem Hinweis auf die Zukunft durch den Einsatz von Schnorr-Signaturen y Multi-Signatur-Adressen (MultiSig).
Somsens Idee wurde durch die Arbeit des Teams von unterstützt Monero (XMR) y sein atomarer Tausch zwischen Monero und Bitcoin. Außerdem habe ich mir Gedanken darüber gemacht, was der Benutzer präsentiert hat @TierNolan im Jahr 2013 im bekannten Bitcointalk-Forum. Auf jeden Fall vereinfacht Somsens Vorschlag die Art und Weise, wie Atomic Swaps durchgeführt werden können, erheblich und verringert gleichzeitig deren Auswirkungen auf die Blockchain, ohne deren Sicherheit und Privatsphäre aufzugeben.
Trotz der brillanten Idee wurden diese Art von Protokollen noch nicht erstellt und verbleiben in einem experimentellen Modell.
Wie funktioniert das Protokoll?
Nun hängt der Betrieb dieses Protokolls in erster Linie von Technologien ab, die wir in Bitcoin bereits zur Verfügung haben. Wir sprechen über Kryptographie ECDSA, oder auch Schnorr-Signaturen, Multi-Signatur-Adressen und darüber hinaus Operationscodes (OP_CODES) als CLTV, nLockTime y nSequenz. Einfach ausgedrückt besteht in seiner einfachsten Form keine Notwendigkeit, dem Bitcoin-Protokoll und anderen von Bitcoin abgeleiteten Kryptowährungen etwas Zusätzliches hinzuzufügen.
Starten des Prozesses
Der Betrieb eines SAS beginnt, wenn zwei Personen den Austausch initiieren. In diesem Fall bezeichnen wir diese Personen als Laura und Daniel. Laura hat 1 BTC, den sie mit Daniel tauschen möchte, der es hat Litecoin (LTC), und das alles, ohne eine zu durchlaufen zentraler Austausch.
Wir haben also, dass Laura 1 BTC in einer Transaktion vorbereitet, die sie mit einer gemeinsamen Unterschrift unter Verwendung ihrer Unterschrift und der von Daniel unterzeichnet hat. Diese erste, noch nicht gesendete Transaktion wird in einem Wartezustand auf der Blockchain eintreffen. Dies ist mit OP_CODES wie CLTV und nLockTime möglich, mit denen Sie ein Timeout und andere für die Verarbeitung der Transaktion erforderliche Bedingungen definieren können. In diesem Fall ist die Bedingung für die Freigabe dieser Transaktion, dass Daniel Laura sein Geheimnis preisgibt, was zu diesem Zeitpunkt noch nicht geschehen ist.
Die Programmierung dieser Transaktion mit CLTV folgt noch einem weiteren Punkt: Für den Fall, dass die Parteien den Austausch nicht abschließen, kann die Transaktion an die Blockchain gesendet werden, und nach einiger Zeit kann Laura sie ohne Probleme bei der Wiederherstellung entsperren Mittel. Dies ist möglich, weil CLTV unter bestimmten programmierbaren Bedingungen eine Multisig-Adresse in eine einzelne Adresse umwandeln kann. Während Laura ihre Gelder zurückerhält, verrät sie Daniel ein Geheimnis, das es ihm ermöglichen wird, die Gelder zurückzuerhalten, die er bei seiner Litecoin-Transaktion blockiert hat.
Vorbereitung der zweiten Transaktion
Während die erste Transaktion noch nicht versendet wurde, bereiten Laura und Daniel die restlichen Konditionen für den Umtausch vor. An diesem Punkt erstellen Laura und Daniel nun eine neue, zweite Transaktion, verhängen jedoch eine Sperre auf Transaktionsebene darauf (mithilfe von nSequence). Dadurch wird verhindert, dass die Transaktion von den Minern übernommen wird, bis die Sperrzeit abgelaufen ist. Diesmal wird von Laura und Daniel entschieden, und sie haben beschlossen, ihr eine Sperrzeit zu geben.
Diese Transaktionssperre dient als Versicherung, die verhindert, dass Laura ihr Geld verliert, falls Daniel unehrlich handelt. Und dank der Sperrung und der Bedingungen, unter denen diese Transaktion erstellt wurde, kann Laura diese Transaktion problemlos wiederherstellen. Daher ist die Wahl der Sperre die OP_CODE nSequence, da diese eine relative Sperre ermöglicht. Das heißt, der Block kann nur aktiviert werden, wenn eine vorherige Transaktion und die damit verbundenen Ausgaben (die erste von Laura und Daniel unterzeichnete Transaktion) bereits in die Blockchain aufgenommen wurden.
Transaktionen senden
Als nächstes müssen wir mit dem Versenden der Transaktionen beginnen. Laura sendet zuerst die zweite Transaktion, die auf unbestimmte Zeit blockiert wird, bis die erste Transaktion die Blockchain erreicht. Die Tatsache, dass die zweite Transaktion an das Netzwerk gesendet wurde, ist für Daniel jedoch ein Hinweis darauf, dass Laura den Austauschprozess eingeleitet hat. Als nächstes erstellt Daniel eine Transaktion in Litecoin für den Umtauschbetrag und verwendet für diesen Vorgang seine und Lauras Unterschriften.
Diese Transaktion in Litecoin wird von Laura gesehen, die daraufhin die erste Transaktion, die 1 BTC enthält, an Daniel sendet. Laura wird nicht auf die Gelder in Litecoin zugreifen können, da sie Daniels Geheimnis nicht kennt, das zum Freischalten dieser Transaktion erforderlich ist. Sobald Laura also die erste Transaktion an die Bitcoin-Blockchain sendet, beginnt die Sperruhr zu ticken.
Nun gibt es noch einen weiteren Punkt: Wie ist es möglich, dass Laura und Daniel die Geheimnisse kennen, die zum Freischalten ihrer jeweiligen Transaktionen in Bitcoin und Litecoin erforderlich sind? Nun, an diesem Punkt kommt etwas ins Spiel, das als ECDSA-Signaturadapter bekannt ist. Dieser Adapter ermöglicht es ECDSA unter bestimmten Bedingungen, das Geheimnis preiszugeben, das Daniel und Laura zum Entsperren ihrer Transaktionen benötigen. Auf diese Weise können sie den Austausch erfolgreich durchführen, was wir im Folgenden erläutern werden.
Der Moment des Austauschs
Sobald nun die erste Transaktion auf der Bitcoin-Blockchain erfolgt, beginnt der Austauschprozess. Die erste Transaktion ist so unterzeichnet, dass sie nur dann gültig ist, wenn Daniel sein Geheimnis preisgibt. Das heißt, wenn Daniel die Bitcoin will, ist dies nur möglich, wenn Daniel das Geheimnis preisgibt, wenn er mit der Transaktion interagiert. Dies liegt daran, dass Laura diese Transaktion so signiert, dass sie nur unter dieser Annahme gültig ist und die dafür verantwortliche Person der ECDSA-Signaturadapter ist. Das Gleiche passiert mit der zweiten Transaktion, sodass Daniel nur noch eine Option bleibt: Mit diesen Transaktionen interagieren, um die Bitcoins zu erhalten, die er haben möchte.
Als Daniel also mit der Transaktion interagiert, um die BTC einzufordern, enthüllt er Laura das Geheimnis. Zu diesem Zeitpunkt kennt Laura Daniels und ihr eigenes Geheimnis, sodass sie zur Litecoin-Blockchain gehen und mit beiden Geheimnissen in ihrem Besitz die Litecoin-Transaktion freischalten kann, die Daniel im Austausch gegen die BTC gesendet hat. Auf diese Weise haben Laura und Daniel erfolgreich einen Succinct Atomic Swap (SAS) durchgeführt.
Wenn der Vorgang erfolgreich beendet wird, wird die zweite Transaktion ungültig. Wenn der Vorgang jedoch nicht durchgeführt wird, dient die zweite Transaktion (gesperrt mit nSequence) als Rückerstattungstransaktion, sodass Laura ihre BTC problemlos zurückerhalten kann. Letztendlich kann ein SAS im besten Fall immer in zwei einfachen Transaktionen innerhalb der Blockchain durchgeführt werden.
Wie viel weißt du, Kryptonaut?
Ist es möglich, Succint Atomic Swaps zu implementieren, ohne das Kryptowährungsprotokoll zu ändern?WAHR!
Einer der Vorteile dieser Art des Austauschs besteht darin, dass nicht beide Kryptowährungen über die gleichen Programmierfähigkeiten verfügen müssen. Tatsächlich reicht der aktuelle Stand der Bitcoin-Skripte aus, um prägnante atomare Swaps mit jeder anderen Kryptowährung zu ermöglichen, ohne dass Änderungen vorgenommen werden müssen dem Bitcoin-Protokoll oder den anderen Kryptowährungen in nichts nach.
Vor- und Nachteile von Succinct Atomic Swap (SAS)
Unter den Vorteilen dieses Modells können wir nun Folgendes hervorheben:
- Für den erfolgreichen Abschluss sind nur zwei statt vier On-Chain-Transaktionen erforderlich. Im schlimmsten Fall erfordert das Modell drei Transaktionen (um die Rückerstattung vorzunehmen), was immer noch effizienter ist als bestehende Atom-Swaps.
- Es ist möglich, diese Art des Austauschs ohne erweiterte Skripte durchzuführen, es ist sogar möglich, dies ohne Zeitsperren für eine der Ketten durchzuführen.
Es kann für einen effizienten Datenschutzaustausch genutzt werden.
Andererseits sind seine Nachteile:
- Der Zugang zu Geld hängt von der Erinnerung an Geheimnisse ab (Backup-Komplexität).
- Sie müssen während des gesamten Umtauschvorgangs online sein, sonst riskieren Sie, Geld zu verlieren.
- Darüber hinaus ist es notwendig, Wachtürme oder Blockchain-Überwachungstürme zu bauen, die eine Zeitblockierung unterstützen. Dies ist für eine sichere Einrichtung mit zwei Transaktionen erforderlich, in einem Szenario mit drei Transaktionen oder ohne Zeitsperren jedoch unnötig.