MimbleWimble ist ein Blockchain-Protokoll, das mehrere innovative Technologien kombiniert, um die Transaktionskonstruktion in Bitcoin radikal zu verändern und die Größe der Blockchain zu reduzieren.

MimbleWimble befasst sich hauptsächlich mit zwei Bereichen:

Datenschutz
Skalierbarkeit
Aufgrund seiner natürlichen Privatsphäre haben MimbleWimble Coins eine starke Fungibilität.

Datenschutz

Transaktionen in MimbleWimble sind nicht transparent, können aber trotzdem validiert werden, obwohl es keine Adressen gibt und die getätigten Beträge vollständig versteckt sind. MimbleWimble stützt sich auf die Eigenschaften der Elliptic Curve Cryptography (ECC), um Transaktionen zu strukturieren, die auf der Überprüfung von Nullsummen und dem Besitz privater Schlüssel basieren.

Um Transaktionen mit Mimblewimble zu überprüfen, muss die Summe der Transaktionsausgaben abzüglich der Summe der Eingaben immer gleich Null sein. Dies wird durch vertrauliche Transaktionen erreicht, die belegen, dass eine doppelte Ausgabe oder die Schaffung neuer Mittel bei einer Transaktion nicht stattgefunden hat, während gleichzeitig die tatsächlichen Beträge in der Transaktion verschleiert werden. MimbleWimble leitet sein Konzept hierfür von Confidential Transactions (CTs) von Greg Maxwell ab.

Der Eigentumsnachweis in MimbleWimble beruht auf Blindfaktoren, die im Wesentlichen die privaten Schlüssel der Benutzer und Mehrwerte sind, die Teil des Transaktionskernels sind. Dieser Blindfaktor kann genutzt werden, um das Eigentum am Wert einer Transaktion zu beweisen, ohne ihre Werte preiszugeben.

Das Konzept der Validierung von Transaktionen ohne Kenntnis eines der getätigten Werte spiegelt Zero-Knowledge-Proofs und RingCTs wider, die in ZCash bzw. Monero verwendet werden.

Es gibt jedoch keine Adressen in MimbleWimble. Stattdessen kommunizieren zwei Wallets miteinander, um Daten auszutauschen, bei denen der Empfänger eine Adresse erstellt und an den Absender sendet. Nur die Teilnehmer können diese Daten sehen und die Informationen sind für Dritte nicht wiederverwendbar. Die teilnehmenden Parteien müssen nicht einmal gleichzeitig online sein.

Außerdem listen die Blöcke in der Blockchain keine separaten Transaktionen auf (auch wenn sie verschleiert sind – z.B. Monero), sondern werden zu einer einzigen Transaktion mit gemischten Ein- und Ausgängen zusammengefasst. Die Anzeige eines Blocks würde keinen Einblick in eine bestimmte Transaktion geben. Transaktionen in MimbleWimble sind praktisch eine nicht aktive Variante von CoinJoin, die nicht getrennt werden kann.

Zusammenfassend lässt sich sagen, dass Knoten die Authentizität von Transaktionen überprüfen können, ohne die zu übertragenden Werte offenzulegen, es gibt keine Adressen und keine identifizierbaren Informationen in einer Transaktion.

Skalierbarkeit

Der Ansatz, den MimbleWimble bei der Skalierbarkeit verfolgt, ist viel direkter als kompliziertere Layer-2-Lösungen oder die Erhöhung der On-Chain-Durchsatzkapazität. Stattdessen setzt MimbleWimble darauf, alte und unnötige Transaktionen auf der Blockchain zu eliminieren, um die Effizienz zu verbessern.

Insbesondere entfernt das Protokoll verbrauchte Eingaben auf der Blockchain im Laufe der Zeit, indem es Zwischentransaktionen zusammenfasst, so dass die Größe der Blockchain drastisch reduziert wird. Das Protokoll verwendet eine Methode namens Cut-Through. Eine MimbleWimble-Transaktion besteht aus den folgenden Komponenten:

Ein Satz von Eingängen, die eine Reihe von früheren Ausgängen referenzieren und ausgeben.
Eine Reihe neuer Ausgaben (Pedersen Commitments)
Transaktion Kernel, der einen Kernelüberschuss und die Transaktionssignatur enthält.
In einem MimbleWimble-Block werden durchgeschnittene Transaktionen nur durch ihren Transaktionskern repräsentiert, und alle Ausgaben sehen gleich aus, da es sich nur um große Zahlen handelt, die nicht zu unterscheiden sind.

Zitat aus der Vorstellung von MimbleWimble auf dem Grin Github:

„Ähnlich wie bei einer Transaktion muss in einem Block nur überprüft werden, dass der Besitz nachgewiesen wurde (was von Transaktionskernen kommt) und dass der gesamte Block keine Geldmenge hinzugefügt hat (außer dem, was die Coinbase erlaubt). Dadurch können übereinstimmende Ein- und Ausgänge eliminiert werden, da ihr Beitrag zur Gesamtsumme wegfällt…….Beachten Sie, dass die gesamte Transaktionsstruktur eliminiert wurde und die Reihenfolge der Ein- und Ausgänge keine Rolle mehr spielt. Die Summe aller Ausgänge in diesem Block, abzüglich der Eingänge, ist jedoch garantiert gleich Null.“

Daher ist es unmöglich zu sagen, welcher Eingang mit welchem Ausgang übereinstimmt, während gleichzeitig die Möglichkeit erhalten bleibt, die Transaktionen innerhalb eines Blocks zu validieren. Knoten können Blöcke weiter validieren, indem sie den Geldbetrag, der durch das Mining entsteht, mit dem Gesamtvorrat abgleichen.

Die Art der Bereinigung, die MimbleWimble bietet, ermöglicht es, dass das Protokoll viel skalierbarer wird und die Benutzer schnell mit dem Netzwerk synchronisieren können. Wichtig ist, dass der gesamte Kettenzustand ähnlich wie bei einem vollständigen Knoten validiert werden kann, auch wenn kein Benutzer den Großteil der historischen Blockkettendaten behält.