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

in SteemitCryptoAcademy3 years ago

Hey there this is @prakhar9675 this side. And this is a Homework post which is published for professor @fredquantum. So let's answer all the questions:-

image.png
Source

Red nwe.png

Q. In detail, explain your understanding of the Mimblewimble protocol.


With the increasing use of Bitcoin and Ethereum, we all know a scalability problem with bitcoin and Ethereum blockchain, which takes much time to transact any amount from one account to another.
Apart from this, we all know many pretty good things are associated with blockchain technology, including immutability, interoperability, and transparency. But the problem with the privacy section is that anyone can see all the transaction history or any account if one knows that this account is yours.

For example,:- you go to a shop for having just a coffee. Now you paid the bill using bitcoin and left. But the owner turned out to be a stalker. Then he knew that I received this Amount of money from this account and this must be your account. Then by using that account number, the owner can see all the transaction history of your account. This history might or might not contain any personal data, but this is not a privacy-friendly system.

Then, to improve the blockchain's scalability and add a layer of privacy to the existing system, in August 2016 an anonymous person like Satoshi Nakamoto gave an idea. That idea was published with the code name Tom Elvis Jedusor which, when translated from French to English, read the actual name of Voldemort and this protocol is named Mimblewimble protocol* both of these names are taken from a fictional book Harry Potter written by J.K Rowling.

Using this protocol, the transaction that occurred is only visible to those participating in the transaction and the rest of the users.
And apart from this, the transferred Amount is also kept hidden from the rest of the users.

This protocol boosted privacy and scalability so much that it got popular very fast, and nowadays, many Blockchains are implementing it for enhancing scalability and confidentiality.

Red nwe.png

Discuss in detail how the Mimblewimble blockchain protocol works


To enhance the privacy protection and adding an extra layer of protection, Mimblewimble blockchain protocol uses properties of elliptical curve Cryptography which is abbreviated as ECC which is used for combining two different signatures this operates on the concept of the discrete logarithm(as discussed by the professor).

ECC is a set of points that satisfy a specific mathematical equation extended over a large span in mathematics. This means a shorter key is used, but at the same time, security is also kept intact.

To understand the logarithm easily:- let's take a straightforward logarithm equation.

Log(base 2) (32)= 5log (base 2) (64)= 6

This shows that 2 being the base, multiply itself five times, then it is converted into 32, but at the same time, when one more two is added, its value is changed to 64.

Thus you can see a slight change in this equation led to a change in the value. Similarly, when a very complex equation is used, a minimal change changes the value radically, which are used to assign private keys for every transaction to encrypt it.

Now discrete means that a non-predefined value is used in this equation, wholly based on probability.

The total understanding of ECC with the concept of the discrete logarithm is that:- for every transaction, ECC plot a graph in which random value is used, which is entirely based on probability, and this acts as a private key for that transaction.

Mimblewimble protocol is a combination of confidential transaction, coin join and cuts through. Using these concepts and the security of ECC with discrete logarithm make the blockchain highly scalable and private.

Confidential transaction: According to Adam back a former bitcoin developer, and a confidential transaction enables sending any amount to any receiver while keeping the Amount private to other users except those involved in the transaction.

The Amount is encrypted using something known as blinding factor, a random value that the sender generates. The receiver has to enter the same value to claim the received Amount before using those. In this way, this blinding factor acts as proof of ownership. Without this receiver can't be the owner of those coins.

CoinJoin


Using the CoinJoin Mimblewimble protocol, the scalability of a blockchain is increased. At the same time, it also enhances privacy where is it quite hard or nearly impossible to identify the sender and receiver for a transaction.

By using this system, several transactions are fused as a single transaction. And the data recorded in a block contains only the list of senders and the list of receivers. Thus we can't identify which sender has sent how many amounts to which receiver.

Now for an example:- There are three people A, B and C. They made a transaction to send coins to D, E and F, respectively.
Now by using the CoinJoin, all three transactions are fused into a single transaction. And the block in which this transaction will be recorded will have only the Information as:-

Sender:- A, B, C
Receiver:- D, E, F

And as discussed through the confidential transaction, the Amount and other Information are kept hidden, not recorded in the blockchain.

Now you can see it's tough to identify which user has sent the coin to which receiver Because this could be quickly done by matching the received and sent Amount, which is hidden now.

