Privacy Guide zum Umgang mit gemixten Bitcoin - Spend privately - Privacy BTC Tools

23 Min. Lesedauer
Von FuSsY
Privacy Guide zum Umgang mit gemixten Bitcoin - Spend privately - Privacy BTC Tools

Das Mixen von unseren UTXO's ist einfach. Dank Wallets wie Samourai & Sparrow Wallet erhalten wir ziemlich perfekte forward Privacy.

Es stellt tats├Ąchlich ein gr├Â├čeres Problem dar, diese erworbene Privacy auch zu erhalten. Das hei├čt wenn wir unsere gemixten "unspent transaction outputs" (UTXO) ausgeben bzw ├╝ber die ├Âffentliche Blockchain versenden wollen...

Es gibt Transaktionstools, die uns helfen, unsere Post-Mix-Coins so auszugeben, dass die Anonymit├Ąt gewahrt bleibt, jedes Tool bietet unterschiedliche Techniken und es ist wichtig, die Unterschiede zu verstehen!

Dieser Artikel geht auf die Privacy Spending-Tools vom Sparrow/ -und Samourai Wallet ein, die uns beide ein Schweizer Taschenmesser liefern, wenn es um Bitcoin Privatsph├Ąre geht. Mobile sowie auf unserem Desktop.

Um etwas Hintergrundwissen aufzubauen hier erstmal ein paar technische Details...

Standard Wallet Struktur beider Tools

Sowohl in Samourai Wallet als auch in Sparrow Wallet ist die Whirlpool-Implementierung so, dass eine Vier-Wallet-Struktur verwendet wird. Diese vier Wallets werden alle von Ihrer Wallet-Software im Hintergrund verwaltet, und aus Sicht des Benutzers k├Ânnen wir nahtlos zwischen den Wallets navigieren.

Es ist wichtig, die Wallets so zu strukturieren, dass unsere UTXO's voneinander getrennt bleiben, auf diese Weise folgen diese UTXO's einem logischen Pfad bis hin zur Post-Mix-Wallet und verbleiben dort ohne deterministische Verkn├╝pfungen zur vorherigen Transaktionshistorie (forward Privacy).

Sowohl Samourai Wallet als auch Sparrow Wallet unterst├╝tzen die folgenden Adressformate:

  • P2PKH-Adressen (Pay-to-Public-Key-Hash), die wie "17SkEw2md5avVNyYgj6RiXuQKNwkXaxFyQ" aussehen und auch als "Legacy" bezeichnet werden.
  • Pay-to-Script-Hash (P2SH)-Adressen, die wie "3EEJFjZURxShNr2AoJtbfcvCB749yzP7LP" aussehen, auch als "nested SegWit" bezeichnet.
  • Pay-to-Witness-Public-Key-Hash (P2WPKH)-Adressen, die wie "bc1qqmmc3s46efrdq0jglhf8l8jg0xw37exgne6q3k" aussehen, auch als "native SegWit" oder "Bech32" bezeichnet.
  • Samourai Wallet hat Unterst├╝tzung, um diese Adressen auszugeben, Sparrow Wallet hat Unterst├╝tzung, um an diese Adressen auszugeben und zu empfangen.
Da die Whirlpool Implementierung nur mit P2WPKH-Adressen funktioniert, k├Ânnen die Pre-Mix-, Post-Mix- und Bad-Bank-Wallets auch nur P2WPKH empfangen. Ausgeben k├Ânnen wir die Coins wieder an P2PKH-, P2SH-, P2WPKH- oder P2TR-Adressen!

Die Wallet-Software verwendet verschiedene Ableitungspfade, um die separaten Wallets zu erreichen. Ableitungspfade verwenden unterschiedliche Zahlen, um unterschiedliche Details ├╝ber den Schl├╝sselpfad darzustellen: "m / Zweck' / coin_type' / Identit├Ąt". Im folgenden Beispiel kann die Einzahlungs-Wallet eine Vielzahl von Adresstypen verarbeiten, daher die "m/44'|m/49'|m/84'|m/47'" f├╝r jeden der verschiedenen Zwecke. Die Pre-Mix-, Post-Mix- und Bad Bank-Wallets erf├╝llen nur den "m/84'"-Zweck.

  • Deposit Wallet: Dies ist die Wallet, auf der wir Einzahlungen vornehmen. UTXOs in dieser Wallet k├Ânnen verwendet werden, um Whirlpool CoinJoins durch eine sogenannte "Transaction Zero" (tx0) zu erstellen. Sie kann auch einfach wie jede andere Wallet verwendet werden.
  • Pre-Mix Wallet: Hier landen UTXOs, sobald sie die Deposit-Wallet durch einen tx0 (Mix) verlassen haben. Die UTXOs befinden sich hier nicht lange, dies ist nur ein Durchgang, bei dem UTXOs als verf├╝gbare Eing├Ąnge f├╝r Whirlpool CoinJoin registriert werden. Ein direktes Einzahlen auf diese Wallet ist nicht m├Âglich. Eine Auszahlung unserer Coins ist zu jeder Zeit m├Âglich! 100% Non-Custodial.
  • Post-Mix Wallet: Hier kommen die UTXOs hin, sobald sie ihren ersten Whirlpool CoinJoin durchlaufen haben. Diese UTXOs verbleiben hier solange wir wollen. Dadurch erzielen wir fortlaufend ansteigende Privacy, da diese UTXOs immer wieder zu weiteren Re-Mixen ausgew├Ąhlt wird. Die Geb├╝hren f├╝r diese Re-Mixes zahlen die frischen Pre-Mixer aus dem gew├Ąhlten Whirlpool!
  • Bad Bank Wallet: Hier wird der Toxic Change aus unserem Coinjoin deponiert. Dieser MUSS zwingend mit Vorsicht behandelt werden! Ein Zusammenf├╝hren dieser Coins zerst├Ârt die komplette Privacy eurer Coinjoins. Lasst die UTXOs liegen, mixt sie in einem kleineren Pool aber gebt sie nicht zusammen aus. Wenn die Bad-Bank UTXOs zu klein werden um sie weiter zu mixen ist eine sinnvolle Verwendung beispielsweise das Spenden an Open-Source Projekte oder Developern unserer Tools usw. :)
