Mimblewimble was born in 2016, when an anonymous individual, going by the pseudonym Tom Elvis Jedusor (a character from the Harry Potter books), signed into a Bitcoin IRS research channel, dropped a document and signed out. The document contained information about a new blockchain proposition titled: Mimblewimble (also a reference to a Harry Potter). An updated whitepaper of Mimblewimble was published by Andrew Spoelstra on the 6th of October 2016.
The original Mimblewimble document contained a new approach to the blockchain-based ledger. It proposes a change in transaction construction from Bitcoin’s, making it much faster and scalable. Mimblewimble utilizes some of the originally intended tricks for Bitcoin to empower the privacy of transactions (Greg Maxwell’s CoinJoin and Confidential Transactions).
Mimblewimble’s protocol summarizes the blockchain so that only a final state summary is kept. Privacy and scale are both optimized at the same time in the protocol.
The first Mimblewimble implementation that launched its mainnet on January 3rd, is called Beam, which proposes a scalable, confidential cryptocurrency. The Beam blockchain is built from scratch in the C++ programming language. It adopted the Mimblewimble protocol and added on it to make it more private and scalable.
Beam, how does it work?
Both the sender and the receiver participate in the transaction, in oppose to the Bitcoin transaction scheme, where only the sender signs. Both parties sign the transaction using the Schnorr protocol. Schnorr allows for multiple signatures to be comprised into one single signature. While having the size of one single signature, all the individual signatures in the single signature are authorized.
The wallet sends the transaction to the node, with each transaction containing a list of inputs and outputs, as well as zero-knowledge range proofs. To ensure each transaction is positive without revealing the actual amounts in the transaction, Beam uses a compact implementation of zero-knowledge range proofs, called Bulletproofs. It is important to check if a transaction is positive because allowing users to create transactions with negative value would mean that new coins can be created out of thin air, which should be prohibited.
If all is well, the transaction is verified by the node and added to the mining pool. Blocks on the Beam blockchain are mined using a modified Equihash Proof of Work (PoW) algorithm, that is ASIC resistant. After the block is mined, the transaction is sent back to the node for verification and distribution.
Beam is a deflationary coin with a capped supply. Every four years there is a halving in the mining reward. After 133 years in existence, the emission of new coins will be stopped. Beam’s emissions are denominated in Groth, named after the computer scientist and cryptographer who contributed to the zero-knowledge proofs. 1 BEAM = 100,000,000 Groth.