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

View this thread on steempeak.com
· @allbert ·
$43.90
Mimblewimble Protocol - Crypto Academy / S4W2 - Homework Post for @fredquantum
<div class="text-justify">Hello Professor @fredquantum. Until reading this class I had not fully understood the importance of Mimblewimble and privacy. Classes like these make us think about the technologies needed to make the future of cryptocurrencies more secure and viable.</div class="text-justify">
<p></p>
Let's get started.
<p></p>

<center>
![0.png](https://cdn.steemitimages.com/DQmVG65uh8gFEsB4xpHSPiQ6ibZJh6c3bNTHqQvuErN2tp5/0.png)
<sub>Image edited by me in Powerpoint</sub></center>

<p></p>
<center><h2> 1- In detail, explain your understanding of the Mimblewimble protocol. </h2></center>
<p></p>
First of all, it should be clarified that Mimblewimble is a blockchain protocol, not a blockchain as some people mistakenly believe. Mimblewimble is a new technology that enables the creation of a censorship-resistant digital currency system that offers privacy and scalability.
<p></p>
Its curious name comes from the world of literature, specifically from the Harry Potter saga, and refers to a spell that prevents the affected person from telling a secret. Precisely this protocol and how it works, prevent the blocks from telling their secrets about certain information that we wish to remain hidden.
<p></p>

 We could say that Mimblewimble's technology is an improvement on systems like bitcoin and other blockchains in general, since instead of the sender having to make signatures from the private key to the public address, all transactions have a series of numbers that are multiplied together to form a larger number, and some of these numbers that are multiplied together are hidden.
<p></p>
 This feature is called Blinding Factors. So the sender has these blinding factors and the recipient randomly selects a range of these factors, and these are multiplied to a large number known only to the sender and the recipient. So these factors are basically a proof of ownership because both the sender and the recipient are the ones who know the results of those huge numbers. 
<p></p>
If the results of the numerical factors don't match then that transaction is invalid.
<p></p>
Finally, both transactions and amounts are hidden but checked if the number of inputs and outputs match.

<p></p>
Something curious about this protocol is that it was born from a white paper sent anonymously under a pseudonym called: Tom Elvis Jedusor... which is an anagram that in French means: Je suis Lord Voldemort; which alludes to the evil wizard of the Harry Potter World.
<p></p>

This white paper set out some ideas for improving Bitcoin's scalability and privacy issues, although not in its final form as it is currently known. Later, some other developers took Mimblewimble's idea and improved it until it became what it is today.

<p></p>
<center><h2> 2- Discuss in detail how the Mimblewimble blockchain protocol works. </h2></center>
<p></p>

To understand how Mimblewimble works we must start from one of the basic problems of Bitcoin, privacy, in which in a transaction you can see what amount has been sent and what amount has been received from one direction to another. 
<p></p>
However, with Mimblewimble's technology, the amount sent is multiplied by these blinding factors, so it becomes a much larger number. A number that can't be deciphered, which means you can't see the amount of the transaction, and that's what gives it privacy
<p></p>
Also, the Mimblewimble protocol uses a technology for the blocks called CoinJoin which combines several transactions, confusing which amounts have been sent and from which direction to which direction, so some of the transactions along with the information of the outputs are merged. Therefore, you cannot know the inputs, outputs nor individual addresses. 
<p></p>


This large block of joined transactions is indivisible and impossible to decipher by outsiders.
<p></p>

<center>
![1.png](https://cdn.steemitimages.com/DQmZ8N6KYWyn3Y8fEQo2pmd7ufvuZkGExLC3SAQGg1FaWyD/1.png)
<sub>Image edited by me in Powerpoint</sub></center>

<p></p>

Another key functionality in Mimblewimble is the Dandelion protocol, which was developed to further increase security, privacy from a process where the points of origin of transactions are untraceable.

<p></p>
Basically, it is divided into two phases, a first phase is called "Stem Phase" in which the point of origin of a transaction does not send the information directly to the Blockchain, but sends it to a series of randomly chosen nodes. The number of nodes is unknown.
<p></p>


The point of this whole procedure is that the node receiving the information does not know whether it receives it from the origin or another replicator node.  
<p></p>


<center>
![2.png](https://cdn.steemitimages.com/DQmbg6fLRqifVjpy4kGfr2jA7TpHxeWMJZHrTJZKmpJmqDV/2.png)
<sub>Image edited by me in Powerpoint</sub></center>


<p></p>

On the other hand, in the second phase called "Fluff Phase" information is sent from the last node of the first phase to the rest of the Blockchain that shares the Mimblewimble protocol. Remember that the Mimblewimble protocol does not keep a history of all transactions, so each block only knows the information provided by the previous block but cannot trace the origin.
<p></p>
<center><h2> 3- Discuss in detail your understanding of Confidential Transactions (CTs). </h2></center>
<p></p>
It is a protocol where the information of each transaction is linked to the information of other transactions within the same Blockchain. In addition, information such as the amount transferred is encrypted through cryptography in such a way that it is unrecognizable to anyone outside the transaction but decryptable to those involved.
<p></p>
In this way, transactions to the outsider's eye will not have any details since the information is confidential, the opposite case to the Bitcoin network.
<p></p>
But if there are no details in the transactions, how can the protocol verify that the amounts are valid and no new coins are being created? 
<p></p>
To solve this problem the Confidential Transactions protocol uses the so-called Pedersen Scheme, which allows it to dispense with certain information from the blocks and still verify them without having to reveal the amounts of money.
<p></p>

For example, through the list of inputs and outputs of each transaction, it is verified that the sum total of the total of inputs is equal to the sum total of the total of outputs, thus ensuring that no new currencies are being created through the alteration of a transaction, but that the amount going out is the same as the amount coming in.
<p></p>
So if A sends 10 BTC to B and C sends 7 BTC to D, the transactions would not be filed separately in different blocks but are merged into a single block, such that for the block not 10 BTC and 7 BTC were transferred but 17 BTC were transferred, of which it is not publicly revealed what percentage belongs to each user. 
<p></p>

The two aspects that are verified in this procedure are the total amount of coins sent and received and that these reach their rightful owners.
<p></p>

<center><h2> 4. How do you think Mimblewimble Protocol can be utilized on the Bitcoin Network to enable anonymity of transactions and improve scalability?</h2></center>

<p></p>
The Mimblewimble protocol was specially designed with Bitcoin failures in mind, so its entire structure is designed to improve block efficiency. One of the main problems of the Bitcoin network is its scalability.
<p></p>
As I mentioned before Mimblewimble uses a technology for the blocks called Coinjoin which combines several transactions with the information, so you can't know the inputs, outputs, or the individual addresses.  This greatly reduces the block size, as wallet IDs and transaction data are not stored in the blocks. So it gives you privacy and reduces the block size at the same time.
 
<p></p>
If we explore the Mimblewimble block explorer we can see how limited is the data offered by a block under Mimblewimble protocol
<p></p>

<center>
![3.png](https://cdn.steemitimages.com/DQmR8mihW7crwb4HFTkNXmNPwaFCY7PwRnSm1PQye2na8Gc/3.png)
<sub>Image taken from Mimblewimble block explorer. <sup><a href="https://explorer.mwc.mw/" rel="noopener" title="This link will take you away from steemit.com"> Source </a></sup></sub></center>


<p></p>

If we look at block 951246, we will notice that it has no data about the transaction or the amount transferred. Only a reference to the previous block which contains the same limited amount of information.
<p></p>

<center>
![4.png](https://cdn.steemitimages.com/DQmctLTHb3wiUdq8jUhL1T3zCdNZyhYKfJMw7BnmXRK5uV9/4.png)
<sub>Image taken from Mimblewimble block explorer. <sup><a href="https://explorer.mwc.mw/" rel="noopener" title="This link will take you away from steemit.com"> Source </a></sup></sub></center>

<p></p>

By reducing the size of the block and the information stored, it becomes much more scalable. About scalability let's remember that in Mimblewimble there are no addresses, it is the wallets that communicate with each other exchanging the transaction data in which the recipient creates and sends an address to the sender; only those involved have access to the data, which cannot be used or seen by third parties. 
<p></p>

In turn, the blocks that are being added to the blockchain have only one transaction with mixed inputs and outputs, i.e., it does not list the individual transactions in each block and thus the blocks do not provide information specific to each particular transaction.
<p></p>


Another way in which Mimblewimble is more scalable is that it improves the efficiency of the blockchain by eliminating unnecessary old transactions. That is, what the Mimblewimble protocol does is that it removes old entries from the blockchain, so that the size of the blockchain is drastically reduced.
<p></p>

All of these advantages are what make it a brilliant technology so that it can be Implemented in bitcoin. 
<p></p>
<center><h2> 5. State the Pros and Cons of the Mimblewimble protocol.</h2></center>
<p></p>
<h3> PROS:</h3>
<p></p>

- Privacy and security: Since the origin of any transaction cannot be traced and the amount transferred is not known, the anonymity of individuals is ensured, as well as security. Since transactions of high sums of money in traditional blockchains can be traced and turn users into targets of criminal kidnapping and extortion organizations.

<p></p>

- The less computational power needed: Because a coin's transaction history, as well as addresses, are omitted, less information is stored in the blocks, which in turn translates into smaller block sizes and less computational power needed.

<p></p>

- Scalability: Logically, the smaller size of the blocks and the information contained in them allows a greater number of transactions to be carried out in less time. In other words, it makes them more scalable.

<p></p>

- Fungibility: It is the characteristic of a currency that allows it to be exchanged and maintain its value over time. Recall that there are blockchains that can veto a certain amount of coins if it is discovered that they belonged to an undesirable person or were involved in a negative act. However, this usually discriminates against the current holder and not the perpetrators.

<p></p>
Through Mimblewimble it becomes impossible to veto or reduce the value of a crypto asset, since as mentioned no record of its provenance is kept.
<p></p>

<h3> CONS:</h3>
<p></p>

- Bitcoin Integration Issues: Mimblewimble does not have a scripting language like bitcoin, which means that its implementation directly to the whole network is not possible at the moment unless it is done through a Sidechain.

<p></p>

- Synchrony of participants. In theory, both participants in a transaction should be online at the same time during the transaction to sign everything and avoid double-spending. This can become an obstacle if both people live in very different time zones or if either has Internet connection failures. 

<p></p>
<p></p>

- Regulation: From a regulatory point of view, Mimblewimble is ethically questionable, because it will be impossible to audit because everything remains secret and there is no history on the blockchain.

<p></p>

<center><h2> 6. Discuss in detail at least a Crypto that uses the Mimblewimble protocol.</h2></center>
<p></p>
One of the few cryptocurrencies that use the Mimblewimble protocol is BEAM, which at the time of writing this post has a price of 0.70 USD and has a market capitalization of 68 million dollars, which makes it a small project.  Something we should know about BEAM is that it is a minable coin and is the token belonging to the platform that bears the same name. Here is a link to a <a href="https://beamx.gitbook.io/beam-mining/-MdvMMR0TdumadxyPDa1/" rel="noopener" title="This link will take you away from steemit.com"> Mining guide Beam Hash III </a>.
<p></p>

<center>
![logo.png](https://cdn.steemitimages.com/DQmWyvpQRnQa7jdhJwtbUoQie7kzXE1FvmsFNrE9cCQKdey/logo.png)
<sub>Beam Logo. <sup><a href="https://coinmarketcap.com/es/currencies/beam/" rel="noopener" title="This link will take you away from steemit.com"> Source </a></sup></sub></center>

<p></p>
BEAM is a confidential DeFi decentralized finance platform launched in early 2019 and founded in Israel, which runs on the Mimblewimble protocol in conjunction with the LelantusMW protocol. It is structured as a non-profit organization-type company funded by private investors.
<p></p>

Regarding its rewards, per block in the first year is 80 coins. In the second year until the fifth year 40 coins per block and from the sixth year until the ninth year the reward per block is 25 coins.
<p></p>

On the other hand, BEAM has an encrypted supply limit. The maximum supply is 263 million coins so it is a monetary system that is designed for token value increase over time.
<p></p>

<center>
![5.png](https://cdn.steemitimages.com/DQmRscQrDzfbZxeaGRCkgpUeVxLcWM3SuntZpPxRVoogRe7/5.png)
<sub>BEAM platform. <sup><a href="https://beam.mw/" rel="noopener" title="This link will take you away from steemit.com"> Source </a></sup></sub></center>

<p></p>
From a technical point of view, BEAM is coded in the C++ language and new transactions are added to the blockchain through the Proof of Work consensus algorithm with Equihash and its block rate is 1 minute. 
<p></p>
Among the products they offer are Atomic Swaps which is a completely decentralized and private P2P exchange service that allows the exchange of BEAM with other cryptocurrencies.
<p></p>
They also have different DAPP's that can be easily connected and accessed through the BEAM Wallet.
<p></p>
BEAM has also ventured into Smart contracts through Beam Shaders, which is a new addition to the chain, and allows programming in languages such as Go and Rust. 
<p></p>

<center><h2>Conclusion</h2></center>
<p></p>
As we have already seen Mimblewimble could be implemented in the bitcoin network as a softfork or a sidechain just like the lightning network in which users via atomic swaps could move their coins from the bitcoin network to the Mimblewimble network and then perform private transactions.
<p></p>


Solutions like these are what point to the scalability of the bitcoin network eventually being solved and consequently making a lot of cryptos unnecessary.
<p></p>

Thanks to Mimblewimble we will be able to enjoy more and more blockchains that are authentically private and at the same time scalable. 
<p></p>
👍  , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
properties (23)
post_id94,072,851
authorallbert
permlinkmimblewimble-protocol-crypto-academy-s4w2-homework-post-for-fredquantum
categoryhive-108451
json_metadata{"tags":["fredquantum-s4week2","cryptoacademy","mimblewimble","steemexclusive","blockchain"],"users":["fredquantum"],"image":["https:\/\/cdn.steemitimages.com\/DQmVG65uh8gFEsB4xpHSPiQ6ibZJh6c3bNTHqQvuErN2tp5\/0.png","https:\/\/cdn.steemitimages.com\/DQmZ8N6KYWyn3Y8fEQo2pmd7ufvuZkGExLC3SAQGg1FaWyD\/1.png","https:\/\/cdn.steemitimages.com\/DQmbg6fLRqifVjpy4kGfr2jA7TpHxeWMJZHrTJZKmpJmqDV\/2.png","https:\/\/cdn.steemitimages.com\/DQmR8mihW7crwb4HFTkNXmNPwaFCY7PwRnSm1PQye2na8Gc\/3.png","https:\/\/cdn.steemitimages.com\/DQmctLTHb3wiUdq8jUhL1T3zCdNZyhYKfJMw7BnmXRK5uV9\/4.png","https:\/\/cdn.steemitimages.com\/DQmWyvpQRnQa7jdhJwtbUoQie7kzXE1FvmsFNrE9cCQKdey\/logo.png","https:\/\/cdn.steemitimages.com\/DQmRscQrDzfbZxeaGRCkgpUeVxLcWM3SuntZpPxRVoogRe7\/5.png"],"links":["https:\/\/explorer.mwc.mw\/","https:\/\/beamx.gitbook.io\/beam-mining\/-MdvMMR0TdumadxyPDa1\/","https:\/\/coinmarketcap.com\/es\/currencies\/beam\/","https:\/\/beam.mw\/"],"app":"steemit\/0.2","format":"markdown"}
created2021-09-17 02:10:21
last_update2021-09-17 02:10:21
depth0
children2
net_rshares56,430,665,751,774
last_payout2021-09-24 02:10:21
cashout_time1969-12-31 23:59:59
total_payout_value21.958 SBD
curator_payout_value21.943 SBD
pending_payout_value0.000 SBD
promoted0.000 SBD
body_length15,485
author_reputation146,404,880,873,694
root_title"Mimblewimble Protocol - Crypto Academy / S4W2 - Homework Post for @fredquantum"
beneficiaries[]
max_accepted_payout1,000,000.000 SBD
percent_steem_dollars10,000
author_curate_reward""
vote details (49)
@fredquantum · (edited)
<div class = "text-justify">Dear @allbert. Thanks for attending the Steemit Crypto Academy Season 4 Week 2. Let's take a look at the breakdown of your performance below.</div>
<br>

<table>

<th>Grading Basis</th>
<th>Score</th>

<tr>

<td>Content Structure</td>
<td>1.5/2</td>
</tr>

<tr><td>Originality</td>
<td>2/2</td>
</tr>

</tr>
<tr><td>Clarity of Language</td>
<td>2/2</td>
</tr>

</tr>
<tr><td>Compliance with the Topic</td>
<td>2/2</td>
</tr>

</tr>
<tr><td>Quality of Analysis</td>
<td>1.5/2</td>
</tr>
</tr>

<tr><td><b>Total</b></td>
<td><b>9/10</b></td>
</tr>


</table>

<b>Feedback/Suggestions</b>

* This is great content and it would have been an outstanding content if you can discuss the feature responsible for elimination of redundant transaction information in Mimblewimble, the **Cut-through** feature.

* Likewise, **strong** effects to highlight important keywords would have been great.

* Overall, great work by you. Thank you.

***Total***| ***9/10***
properties (22)
post_id94,077,471
authorfredquantum
permlinkqzkhr7
categoryhive-108451
json_metadata{"users":["allbert"],"app":"steemit\/0.2"}
created2021-09-17 07:21:09
last_update2021-10-03 15:52:18
depth1
children1
net_rshares0
last_payout2021-09-24 07:21:09
cashout_time1969-12-31 23:59:59
total_payout_value0.000 SBD
curator_payout_value0.000 SBD
pending_payout_value0.000 SBD
promoted0.000 SBD
body_length980
author_reputation497,355,204,219,138
root_title"Mimblewimble Protocol - Crypto Academy / S4W2 - Homework Post for @fredquantum"
beneficiaries[]
max_accepted_payout1,000,000.000 SBD
percent_steem_dollars10,000
@allbert ·
Thanks Professor... Great class!!!!
properties (22)
post_id94,082,076
authorallbert
permlinkqzku3h
categoryhive-108451
json_metadata{"app":"steemit\/0.2"}
created2021-09-17 11:47:42
last_update2021-09-17 11:47:42
depth2
children0
net_rshares0
last_payout2021-09-24 11:47:42
cashout_time1969-12-31 23:59:59
total_payout_value0.000 SBD
curator_payout_value0.000 SBD
pending_payout_value0.000 SBD
promoted0.000 SBD
body_length35
author_reputation146,404,880,873,694
root_title"Mimblewimble Protocol - Crypto Academy / S4W2 - Homework Post for @fredquantum"
beneficiaries[]
max_accepted_payout1,000,000.000 SBD
percent_steem_dollars10,000