MimbleWimble is a PoW protocol with scalability and increased privacy. In a series of popular Harry Potter novels, MimbleWimble is a “tongue-tied spell” that prevents the adversary from casting the spell correctly. This expression indicates the ability of the protocol to hide transaction data.
Who created MimbleWimble and when?
Creators: A person or group of persons under the pseudonym Tom Elvis Jedusor. So in the French translation of the same series of novels, the name of the main antagonist is Lord Voldemort.
Creation date: July 19, 2016 white paper appeared on the network for the authorship of Jedusor with a description of the blockchain with increased scalability, confidentiality and interchangeability of tokens. On October 6, 2016, Blockstream mathematician Andrew Poelstra presented a white paper review that suggested solutions to a number of security problems. A few days later, the pseudonymous author Ignotus Peverell posted a Grin implementation on Github.
How does MimbleWimble work?
MimbleWimble uses Confidential Transaction Technology (CT), which completely eliminates inputs and outputs through the introduction of multi-signatures. Within CT, both participants in the transaction create a multi-signature key for the transaction. CT uses a dazzling factor that encrypts all inputs and outputs, as well as their public and private keys. Confirmation of transactions occurs through the Pendersen commitment scheme, a low-level cryptographic algorithm (“primitive”) that allows you to confirm your readiness to accept a chosen value, hide it, and then open it. The full implementation node MimbleWimble subtracts these encrypted amounts from the inputs and outputs and equalizes, confirming that no new coins have been created. At the same time, the transaction amount is unknown.
MimbleWimble compresses blocks by means of “cutting” – a technology for splitting and removing large amounts of data from a block without a security risk.
MimbleWimble “cuts through” the output of the first transaction and the input of the second. After that, there remains one set of inputs and outputs, so you can check how the sender purchased the coin, and the recipient received it. This process compresses the size of the blockchain and optimizes data storage.
The protocol has significant potential in the context of scaling: inputs and outputs are hidden, there are no public addresses, and multiple transactions are included in a single unit.
MimbleWimble also uses CoinJoin. The technology created by the former Bitcoin Core developer Gregory Maxwell allows you to take payments from a number of senders and combine them into a single transaction, which deprives a third party that is not involved in the transaction of the opportunity to determine which recipient the payment was intended.
The CoinJoin mechanism hides the inputs and outputs of senders and recipients. Many transactions are combined into one. The value of all inputs is subtracted from the value of all outputs, a result in the form of zero allows consensus to be reached.
Thanks to CoinJoin and privacy measures, MimbleWimble achieves a high degree of data integrity.
What are the cons of MimbleWimble?
MimbleWimble does not support the scripting language (scripting language). The functionality of the protocol is limited to cash transactions. This implies that it is much more difficult to implement second-level solutions such as the Lightning Network and atomic swaps. Theoretically, the protocol is vulnerable to quantum computing, because in aspects of privacy and control over the issue of coins, it relies on elliptical cryptography (ECC).
How is MimbleWimble developing?
The main implementations of the protocol are the Grin and Beam projects.
In October 2019, the developers of the Litecoin Foundation published two proposals for improving the protocol, which include the integration of MimbleWimble. The goal of innovation is to ensure transaction privacy.