Grin: The First MimbleWimble Implementation

Luxor Tech
Luxor
Published in
5 min readJan 10, 2019

--

TL;DR: Grin checks all the boxes. It’s being developed openly, no ICO, is private by default (ensuring true fungibility) and will remain lightweight due to the implementation of the MimbleWimble protocol.

Grin is a community-driven cryptocurrency that advocates for privacy, aims for scalability and stays decentralized. Resembling Bitcoin, Grin has an independent and active dev-community. Moreover, there will be no ICO or foundation tax aiming to be a true decentralized cryptocurrency that’s not driven by the work of only one entity.

The main criticism that’s made against current privacy coins like Monero or Zcash is that they are not truly fungible as private transactions must be manually enabled by the end-user, demand extra computational power and carry higher transaction fees. This means, that most of the transactions being made on the Monero or Zcash blockchains are transparent and can be traced even with the recent implementation of Bulletproofs and Sapling.

In order for a cryptocurrency to work as a true medium of exchange it needs to be fungible, therefore, private transactions by default are a must. In the case of other cryptocurrencies, buyers tend to pay a premium to get a hold of coinbase funds which are transaction-free coins. This ensures the user that his cryptocurrency can’t be associated with past untrustworthy activities.

So … What’s MimbleWimble? How does it work?

MimbleWimble is a completely new blockchain protocol that will result in a paradigm shift. This protocol was proposed by Tom Elvis Jedusor (alias of Harry Potter character, Voldemort) in July 2016 and since then it has gained traction. Now, we are seeing projects like Beam and Grin implementing it.

One of the major differences between Bitcoin and MimbleWimble is that MimbleWimble supports Confidential Transactions. In this transaction system, all the values are encrypted with random strings of numbers called “blinding factors” and there are no addresses that could be traced.

The protocol constructs this random blinding element as a combination of the public and privates keys of the parties engaging in a transaction. This allows full-nodes to verify that cryptocurrency hasn’t been created out of thin air and that the parties involved in each transaction have ownership of their keys.

In order for a transaction to be valid under the MimbleWimble protocol it’s required that the sum of transaction outputs minus the sum of the inputs is always equal to zero.

Transactions are constructed as follows:

A*B + C*D = E

Where A is a private key, B and C are Elliptic Curves and D is the input or output value. Neither A or D can be deducted, therefore, making the actual transaction values anonymous to foreign parties of the transaction. At the end of this procedure the parties end up with a multisignature header of the transaction known as the transaction kernel. As this transaction kernel doesn’t require all the UXTO’s as Bitcoin does it’s much more lightweight, helping to keep the blockchain size manageable.

What about Grin? What’s trying to achieve?

Grin is the first implementation of the MimbleWimble protocol and it’s running it’s own blockchain. Instead of using C++ or Go as most cryptocurrencies Grin is being developed in Rust and Python which are known to be used on many other speedy and scalable networking applications.

Like Bitcoin, Grin uses classical Nakamoto consensus (Proof-of-Work) as the only proven and tested mechanism for securing a decentralized platform but with a completely different mining algorithm called Cuckoo Cycles which is known for being ASIC resistant as it’s memory intensive.

There will be no percentage of the block-reward allocated to core-developers or capital influx by third parties that intend to gain control over the Grin project. Due to the bear market, multiple crypto projects have increased the foundation block-reward allocation to be able to subsidize development and marketing initiatives. Grin favors true decentralization by being opposed to implement tax on its miners.

Since there are no addresses wallets need to communicate with each other to exchange data in order to construct a transaction. There are two ways of sending / receiving Grin: Online and Offline.

  • Due to how MimbleWimble works, to receive grins from another user, both parties engaging in a transaction will need to activate a listening port that enables their wallets to communicate freely across the internet simultaneously.
  • In contrast, sending and receiving Grins offline requires a bit of back-and-forth action between the participating wallets. The process starts when the sender generates a partial transaction file and sends it to the receiver by the preferred medium: Email, WhatsApp, Facebook, etc. Then the receiver adds his information to complete the transaction and generates a response file that is sent back to the sender. Finally, the sender merges both files to complete the transaction and the Grin node will automatically broadcast it to the network.

Grin Remarks

  • Privacy built-in from the ground up
  • Scalable blockchain due to innovative design
  • Anonymous development team
  • Community-driven with focus on classical Nakamoto Consensus
  • Predictable cryptocurrency issuance: 1 coin per second
  • No ICO or Premine

Wanted to mine Grin?

The foundation of Grin’s Proof-of-Work algorithm is called Cuckoo Cycle which has been designed to be ASIC resistant since it’s memory intensive rather than CPU intensive.

In order to solve the Cuckoo Cycle PoW, the miner needs to connect dots, much like a children’s game but waaay harder as difficulty increases. How hard is to spot a 8 dots connected, starting and ending on the same node, in the following graph?

Cuckoo Cycle PoW Example

It’s our humble opinion that Grin will set the foundation for a new wave of digital assets that will eventually become true digital cash. The dev-team places an emphasis on egalitarian mining and ASIC-resistance. That’s why we’re looking into making a pool for this new project. We want to offer our miners a wide range of high quality options to choose from.

You can find out detailed Setup Guide for GPU and CPU mining 👉 here. Follow us on our social media to get immediate updates!

Happy Hashing!

Luxor is building infrastructure to support the next generation of digital assets. Learn more about us 👉 here.

We are available on Twitter and Discord ping us there! 😃 We would ❤️ to hear from you!

--

--

Luxor Tech
Luxor
Editor for

Luxor is a Bitcoin mining pool and full-stack crypto mining company. The financialization of hashrate starts with us. https://www.luxor.tech/