Sparrow Desktop Wallet mit Whirlpool Account's
Samourai Wallet Post-Mix

Pools und die tx0

Es gibt vier Poolgr├Â├čen im Whirlpool: 0,5, 0,05, 0,01 und 0,001 BTC. Das bedeutet, dass jeder Whirlpool-Ausgang der Poolgr├Â├če entspricht. Wenn wir UTXOs aus unserem Deposit-Wallet f├╝r den Mix ausw├Ąhlen, durchlaufen diese zuerst einen tx0 (die Pool Eingangstransktion). Die Ergebnisse dieses tx0 variieren je nachdem, welche Poolgr├Â├če wir ausw├Ąhlen. Zum Beispiel, wenn wir 10 Bitcoin mixen wollen, w├╝rden die verschiedenen Poolgr├Â├čen diese Ergebnisse durch die tx0 erzeugen:

0.5 Pool

  • 10.00000000 BTC in
  • 1 x 0,01750000 BTC UTXO f├╝r die Whirlpool-Koordinatorgeb├╝hr
  • 19 x 0,50001000 BTC UTXOs f├╝r Whirlpool-Eing├Ąnge, die einen kleinen zus├Ątzlichen Betrag f├╝r die Miner-Geb├╝hr tragen. In diesem Beispiel wurde eine Geb├╝hr von 1 Sat/vb verwendet, die sich jedoch je nach Mempool-Auslastung und gew├╝nschter Dringlichkeit ├Ąndert.
  • 1 x 0.48231000 BTC UTXO als Toxic Change in der Bad-Bank Wallet

0.05 Pool

  • 10.00000000 BTC in
  • 1 x 0.00175000 BTC UTXO f├╝r die Whirlpool-Koordinatorgeb├╝hr
  • 199 x 0.05001000 BTC UTXOs f├╝r Whirlpool-Eing├Ąnge, die einen kleinen zus├Ątzlichen Betrag f├╝r die Miner-Geb├╝hr tragen. In diesem Beispiel wurde eine Geb├╝hr von 1 Sat/vb verwendet, die sich jedoch je nach Mempool-Auslastung und gew├╝nschter Dringlichkeit ├Ąndert.
  • 1 x 0.04626000 BTC UTXO als Toxic Change in der Bad-Bank Wallet

0.01 Pool

  • 10.00000000 BTC in
  • 1 x 0.00050000 BTC UTXO f├╝r die Whirlpool-Koordinatorgeb├╝hr
  • 998 x 0.01001000 BTC UTXOs f├╝r Whirlpool-Eing├Ąnge, die einen kleinen zus├Ątzlichen Betrag f├╝r die Miner-Geb├╝hr tragen. In diesem Beispiel wurde eine Geb├╝hr von 1 Sat/vb verwendet, die sich jedoch je nach Mempool-Auslastung und gew├╝nschter Dringlichkeit ├Ąndert.
  • 1 x 0.00952000 BTC UTXO als Toxic Change in der Bad-Bank Wallet

0.001 Pool

  • 10.00000000 BTC in
  • 1 x 0.00005000 BTC UTXO f├╝r die Whirlpool-Koordinatorgeb├╝hr
  • 9,900 x 0.00101000 BTC UTXOs f├╝r Whirlpool-Eing├Ąnge, die einen kleinen zus├Ątzlichen Betrag f├╝r die Miner-Geb├╝hr tragen. In diesem Beispiel wurde eine Geb├╝hr von 1 Sat/vb verwendet, die sich jedoch je nach Mempool-Auslastung und gew├╝nschter Dringlichkeit ├Ąndert.
  • 1 x 0.00095000 BTC UTXO als Toxic Change in der Bad-Bank Wallet

Die Geb├╝hr f├╝r den Whirlpool-Koordinator bleibt immer gleich, unabh├Ąngig davon, wie viel Bitcoin wir mixen wollen. Wenn wir beispielsweise 1 BTC oder 100 BTC im 0,5-Pool mixen, zahlen wir immer 0,0175 BTC f├╝r die Koordinatorgeb├╝hr.

Beachtet auch, dass sich die Miner-Geb├╝hr, die in jedem Pre-Mix-UTXO enthalten ist, zu einem gro├čen Betrag an Miner-Geb├╝hren anwachsen kann, wenn die Anzahl der Pre-Mix-UTXOs zunimmt. Im obigen 0,001-Pool-Beispiel betr├Ągt die Summe der Miner-Geb├╝hren 0,099 BTC. Also je mehr kleine Outputs desto gr├Â├čer die Summe der Miner Fee.

Am g├╝nstigsten mixen wir, wenn der Mempool leer ist und wir bei sehr geringer Low Priority den Mix starten k├Ânnen!

Die tx0 gilt sowohl f├╝r Samourai Wallet als auch f├╝r Sparrow Wallet. Ein tx0 ist immer so aufgebaut, dass eine oder mehrere Input UTXOs aus dem Deposit-Wallet unterteilt sind in:

  • Mehrere gleich gro├če Ausg├Ąnge, das sind die Pre-Mix-UTXOs, die sp├Ąter in die Whirlpool CoinJoins gehen werden.
  • Ein Ausgang f├╝r die Whirlpool-Koordinator-Geb├╝hr.
  • Ein Ausgang f├╝r die restlichen Coins, die "toxic change" (Bad-Bank)

Hier ein tx0 Beispiel:

  • Ein input von 0.81804189 BTC
  • 16 gleichgro├če outputs von 0.0501 BTC
  • Ein Whirlpool Koordinator fee output von 0.00175 BTC
  • Ein toxic change output von 0.0136981 BTC

Wir k├Ânnen Transaktionen hier veranschaulichen - KYCP.org

