Welcome to another edition of Crypto Explained.
We are on the mission of making crypto easy for everyone. If you’d like to learn more about the world of crypto, don’t forget to subscribe to receive this Newsletter directly in your email!
I’ve heard many industry references talk about Mina, but have been quite unfamiliar about it till now, so today I’m quite excited about this article for the chance of researching and studying it.
Objectively, Mina Protocol is a hard project to understand due to its cutting-edge nature, but this is exactly what makes it so special.
In a nutshell, Mina Protocol is a Layer 1 cryptocurrency blockchain that is known for using zero knowledge proof technology to have a constant blockchain size of 22kb, making it the world’s lightest blockchain.
Let me explain more, but first things first…
Chapter 0 - Intro to Mina Protocol
Mina Protocol is a Layer 1 cryptocurrency blockchain, created by Evan Shapiro and Izaac Meckler in 2017.
Mina Protocol is developed under O(1) Labs, which is also founded by Shapiro and Meckler, but it is managed by the Mina Foundation, a non-profit incorporated in February 2021.
It uses a Proof of Stake consensus mechanism that is a modification of Cardano’s Ouroboro, which makes it possible to have no limit on the number of block producers who can join the blockchain.
Mina’s original name is Coda Protocol, which had to be rebranded to the current name in September 2020.
Mina’s mainnet went live in March 2021 after 3 years of development, sponsored by some of the best-known names in the industry, including Coinbase Ventures.
It can process around 22 tps (transactions per second).
MINA is the native cryptocurrency and was launched with an ICO.
It has an initial supply of 1B coins with no maximum supply, which makes it inflationary. However the market cap is low, so there is opportunity for interesting gains.
Chapter One - Setting the Stage
How it all started?
The Blockchain Trilemma again.
For those who missed the memo, this trilemma essentially refers to the difficulty to achieve and maintain all 3 cornerstones of a blockchain, which are decentralization, security, and scale.
With this in mind, Evan Shapiro and Izaac Meckler came up with a fundamentally different blockchain architecture design than the rest of the existing blockchains: rather than being centered around computing force, Mina delivers a different solution by using advanced cryptography and recursive zero knowledge technology instead to deliver.
And therefore, blockchains are heavy - Mina is light.
What problem does it solve?
Let’s remind ourselves that blockchains are public ledgers run and maintained by its participants, who validate and verify all transaction data stored in the blocks. It is this decentralized structure that makes it trustless.
It is fair to say that the more network participants, the more decentralized and secure, as power is distributed across more, not just the few.
Up until now, for a new participant to join the network, he/she will have to check every transaction since the beginning of the network to verify correctness — which amounts to hundreds of GB of data. Yeah, that’s a hell lot of computing power that most people can’t afford.
You get the gist now: as more blocks get added to the chain, the blockchain becomes heavier, and therefore harder for miners and nodes to store transaction history, as well as for new joiners to participate.
It’s then only a matter of time before a blockchain becomes so large that only a handful of participants are able to store all its transaction data, which will lead to a gradual centralization of the blockchain, making it more vulnerable to attacks and manipulation.
What’s the solution that Mina offers?
Instead of verifying the entire chain from the beginning of time, the Mina Protocol uses cryptographic proofs. These proofs are then used for participants to fully verify the network and transactions.
By doing this, Mina dramatically reduces the amount of data each user needs to download and validate.
This cryptographic proof solution is known as zero knowledge proofs (or zk-SNARKs).
How? Let’s move on.
Chapter 2 - The Secret Sauce
How does Zero Knowledge Proof work?
ZK Proof is cocreated by MIT professor and Algorand founder Silvio Micali, and is the technology that allows the blockchain size to be compressed.
This is possible as it allows something to be proved without having to provide any information to support that proof.
Let me break this down with an example.
Imagine you want to prove to your friends you just ran into your celebrity crush in a restaurant. Instead of calling all your friends to the restaurant right away to prove this, which is super inconvenient and also likely impossible, you can just take a picture and share it with them.
In the context of crypto, the photo of you and your celebrity crush is a snapshot of the cryptocurrency blockchain transaction history. This is easy, efficient, and very easy to scale.
Now, if you’ve been paying attention then you are probably wondering if we keep adding up different pictures or snapshots, then over time it will also become increasingly heavier in data.
Great segway to the next question.
How can it stay at 22kb?
Mina Protocol takes it to the next level by using something called
recursive zk proof
, which means that instead of turning every transaction and block into a 22kb snapshot, what it does is that it turns each additional transaction and block into a part of the same 22kb snapshot.
Let’s go back to our example.
Imagine you are very lucky and in the following week you again run into your celebrity crush. In this case then, what you’d be doing is having the first photo in your hand, and taking a new picture with you, the celebrity, and the original picture.
So it is essentially like a photo in a photo.
In the world of crypto, it would be a proof of a proof of a set of proofs, and so on and so forth.
In other chains, verification is done by replaying every block one by one by one. in Mina it is done by just proving that it exists a sequent of blocks that form a blockchain: Everytime a new block is created and broadcasted throughout the network, Mina extends the proof to support this extra block.
Hence, the “recursive” nature of this: a proof can refer to itself.
This is what allows mina to stay small.
Chapter 3 - Getting more technical.
ZK-SNARKs
To be precise, the zero knowledge cryptographic proof used by Mina Protocol is known as ZK-SNARK, which is an acronym for “zero knowledge succint non-interactive argument of knowledge”.
We already explained widely that zero knowledge proof is a cryptographic protocol that makes it possible to prove the veracity of a transaction without the knowledge of the proposal itself.
SNARK is an acronym that describes how this ZK (zero knowledge proof) works. Without going into the details of each letter, the attributes being highlighted are that ZK proofs:
Don’t leak information,
they are tiny and easy to verify,
no back and forth communication required between prover and verifier, and
prover must have knowledge of the thing being claimed, not just that it is true.
Who are the Network Participants?
Now that we talked extensively about proving and validating, let’s look at the 3 types of participants in the Mina Network:
Verifiers: just like nodes on other blockchains, verifiers add security to the blockchain by holding that 22kb proof. Because it’s such a small amount to download, pretty much anyone can be a verifier on mina.
Blocks producer: like miners on other blockchains. they create blocks containing transactions and earn MINA coins from fees and block rewards. The difference is mina block producers only store the current state of the blockchain and send a snapshot of this state to verifiers. It requires no minimum staking amount, and there is no slashing penalties either in the case of misbehavior.
Snarkers: these are the participants that are tasked with taking snapshots of all the transactions taking place on the blockchain.
Essentially, block producers pay snarkers for this service.
All snarkers can bid for the same transaction’s snapshot on the marketplace called the snarkersplace.
Last Chapter - Other inshgt.
Main Usecases
Mina’s lightweight 22kb blockchain means anyone can easily connect peer-to-peer and validate transactions like a full node, ensuring strong censorship resistance and security for the blockchain.
The usage of ZK-SNARKs makes Mina Protocol a favorite for many use cases, but just to highlight the most relevant ones:
SNAPP
Think about it… when you apply for a credit card, how much information do you share with the bank?
Mina is directly addressing this trust issue with a new kind of application called the Snapp, or the snark-powered application.
What is a Snapp? It is an application that uses ZK-SNARKs to prove the information is valid without needing to expose all pieces of information.
Following the example with the bank, Snapps will let your credit score and other sensitive information stay private, only proving that you meet the necessary criteria, without actually sharing the underlying information.
PRIVACY - OWN YOUR DATA
Mina Protocol can privately interact with any website and access verified real-world data for use on-chain. So developers can leverage data on the internet and easily bring it on-chain, without ever compromising the privacy of users.
How about the Concerns?
LOW THROUGHPUT
Mina runs at around 22 tps, which is only slightly bit better than Bitcoin.
This probably has to do with how the ZK snapshots are created. Every Mina transaction takes at least as long as it takes for snarkers to create a ZK proof of that transaction, and then you’ll have to add up the bidding and selection process by the block producer.
This is also reflected in its finality (the point where a transaction can be said to be valid). For Mina, it takes about an hour, which is quite slow.
ALL BLOCKCHAIN HISTORY STORAGE
If verifiers only hold a ZK proof and block producers only store the current state of the blockchain, where does all the blockchain history actually gets stored if things go south?
It seems that there is some kind of “Archive Nodes” that will hold the complete transaction history, but it is unclear how many nodes there are. And given this, it is also unclear how decentralized then Mina Protocol really is. I mean, if you think about the number of nodes, yes it seems quite decentralized, but if we are talking about single point of failure, then some questions do arise.
Lastly…
This is not the first time we mention zero knowledge proof in this forum. We talked about it during Layer 2 scaling solutions, and have clearly stated that ZK-Roll Up is one of the most promising solutions in this space.
A lot of effort is being made in the crytpo space for this, and it is not news that Ethereum’s founder Vitalik Buterin is a big supported and promoter of ZK technology.
In this sense, Mina Protocol is definitely ahead with its innovative approach to its blockchain architecture design!
Thanks for making it this far! Make sure to like, subscribe and share, so more people can find us!