die Einleitung

Bitcoin wird oft als digitales Geld bezeichnet, dieser Vergleich ist jedoch fraglich. Wenn Alice zehn Dollar in bar bezahlt, wird Bob nie erfahren, woher das Geld kommt. Wenn er dieses Geld dann Carol geben würde, wüsste Carol nicht, dass das Geld vorher in Alices Besitz war.

Bitcoin unterscheidet sich aufgrund seines öffentlichen Charakters. Jeder kann den Verlauf einer bestimmten Münze (oder genauer gesagt ihre nicht ausgegebene Transaktionsausgabe (UTXO)) leicht überwachen. Das ist, als würde man bei jeder Verwendung den Betrag der Transaktion und die Namen ihrer Teilnehmer auf Papiergeld schreiben.

Aliase für öffentliche Adressen stellen jedoch sicher, dass die Identität der Benutzer nicht so leicht preisgegeben wird. Aber Bitcoin ist keine völlig private Währung. Methoden zur Analyse von Blockchain-Netzwerken werden immer ausgefeilter und können Adressen immer effizienter nachverfolgen und Identitäten identifizieren. Zusammen mit anderen Überwachungsmethoden kann eine Entität oder Einrichtung die Identität von Benutzern digitaler Währungen offenlegen. Um dieses Problem anzugehen, wurden im Laufe der Jahre Techniken entwickelt, um die Zusammenhänge zwischen Transaktionen zu verbergen.


Was ist Währungsmischung?

Im Allgemeinen kann sich Währungsmischung auf jede Aktivität beziehen, bei der Geld verschleiert wird, indem es gegen anderes Geld eingetauscht wird. Aber im Bereich der Kryptowährung bezieht sich das Mischen von Münzen auf einen Dienst, der von einem Dritten bereitgestellt wird. Dienstanbieter nehmen in der Regel die Währungen der Benutzer (zusätzlich zu einer geringen Gebühr) und geben ihnen Währungen, die nichts mit den gesendeten Währungen zu tun haben. Diese Dienste werden auch als Streudienste oder Mischdienste bezeichnet.

Die Sicherheit und Anonymität dieser zentralisierten Dienste macht sie natürlich fragwürdig. Den Benutzern wird nicht garantiert, dass ihr Geld vom Mischdienst an sie zurückerstattet wird oder dass die zurückgegebenen Münzen nicht in irgendeiner Weise beschädigt sind. Ein weiterer Aspekt, den Sie bei der Nutzung von Mash-up-Diensten beachten sollten, ist, dass Ihre IP-Adresse und Bitcoin-Wallet-Adressen von Dritten protokolliert werden können. Letztendlich geben Benutzer die Kontrolle über Münzen auf, in der Hoffnung, dass ihnen nicht auffindbare Münzen zurückgegeben werden.

Eine andere Methode, die einige interessanter finden, sind CoinJoin-Transaktionen, die ein hohes Maß an berechtigten Zweifeln an der Herkunft der Münzen aufkommen lassen. Mit anderen Worten: Nachdem eine CoinJoin-Transaktion durchgeführt wurde, kann ein Benutzer nicht mehr definitiv mit seinen vorherigen Transaktionen verknüpft werden. Viele CoinJoin-Lösungen bieten dezentrale Alternativen zu Mischdiensten. Obwohl ein Koordinator an dem Prozess beteiligt sein kann, müssen Benutzer nicht auf die Verwahrung ihrer Münzen verzichten.


Was ist CoinJoin?

CoinJoin-Transaktionen sind ein Vorschlag, der erstmals 2013 vom Bitcoin-Entwickler Gregory Maxwell eingeführt wurde. In einer Sammlung von Beiträgen, die er verfasst hat, gibt Maxwell einen kurzen Überblick über das Design dieser Transaktionen und wie sie verwendet werden können, um enorme Datenschutzgewinne zu erzielen, ohne das Protokoll zu ändern .

Im Kern geht es bei einer CoinJoin-Transaktion darum, Eingaben mehrerer Benutzer in einer einzigen Transaktion zu kombinieren. Bevor wir erklären, wie (und warum) dies geschieht, werfen wir einen Blick auf die Struktur einer normalen Transaktion.

Bitcoin-Transaktionen bestehen aus Ein- und Ausgängen. Wenn ein Benutzer eine Transaktion durchführen möchte, nimmt er die nicht ausgegebene Transaktionsausgabe als Eingabe, definiert die Ausgabe und signiert die Eingabe. Es ist wichtig zu beachten, dass jede Eingabe unabhängig von den anderen signiert wird und Benutzer mehrere Ausgaben tätigen können (d. h. Münzen an verschiedene Adressen senden).


image of an example transaction with four inputs and two outputs


Wenn wir uns eine Transaktion mit vier Eingaben (jeweils im Wert von 0,2 BTC) und zwei Ausgaben (0,7 BTC und 0,09 BTC) ansehen, können wir einige Dinge annehmen. Zuerst sehen wir, wie eine Zahlung ausgeführt wird – der Absender sendet eine dieser Ausgaben an jemanden und der Rest geht an den Absender zurück. Da vier Eingaben verwendet wurden, ist die größere Ausgabe wahrscheinlich für den Empfänger bestimmt. Beachten Sie, dass in der Ausgabe 0,01 BTC fehlen. Dies ist die Gebühr, die dem Miner gezahlt wird.

