The Grin project, another implementation of the MimbleWimble protocol, launched their mainnet today. Grin aims to be a scalable and less storage intensive privacy coin.
Happy birthday, Grin.
— SoundCrypto (@SoundCrypto) January 15, 2019
This long awaited implementation of the protocol actually comes as the second one in this month – and in total – following Beam, which launched at the beginning of this month. However, it was the first one announced, only two months after the initial publication of MimbleWimble. The consensus algorithm of Grin is Proof of Work, and its mining algorithm is currently ASIC-resistant.
According to the Grin developers, the main tenets of the project are:
The project also implements the Dandelion Protocol to increase its network layer privacy through its improved transaction message propagation method. The Dandelion Protocol helps protect against several recent attack vectors explained in academic papers about deanonymizing users by mapping IP addresses based on how a transaction message spreads from its origin.
Grin is not be maintained by any specific company or foundation, nor will it do an initial coin offering or anything of the sort; instead, the project accepts donations. At the moment, the new cryptocurrency can be bought at exchanges such as Bisq (0.00010 BTC / 1 Grin,) ChainRift, BitForex, Galleon, BitMesh, BKEX and Nexex.
Grin is designed to have a block every 60 seconds on average with 60 Grincoins in each block.
Source: Medium, Spencer Yang
The MimbleWimble Story
MimbleWimble is a protocol first put forward in 2016 by an anonymous cryptographer who refers to himself as Tom Elvis Jedusor (the French name of fictional Harry Potter character, Tom Marvolo Riddle, or Voldemort). Mimblewimble itself is the name of a spell used to tongue-tie victims in Harry Potter. Meanwhile, Grin follows suit in using Harry Potter-related names: it is a nod to Gringotts Wizarding Bank in the fictional wizarding world.
The MimbleWimble protocol derives from a type of transaction known as confidential transactions, which allow senders to encrypt the amount of bitcoins they want to send by using what are known as blinding factors – a random value used to encrypt bitcoin amounts in a transaction, chosen by the sender of a transaction.
In a confidential transaction, only the two parties involved know the amount of crypto being transacted, while onlookers cannot know. However, onlookers can still ensure that the transaction is valid by comparing the number of inputs and outputs; if both are the same, then the transaction will be considered valid. Such a procedure ensures that no coins have been created from nothing and is key in preserving the integrity of the system.
MimbleWimble transactions function in a similar way: the recipient of a transaction randomly selects a range of blinding factors provided by the sender. This blinding factor is then used as proof of ownership by the receiver, thus permitting them to spend the coins.
MimbleWimble adds yet another factor into the privacy game: CoinJoin, a mechanism by which payments from multiple spenders are combined to form a single transaction, thus making it difficult for an outside party to determine which payment was intended for which recipient. The protocol also prunes old data, no longer relevant to new transactions, in order to improve scalability.