Jeder der 16 gleich gro├čen Ausg├Ąnge wird einzeln f├╝r Eing├Ąnge zu nachgeschaltetem Whirlpool CoinJoin ausgew├Ąhlt. Diese Ausg├Ąnge befinden sich vor├╝bergehend in der Pre-Mix-Wallet als verf├╝gbare Eing├Ąnge f├╝r Whirlpool CoinJoins. Wenn neue Whirlpool-Transaktionen initiiert werden, sucht der Koordinator nach verf├╝gbaren Eing├Ąngen wie diesen. Der Whirlpool-Koordinator erzwingt strenge Regeln, die sicherstellen, dass keine zwei Ausgaben von derselben tx0 oder derselben Wallet in derselben Whirlpool CoinJoin-Transaktion landen. Jeder dieser 16 Ausg├Ąnge tr├Ągt eine kleine Menge an zus├Ątzlichem Bitcoin, so dass sie, sobald sie als Eingaben ausgew├Ąhlt sind, dazu beitragen k├Ânnen, die Miner-Geb├╝hr f├╝r die Whirlpool CoinJoin-Transaktion zu decken.

Der Koordinator wechselt nach dem Zufallsprinzip zwischen der Erstellung von Transaktionen, die entweder zwei neue Teilnehmer-UTXOs und drei Remix-UTXOs oder drei neue Teilnehmer-UTXOs und zwei Remix-UTXOs haben. Die frischen Teilnehmer-UTXOs ├╝bernehmen immer die Miner-Geb├╝hr und die "Free Rider" (Re-Mixer) -UTXOs k├Ânnen immer kostenlos remixen. Auf diese Weise zahlen wir die Whirlpool-Koordinator-Geb├╝hr nur einmal und dann k├Ânnen unsere UTXOs kostenlos in unserem Post-Mix-Wallet verbleiben.

Toxic Change

Wie oben geschrieben m├╝ssen wir besonders auf unsere Toxic Change im Bad-Bank Wallet achten. Standardm├Ą├čig werden wir von Samourai Wallet aufgefordert, diese UTXO w├Ąhrend der tx0-Initiierung als "Not spendable" zu markieren. Wenn wir diesen UTXO auf diese Weise markieren, wird verhindert, dass unser Wallet ihn als verf├╝gbaren UTXO anzeigt und von unserem angezeigten Guthaben ausgeschlossen.

Achtung: Bei Samourai ist mir aufgefallen, dass nach einem Neustart der App, der Status "do not spend" nicht immer wieder automatisch gesetzt wird! Am besten ist es, diese UTXO irgendwie direkt loszuwerden...

Wir k├Ânnen jederzeit zum Men├╝ in der oberen rechten Ecke der Samourai Wallet navigieren und "unspend transaction output anzeigen" ausw├Ąhlen und dort auch unsere "Nicht ausgeben" UTXO finden. W├Ąhlen wir ein UTXO aus k├Ânnen wir den Status auf "Spendable" setzen. Dann wird es als Teil unseres Guthabens angezeigt und ist wieder auszugeben.

In Sparrow Wallet wird die toxic change automatisch nach dem tx0 an die Bad Bank Wallet gesendet. Wir k├Ânnen jederzeit auf die Registerkarte Bad Bank Wallet gehen und diesen UTXO von dort aus ausgeben.

Das Problem mit dem Toxic Change ist, dass sie On-Chain immer noch mit dem tx0 verbunden ist, von dem es stammt. Dies bedeutet, dass es auch mit der gesamten vorherigen Transaktionshistorie aller Inputs zu diesem tx0 verkn├╝pft ist. Wenn also ein externer Beobachter die Bewegung von Bitcoin verfolgen w├╝rde, die zu einer bekannten Entit├Ąt geh├Ârt, dann w├╝rde er wissen, dass dieser Toxic Change zu dieser Entit├Ąt geh├Ârt. Daher k├Ânnte der externe Beobachter unter Verwendung von On-Chain-Heuristiken davon ausgehen, dass jeder Bitcoin in Kombination mit der Toxic Change in einer zuk├╝nftigen Transaktion auch zu der bekannten Entit├Ąt geh├Ârt.

Nach dieser Logik w├╝rde die Kombination eines toxic Change-UTXO mit einem Post-Mix-UTXO die Anonymit├Ątsvorteile von Whirlpool zunichte machen. Aufgrund der Wallet-Struktur wird dies so gut es geht unterbunden. Allerdings sind wir immer Herr unsere Coins, egal in welchem Wallet diese liegen. Daher ist immer Vorsicht und ├ťberlegung angeraten!

Bei der "Wasserfalltechnik" beginnen wir mit der gr├Â├čten Poolgr├Â├če, die wir mit unseren verf├╝gbaren UTXOs in der Deposit Wallet erhalten k├Ânnen. Dann nehmen wir den Toxic Change und verwenden ihn ALLEIN in der n├Ąchstgr├Â├čten Poolgr├Â├če und wiederholen dann diesen Vorgang, bis wir mit der kleinstm├Âglichen Toxic Change ├╝brig bleiben.

Eine weitere M├Âglichkeit, die derzeit mit Samourai Wallet entwickelt wird, ist ein Atomic Swap mit Monero (XMR). Dies w├╝rde erfordern, dass wir eine separate Monero-Wallet wie Monerujo haben, da Monero nicht in Samourai Wallet implementiert wird. Aber im Grunde k├Ânnten wir die Bitcoin-Transaktion konstruieren, die vertrauenslos unsere Coins mit einem Peer f├╝r XMR zur Monero-Wallet tauscht und die Toxic Change zur├╝ck an unsere Bitcoin-Wallet sendet. Oder man geht mit den XMR shoppen ect.

Whirlpool UTXOs

Jeder Ausgang eines Whirlpool CoinJoin ist einer von f├╝nf gleich gro├čen Ausg├Ąngen. F├╝r einen externen Beobachter, der einen Blockexplorer betrachtet, besteht nahezu keine M├Âglichkeit, mit Sicherheit zu bestimmen, dass eine bestimmte Ausgabe zu einer bestimmten Eingabe geh├Ârt. Alle f├╝nf Ausg├Ąnge haben die gleiche Wahrscheinlichkeit, zu einem der f├╝nf Eing├Ąnge zu geh├Âren. Dieses Konzept l├Ąsst sich mit KYCP.org gut veranschaulichen.

Hier ist eine andere M├Âglichkeit, die gleiche Whirlpool CoinJoin-Transaktion als Tabelle zu betrachten, die die Wahrscheinlichkeit einer Wert├╝bertragung zwischen Eingabe und Ausgabe auflistet.

