Bitcoin und das MimbleWimble Protokoll
Durch das öffentliche Hauptbuch (Blockchain) entfällt bei Bitcoin die Notwendigkeit für eine vertrauenswürdige Drittpartei. Diese Transparenz bringt jedoch auch einige Probleme mit sich: den Mangel an Privatsphäre. Das kann sowohl normale Nutzer als auch Unternehmen, die nicht wollen, dass ihre Finanzen bekannt werden, abschrecken. MimbleWimble verspricht Abhilfe.
Was ist MimbleWimble?
Es gibt mehrere Projekte, an denen gearbeitet wird, um Bitcoin ein höheres Maß an Privatsphäre zu bieten. Eine davon heißt MimbleWimble, ein Vorschlag für eine bitcoin-ähnliche Blockkette, die als Sidechain oder potentiell (in ferner Zukunft) als Extension-Blockschema implementiert werden könnte. MimbleWimble nutzt frühere Konzepte wie Confidential Transactions und „One-Way Aggregate Signatures“ (OWAS), um private Transaktionen mit einer besseren Skalierbarkeit zu ermöglichen, was im Gegensatz zu früheren Vorschlägen steht, bei denen ein Kompromiss zwischen Privatsphäre und Skalierbarkeit erforderlich war. Mit dem Vorschlag werden jedoch auch einige Funktionen von Bitcoin abgeschafft.
Einer der Hauptunterschiede zwischen Bitcoin und MimbleWimble ist, dass MimbleWimble vertrauliche Transaktionen unterstützt
Unterschiede zwischen MimbleWimble und Bitcoin
Einer der Hauptunterschiede zwischen Bitcoin und MimbleWimble ist, dass MimbleWimble vertrauliche Transaktionen unterstützt. Bei einer Bitcoin-Transaktion ist alles öffentlich. Nutzer können die Eingangs- und Ausgangswerte sehen und die Transaktion als gültig verifizieren. Die Summe der Eingänge ist die Summe der Ausgänge. Im System der vertraulichen Transaktionen werden alle Werte homomorph mit zufälligen Zahlenfolgen, den sogenannten „Blindfaktoren„, verschlüsselt. Das bedeutet, dass die Werte nicht direkt sichtbar sind, sondern eher so verschlüsselt werden, dass die Mathematik mit Chiffriertext durchgeführt werden kann, wodurch ein verschlüsseltes Ergebnis erzeugt wird, das, wenn es entschlüsselt wird, mit dem Ergebnis der im Klartext ausgeführten Operationen übereinstimmt. Das bedeutet, dass die Werte verschlüsselt sind, aber es kann berechnet werden, ob sich alle Ausgabewerte minus alle Eingabewerte zu Null addieren und damit kann man überprüfen, ob eine Transaktion gültig ist.
Die Verschlüsselung
Die Transaktionen enthalten hier auch Informationen, mit welchen Empfänger die Beträge entschlüsseln können. Bei vertraulichen Transaktionen kennen sowohl Sender als auch Empfänger den Blindfaktor. In MimbleWimble generiert der Empfänger einer Transaktion den Blindfaktor, der zum Nachweis des Eigentums an den Coins verwendet wird. Und zwar durch diesen „Mehrwert“, der die Differenz zwischen den Eingängen und Ausgängen darstellt. Dieser Überschusswert ist eine Reihe von Zufallszahlen, die sicherstellen, dass nur die Person, die den Blindfaktor erzeugt hat (der Empfänger), die Coins ausgeben kann. Die Blindfaktoren addieren sich also nicht mehr zu Null, sondern zu einem anderen Betrag, der wie ein privater Schlüssel aussieht.
Das Protokoll setzt auch einzelne Transaktionen um, indem es auf ein vorhergehendes Konzept, CoinJoin, aufbaut (aber es nicht interaktiv macht). Anstatt Transaktionen zu enthalten, besitzen die MimbleWimble-Blöcke nur:
- eine Liste der neuen Eingaben
- eine Liste der neuen Ausgaben
- und eine Liste der Signaturen, die aus dem oben genannten Überschusswert erzeugt werden
Da die Werte homomorph verschlüsselt sind, können Knoten überprüfen, dass keine Coins erzeugt oder zerstört werden. Die Mehrwertsignaturen beweisen wiederum, dass alle Transaktionen gültig sind, da sie sich nur dann addieren, wenn die gesamte Transaktion gültig ist. In diesem Schema sind weder die Werte noch das Ziel der Transaktionen bekannt, da die Ein- und Ausgänge alle in einem Block enthalten sind und nicht voneinander getrennt sind, sodass jeder Ausgang für jeden anderen Eingang bestimmt sein könnte, ohne dass eine Zuordnung möglich wäre.
Eines der aufregendsten Dinge an MimbleWimble ist, dass es sich um eine skalierbare Lösung handelt. Wenn es auf Bitcoin seit dem ersten Tag aktiv wäre, wäre die Blockkette etwas größer (ein paar GB) als sie jetzt ist. Im Vergleich zu anderen Lösungen wie Confidential Transactions ist dies jedoch ein sehr positives Ergebnis, da CT seit dem ersten Tag aktiviert ist und sich die Datenmenge auf etwa ein TB an Blockchain-Daten belaufen würde. Allerdings hat MimbleWimble auch Nachteile, da es die Funktionalitäten von Bitcoin durch das Entfernen von Skripten verändert. Entwickler suchen jedoch nach Möglichkeiten, damit Bitcoin seine Funktionalitäten im MimbleWimble-Schema beibehalten kann.