Steemit Crypto Academy Season 4 Week 2 [Advanced Course] | Mimblewimble Protocol

in SteemitCryptoAcademy3 years ago (edited)

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.

0001-7704208907_20210912_102403_0000.png
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.

20210912_102133_0000.png
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.

iMarkup_20210912_045450.jpg
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.

  • For transactions to take place on Mimblewimble, the sender and receiver must have exchanged verifying information to initiate the transaction.

  • Now, C received X coins from A and also the C received another X coins from B. Such that, user C now has a total of XX coins in his/her wallet.

  • Let's assume user C is now in trade with D and needed to pay XX coins. C and D exchanges verifying information and the XX coins is sent out.

  • Now, D doesn't know where C got the XX coins from because D is an outsider to the previous transactions C was involved. D can only have the details of the ones he's involved.

  • To record the transaction in the Mimblewimble block, I highlighted that redundant transactions are eliminated such that the inputs to outputs from A, B, C and D are not entirely recorded rather a single pair of input-output is recorded in the block.

  • 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.

    iMarkup_20210910_154012.jpg
    Image Source- Mimblewimble explorer

  • From the image above, we would be exploring the block 942269 to see the block details.
  • iMarkup_20210910_153951.jpg
    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.

    iMarkup_20210910_153903.jpg
    Image Source- Blockchain explorer

  • From the screenshot above, we would be considering block 699913 to see what happens in the block. Now we have the block details as shown below.
  • iMarkup_20210910_155503.jpg
    Image Source- Blockchain explorer

  • Notably from the above, we can see the number of transactions present in the block and all other details. Now let's see the block transactions as recorded in the block.
  • iMarkup_20210910_153748.jpg
    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.

    Homework


  • 1. In detail, explain your understanding of the Mimblewimble protocol.
  • 2. Discuss in detail how the Mimblewimble blockchain protocol works.
  • 3. Discuss in detail your understanding of Confidential Transactions (CTs).
  • 4. How do you think Mimblewimble Protocol can be utilized on the Bitcoin Network to enable anonymity of transactions and improve scalability?
  • 5. State the Pros and Cons of the Mimblewimble protocol.
  • 6. Discuss in detail at least a Crypto that uses the Mimblewimble protocol.

  • Rules and Guidelines


  • Post your article to the Steemit Crypto Academy.
  • The purpose of the homework task is to widen your knowledge about the topic, so ensure you don't limit yourself to the few things taught in this lecture. Do more Research and be Creative.
  • Your article must be at least 600 words and make sure your language is clear and straightforward.
  • Be sure that your article is free of Plagiarism, if you have directly copied words from any source, fully reference it.
  • Avoid content spinning of other users' content, it can disqualify you so make sure you are a unique producer of your homework task. You don't want to risk being sent to the grey list or blacklist, so Beware!
  • Add the tag #fredquantum-s4week2 among the first five tags and find a place to tag me @fredquantum so that I can easily find your content. Also, add relative tags like #cryptoacademy #mimblewimble, #steemexclusive, #blockchain, and others.
  • Only use copyright-free images and they must be well referenced.
  • You are only eligible for this task if you have a reputation score of 65 upward and at least 600 SP excluding delegated-in SP.
  • This task runs till the 18th of September 2021. Time: 11:59 PM UTC. Any homework task submitted later than that becomes invalid. Thank you.

  • Cc:
    @steemitblog
    @steemcurator01
    @steemcurator02

    Sort:  
     3 years ago (edited)

    The format for the homework task should be:

    Mimblewimble Protocol - Crypto Academy / S4W2 - Homework Post for @fredquantum

    Kindly take note of this. Thank you.

    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

     3 years ago 

    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.

     3 years ago 

    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.

     3 years ago 

    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.

     3 years ago (edited)

    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.

     3 years ago 

    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 💯.

    Coin Marketplace

    STEEM 0.26
    TRX 0.11
    JST 0.032
    BTC 63547.08
    ETH 3070.13
    USDT 1.00
    SBD 3.83