Da alle Outputs die gleiche Gr├Â├če haben und die gleiche Wahrscheinlichkeit haben, zu einem bestimmten Input zu geh├Âren, gibt es kein Unterscheidungsmerkmal f├╝r sie. Dies ist Anonymit├Ąt, die Eigenschaft oder der Zustand, sich nicht von der Masse zu unterscheiden. Sobald diese Anonymit├Ąt erreicht ist, m├Âchten wir sicherstellen, dass wir sie bewahren, um fortan Bitcoin ├╝ber die ├Âffentliche Blockchain ausgeben zu k├Ânnen, ohne Details preiszugeben, die eine fr├╝here On-Chain-Transaktionshistorie offenbaren w├╝rden, oder die weitere Details ├╝ber uns als Entit├Ąt preisgibt.

Um mehr ├╝ber Anonymity Sets in Bezug auf Whirlpool CoinJoin zu erfahren, hier ein Deep Dive in die Technologie...

BIP47 und PayNyms

BIP47 erm├Âglicht wiederverwendbare Zahlungscodes, die wie eine statische Bitcoin-Adresse beispielsweise auf einer Website angezeigt werden k├Ânnen. Der Vorteil des Zahlungscodes besteht darin, dass externe Beobachter keine Transaktionshistorie oder Salden aus dem Zahlungscode sehen k├Ânnen, wie dies bei einer Bitcoin-Adresse der Fall ist.

Auf einer hohen Ebene werden Details aus den Zahlungscodes beider Transaktionsteilnehmer kombiniert, was zu einem Adressenindex f├╝hrt, der nur den beiden Teilnehmern bekannt ist. Auf diese Weise kann jeder, der sich mit seinen Paynyms gegenseitig folgt und sich mit der On-Chain-Benachrichtigungstransaktion mit ihm verbindet, Zahlungen an die resultierenden Adressen senden, die f├╝r diese bestimmte Verbindung eindeutig sind. Es ist nicht erforderlich, dass ein aktiver Server jedes Mal eine neue Adresse liefert, wie es bei einem Zahlungsserver wie BTCPay Server der Fall ist. Dies ist ein Beispiel f├╝r einen BIP47-Zahlungscode:

ÔÇťPM8TJK7rnkDXabzmo4ZyxX49JxdLWhbFANDr4eBCwk1shDEs1qDysW5hFCFr6hschwJe4ny7C7GcSnsNPzBYvE6giabxfJyNSrAWRJYCoHMo7iveHnedÔÇŁ

Die Codes k├Ânnen auch als QR-Code dargestellt werden.

PayNyms hingegen sind eine Implementierung von BIP47, die in Samourai Wallet und Sparrow Wallet verwendet werden. PayNyms werden aus dem Hashing unseres Payment-Code abgeleitet, um einen eindeutigen Roboter-Avatar und einen eindeutigen Namen zu generieren. Der Avatar und der Name erleichtern dem Menschen die Interpretation und Handhabung. Samourai Wallet unterh├Ąlt ein Verzeichnis von PayNyms, wenn auf Tools > Mixpartnet finden klicken, k├Ânnen wir uns mit anderen Paynyms verbinden. Hier die offizielle Site: https://paynym.is/. Dies ist ein Opt-in-Verzeichnis, das wir verwenden k├Ânnen, um unseren PayNym zu registrieren.

PayNyms kann auf verschiedene Arten verwendet werden. Zum einen k├Ânnen wir sie verwenden, um direkte Zahlungen an das PayNym einer anderen Person zu t├Ątigen, indem wir die On-Chain-Verbindung herstellen und den Index der geheimen Adressen generieren. Wenn wir speziell ├╝ber nicht-kollaborative PayNym-Zahlungen sprechen, wenn wir nicht selbst die On-Chain-Benachrichtigungstransaktion durchf├╝hren, kennt der Empf├Ąnger nicht die Adressen zwischen den Wallets.

Dies ist nicht zu verwechseln mit kollaborativen Transaktionen mit PayNyms, bei denen sich nur die PayNyms gegenseitig folgen und nicht die On-Chain-Benachrichtigungstransaktion. Mit anderen Worten, wenn wir den Zahlungscode einer anderen Person in unsere Wallet importieren und mit der Berechnung der Adresse beginnen, um Bitcoin zu senden, wei├č der Empf├Ąnger nicht, welche Adressen f├╝r diese Zahlungen zu beachten sind, es sei denn, es wird ein Connect zwischen beiden Paynyms durchgef├╝hrt (die On-Chain-Benachrichtigungstransaktion). In diesem Szenario m├Âchten wir unseren Zahlungscode mitteilen, damit wir wissen, wie wir diese Adresse ableiten und beobachten k├Ânnen. Sobald ein Zahlungscode gescannt und die On-Chain-Benachrichtigungstransaktion durchgef├╝hrt wurde, ist keine direkte Zusammenarbeit des Empf├Ąngers erforderlich. Wir k├Ânnen jederzeit einfach damit beginnen, Zahlungen zu senden.

Die andere M├Âglichkeit, PayNyms zu verwenden, sind kollaborative Transaktionen wie Stowaway und StonewallX2, die in sp├Ąteren Abschnitten behandelt werden.

Samourai Wallet

Hier wird das Connecten ├╝ber die OnchainBenachrichtigungstransaktion gezeigt:

  • Suchen Sie den Zahlungscode, an dem Sie interessiert sind, paynym.is in diesem Beispiel verwendet
  • Dr├╝cken Sie in Samourai Wallet auf das blaue "+"-Zeichen und dann auf das "PayNym-Symbol"
  • Sobald Sie sich auf dem PayNym-Bildschirm befinden, dr├╝cken Sie erneut das blaue "+"
  • Dr├╝cken Sie auf "QR-Code scannen", alternativ k├Ânnen Sie einen kopierten Zahlungscode einf├╝gen
  • Scannen Sie den QR-Code nach dem Zahlungscode, mit dem Sie eine Verbindung herstellen m├Âchten
  • Die PayNym-Details werden auf Ihrem Bildschirm angezeigt, dr├╝cken Sie "FOLGEN"
  • Best├Ątigen Sie, dass Sie diesem PayNym folgen m├Âchten
  • Sobald der Paynym als Follow angezeigt wird, k├Ânnen Sie eine Verbindung herstellen, dr├╝cken Sie "CONNECT"
  • Es erscheint ein Dialog, in dem Sie den Gesamtbetrag f├╝r die Verbindung, 15.000 Sats und die Minergeb├╝hr angeben. Klicken Sie auf "OK, FOLGEN"
  • Der PayNym-Kontaktstatus ├Ąndert sich und zeigt sowohl "Folgen" als auch "Verbunden" an, au├čerdem sehen Sie die ausstehenden Best├Ątigungen

