Steemit Crypto Academy Season 4 Week 2 [Advanced Course] | Mimblewimble Protocol
Introduction
It's my pleasure to be here today in week 2 of Season 4 of the Crypto Academy. I am @fredquantum, one of the newly appointed crypto professors, and I am so privileged to be sharing knowledge with you today. We would be looking at the Mimblewimble protocol, let's ride together.
Designed in Canva
Background to the Study
Since the inception of the Blockchain technology, it has come with a lot of benefits which differs from system used in the traditional financial system having a few features like transparency, traceability, immutability... with effective storage of data on the blockchain in a distributed way such that it becomes hard to alter the data stored in the blocks.
Well, the Blockchain technology has privacy as one of its core features whereby transactions despite being transparent and visible to all in a public blockchain, yet, it doesn't reveal the name of the people involved in the transaction which is quite good and make a distinctive difference to the existing financial system.
On the Bitcoin network which is a public blockchain, users are eligible to see every transaction that has taken place on the blockchain, showing the addresses involved, amount, timestamp of the transaction, and many others. The aforementioned still revealed certain information and one might want them to remain private. That leads us to the Mimblewimble protocol.
What is the Mimblewimble Protocol?
Mimblewimble sounds like one funny word, exactly, it is but the ones that are familiar with Harry Potter could relate to this because the name was extracted from it. Mimblewimble isn't a valid English word or any other language's but it has come to form a notable blockchain protocol that came into existence in the year 2016 and the credit for this protocol can be traced to the anonymous Tom Elvis Jedusor (a person or group of persons) who released the whitepaper that year.
So, Wimblewimble protocol is a blockchain protocol that is a special one that was designed for effective storage of transactions data that comes with improved privacy and enhanced scalability. Unlike the earliest blockchain protocols, Mimblewimble comes with refined storage of data to the extent that only the users involved in a transaction can see the data of the transactions.
Scalability has been one of the problems associated with different blockchain out there and we can see how Bitcoin second layer network has dealt with that through the Lightning network whereby redundant transactions are eliminated from on-chain and done off-chain to increase speed, and as well with improved scalability. As such, the off-chain transactions on the Lightning network are almost fee-less since miners are not present rather the nodes involved are responsible for transaction validation.
Mimblewimble protocol deals with privacy and scalability issues in such a way that transaction data is hidden from outsiders and redundant transactions are eliminated from the chain while the Mimblewimble block is seen as one large transaction rather than many transactions. The data stored on Mimblewimble can be easily downloaded and verified but the data of the transactions remain hidden only the users involved in the transaction can see the details. And this brings about privacy on the protocol such that users can maintain the anonymity of transactions without exposing the addresses and transaction's data to outsiders.
Cryptographic Protocols utilized in Mimblewimble
The main cryptographic protocol utilized in the Mimblewimble protocol is said to be Elliptic Curve Cryptography and what this does is that it operates on the concept of discrete logarithm to assign private keys to a particular transaction. Let's see a simple logarithm below.
Designed in Canva
Above is a simple logarithm which shows that 2 multiplies itself 6 times to give an output of 64 and in the second expression, 2 multiplies itself 7 times to give an output of 128. In this way, numerous and complex discrete logarithms are performed to assign a private key to transactions on Mimblewimble as it's plotted on the Elliptic Graph Cryptography.
Know that the operation of discrete logarithm goes beyond the mere logarithm expressions above but rather in a more rigorous and complex way to make sure anonymity of transaction is maintained on Mimblewimble. In combination, other existing cryptographic protocols are used in Mimblewimble and examples are; Confidential Transactions (CTs), CoinJoin... all in the quest to achieve anonymity of transactions and improve scalability in Mimblewimble. Let's talk briefly about CoinJoin.
CoinJoin
CoinJoin is the method utilized in the Bitcoin network whereby different senders from different parts agree to sign a smart contract in such a way that the output transaction is equal and the addresses of the senders are mixed. In that process, it becomes hard for the outsiders to detect which transaction belongs to a sender or the other and in this way, the anonymity of transactions is maintained. CoinJoin is one of the cryptographic protocols utilized in Mimblewimble to maintain the anonymity of transactions.
Image Source
The part labeled 1 in the image above shows a UTXO transaction from Bob having the input to be 20 BTC with two outputs, 15 BTC to Ted and 5 BTC change routed back to Bob's wallet, likewise, Alice's case having the input to be 10 BTC with two outputs, 8 BTC to Carol and 2 BTC routed back to Alice's wallet and in that case, it is easy to know who sends a transaction. In the part labeled 2, these users signed to perform CoinJoin in the way that it becomes hard for outsiders to know which sender is sending an amount.
How Mimblewimble Works
To shed more light on how Mimblewimble works, we would be considering 4 users, A, B, C and D with X representing the amount involved in the transaction. Let's see a few points below.
How Mimblewimble differs from the Bitcoin Network
Notably, we would be discussing the differences between Mimblewimble and Bitcoin in two major parts which are Privacy and Scalability. If you open the Bitcoin block explorer, you will be able to verify all transactions that have taken place on-chain and also have access to the data of all the transactions. In contrary to that, on the Mimblewimble protocol, you can only verify the transactions that took place while the data of transactions like the addresses involved are hidden because you are just an outsider.
Likewise, speaking of scalability, redundant transactions are removed from Mimblewimble, unlike the Bitcoin network that has everything recorded. In that way, scalability in Mimblewimble is improved as compared to the Bitcoin network, and as such, Mimblewimble protocol only requires less computational resources which is a great advantage over the Bitcoin network. To cap it, the blockchain size of Mimblewimble is smaller as compared to the Bitcoin blockchain and as such leads to enhanced scalability.
At this junction, let us explore the Mimblewimble block explorer and the Blockchain explorer to compare block details of Mimblewimble to Bitcoin's.
Image Source- Mimblewimble explorer
Image Source- Mimblewimble explorer
As you can see the block is revealed whole without showing the transactions in the block. This shows how transactions data are hidden from outsiders on Mimblewimble to improve privacy and scalability. Let's see the usual Bitcoin block explorer we are used to.
Image Source- Blockchain explorer
Image Source- Blockchain explorer
Image Source- Blockchain explorer
This illustration revealed how transaction details are hidden from outsiders on the Mimblewimble protocol as contrary to the Bitcoin block explorer which reveals the addresses involved, amount, where the transactions are initiated and so on. If we go further on the Bitcoin block explorer, we would be able to see the previous transactions the addresses has been involved.
Few Projects that uses the Mimblewimble Protocol
Let's talk briefly about a few projects that uses the Mimblewimble protocol, the first to talk about is the privacy coin known as GRIN having started the laying of foundation for the coin to use the protocol since the year 2016 and finally was launched in the year 2019 and thereby maintain privacy of the coin transactions.
Another one to discuss is the MimbleWimbleCoin that is described as the fork of GRIN which was distributed to the participants in the fork project such that anonymity of transactions exist in way that only the users involved in the transaction can see the details. The MimbleWimbleCoin is often regarded as Ghost Money, of course, its transaction data is ghosted to outsiders. There are many other numerous projects that uses the protocol and an example is the Litecoin having the LTC Mimblewimble protocol under review and looking forward to its activation at the end of the year 2021.
Conclusion
Mimblewimble protocol has come with innovations to enhance scalability and ensure anonymity of transactions thereby hiding the transaction details from outsiders. Mimblewimble protocol has combined many cryptographic protocols together to achieve such innovation but there are downside of it and notable examples are its effect on transaction throughput and less adoption of the protocol at the moment.
The format for the homework task should be:
Mimblewimble Protocol - Crypto Academy / S4W2 - Homework Post for @fredquantum
Kindly take note of this. Thank you.
Thank you, Prof. Here is my assignment:
https://steemit.com/hive-108451/@olawalium/mimblewimble-protocol-crypto-academy-s4w2-homework-post-for-fredquantum
You deserve to be awarded the Prof of emagogy
Exlicit explanation that goes deep into the heart. You're on point Prof. ✌️
Thanks for the excellent lectures.
I'm glad the lecture interests you, @ckole. Thank you.
You are welcome prof
Hi professor here is my entry https://steemit.com/hive-108451/@mccoy02/steemit-crypto-academy-season-4-week-2-by-professor-fredquantum-mimblewimble-protocol
This is different from teaching on Earth and questions in heaven..good one professor., Clear and simple explanation..wish I am eligible for this level...but I still read for knowledge purpose....thank you...
Thanks, @olabillions. I'm glad you found this piece interesting. I hope to see you qualified for the level sometime sooner.
Hy
Professor @fredquantum you had delivered knowledgeable and unique post i am trying my best to compete my reputation to take part in advance courses to show my skills.
Thank you. Keep pushing towards the goal.
Saludos profesor!! Muy interesante su asignación, nunca había escuchado de este protocolo y gracias a usted sabré todo al respecto.
Felicidades!!
Thank you. I look forward to your entry.
Nice piece of lecture here respected prof @fredquantum. Simple and explicit. Will give it a shot.
Best regards
Thank you, @xkool24. Glad you found this piece interesting. I look forward to your entry.
It's good be back professor. Honestly, the protocol name gave me a good laugh. 😆
My assignment task is on the way.
Thank you. I hope to see your entry sooner.
Hello professor @fredquantum, thank you for this wonderful lecture.
I must tell you that your lecture stood out.
This is a very good way to begin dear professor!
One thing about teaching is not only knowing what to teach but also knowing how to teach it. It is how much impact the lessons have on the students that matters.
One important feature of your lecture that I have come to appreciate is your use of clear language. I saw coherency in the entire lecture and this I am aware will lead to easier assimilation. Thank you for this and I hope and wish that you do not compromise on this in your subsequent lessons.
Thank you once again @fredquantum.
It's my pleasure to have you on this, @mobibliss. Thank you and Steem on 💯.