And as less Information is recorded in a block, and thus at the same time, more transactions can be recorded in a single block, which gives rise to the increase in the scalability of the blockchain.

Cut through:-


This is another system that is used to eliminate some information that is to be recorded in a block, and thus it increases the scalability of the blockchain.

Using this system, the Information in which a receiver, which has received from a sender, sends that Amount to any other receiver, the Information of 1st receiver is not recorded.

For example, I received one coin from @rishabh99946, three from @aman9675 and five from @dharamps, and then these eight coins were sent to @arjunparihar by me. Then the Information regarding transactions with me will not be recorded to bring efficiency.
And the Information will be;-

Input :- @rishabh99946 sent 1, @aman9675 sent 3, @dharamps sent 5 coins.

Output:- @arjunparihar received eight coins

Thus by using confidential transactions, cut through, and CoinJoin, we can bring privacy and, at the same time, efficiency, which makes the blockchain more scalable.

Red nwe.png

Confidential Transactions

images (4).jpeg
SRC

The Confidential Transaction Is the upgraded version of the UTXO model with Its multi-signature model, but how exactly? Confidential transaction protocol uses the Pedersen Scheme

It's a scheme that implements blind signatures for involved parties, and no address of sender or receiver is shared between them. Still, instead Signature is shared between them that encrypts the input and output data of a transaction so no third party will be able to Figure out any detail of the transaction and that's how it provides an Extreme level of privacy.

For example, Suppose there are Two users A and B, now A has 10 Coins in his wallet And want to send five coins to B, now to carry out this transaction, A has to spend all of this UTXO means there will be a transaction created that will be spending ten coins Sending five coins to B (The receiver) and Sending five coins back to A (The sender) This process will hide the absolute amount sent To B

Now only Involving parties A and B will be able to see the transaction details for any outsider. There will be random generated Encrypted data That will be impossible to understand.

Formulation of CTs

C(BF1 +D1) + C (BF2 +D2) = C(BF1+BF2, D1+D2)

Detailed parts of the Equation -

BF = Blinding factor or Random generated data
D - Data of the Transaction
C(BF1+BF2, D1+D2) = Address of Origin of funds

Red nwe.png

HOW MIMBLEWIMBLE CAN BE USED IN BITCOIN TO IMPROVE SCALABILITY AND PRIVACY


We all know that with the increasing popularity of bitcoin and the increasing number of transactions, its scalability is decreasing because the size of a block can't be increased, and it has to hold Information by which lesser transactions can be recorded in a block.

And when we talk about privacy, we know that when we send bitcoin to anyone else, our official names aren't made public. But when we use the bitcoin blockchain to send bitcoin to anyone who knows us personally, that person can get to know that this address belongs to me. And with that address, he can see our remaining balance, our bitcoin source, and many other private things.

For example, by going to blockchain.com site, you can see all the recent transactions and search for any transaction using block number or address. Here, for example, I chose a random block from the recent transactions that block 700646.

IMG_20210915_172617.jpg

From this block number, I can see all the transactions recorded in this block. And also, I can see all the transactions made by any particular address by just clicking on any address.

IMG_20210915_172654.jpg

Here I am watching all the transactions made by a particular address starting with 1Bc41..., And here I can see how much Amount has he received and how much has he spent.

IMG_20210915_172830.jpg

Now, this user might be a ghost for us, but if anyone knows that this address belongs to some XYZ, then that person can do similar things with XYZ.

This also harms scalability. Like this, all unnecessary Information is also to be recorded in a block; thus, a lesser number of transactions can be recorded in a block compared to the number of transactions that might have been recorded without this Information.

Now, with the use of Mimblewimble protocol, we can overcome many of these difficulties and improve privacy and scalability while keeping the si intact.

Using the confidential transaction system, we can hide the Number of transactions for all the users except those involved. Thus this Amount is not recorded in the block, and thus it makes it more storage efficient and thus makes the blockchain more private and scalable.

By using the CoinJoin system in Mimblewimble protocol, we can fuse many transactions as a single transaction and thus it makes it very hard to identify real sender and receiver who are involved in a transaction. And only the list of receiver and sender is recorded, and no unnecessary information is recorded, and thus, it makes it more private and storage efficient hence more scalable.