Sobald Ihre On-Chain-Verbindung best├Ątigt wurde, k├Ânnen wir zur├╝ck zu unserem PayNym navigieren und auf das Papierflieger-Symbol klicken, um eine Zahlung an unseren Kontakt von unserem Wallet aus zu initiieren. Gebt dazu einfach den Betrag ein, ├╝berpr├╝ft die Transaktion und sendet sie.

Alternativ k├Ânnen Swir aus unserem Post-Mix-Wallet direkt an den PayNym-Kontakt senden.

  • Navigieren Sie zu Ihrem Post-Mix-Wallet, dr├╝cken Sie das blaue "+"-Zeichen und w├Ąhlen Sie "Senden"
  • Dr├╝cken Sie auf das Avatar-Symbol in der oberen rechten Ecke
  • W├Ąhlen Sie Ihren Kontakt aus der angezeigten Liste aus
  • Geben Sie Ihren Betrag ein, ├╝berpr├╝fen Sie die Transaktion und senden Sie

Sparrow Wallet

Sparrow Wallet hat die gleichen Funktionen wie gerade eben beschrieben beim Senden von direkten PayNym-Zahlungen. Das Layout der Benutzeroberfl├Ąche ist nur ein wenig anders.

  • Navigieren Sie in Sparrow Wallet zu "Tools" und dann zu "Show PayNym"
  • Kopieren Sie einen Zahlungscode und f├╝gen Sie ihn in das Dialogfeld "Kontakt suchen" ein
  • Dann auf "Kontakt hinzuf├╝gen"
  • Sobald das PayNym hinzugef├╝gt wurde, haben Sie die M├Âglichkeit, die On-Chain-Verbindung herzustellen, indem Sie auf "Kontakt verkn├╝pfen" klicken
  • Es erscheint ein Dialogfenster, in dem Sie dar├╝ber informiert werden, dass diese Benachrichtigungstransaktion 546 Sats kostet. Klicken Sie auf "Senden", um den Vorgang zu starten
  • Sie k├Ânnen direkt von Ihrem Wallet aus senden, indem Sie zum Tab "Senden" navigieren
  • Klicken Sie auf das Dropdown-Men├╝ im Dialogfeld "Senden an" und w├Ąhlen Sie "PayNym oder Zahlungscode"
  • W├Ąhlen Sie Ihren verbundenen PayNym-Kontakt aus und klicken Sie auf "Direkt senden"

Collaborative Post-Mix Spending Tools: Stowaway

Stowaway ist ein kollaboratives Post-Mix Spend-Tool, das den ausgegebenen Betrag verschleiert. Die Person, mit der wir zusammenarbeiten, ist diejenige, die den gesendeten Betrag erh├Ąlt. Wir liefern einige Inputs, der Empf├Ąnger liefert auch Inputs aus seiner Wallet, wir erhalten unsere Change Coins, der Empf├Ąnger erh├Ąlt seine Change Coins plus den Betrag, den wir ihm gesendet haben, so dass der tats├Ąchliche ausgegebene Betrag in dieser Summe verborgen ist. Der Absender zahlt die volle Miner-Geb├╝hr.

  • Das Bild oben zeigt eine Stowaway Transaktion Onchain
  • Sie k├Ânnen sehen, dass die drei Eingaben 0,01, 0,00993439 und 0,01644414 BTC waren, also insgesamt Input von 0,03637853 BTC
  • Die beiden Outputs waren 0,00484087 und 0,03144414 (und 0,00009352 f├╝r die Mining Fee)
  • Der Spender hat in dieser Transaktion 0,015 an den Empf├Ąnger gesendet, aber dieser Betrag stimmt nicht mit Inputs und Outputs ├╝berein, da er verschleiert ist
  • Der Empf├Ąnger collaborated indem er den 0,01644414-Input bereitstellte und diesen Betrag zuz├╝glich der 0,015-Zahlung f├╝r die Gesamtausgabe 0,03144414 zur├╝ckerhielt
  • Der 0.00484087 output war das Wechselgeld des Spenders

Ein externer Beobachter h├Ątte keine M├Âglichkeit zu wissen, dass diese Transaktion etwas anderes ist als das, was zum Ausgangszustand pr├Ąsent war. Die ├╝blichen Input-Ownership-Heuristiken sind aufgrund der multiplen Inputs und Outputs gebrochen, wobei ber├╝cksichtigt werden muss, dass mehrere Personen zu den Inputs beigetragen haben.

Jeder, an den wir eine Stowaway-Transaktion senden, muss Samourai Wallet oder Sparrow Wallet mit seinem PayNym verwenden. Zumindest sollten die PayNyms sich folgen, aber es ist nicht notwendig, die On-Chain-Benachrichtigungstransaktion durchzuf├╝hren, um die PayNyms zu "verbinden".

Collaborators m├╝ssen eine M├Âglichkeit haben, au├čerhalb des Wallet miteinander zu kommunizieren, z. B. mit einer Messaging-App, einem Telefonanruf usw.

Samourai Wallet

