Erfahrungsbericht: CoinJoin mit Wasabi Wallet

Moinsen, hier mal eine Sache, die ich schon seit 2 Jahren vorhatte: einen Coin Join aus Interesse machen mit der Wasabi wallet.
Der Blocktrainer und auch der Bitcoin-Maximalist in dem unteren Video haben ja vollmundig versprochen, dass sich der Bitcoin nicht hinter Monero verstecken müsse, was das Thema privacy angehe.

Lassen wir das mal antesten, dachte ich mir.
Soweit so gut. Ziel soll sein, dass nicht nachvollziehbar sein soll, dass Coins von Börse A und Coins von Börse B eigentlich den gleichen Besitzer haben.

Versuchsaufbau/ Vorbedingungen:

Coins von Börse A ---> HW-Wallet 1
          
Coins von Börse B ---> HW-Wallet 2

Ich wusste auch bereits vorher, dass es nicht direkt von den HW-Wallets geht - also Transfer auf 2 Hotwallets in Wasabi

Versuchsdurchführung:

HW-Wallet 1 --> Hotwallet 1 -----\
                                 |
HW-Wallet 2 --> Hotwallet 2 ---(JOIN)--> Hotwallet 2 (JOINed Coins + ungejointer Rest)
  • als erstes bin ich erschrocken, dass man ~0,1 BTC für einen Coinjoin einsetzen muss (!), sonst wird die Queue rejected. Also bei Monero gibt’s privacy ab 0€…

  • der nächste Schock war, dass SÄMTLICHE für einen Coinjoin nötige BTC aus EINER Wallet kommen müssen. Eine Selektion von Coins aus „myCoinJoin“ und „myCoinJoin2“ zum Erreichen des ~0,1 BTC „Mindesteinsatzes“ war nicht möglich.

  • ich musste also den Betrag von Hotwallet 1 auf Hotwallet 2 vor dem JOIN übertragen, was ich eigentlich unbedingt vermeiden wollte, um die Mischung der Coins in einer Wallet (und damit die Verbundenheit beider Wallets nahezulegen) zu verhindern. Gerade deswegen wollte ich doch eigentlich einen Coin Join machen?!?! Oder habe ich einen „coin join“ nicht verstanden?
HW-Wallet 1 --> Hotwallet 1 -----\
                                 |
HW-Wallet 2 --> Hotwallet 2 ----(+)----(JOIN)--> Hotwallet 2 (JOINed Coins + ungejointer Rest)

Nun gut, nach dem Senden aller Coins in Hotwallet 2 konnte ich diese nun endlich in einen Coin Join „enqueuen“.

  • nach dem Ablauf des „Registration“-Countdowns dauerte es nochmal ca. 15 Minuten
- Connection Confirmation
- Output Registration
- Signing
- Registration
- Connection Confirmation
- Output Registration
- Signing
  • bis letztendlich die ersehnte Meldung kam
- CoinJoin Completed!
2 „Gefällt mir“

Nun gut. Danach hatte ich wirklich einen Output mit einem

Anonymity Set: 21
  • nun wollte ich zum Abschluss des Versuchs noch die „Errungenschaft sichern“, indem ich es auf eine freshe Hardware-Wallet (Wallet 3) sichere und transferierte also NUR die Coins mit Anonymity Set: 21.
 Hotwallet 2 (JOINed)---> Hardware Wallet 3

Und:

  • Oh Schreck! Die Coins auf der „final destination“ Hardware Wallet 3 (einer Ledger Nano S) wurden wieder angezeigt als
Anonymity Set: 1

…da bin ich ja fast vom Stuhl gefallen!

1 „Gefällt mir“

Kurz dazu: Das ist halt einfach davon abhängig welchen Service man wählt und was für Poolgrößen angeboten werden. Das in der Form mit Monero zu vergleichen ist etwas albern.

Die kleinste Poolgröße mit Whirlpool und der Sparrow Wallet ist z.B. nur 0.001 BTC.

Siehe:

Wasabi kennt die Vorgeschichte dieses UTXO nicht mehr und zeigt einfach 1 als Default an. Also kein Grund vom Stuhl zu fallen.


Ich kenne mich aber mit Wasabi (und generell mit dem Thema) überhaupt nicht aus, also vielleicht kann ein CoinJoin-Veteran mehr zu deinen restlichen Fragen sagen. :wink:

2 „Gefällt mir“

Kenne mich damit auch nicht aus und kann nur mutmaßen.

Aber ob du die Coins erst von Hotwallet 1 auf 2 und dann in den CJ schickst, oder von beiden Wallets gleichzeitig in einen gemeinsamen CJ, ist für mich kein großer Unterschied.

Ok, im ersten Fall gibt es eine direkte Verbindung. Aber auch im zweiten Fall gibt es eine gemeinsame Transaktion. Wenn man absolut keine Verbindung zwischen den Wallets möchte, muss man ganz einfach in getrennte CJs gehen.

Aus meiner Sicht ist der Sinn eines CJ ausschließlich, dass man eine Unterbrechung in der UTXO Historie schafft. Das gilt für die eingehenden und für die ausgehenden Coins:

  1. Keiner weiß wo die Coins landen, die in den CJ gehen. Also welche der zig Ausgangsadressen dir gehören. Während man vorher deine Coins also nachverfolgen konnte, kann man das nachher nicht mehr.

  2. Keiner weiß wo die Coins herkommen, die du nachher besitzt und evtl. jemandem transferierst. Empfänger deiner finalen Coins können keine Rückschlüsse aus dein Verhalten und Vermögen ziehen.

3 „Gefällt mir“

Bitcoin removes Middleman aber die Wallet holen sie wieder rein.
Bei Monero muss ich keinen Service aussuchen.

Warum sagt man nicht einfach die Wahrheit. Das funktioniert, aber ist einfach unbrauchbar.

Danke @BarneyVanSaberhagen für den detaillierten Bericht.

1 „Gefällt mir“

Monero muss aber leider auch Kompromisse eingehen um dir das bieten zu können. Der Vergleich mit Bitcoin ist wie gesagt nicht sinnvoll.

Natürlich ist Monero besser auf Privatsphäre ausgelegt, das ist schließlich der USP. Verstehe jetzt aber nicht warum deswegen ein CoinJoin unbrauchbar sein soll?

2 „Gefällt mir“

Welche meinst du genau?

Es funktioniert - ja, aber die UX ist doch eine Katastrophe und ich brauche einen Service. Wenn ich Privatsphäre will, bin ich als Nutzer mit Monero besser dran.

Bitcoin wird für mich damit nicht schlechter. Ich brauche/will keinen Coin mit Privatsphäre.

1 „Gefällt mir“

Richtig, niemand (zumindest nicht ich) behauptet etwas anderes.

Wenn ich aber Privatsphäre für meine Bitcoin will dann ist es trotzdem eine gute Lösung.

Hängt halt vom Service ab. Mit der Sparrow Wallet ist es nach eigener Erfahrung wirklich kinderleicht. Am Ende ist es eine Funktion die nie die breite Masse erreichen wird und immer etwas Geduld und Erfahrung vom Nutzer abverlangt.

2 „Gefällt mir“

Als erstes möchte ich mich ganz herzlich für die hervorragenden Antworten bedanken!

Ah, OK, Danke für die Info! Kann es sein, dass diese „Mindesteinlage“ dafür verwendet wird, das in dem überragenden Video von „Alex Anarcho“ und „Patrick Lemke“ an Stelle 38:39 beschriebene „Dust Attack“ zu verhindern, oder ist es reine Willkür bzw. hat es was mit Entlohnung der Miner für den zusätzlichen Aufwand zu tun?

