Mina is building a privacy-preserving gateway between the real world and crypto. By design, the entire Mina blockchain is about 22kb – the size of a couple of tweets. This allows anyone to connect peer-to-peer and quickly sync and verify the chain. This week, we sat down with the O(1) Labs team (the team that has been incubating the Mina Protocol) to discuss the Mina Protocol, its use cases, and recent traction.
Let’s dive in:
1. Mina’s blockchain is only 22kb, the world’s lightest blockchain. Why is this important?
When using a regular blockchain, users have to download the entire chain in order to verify that it is correct and to trustlessly send transactions. As more transactions are added to the chain, the blockchain becomes heavier, and the resource requirements for validating nodes increase. For example, to trustlessly verify the Bitcoin blockchain requires a 300GB download, and takes 6 hours to complete on a $2,000 desktop. So while the original promise of blockchain is to give power back to the decentralized masses, this actually isn’t the case as mature blockchains are growing in size.
When there are high barriers to entry for nodes (such as these large resource requirements), fewer nodes can participate. This decreases decentralization, and ultimately can make the network more vulnerable to 51% attacks (impacting security), or it could mean that end users are censored off from the network.
Unlike first-generation blockchains, such as Bitcoin or Ethereum, Mina uses a chain that is about 22 kb so participants can quickly sync the entire chain. Mina is designed so that it’s able to scale while retaining the highest levels of resiliency, privacy, and security for the users while not compromising decentralization. Because of its small size, the pool of eligible validating nodes for Mina is much more inclusive, which is better for decentralization and usability. Essentially, Mina is built differently so that it’s accessible to end users even as it grows.
2. What problem(s) is Mina trying to solve?
- Blockchains are heavy – Developers and users struggle to directly access blockchains without intermediaries (as described above). This forgoes the entire purpose of blockchain in the first place. To solve this problem, Mina is light. Mina has a fixed size of 22kb. Developers and users can directly and quickly access and verify Mina — making Mina one of the most secure and trustless blockchains.
- Blockchains don’t interact with the rest of the internet – That means real world information is off limits to blockchain applications, limiting their scope and utility. To solve this problem, Mina privately interacts with any website. Anyone can use real world data in computing and decision-making to change the way we live and work — without ever compromising privacy.
- Powerful players demand user data – Users gain greater control and alternatives to handing their data over in exchange for participation in the modern world. To solve this, Mina keeps users in control of their data. Users can prove facts about their data without ever disclosing specifics — even to those counterparties who are requesting it.
3. Mina solves these problems by using the power of zk-SNARKs. Can you explain what zk-SNARKS are and how they work?
zk-SNARKs are a type of cryptographic tool known as zero knowledge proofs. The purpose of zero-knowledge proofs is to convince someone you know something without revealing what that thing is. For example, you might want to convince someone that you know the solution to a puzzle without giving them the solution. Or prove to someone that you know a password without telling them what that password is.
Mina utilizes the power of zk-SNARKs to replace the blockchain’s entire transaction history with a lightweight, zero-knowledge proof that is only about 22kb in size. This proof is much easier to download than an entire chain of transactions.
Mina keeps this proof a constant size by utilizing recursive zk-SNARK. Each zk-SNARK contains a snapshot of the previous zk-SNARK, as well as all of the transactions since then. Mina is the first production system to implement a recursive zk-SNARK with no trusted setup. Trusted setups have been a possible pitfall in the design of other zk-SNARK based systems (such as Zcash), so Mina’s innovation here provides further indication as to the soundness of its design.
4. Mina enables a new type of app that you call SNARK-powered Applications, or “Snapps”. Can you explain what these are?
Mina enables a new type of dApp – what we call “Snapps”, or SNARK-powered Applications. Snapps are SNARK-enabled smart contracts. They are Turing complete like other smart contracting languages, but because they’re built on zk-SNARKs, they bring along the features of privacy and verifiability.
This property of zk-SNARKs unlocks an enormous amount of new use cases that aren’t possible on existing blockchains or smart contract platforms. For example, users can use data on Snapps privately. Snapps will also be able to run with verified private data from the ‘mainstream’ internet. This is because Snapps are able to trustlessly and privately verify data that is on any website signed by a https signature. No other blockchain project is able to do this privately and trustlessly like Mina’s Snapps.
5. Can you describe some of the use cases for Snapps on Mina?
Unlike other blockchains, Snapps built on Mina can interact privately and trustlessly with the rest of the internet. There are several use cases being worked on that demonstrate the power of Mina as a private gateway between the real world and crypto:
- Private Access to Internet Services – Users can access critical online and on-chain services from any website without sharing their personal data. Instead, they use Mina to prove that they meet important requirements. No need for a trusted enclave that can be compromised. For example, users can prove facts about themselves or their identity (e.g. country of residency, name, credit score, etc.) without revealing any of the underlying data to the blockchain.
- Permissionless Web Oracles – With Mina’s Snapps, developers can use private, verified, real-world data from any website to build decentralized apps. They can access any information that is publicly available on the web (without needing that website’s permission). And they can access, use and protect sensitive information by only inputting the relevant proofs into their applications. No need for trusted oracles or custom website integrations. For example, a developer could build a smart contract that automatically pays out a reward if a Tweet reaches a certain number of likes. The Snapp can trustlessly and permissionlessly prove that the Tweet has achieved the target.
- One Private Internet Login – Users can access any internet website or service privately — without creating an account and handing over their personal data. Instead, they login securely with Mina. No centralized service provider can block them. And developers across chains can integrate this private, secure option into their services. For example, a user could privately login to a service and prove their identity without having to share their credentials or email address with the website.
6. You recently announced a partnership with Teller Finance — what does this mean for users?
The Snapp built by Teller Finance on the Mina blockchain demonstrates the power of Snapps. Teller’s app can be used to privately and trustlessly verify that a user’s credit score is above a certain threshold, without having to reveal what that credit score actually is, nor reveal the underlying social security number. By doing so, users will be able to privately prove their creditworthiness, and access lower cost and undercollateralized loans in the DeFi ecosystem – potentially unlocking billions of dollars of new lending on DeFi protocols. More information on the Teller Snapp can be found here in this short video:
7. Mina’s community is one of the largest and most active amongst the recently launched blockchain projects. What makes the Mina community special?
Mina’s active and supportive community is something that we’re really proud of. Since launching mainnet two weeks ago, we already have ~900 active nodes (with more coming online each day), and we’ve achieved a more than 92% rate of staking participation. We’ve seen great community participation through our recent testnets too. We recently concluded our adversarial testnet, which was the largest proof of stake testnet outside of ETH 2.0 This robust community will be a great motivation for developers to build on Mina. Some examples of community tooling that has already been built can be found at http://awesome.mina.tools/.
We’ve onboarded a lot of these active nodes through Genesis token grant, which is structured specifically to encourage a larger number of nodes of other blockchains, increasing the level of decentralization and participation. We are planning to continue this grant post-mainnet, and have reserved 8.8% of the token supply to continue onboarding new node operators into the ecosystem.
Learn more at https://minaprotocol.com/