Um eine kollaborative Stowaway-Transaktion in Samourai Wallet zu erstellen, stellen wir sicher, dass wir und Partner den PayNyms des jeweils anderen folgen, es ist jedoch nicht notwendig, die On-Chain-Verbindung herzustellen.

  • Navigieren Sie zu Ihrem Post-Mix-Wallet
  • W├Ąhlen Sie das blaue "+"-Zeichen und dann "Senden"
  • Schalten Sie "Cahoots" ein
  • W├Ąhlen Sie ÔÇťStowaway"
  • W├Ąhlen Sie ÔÇťOnline"
  • W├Ąhlen Sie Ihren Partner aus Ihrer Kontaktliste aus
  • Geben Sie den Betrag ein, den Sie senden m├Âchten. W├Ąhlen Sie "Transaktion ├╝berpr├╝fen"
  • Festlegen der Mining Fee
  • Wenden Sie sich an Ihren Partner und lassen Sie ihn wissen, dass er auf Ihre Transaktion in seinem Wallet wartet - "listen for Cahoot"
  • Klicken Sie ÔÇťBegin StowawayÔÇŁ
  • Details der Transaktion werden zwischen Peers kommuniziert, die ├╝ber Tor auf der Soroban-Kommunikationsebene verschl├╝sselt sind
  • Sie sehen den Fortschritt des Transaktionsaufbaus in f├╝nf Schritten
  • Wenn Sie fertig sind, ├╝berpr├╝fen Sie die Details und w├Ąhlen Sie "Senden"
  • In einem Popup-Dialogfeld werden Sie gefragt, ob Sie sicher sind, dass Sie diese Transaktion ├╝bertragen m├Âchten, und w├Ąhlen "Ja"

Der Partner erh├Ąlt seinen Input f├╝r die Transaktion zur├╝ck, wobei der Betrag, den Sie ihm gesendet haben, dem neuen Output hinzugef├╝gt wird. Der tats├Ąchlich gesendete Betrag wird verschleiert.

Sparrow Wallet

Um eine kollaborative Stowaway-Transaktion in Sparrow Wallet zu erstellen, stellen wir sicher, dass wir und unser Partner den PayNyms gegenseitig folgen, es ist jedoch nicht notwendig, die On-Chain-Verbindung herzustellen.

  • Navigieren Sie zum ÔÇťPostmixÔÇŁ Wallet Tab, dann zum "Send" Tab
  • W├Ąhlen Sie die Dropdown-Option auf der rechten Seite des Feldes "Bezahlen an"
  • W├Ąhlen Sie ÔÇťPayNym oder Payment code.ÔÇŁ
  • Scrollen Sie im Popup-Fenster in Ihrer Kontaktliste nach unten zum PayNym Ihres Partners und klicken Sie darauf
  • W├Ąhlen Sie dann die Option "Send Collaboratively"
  • Geben Sie ein Label f├╝r Ihre Transaktion ein, geben Sie den zu sendenden Betrag ein und legen Sie die Miner-Geb├╝hr fest
  • W├Ąhlen Sie dann das blaue "Click to add Mix Partner"-Symbol in der unteren linken Ecke des Transaktionsdiagramms
  • Auf dem Popup-Bildschirm sehen Sie, dass Ihr ausgew├Ąhlter PayNym-Partner bereits ausgew├Ąhlt ist
  • W├Ąhlen Sie "Weiter", um die Transaktion zu starten
  • Dies ist der Zeitpunkt, an dem Sie Ihren Kooperationspartner dar├╝ber informieren, dass es f├╝r ihn an der Zeit ist, in seinem Wallet nach seinem Mixpartner zu suchen. "Tools, find Mix Partner"
  • Sobald Ihr Mix-Partner die Anfrage akzeptiert, wird die Transaktion erstellt
  • Es erfordert einige Inputs von beiden Parteien, um die entsprechende Change Outputs (Wechselgeld) an jede Partei zur├╝ckzugeben
  • Das Wechselgeld des Empf├Ąngers beinhaltet den Betrag, den Sie ihm gesendet haben
  • Wenn alles gut aussieht, w├Ąhlen Sie "Signieren und Senden"

Sobald die Transaktion ├╝bertragen wurde, erhalten Sie eine Best├Ątigung.

Sie k├Ânnen diese Transaktion in Ihrem bevorzugten Blockchain Explorer ├╝berpr├╝fen, z. B. auf mempool.space.

Collaborative Post-Mix Spending Tools: StonewallX2

StonewallX2 ist ein weiteres kollaboratives Ausgabentool, das hilft, On-Chain-Heuristiken zu brechen und die Privacy zu wahren. StonewallX2-Transaktionen haben immer vier Ausg├Ąnge. Die Anzahl der Eing├Ąnge kann variieren. Mindestens zwei dieser Ausgaben sind in der Gr├Â├če identisch, wodurch ein K├Âderausgang die gleiche Gr├Â├če wie die eigentliche Ausgabe erzeugt. Die anderen beiden Ausgaben sind die Wechselgelder, die an beide Mitarbeiter zur├╝ckgegeben wird. Im Gegensatz zu Stowaway-Transaktionen k├Ânnen StonewallX2-Transaktionen an Dritte ausgegeben werden - die Ausgaben m├╝ssen nicht an den Kooperationspartner get├Ątigt werden. Die kooperierenden Peers in einer StonewallX2-Transaktion teilen sich die Mining Geb├╝hr 50/50. Der Input-Auswahlalgorithmus erzwingt, dass keine UTXOs, die dieselbe vorherige Transaktion verwenden, als Inputs zusammen in einer neuen Transaktion verwendet werden.

So sieht ein StonewallX2 (und ein Stonewall) on-chain aus:

Samourai Wallet

Um eine StonewallX2-Transaktion in Samourai Wallet zu erstellen, stellen wir sicher, dass wir und unser Partner den PayNyms des jeweils anderen folgen, es ist jedoch nicht notwendig, die On-Chain-Verbindung herzustellen. Wenn der Empf├Ąnger dieser kollaborativen Transaktio jedoch ein PayNym ist, m├╝ssen wir die On-Chain-Verbindung mit ihm herstellen.

  • Navigieren Sie zum Post-Mix Wallet
  • Klick aufs blaue "+" und "Senden" w├Ąhlen
  • F├╝gen Sie die Empf├Ąngeradresse ein oder scannen Sie sie, oder wenn Sie sie an ein PayNym senden, w├Ąhlen Sie sie aus Ihrer Kontaktliste aus, indem Sie auf das Personensymbol klicken
  • W├Ąhlen Sie "STONEWALLX2"
  • W├Ąhlen Sie "Online" aus
  • W├Ąhlen Sie Ihren Partner aus der Kontaktliste aus
  • Geben Sie einen zu sendenden Betrag ein
  • Klicken Sie dann auf "TRANSAKTION ├ťBERPR├ťFEN"
  • Legen Sie die Mining Geb├╝hr fest
  • ├ťberpr├╝fen Sie die Details
  • Verwenden Sie Ihre bevorzugte Out-of-Band-Kommunikationsmethode, um Ihren Partner darauf aufmerksam zu machen, auf Ihre Anfrage aus seiner Wallet zu h├Âren (listen for Cahoot)
  • Dr├╝cken Sie auf "BEGIN STONEWALLX2"
  • Sie werden sehen, dass die Anfrage gesendet wird
  • Sie werden den Fortschritt der f├╝nf Schritte sehen
  • Dann haben Sie die M├Âglichkeit, die Transaktion vor der ├ťbertragung zu ├╝berpr├╝fen, Sie erhalten auch eine Eingabeaufforderung, in der Sie gefragt werden, ob Sie sicher sind, dass Sie die Transaktion ├╝bertragen m├Âchten