38:39
ja und ich habe mir z.B. neulich diesen Podcast von Sarang Noeta(?) und Dave Danson(?) angehört also dem C.E.O. von Cypher trace […] geredet hat,
ist Analyse von COIN JOINS und Privatsphäre in bitcoin überhaupt kein Problem für die da kannst du nur DUST ATTACK machen:
Du schickst einfach viele kleine outputs an die ganzen COIN JOINS und wenn die leute halt nicht genau wissen was sie machen verlieren sie ihre Privatsphäre
39:18
[…] Ein großes Problem was ich bei Bitcoin sehe ich muss ein wahnsinns Brain sein ich muss genau wissen wie das Protokoll funktioniert,
ich muss wissen welche Wallet ich benutzen muss u.s.w. um ein Hauch von Privatsphäre zu bekommen, wohingegen bei Monero […] ich muss mir keine Gedanken machen

Sorry, ich wollte halt einfach irgendwie mal den Privacy-Knopf drücken… :wink: „Auto-Scale“

OK, das dachte ich im 2ten Moment auch, ich hätte halt gedacht, Wasabi macht eine PI*Daumen kurze Chainanalyse und würde checken, dass die Vorgeschichte unterbrochen wurde.

  • Ahhh, OK! Danke. Ich hätte also eigentlich folgendes machen sollen um mein Ziel zu erreichen (gemäß dem Fall genügend Mindesteinlage zur Verfügung zu haben):
Hotwallet 1 ---(JOIN)---\
                        |
Hotwallet 2 ---(JOIN)--(+)---> Hotwallet 1 + 2 (ohne Vorgeschichte)
1 „Gefällt mir“

Bei Bitcoin kannst du alle Transaktionen und insbesondere die Gesamtmenge aller Bitcoin jederzeit einsehen und überprüfen.
Damit hast du wenig Privacy. Aber falls es Bugs im Bitcoin Code geben sollte, fällt das leichter auf. Beispielsweise Inflation Bugs, wie sie bei Bitcoin schon entdeckt und behoben wurden (Beispiel), würden die Begrenzung der Bitcoin Menge aushebeln.

Bei Monero dagegen kannst du nicht sehen wer wem etwas transferiert hat, da das in den Transaktionen verschleiert wird. Du kannst aber nach meinem Verständnis auch nicht überprüfen wieviele Monero im Umlauf sind.
Die Privacy ist also nahezu perfekt. Aber falls es z.B. einen Inflation Bug gibt, fällt das nicht auf. Jemand der solch einen Bug ausnutzt, kann im Prinzip beliebig viele Moneros ausgeben. Natürlich wird er das nicht übertreiben, um nicht aufzufallen.

Für die Settlement Layer einer potentiellen zukünftigen Weltwährung (ich weiß, rotes Tuch für dich :wink:) käme solch eine Blockchain deshalb nicht in Frage.
Als extra Blockchain, über die man seine Bitcoin auch heute schon anonymisieren kann, ist Monero super. Der einzige Nachteil ist, dass der Swap in Monero und zurück ein steuerrelevanter Vorgang wäre, und dass man hohe Gebühren zahlt, wenn man das (sinnvollerweise) nicht über eine Exchange macht.

Ich kann nur sehr das Streitgespräch empfehlen, das oben schon verlinkt wurde:

Übrigens finde ich auch den Vergleich zwischen den Privacy Features von Monero und Lightning sehr interessant. Die Experten sind sich wohl einig, dass Lightning noch nicht an Monero herankommt, aber kann sich ja ändern.

Lesenswert dazu:

Threads zu Monero und Anonymisierung:

Genau! So hätte zumindest ich das gemacht.

6 „Gefällt mir“

Es war mir eine Freude! Habe ja nur 2 Jahre dafür gebraucht ;-)

1 „Gefällt mir“

Coin Join ist cool, aber er ist nicht „Mama-kompatibel“ :wink:

2 „Gefällt mir“

Es scheint halt fast einfacher seine Coins in Monero und wieder zurück zu tauschen als einen Coin Join zu machen.
Ich will auch Bitcoin nicht schlecht machen, denn wir wissen ja alle, dass bei „zu viel privacy“ die ganzen Staatshäider vorm Tor stehen…was natürlich auch keiner will.

Einfach die Zündreihenfolge 1-4-2-3 ändern, schon hast du es @ThePriWi

1 „Gefällt mir“