Now, with the help of cut through, we can remove unnecessary Information of a receiver who received coins from many senders and then sends coins to another receiver. Thus by removing a mediator's information storage, we can make s block more storage efficient and it gives rise to the blockchain become more scalable.

Thus by using the Mimblewimble protocol, we can solve the problems of the bitcoin blockchain of privacy and scalability.

Red nwe.png

PROS AND CONS OF THE MIMBLEWIMBLE PROTOCOL


With the introduction of the Mimblewimble protocol, there are many pros and cons associated with it. Let's discuss some of these in detail:-

Pros:-

  1. With the introduction of the Mimblewimble protocol, the address of the sender and receiver as well as amo are hidden. By this, the identity of both users become completely distinguished.

  2. With the introduction of the Mimblewimble protocol, the data that is to be recorded in a block is minimised as unnecessary Information is not recorded. Thus it gives rise to more Information to be recorded in a block and thus scalability is increased.

images (4).jpeg
Source

  1. With this, we can not trace the origin of any coin neither we can invalidate that. Thus it enhances the fungible status of that coin.

  2. As lesser data of any particular transaction is recorded in a block thus any transaction can be verified easily by any node thus it gives rise to more participation of nodes in the blockchain.

Cons:-

  1. The most imminent threat to Mimblewimble protocol is that it relies mostly on digital signature and thus it can be hacked using the quantum computer because these computers can solve this equation more easily than an ordinary computer. Thus using an ordinary computer, can't be done but using quantum computers and Photon computers can be done.

  2. As every protocol that prefers privacy and anonymity, because of more transactions in a block, it suffers from longer Throughput. And this problem is also associated with the Mimblewimble protocol.

Thus there are many disadvantages associated with the Mimblewimble protocol but when we see advantages, those are more important and essential.

Red nwe.png

Discuss in detail at least a Crypto that uses the Mimblewimble protocol.


Grin is named a lightweight cryptocurrency. Grin coin was launched on 15th January 2019 without any centralised network and single authority.

images (11).jpeg
https://images.app.goo.gl/NQE9431FYFJMfVt97

Because there is no information other than input-output and Signature, which keep the blockchain lightweight due to the small size of data, so a new node can quickly join the blockchain without downloading a large blockchain and doesn't require high processing hardware computers.

SAVE_20210919_241625.jpg

If we want to explore grin coin, we have to visit block explorer that doesn't show the number of transactions. So the explorer in which mimblewimble protocol is applicable for grin coin blockchain, Grinexplorer, Grinscan, Tokenview, Grin-fans. It is a privacy coin and a cryptocurrency that work on a proof of work consensus algorithm, which states that we can mind this coin by solving a complex cryptographic problem to generate a new block.

SAVE_20210919_241629.jpg

Its current price is $0.342, with a total market capitalisation of $28,751,836. It works in proof of work consensus algorithm and currently has 24 hours volume trade is $2,833,974.

If we calculate the ratio of volume and market capitalisation, it will come out to be 0.09996. the current circulating supply of Grin coin is 84,064,860.00 GRIN, where the maximum supply is not addressed. It uses a mimblewimble protocol for scalability and privacy improvement. We can see its high scalability as its blocked time is one minute and every block have a reward of 60 grins which means that every second 1 grin.

You can currently buy grin coin on different exchanges such as ZT, Kucoin, Gate.io, Hitbtc, BKEX.

This is the detailed analysis of the Grin coin.

Red nwe.png

Conclusion


So we can conclude that with the introduction of the Mimblewimble protocol, we can significantly enhance the privacy and scalability of any blockchain. We know that the importance and popularity of cryptocurrency and blockchain are now increasing with leaps and bounds in this world. But with this, it brings the scalability disease. And also, to increase transparency, we have compromised with privacy. So with the introduction of Mimblewimble protocol in any blockchain, we can tackle these problems, and at the same time, we can enhance privacy by many folds.

Thus, as everything needs to change to improve itself, this case is similar to the blockchain. And it needed Mimblewimble protocol to improve.

Sort:  
Loading...

Coin Marketplace

STEEM 0.17
TRX 0.13
JST 0.027
BTC 58430.35
ETH 2623.36
USDT 1.00
SBD 2.42