Sparrow Wallet

Um eine StonewallX2-Transaktion in Sparrow Wallet zu erstellen, stellen Sie sicher, dass Sie und Ihr Partner den PayNyms des anderen folgen, es ist jedoch nicht notwendig, die On-Chain-Verbindung herzustellen. Wenn der Empf├Ąnger dieser kollaborativen Ausgaben jedoch ein PayNym ist, m├╝ssen Sie die On-Chain-Verbindung mit ihm herstellen.

  • Navigieren Sie zum Tab "Postmix" und dann zu "Senden"
  • Geben Sie die Adresse ein, f├╝r die Sie ausgeben m├Âchten
  • F├╝gen Sie ein Label hinzu
  • Geben Sie einen Betrag ein
  • Festlegen der Mining Geb├╝hr
  • Klicken Sie auf den blauen M├╝nzstapel in der unteren linken Ecke des Transaktionsdiagramms und Sie werden feststellen, dass er sich in ein Personensymbol verwandelt
  • W├Ąhlen Sie im Popup-Fenster Ihren Partner aus der Dropdown-Liste der Kontakte aus
  • W├Ąhlen Sie dann "Weiter", um die StonewallX2-Transaktion zu starten
  • Dies ist der Zeitpunkt, an dem Sie Ihren Partner benachrichtigen, um auf Ihre Transaktionsanforderung von seiner Wallet aus zu warten, dies geschieht mit einer Out-of-Band-Kommunikationsmethode Ihrer Wahl

Sie warten einen Moment, w├Ąhrend Ihr kooperierender Peer die Anforderung akzeptiert und die Transaktion erstellt wird. Beide Peers liefern die Inputs f├╝r die Transaktion.

Nach einem Moment wird Ihnen eine Zusammenfassung der erstellten Transaktion angezeigt. Wenn alles gut aussieht, w├Ąhlen Sie "Sign & Broadcast".

Sie k├Ânnen diese Transaktion in Ihrem bevorzugten Explorer ├╝berpr├╝fen, z. B. auf KYCP.org. Die Transaktion hat vier Ausg├Ąnge und zwei von ihnen sind gleich gro├č, eine 25.000 Sat-Ausgabe und eine 25.000 Sat-Lockvogel. Ein externer Beobachter kann nicht sagen, welche Outputs zu welcher Entit├Ąt geh├Âren oder es einem Input zuordnen.

Non-Collaborative Post-Mix Spending Tools: Stonewall

Hier sehen Sie, wie ein Stonewall (und ein StonewallX2) in der Blockchain aussehen werden. Stonewall ist ein nicht-kollaboratives Ausgabentool, das hilft, On-Chain-Heuristiken zu brechen und Privacy zu wahren. On-Chain-, Stonewall- und StonewallX2-Transaktionen sind nicht zu unterscheiden. Beide haben immer vier Ausg├Ąnge. Die Anzahl der Eing├Ąnge kann variieren. Mindestens zwei dieser Ausgaben sind in der Gr├Â├če identisch, wodurch ein K├Âderausgang die gleiche Gr├Â├če wie die Ausgaben erzeugt. Die anderen beiden Ausgaben sind das Wechselgeld.

Im Falle einer Stonewall-Transaktion erstellt die Wallet die Transaktion mit mehreren Inputs und vier Outputs, von denen nur einer die Ausgabe ist und die anderen drei alle an die Wallet des Senders zur├╝ckgesendet werden, wobei einer von ihnen die gleiche Gr├Â├če wie die Ausgabe hat.

Sowohl Samourai Wallet als auch Sparrow Wallet versuchen standardm├Ą├čig, eine Stonewall-Transaktion zu verfassen, wenn wir Coins senden.

Samourai Wallet

So t├Ątigen Sie eine Stonewall-Transaktion mit Samourai Wallet:

  • Navigieren Sie zu Ihrem Post-Mix-Wallet und dr├╝cken Sie das blaue "+" Zeichen
  • W├Ąhlen Sie "Senden"
  • F├╝gen Sie die Adresse ein, zu der Sie senden m├Âchten, oder scannen Sie sie
  • Geben Sie den Betrag ein, den Sie ausgeben m├Âchten, und klicken Sie auf "TRANSAKTION ├ťBERPR├ťFEN"
  • Legen Sie die Miner-Geb├╝hr fest
  • Standardm├Ą├čig ist der Stonewall-Schutz aktiviert, wenn die Wallet ├╝ber die erforderlichen UTXOs verf├╝gt, um die Transaktion zu erstellen. Sie werden die Entropie-Bits am unteren Rand bemerken, dies kann sich ├Ąndern, wenn Sie die Miner-Geb├╝hr auf unterschiedliche Betr├Ąge verschieben. Die Wallet probiert verschiedene UTXOs f├╝r Eingaben aus, w├Ąhrend Sie dies tun
  • Wenn alles gut aussieht, dr├╝cken Sie auf "SENDEN"
  • Best├Ątigen Sie, dass Sie senden m├Âchten
  • Dann erhalten Sie den gr├╝nen Best├Ątigungsbildschirm, dass die Transaktion ├╝bertragen wurde