Es ist auch möglich, dass der Absender von einem kleinen Output einen großen, nicht ausgegebenen Output haben wollte, also einen kleinen Input eingab, um am Ende die 0,7 BTC zu erhalten, die er senden wollte.

Wir können davon ausgehen, dass jede Eingabe isoliert von den anderen Eingaben signiert ist. An dieser Transaktion können vier Parteien teilnehmen und die Transaktionen unterzeichnen. Hier liegt das Prinzip, das CoinJoin-Transaktionen effizient macht.


Wie funktionieren CoinJoin-Transaktionen?

Die Idee besteht darin, dass sich mehrere Parteien koordinieren, um eine Transaktion zu erstellen, wobei jede Partei die gewünschten Ein- und Ausgänge bereitstellt. Wenn alle Eingaben kombiniert werden, ist es unmöglich zu bestätigen, welche Ausgabe welchem ​​Benutzer folgt. Siehe folgende Abbildung:


image of an example coinjoin


Hier haben wir vier Teilnehmer, die die Zusammenhänge zwischen ihren Transaktionen verbergen möchten. Diese Teilnehmer koordinieren sich untereinander (oder über einen Koordinator) und geben die gewünschten Ein- und Ausgänge bekannt.

Der Koordinator nimmt alle Informationen auf und führt daraus eine Transaktion aus. Jeder Teilnehmer unterzeichnet diese, bevor er sie an das Netzwerk sendet. Sobald die Teilnehmer unterschreiben, kann die Transaktion nicht mehr geändert werden, ohne sie ungültig zu machen. Es besteht also keine Möglichkeit, dass der Koordinator mit dem Geld davonläuft.

Diese Transaktion ist wie eine Blackbox zum Mischen von Transaktionen. Denken Sie daran, dass Sie nicht ausgegebene Transaktionsausgaben tatsächlich zerstören und neue erstellen können. Der Zusammenhang zwischen den alten und neuen Ergebnissen besteht in der gleichen Behandlung, es ist jedoch nicht möglich, zwischen den Teilnehmern zu unterscheiden. Wir können höchstens sagen, dass einer der Teilnehmer einen Input in diese Transaktion gegeben hat und möglicherweise der neue Eigentümer eines der resultierenden Outputs ist.

Aber auch das ist nicht garantiert. Wer kann sagen, dass an der oben erwähnten Transaktion vier Teilnehmer beteiligt sind? Ist es eine Person, die Münzen an vier Adressen sendet, die ihr gehören? Oder zwei Personen, die getrennte Einkäufe tätigen und 0,2 BTC an ihre jeweiligen Adressen zurückgeben? Oder sind es vier Personen, die Münzen an andere Teilnehmer senden oder sich selbst Münzen zurückgeben? Ich kann nicht sicher sein.


Privatsphäre durch Verleugnung

Allein die Tatsache, dass CoinJoin-Transaktionen existieren, reicht aus, um Zweifel an den zur Analyse der Transaktionen verwendeten Methoden aufkommen zu lassen. Wir können daraus schließen, dass in vielen Fällen CoinJoin-Transaktionen durchgeführt wurden, wir können jedoch nicht wissen, wer die Eigentümer der Ausgabe sind. Da sie immer beliebter werden, kann nicht davon ausgegangen werden, dass alle Eingaben notwendigerweise demselben Benutzer gehören – ein großer Schritt für die Privatsphäre im Kryptowährungs-Ökosystem.

Im vorherigen Beispiel haben wir gesagt, dass der Eigentümer eines seiner Outputs jeder der vier Teilnehmer der Transaktion sein könnte, und diese Zahl wird als Blind-Set bezeichnet. Je mehr Personen in der Verschlüsselungsgruppe sind, desto unwahrscheinlicher ist es, dass ihre Transaktionen mit dem ursprünglichen Eigentümer verknüpft werden. Glücklicherweise machen es die jüngsten Implementierungen von CoinJoin-Transaktionen für Benutzer einfacher, Eingaben vertrauenswürdig mit Dutzenden anderer Benutzer zu kombinieren, was ein hohes Maß an Abstreitbarkeit bietet. Kürzlich wurde eine Transaktion mit 100 Personen erfolgreich durchgeführt.


Abschließende Gedanken

Tools zum Mischen von Transaktionen sind eine wichtige Ergänzung zum Arsenal jedes Benutzers, der seine Privatsphäre ernst nimmt. Im Gegensatz zu vorgeschlagenen Datenschutzverbesserungen (z. B. vertraulichen Transaktionen) ist es mit dem Protokoll in seiner jetzigen Form kompatibel.

Für diejenigen, die auf die Integrität Dritter und deren Arbeitsweise vertrauen, sind Mash-up-Dienste eine einfache Lösung. Aber für diejenigen, die überprüfbare, nicht verwahrte Alternativen bevorzugen, sind die CoinJoin-Alternativen besser. Diese Transaktionen können für technisch versierte Benutzer manuell oder mithilfe einer Software durchgeführt werden, die komplexere Mechanismen vereinfacht. Es gibt bereits eine Reihe dieser Tools, die sich immer größerer Beliebtheit erfreuen, da die Benutzer eine Verbesserung des Datenschutzniveaus anstreben.