Greetings. Am glad to participate in this week's crypto academy homework. Thank you professor @fredquantum for the lecture it was really interesting. Here's the answer to the homework.
Designed on Canva
In detail, explain your understanding of the Mimblewimble protocol.
Mimblewimble protocol is a Blockchain protocol which was developed by unknown identities who used the name Tom Elvis Jedusor in 2016. The name mimblewimble was said to have had it's origin from Harry Potter movie and was said to be named after the spell which Harry Potter used to stop people from revealing a secret.
Mimblewimble protocol gives privacy to transactions on a Blockchain hence does not reveal details to others who are not part of the transactions. In mimblewimble, we do not see details such as wallet addresses of senders and receivers, amount transacted etc as we see in Bitcoin which may lead to tracking of users and hence mimblewimble gives more privacy and scalability to it's users than Bitcoin.
The problem of privacy in Blockchain is taken care of by mimblewimble because the details of a transition is limited only to the nodes involved in the transactions. On-chain nodes are not able to view transaction details of transactions which they are not directly involved in.
In mimblewimble, the issues of scalability is addressed because it does not record redundant transactions like other Blockchains hence decongestion is less on the blocks thereby increasing scalability.
Discuss in detail how the Mimblewimble blockchain protocol works.
Mimblewimble uses confidential transactions as it's structure for transactions. It's able to do this using blinding factors. In this system, there's first a private transaction in which the amount of token that the sender want to process is encoded(encrypted) through blindling factors. The sender in using blinding factors will send a random value which the receiver also will select a synonymous value to show that the token belong to the sender hence they can be able to use the coins.
Mimblewimble protocol also uses another implementation known as conjoin for it's functions. Coinjoin makes use of cryptographic algorithms to increase the privacy of the Blockchain. The idea of coinjoin is to make it very difficult for transactions to be tracked by combining payments from many senders as a single transaction. This summed up transactions is recorded on the on-chain and forms a block of transaction. It's only the nodes involved in the transactions that can access the details of these transactions.
Regarding the scalability of the Blockchain, the mimblewimble makes use of a feature known as cut through which enhances the scalability. Redundant transactions are reduced by pairing the inputs and outputs and redundant transactions are not recorded in the block.
Discuss in detail your understanding of Confidential Transactions (CTs).
Confidential transactions (CTs)are cryptographic protocols which are created to enhance the privacy and anonymity of cryptocurrency transactions. The idea of confidential transactions was proposed by Adam Back in 2013 and was backed up by Gregory Maxwell. They were seeking for a way to make transactions in the Bitcoin network more private and also address the fungibility problem in Bitcoin. They decided to develop a protocol that will code or encrypt the transaction details and make them inaccessible to third parties hence the use of confidential transactions.
In order to ensure that data of transactions are correct and also protect the information from third parties, a scheme called Perdersen Commitment was adopted. Perdersen Commitment is a homomorphic coding that enables a transaction to be carried out without the nodes using addresses but making use of signatures which are distributed only between the parties involved in the transactions. Third parties have no idea of the transaction or the details hence bringing about optimum privacy in cryptocurrency Blockchain as never have been known or seen.
screenshot taken from Binance academy
From the screenshot above we see the difference between normal transactions and confidential transactions. In normal transactions, the details of the parties involved are open for all to see while the opposite is the case in confidential transactions.
How do you think Mimblewimble Protocol can be utilized on the Bitcoin Network to enable anonymity of transactions and improve scalability?
To improve the anonymity of transactions and scalability in the Bitcoin network, the mimblewimble protocol can be adopted into the Bitcoin network as a side-chain. Side chains are systems that permits tokens and other digital properties of a Blockchain to be used in another Blockchain and can also be taken back to the first Blockchain when need arises. In this way, the functionality of the other Blockchain is amplified.
If mimblewimble protocol is integrated into Bitcoin network, the Bitcoin nodes will use the mimblewimble protocol to send and receive transactions. This will minimize the congestion in the blocks hence tackling the problem of scalability as it removes redundant blocks from the on-chain transactions. Bitcoin lightening network aids scalability too but mimblewimble protocol can increase it as it takes care of redundant transactions in the Blockchain which do not occur in the Bitcoin network.
The confidential transaction protocol will be used by the mimblewimble side chain to make sure that privacy and anonymity of transactions are in place so that the details of transactions can only be accessed by the nodes involved. Just like we saw, that the sensitive details are not revealed when using mimblewimble unlike we see in the case of Bitcoin hence Bitcoin network can enjoy such privacy too with the utilization of mimblewimble protocol.
From mimblewimble block explorer, this is an example of what blocks looks like with mimblewimble protocol. We see that there are no transactions details revealed hence there's privacy and Bitcoin network can enjoy that too if mimblewimble protocol is integrated into the Bitcoin network.
State the Pros and Cons of the Mimblewimble protocol.
The advantages of mimblewimble protocol includes:
Increase in privacy
The mimblewimble protocol is known for its privacy by ensuring that transaction details are not open to the public but to parties in involved in the transactions alone. This is a breath of fresh air to users knowing that their privacy and anonymity is intact unlike as it's obtainable in most Blockchains.
Reduction in block size
Mimblewimble does not record redundant transactions, this makes the block size relatively small from what is obtainable in other Blockchains.
Increased scalability
The reduced block size makes for increase in the scalability and there are no congestion in the blocks caused by redundant transactions hence on-chain activities can run effectively.
Fungibility of coins
Mimblewimble avoids the lowering of coin value and UTXO (Unspent transaction output) coins which can be seen in other Blockchains were coins are rejected from blacklisted addresses hence ensuring the fungibility of coins.
The disadvantages of mimblewimble
Requires more processing time:
Mimblewimble used complex encryptions, this will cause an increment in the timing that a block requires to be validated which cancels out the timing it saves for being scalable.
Difficulty to produce proof of payment.
Since mimblewimble does not reveal transaction details to third parties, one will find it difficult to make use of it in making transactions what will require one to show proof of payment thereby making payment verification difficult.
Discuss in detail at least a Crypto that uses the Mimblewimble protocol.
There are cryptocurrencies that uses mimblewimble protocol such as beam, Grin etc but an going to be discussing Grin:
GRIN
Grin is a private crypto coin that is built on mimblewimble protocol. In Grin, there are no addresses and amounts and transactions details are not visible on the Blockchain. The absence of these details is the reason for the small data size of Grin hence making the Blockchain to have light weight. Grin was set in motion by developers who spearheaded it's fair distribution without an initial coin offering (ICO) or fundraising.
Cuckoo cycle proof of work is the consensus algorithm used by Grin with 2 hashing algorithms; Cuckoo-29 which is used for GPU mining and Cuckoo -31 used for ASIC mining.
Jan 15- 2019 saw the launching of Grin mainet and it's still available for mining and trading
Source
As at the time of writing this homework, below are the data statistics of Grin coin.
The price of Grin is $0.333546. It has a market cap of $2,227,954,756,713 and a market volume of 122,032,526,808. It reached an all-time low of $0.220929 in Nov 4, 2020 and an all time high of $261,65 in Jan 16, 2019.
Mimblewimble protocol tends to solve the problem of scalability and privacy which are not obtainable in other Blockchains. It can be adopted or integrated into other Blockchain using side chains will amplify or increase the efficacy of these Blockchain through having more privacy of its transactions and increase scalability. It's has it downside and presently is less adopted because of its effect on transactions processing.
The lecture was interesting and eye opening. Thank you professor @fredquantum.