Sie k├Ânnen diese Transaktion in Ihrem bevorzugten Blockchain Explorer ├╝berpr├╝fen, z. B. auf mempool.space. Die Transaktion hat vier Ausg├Ąnge und zwei von ihnen sind gleich gro├č, eine 42.000 Sat-Ausgabe und eine 42.000 Sat-Lockvogel Ausgabe. F├╝r einen externen Beobachter k├Ânnen sie nicht sagen, welche Ausg├Ąnge zu der Entit├Ąt geh├Âren, die einen der Eing├Ąnge kontrolliert. Drei der vier Ausgaben werden an das Post-Mix-Wallet des Absenders zur├╝ckgegeben.

Sparrow Wallet

So kannst du einen Stonewall mit Sparrow Wallet erstellen:

  • Geben Sie die Adresse ein, an die Sie senden wollen
  • F├╝gen Sie ein Label f├╝r die Transaktion hinzu
  • Geben sie den Betrag zum Senden ein
  • Setzen Sie die Miner geb├╝hr

Beachten Sie den Unterschied in der Art und Weise, wie die Transaktion aufgebaut ist, wenn Sie die Einstellung "Effizienz" ausw├Ąhlen. Es gibt zwei Ausgaben, die Ausgaben und das Wechselgeld:

Vergleichen Sie dies mit der Auswahl der Einstellung "Privacy". Dadurch wird eine Stonewall-Transaktion erstellt, bei der es vier Ausgaben gibt, einschlie├člich eines Lockvogel Output:

  • Klicken Sie auf "Transaktion erstellen"
  • Klicken Sie dann auf dem n├Ąchsten Bildschirm auf "Transaktion zum Signieren abschlie├čen"

Wenn auf dem n├Ąchsten Bildschirm alles gut aussieht, w├Ąhlen Sie "Signieren".

Nach dem Signieren k├Ânnen Sie die Transaktion ├╝bertragen.

Sie k├Ânnen diese Transaktion in Ihrem bevorzugten Blockchain Explorer ├╝berpr├╝fen, z. B. auf mempool.space.

Die Transaktion hat vier Ausg├Ąnge, von denen zwei die gleiche Gr├Â├če haben, eine 690.000 Sat-Ausgaben und eine 690.000 Sat-Lockvogel. F├╝r einen externen Beobachter k├Ânnen sie nicht sagen, welche Ausg├Ąnge zu der Entit├Ąt geh├Âren, die einen der Eing├Ąnge kontrolliert.

Post-Mix Spending Tools: Ricochet

Ricochet ist momentan nur im Samourai Wallet verf├╝gbar.

Ricochet ist ein Post-Mix-Tool, das mehrere Hops zwischen der ersten Sendetransaktion und dem endg├╝ltigen Ziel erstellt. Diese Technik kann n├╝tzlich sein, wenn Sie Bitcoin an ein Ziel senden, an dem der Empf├Ąnger durch Ihre Transaktionshistorie schn├╝ffelt, um festzustellen, ob es etwas an Ihrem UTXO gibt, das er nicht mag. Oft wird diese Art von Verhalten von B├Ârsen oder einigen H├Ąndlern durchgef├╝hrt. Lesen Sie diesen Artikel von 6102 f├╝r weitere Details zur CoinJoin-Kennzeichnung. Es gibt keinen Industriestandard, an den sich diese schw├Ąchelnden Unternehmen halten, sie werden willk├╝rlich entscheiden, wie viele Hops innerhalb ihrer eigenen Risikotoleranz liegen. Aber die f├╝nf Spr├╝nge, die Ricochet zur Verf├╝gung stellt, scheinen den Job gut zu machen. Samourai Wallet erhebt f├╝r diesen Service eine Geb├╝hr von 100.000 Sat.

So verfassen Sie eine Ricochet-Transaktion in Samourai Wallet:

  • Navigieren Sie zu Ihrem Post-Mix-Wallet und dr├╝cken Sie das blaue "+"
  • W├Ąhlen Sie dann "Senden"
  • Schalten Sie die Option "Ricochet" ein
  • Aktivieren Sie dann die Option ÔÇťStaggered deliveryÔÇŁ, wenn Sie m├Âchten, dass sich jeder Hop in einem separaten Block befindet

Andernfalls finden alle f├╝nf Spr├╝nge im selben Block statt.

  • F├╝gen Sie dann die Adresse ein oder scannen Sie sie
  • Geben Sie den Betrag ein, den Sie ausgeben m├Âchten
  • Klicken Sie dann auf "TRANSAKTION ├ťBERPR├ťFEN"
  • Legen Sie die Miner-Geb├╝hr fest (die Miner-Geb├╝hr f├╝r alle f├╝nf Hops ist angegeben).
  • ├ťberpr├╝fen Sie die Transaktionsdetails
  • Wenn alles gut aussieht, dr├╝cken Sie "SENDEN" und best├Ątigen Sie dann die Ausgabe, um die Transaktion an das Netzwerk zu senden

So sieht diese Ricochet-Transaktion im Testnet aus. Sie k├Ânnen den Hop's folgen.

Schlussfolgerung

In diesem Artikel wurde erkl├Ąrt, wie die Wallet-Struktur in den Whirlpool-f├Ąhigen Wallets, Samourai Wallet und Sparrow Wallet, funktioniert.

Wenn wir die Vorteile der forward Privacy verstehen, die durch Whirlpool erzielt werden, k├Ânnen wir auch besser verstehen, welches Post-Mix-SpendingTool f├╝r welchen Job geeignet ist. Jedes Post-Mix-Tool wurde ausf├╝hrlich erl├Ąutert, mit Schritt-f├╝r-Schritt-Anleitungen, wie man sie benutzt und welche zus├Ątzlichen Vorteile wir f├╝r die Wahrung unserer Privacy von gemixten Coins erzielen.

Das original Guide wurde als Gast-Artikel auf Bitcoin Magazine von verfasst. Vielen Dank f├╝r diesen und viele andere gute Guides & Artikel!!!

Hat euch der Artikel geholfen? Es ist anfangs etwas tricky und ich hoffe hier wurde manches etwas klarer ;)

Onchain/Lightning Beer: https://coinos.io/FuSsY

http://vm7h454g5hiy2nt3u5o7evtz3vigtypo2mkyausakvdkbmd7wpyhx5qd.onion/FuSsY

Lightning only Beer: [email protected]

TrustBTC Community ­čĆ┤


Folgen