Post
Topic
Board Anfänger und Hilfe
Merits 3 from 3 users
Re: Satoshi-Test
by
JJMcClure
on 08/12/2024, 11:27:19 UTC
⭐ Merited by Turbartuluk (1) ,d5000 (1) ,Danydee72 (1)
Heute habe ich mehr Zeit, daher ein etwas längerer Text. Sorry.

Wer nur an meiner Lösung interessiert ist, kann die folgenden Absätze überspringen.

Für die ganz neuen Mitglieder unserer Bitcoin-Community möchte ich versuchen den Sachverhalt und das Problem noch einmal möglichst nachvollziehbar zu schildern.
Dazu möchte ich mich folgender Analogie bedienen:

Euer Wallet ist eure digitale Geldbörse.
In eurer Geldbörse können sich verschiedene Münzen und Banknoten befinden.
Diese Münzen und Banknoten werden in eurem Wallet durch verschiedene Bitcoinadressen repräsentiert. Auf einer Adresse liegen z.B. Bitcoin im Wert von 50 Cent, auf einer anderen Bitcoin im Wert von 50 Euro. Entspricht also einer 50 Cent Münze und einem 50 Euro Schein in eurer Geldbörse. Der Wert eurer Geldbörse beträgt nun also 50,50€. Ebenso der Gegenwert eures Wallets 50,50€.

Nun stellt euch vor, ihr habt fünf 1 Euro Münzen in eurer Geldbörse, also insgesamt 5 Euro. In eurer Wallet hättet ihr also fünf Adressen, auf denen jeweils Bitcoin im Wert von 1 Euro liegen. Jetzt möchtet ihr etwas kaufen, was 3 Euro kostet. Dafür müsst werdet ihr drei eurer 1 Euro Münzen aus eurer Geldbörse benutzen. Welche drei von euren fünf ihr benutzt, könnt ihr natürlich frei entscheiden. Wahrscheinlich denkt ihr da überhaupt nicht drüber nach, weil es euch völlig egal ist. Auch der Person, die die drei Münzen von euch bekommt, ist völlig egal welche drei Münzen sie bekommt.

Der erste Unterschied von Wallet und Geldbörse liegt nun darin, dass ihr, nach meinem Kenntnisstand, NICHT frei entscheiden könnt, von welcher Adresse welcher Wert genutzt wird um den Gesamtwertgegenwert in Höhe von 3 Euro zu „überweisen“. Das ist im Normalfall, wie auch bei der Zahlung aus der Geldbörse, aber auch hier weder für euch noch für dem Empfänger von Interesse.

Jetzt kommt aber der Ausnahmefall. Ihr überweist an eine Börse. Beispielsweise Bitcoin im Wert von 70 Cent. Und dies geschieht auch nur von einer einzigen eurer fünf Adressen. Vereinfacht (und die Gebühren außer Acht gelassen) passiert nun folgendes: Die Adresse, von der ihr die Bitcoins zur Börse gesendet habt, wird komplett geleert. Bitcoins im Gegenwert von 70 Cent landen bei der Börse und Bitcoins im Gegenwert von 30 Cent landen auf einer neuen Wechselgeldadresse, die nun Teil eures Wallets ist. Bis hierher alles nicht tragisch, alles in Ordnung. Jetzt möchte die Börse aber den Satoshi-Test durchführen. Die gute Erklärung dazu hatte @Danydee72 verlinkt. Kurz gesagt möchte die Börse prüfen, ob die Adresse, von der aus ihr die Bitcoins im Wert von 70 Cent gesendet habt, wirklich euch gehört. Darum werdet ihr nun von der Börse aufgefordert noch einmal einen kleinen Betrag von exakt dieser Adresse an eine andere Adresse, die euch die Börse natürlich mitteilt, zu senden.

Ich denke, dass Problem wird deutlich. Die Adresse ist leer. Aber sie ist immernoch Teil eures Wallets. Darum könntet ihr sie einfach wieder füllen und den von der Börse gewünschten Betrag an die von der Börse gewünschte Adresse senden. Wir haben aber, nach meinem Kenntnisstand, keine Möglichkeit Einfluss darauf zu nehmen, von welcher der (nun sechs) möglichen Adressen die „Überweisung“ erfolgt.
Und ein weiteres Problem habe ich noch gar nicht angesprochen. Was ist denn, wenn die erste „Überweisung“ an die Börse von mehreren Adressen stammt? Weil das der Algorithmus so entschieden hat oder weil das Guthaben auf einer Adresse nicht ausreichend war. Wenn ich in obigem Beispiel z.B. 2 Euro „überweisen“ wollte.

Lösung
Zuerst möchte ich mich @mezzomix anschließen. Die einfachste Lösung wäre es, die Verifikation über Signaturen zu lösen. Dies ist allerdings eine Entscheidung, die die Börsen für sich treffen müssen. So lange es Alternativen gibt, wird ja niemand gezwungen eine Börse zu nutzen, die nur mit dem Satoshi-Test arbeitet.

Ich habe das ganze für mich jetzt so gelöst: Ich werde mir eine weitere Hardware-Wallet besorgen. Diese wird ausschließlich für Transaktionen zur Börse dienen. Das Vorgehen stelle ich mir dann so vor:
1)   Ich sende den Betrag an Bitcoin, den ich verkaufen möchte, an die neue Hardware-Wallet.
2)   Von dort sende ich den Betrag an die Börse. Einen kleinen Rest behalte ich zurück.
3)   Den Rest (der sich ja nun auf einer neuen Adresse befindet) sende ich „zurück“ an die ursprüngliche Adresse, von welcher aus ich an die Börse gesendet habe. Jetzt habe ich in meiner Wallet 2 Adressen. Die Ursprungsadresse, die ich verifizieren möchte und die nun wieder Guthaben enthält und die neue leere Adresse.
4)   Ich sende den (von der Börse) gewünschten Betrag an die von der Börse gewünschte Adresse. Nun habe ich indirekt doch Einfluss darauf, welche Adresse zum Senden verwendet wird. Nämlich die Einzige, die Guthaben hat.

Ohne neue Wallet müssen halt die ganzen Beträge auf den ganzen Adressen auf eine Adresse übertragen werden. Die Idee ist identisch. Wenn keine Alternative bleibt, muss diese Adresse zum Senden verwendet werden.

Ich hoffe, dass hilft dem ein oder anderen.

Ich erhebe für meine(n) Text(e) weder den Anspruch der Vollständigkeit noch der inhaltlichen Korrektheit. Sie geben lediglich meinen Wissensstand wieder. Für Korrekturen und konstruktive Kritik bin ich immer dankbar.