Upgrade für Bitcoin & Lightning: Was sind Eltoo und SIGHASH_ANYPREVOUT?

Was ist und wie funktioniert Eltoo, ein Protokoll zur Verwaltung von Lightning Kanälen, welche Voraussetzungen sind dafür nötig und welche Vorteile bietet es?

4 „Gefällt mir“

Jetzt hab ich das endlich auch mal verstanden. glaub ich zumindest. :crazy_face:

In diesem beispiel mit alice: sie könnte auch einfach den anfangsstand nehmen wo sie die ganzen 5 bitcoin besitzt oder nicht? Es sei denn sie ist gnädig mit bob und lässt ihm einen Bitcoin als trost übrig xD

Was ist, wenn sich beide streiten; keiner gibt nach, indem immer wieder durch ein neuerliches Update die alte Transaktion „überschrieben“ wird.
Gibt es dafür eine Regel, eine „TimeOut“?

„Immer wieder“ geht nicht, es gibt ja nur eine beschränkte Anzahl an Updates, die zur Verfügung stehen, und sobald jemand das letzte veröffentlicht, ist Schluss.

1 „Gefällt mir“

Wenn sie sich streiten, dann gibt es auch keine neuen Updates. Dafür müssten sie sich schließlich einig sein und unterscheiben.

Die APOAS Signatur unterschreibt die Zustandsnummer. Das Überschreiben geht nur in die eine Richtung, du kannst natürlich keine neuen Updates aus der Luft zaubern, nur alte ersetzen.

Und wie im Beitrag erwähnt ergäbe es keinen Sinn sich gegenseitig hin und her zu überschreiben, da man sowieso irgendwann beim aktuellen Zustand landet und in der Zwischenzeit nur Transaktionsgebühren verschwendet.

Ja, theoretisch schon.

Ich habe das in dem Beispiel bewusst nicht gemacht, da der erste Zustand in diesem Fall bereits on-chain bestätigt ist (zum Öffnen des Channels) und der Timelock sozusagen „bereits abläuft“.

Man kann das Konstrukt dann noch erweitern sodass dieser erste Timelock eben nicht die Laufzeit des Channels definiert. Aber das hätte den Rahmen gesprengt.

2 „Gefällt mir“

Also hat die transaktion irgendwo noch ein extra teil mit dieser Nummer? Weil das skript wird ja nicht unterschrieben so wie ich das jetzt verstanden habe oder??

Genau, dafür wird das nLocktime Feld der Transaktion genutzt, welches sowohl mit APO als auch APOAS unterschrieben wird.

Im Locking Script ist dann wiederum festgelegt dass nur ältere Zustände ausgegeben werden können. Auch wenn das nicht unterschrieben ist, muss es beim Ausgeben natürlich erfüllt sein!

Für mehr Details: eltoo with Anyprevout and Taproot | Yakshaver.org

1 „Gefällt mir“

Danke das macht sinn jetzt. Den link ziehe ich mir auch mal rein :slightly_smiling_face:

Wie laufen den die Tests, wissen wir ob es schon Mainet tauglich wäre? Besseres Lightning is enorm wichtig und die Bedingungen dafür sollten schnell umgesetzt werden.