Nehmen wir an, Alice eröffnet einen Mikrozahlungskanal mit Bob und sendet 10 $ in die Multi-Sig-Transaktion.
Woher wissen wir, dass Alice diese 10 Dollar hat? Oder gehen wir das Risiko ein, dass sie es doppelt ausgibt?
Bei der Eröffnung eines Mikrozahlungskanals legen die beiden Parteien Gelder in eine Art Schließfach, das beide Parteien dazu verpflichtet, alle Abhebungen aus diesem Schließfach zu unterzeichnen. In der Blockchain bedeutet dies im Wesentlichen, etwas Geld in eine 2-von-2-Multisig-Ausgabe zu stecken, wobei die 2 Schlüssel die Schlüssel von Alice und Bob sind. Wenn nur Bob Geld an Alice überweisen wird oder umgekehrt (unidirektional), muss nur eine Person Geld in das 2-von-2-Schließfach legen.
Dann, wenn es Zeit für Bob ist, Alice zu bezahlen, gibt Bob Alice eine Transaktion, die den Inhalt des Schließfachs ausgibt, Alice einen Teil des Geldes des Schließfachs gibt und einen Wechselgeldausgang verwendet, der das Wechselgeld zurück in das Schließfach legt. Da das Abheben aus dem Schließfach erfordert, dass sowohl Alice als auch Bob sich abmelden, kann Alice bestätigen, wann Bob sich abgemeldet hat, um ihr Geld zu geben.
Beachten Sie, dass es so sein muss, dass sowohl Alice als auch Bob Gelder über den Kanal überweisen müssen, denn wenn nur der Absender der Gelder benötigt wird, stoßen Sie auf genau das Problem, das Sie erwähnt haben: Der Absender könnte versuchen, diese doppelt auszugeben Geld und du würdest es nicht wissen.
David Schwarz