The Grand Vision of Mina

An in-depth review of the technological and philosophical pillars of Mina Protocol

Layer 1 Spotlight: The Grand Vision of Mina

The 2008 financial crisis will be viewed by history as a pivotal moment that not only demonstrated the fragility of the global financial infrastructure but also underscored the disproportionate impact of such systemic failures on ordinary individuals.

From that point onwards, there was a consolidation of efforts from the fringes to create an alternative financial infrastructure that is inclusive and egalitarian by democratizing access to opportunities.

A financial system, where all participants have equal opportunities to participate and benefit, irrespective of their economic status—a beacon of hope for those disenfranchised by the existing financial order.

That's why the philosophical underpinnings of blockchain-based systems are deeply rooted in principles of inclusivity, democratization, and egalitarianism. From Bitcoin to systems like Ethereum, Cosmos, Solana and Cardano these are all attempts to realize one or the other version of that dream.

As much as this attempt has a philosophical base, this journey is also technologically challenging. It's an incredibly arduous task, dependent entirely on yet-to-be-seen technological developments to fulfill that vision.

That's why I think there are a few projects that have been designed from the ground up where the technological roadmap is viable enough to achieve that end state—a financial system that is inclusive, democratic, and egalitarian.

Mina Protocol is one such system that has chosen a path far different from the rest of the blockchain-based systems but has immense potential to realize that ultimate vision or what Vitalik calls "The End Game."

Why does Mina Protocol offer one of the most viable paths in achieving that vision?

In this edition of “Just The Metrics” we break down the philosophical and technological foundations of Mina Protocol and why Mina, being arguably the only blockchain that's taking a zk-native approach, is one of the strongest candidates in the entire blockchain space to achieve that ultimate vision.

What you’ll learn today

Converging Visions: How do Ethereum and Mina target the same end state?

Mina's zk-Nativeness: How does Mina integrate ZKPs at its core to enable accessibility, scalability, and privacy?

Inclusive Consensus: How does the Ouroboros Samasika protocol ensure maximum network participation and enhance security and decentralization?

zk-Programmability: How do zkApps expand the possibilities for developers?

Future Enhancements: What significant improvements are promised with the upcoming Berkeley hardfork in Mina?

The End Game

Ethereum is by far the most ambitious project from a technical and philosophical perspective, having created a core idea to become a foundational layer for a new era of the internet—Web3.

Its goal is to achieve a revolutionary digital society, one where the core principles of openness, innovation, and inclusivity are paramount.

The "End Game" of Ethereum, as envisioned by Vitalik and the broader Ethereum community, is to evolve the network into a fully scaled, maximally resilient platform that can serve as a powerful tool for global coordination and innovation.

In other words, it's a platform capable of realizing the end-game vision, including unparalleled scalability, robust decentralization, and impenetrable censorship resistance, ensuring efficient, widespread accessibility while safeguarding user autonomy and data integrity.

That's the end state, and to get there, an elaborate roadmap exists that would bring Ethereum to that end state, probably a decade away from now. At the same time, there are projects progressing towards the same end state faster than Ethereum, by leveraging the scalable, verifiable computational capabilities provided by "ZKPs."

Mina is the most prominent, or perhaps the only, project in the entire blockchain landscape that has been building toward this vision, relying on the concept of zk-nativeness.

Scalable Verifiable Computing

Scalable verifiable computation in the context of  systems demanding both efficiency and integrity at scale refers to the capacity to handle an extensive volume of transactions with the ability to prove the correctness of these transactions in a manner that is both swift and lightweight.

This concept is paramount in decentralized technologies, where the goal is to support high transaction volumes with security, transparency, and without central points of failure. Traditional blockchain systems often struggle to balance scalability, security, and decentralization.

As these systems aim to rival the throughput of centralized Web2 systems, they encounter bottlenecks that stem from the need to maintain a distributed ledger across numerous nodes, each of which must process and verify the entirety of the data. 

Zero-Knowledge Proofs (ZKPs) offer a compelling solution for scalable verifiable computation, addressing the need for secure, decentralized systems capable of handling vast amounts of transactions efficiently. Verifiable computation aims to allow a verifier to confirm the correctness of computations without executing them in full.

ZKPs enable this by allowing a prover to demonstrate the validity of a statement without revealing any additional information beyond what is necessary to make the verification. This property is incredibly beneficial for scalable systems because it means that even complex computations can be verified quickly and with minimal resource consumption.

The core value of ZKPs in systems that need to scale is their capacity to compress the verification process for complex computations into brief, efficient proofs. These proofs are small in size, making them quick to transmit over the network, and they can be verified efficiently, regardless of the complexity of the original computation.

This efficiency is a breakthrough for scalability, as it allows networks to process and verify transactions at speeds comparable to centralized systems like Visa, but within a decentralized and trustless framework.

By design, blockchain systems benefit from decentralization, enhancing security and resilience against attacks or failures. ZKPs complement this by ensuring that the verification process itself does not become a bottleneck or a central point of failure.

With ZKPs, the computational burden is significantly reduced, and the verification can be performed by any participant in the network efficiently. This feature is critical for maintaining the decentralized ethos of blockchain systems while enabling them to scale to meet the demands of global financial systems and beyond.

The architects of the Mina protocol identified ZKPs as the most viable path towards a decentralized scalable system when it was established in 2017 by O(1) Labs. That’s why Mina had integrated ZKPs into its foundation architecture, or in other words, in every aspect of a blockchain where ZKPs can be leveraged for accessibility, scalability, programmability, and privacy, making Mina a zk-native blockchain by design.

Recursive SNARKs : The Super Power of Mina

At the core of Mina's design is the use of recursive zk-SNARKs (Zero-Knowledge Succinct Non-Interactive Arguments of Knowledge), which are a form of cryptographic proof that enables the protocol to maintain a constant-sized blockchain, regardless of the number of transactions processed.

zk-SNARKs: The Foundation

zk-SNARKs are a form of ZKPs which enable one party to prove to another that a statement is true, without revealing any information beyond the validity of the statement itself. zk-SNARKs are characterized by their succinctness and non-interactive nature, meaning the proofs are very short and can be verified quickly.

Here’s a thread where is describe the concept of zk-SNARKs in detail: Link

The Concept of Recursion

Recursion in computer science refers to the process of a function calling itself directly or indirectly, which allows for the efficient solving of problems that can be broken down into smaller, similar problems.

When applied to zk-SNARKs, recursion enables the construction of proofs that verify other proofs, leading to a hierarchical structuring of information that can significantly compress the data needed to verify a series of computations.

Recursive zk-SNARKs work by taking the output of one zk-SNARK proof and using it as an input for another zk-SNARK proof. This process can be repeated multiple times, creating a chain or tree of proofs where each subsequent proof verifies the correctness of the previous one.

The key to making this recursion feasible is the use of a cryptographic technique known as "proof composition," which allows for the efficient combination of multiple proofs into a single, succinct proof.

Another fundamental element is the bootstrapping process, which involves a zk-SNARK proof validating itself. This is accomplished by designing a SNARK capable of verifying the correctness of its computations, including its own verification procedure. The bootstrapped proof acts as the foundational element for recursion, facilitating the development of proofs that can recursively verify an indefinite number of computations.

By capitalizing on the inherent conciseness of zk-SNARKs, the recursive approach ensures that the ultimate proof remains compact and can be verified in a constant timeframe, regardless of the quantity of computations it encompasses.

This efficiency is vital for enhancing scalability, as it permits the authentication of intricate computation sequences without necessitating a corresponding increase in computational power.

Leveraging recursive SNARKs, Mina aspires to establish a scalable and decentralized settlement layer underpinned by inclusive consensus and zk-programmability.

A Scalable and Decentralised Settlement Layer with Inclusive Consensus & ZK- Programmability

1. Trust Minimisation a.k.a Decentralization

At the heart of Mina’s design is the principle of ensuring that the blockchain remains accessible and verifiable by anyone, regardless of their hardware capabilities. 

Unlike other blockchains like Bitcoin or Ethereum, where participants must download and verify a vast amount of data to fully engage with the network, Mina's entire blockchain state can be verified quickly and efficiently, regardless of how many transactions have taken place, all within a proof that's about the size of a couple of tweets.

This is achieved through the use of recursive zk-SNARKs, which compress the entire history of the blockchain into a fixed-size cryptographic proof. This cryptographic technique allows Mina to compress the entire history of its blockchain into a succinct, fixed-size proof, approximately 22kb in size, irrespective of the number of transactions processed.

Here’s how Mina achieves this remarkable feat:

  • Recursive zk-SNARKs: They bundle transactions and blocks together into one small proof, making it possible to verify the whole blockchain without needing to store all its data. This not only saves space but also allows for faster and more efficient verification.

  • Protocol State: This is essentially a snapshot of the blockchain's current state, including essential information like account balances. It's a part of what gets verified by anyone looking to check the blockchain's integrity, ensuring that users are always interacting with a true and accurate version of the network.

  • Non-consensus Nodes: Mina allows for what are called non-consensus nodes, meaning participants who don't create new blocks but can still check the network's state. These nodes don't need the entire blockchain history to verify the current state; they just need the latest proof, a specific account's information, and a way to verify that information (a verification key). And these have full-node security!

  • Efficient Data Verification: Each new block in Mina doesn't just carry the latest transactions; it also contains a proof of the transactions and the summarized history up to that point. This allows anyone to verify the entire blockchain from just this new block, drastically simplifying the process.

  • Merkle Paths: To confirm account balances without the entire ledger, nodes use what's known as Merkle paths. This technique allows a node to check if an account is legitimate and its balance is correct, based on the summary provided in the blockchain proof, without needing to trust other nodes blindly.

By keeping the blockchain's size so small, Mina makes it possible for anyone, even those with basic smartphones, to participate in the network's security by verifying its state.

2. Ouroborus Samasika: Maximizing inclusivity and decentralization

Ouroboros Samasika is a pivotal part of how the Mina Protocol operates, drawing its roots from the Ouroboros consensus algorithms initially created for Cardano.

This consensus protocol is specially designed to maximize inclusivity and decentralization within Mina's settlement layer.

Inclusivity ensures that anyone can participate in the network, regardless of their location or resources, enhancing its resilience, security, and health through diversified contributions, while uncapped participation ensures that there are no restrictions on participating in Mina's block production at any point in time.

Here’s how Ouroboros Samasika Facilitates Maximum Inclusivity and Decentralization:

Self-Bootstrap: This feature allows new or returning nodes to independently determine the active blockchain chain without relying on external, potentially centralized, checkpointing services. This is crucial in scenarios where two chains of equal length exist due to forks.

Samasika uses a genesis block copy for bootstrapping and employs two chain selection rules based on the age of the fork.

For recent forks, the longest chain rule applies.For older forks, a special rule evaluates a succinct summary of each chain's post-fork state, enabling decision-making with limited information.

This mechanism ensures that all nodes, regardless of their offline duration, can autonomously rejoin and contribute to the network.

Dynamic Availability: Recognizing the variable online availability of nodes, Samasika is designed to accommodate fluctuating participation without compromising security.

It achieves this through epoch-based time division and the use of verifiable random functions (VRFs) to maintain independent randomness across epochs.

This allows for fair block producer sampling relative to stake size, even as stake distributions change, thereby ensuring all nodes have an equal opportunity to contribute, regardless of their intermittent connectivity or power availability. And in Mina the VRFs  are even implemented in a SNARK!

Uncapped Participation: Unlike protocols that limit the number of validators or rely on centralized nodes for efficiency, Samasika imposes no such constraints.

This opens the door for unlimited node participation, sidestepping potential centralization and communication complexity issues inherent in BFT (Byzantine Fault Tolerance) and BA (Byzantine Agreement) protocols.

By not limiting the number of participants, Samasika ensures a truly decentralized network where more nodes can engage in consensus processes, thereby enhancing security and network robustness.

Succinctness: The protocol's design to use only limited local information aligns with Mina Protocol's goal of creating a succinct blockchain.

This approach supports the overarching objective of decentralization by allowing nodes to operate without the need for extensive data from the blockchain's history, facilitating easier participation and verification processes.

Universal Composability: Samasika's security is validated under the universal composability (UC) framework, ensuring that it remains secure even when interacting with other protocols.

This is critical for maintaining liquidity and interoperability between different blockchain systems. By ensuring UC security, Samasika guarantees that its consensus mechanism does not introduce vulnerabilities when Mina Protocol is part of a larger, interconnected blockchain ecosystem.

Basically, Ouroboros Samasika's design principles—self-bootstrap, dynamic availability, uncapped participation, succinctness, and universal composability—collectively ensure Mina Protocol achieves its vision of enabling a lightweight, accessible, and truly decentralized blockchain.

3. The Next Frontier: zk-Programmability

Mina Protocol has also integrated ZKPs into its core programming layer. This integration is manifested through two primary components: the ZK smart contract layer, known as zkApps, and the proof system, Kimchi.

Each of these components plays a crucial role in offering both high-level accessibility for developers and powerful low-level customization options.

zkApps: The zk-Smart Contract Layer

zkApps are Mina's implementation of smart contracts that utilize zk-technology to preserve user privacy while enabling complex computations.

These smart contracts allow developers to create applications where users can prove specific facts about their data without revealing the data itself. For instance, a user can prove they are eligible for a financial service based on their credit score without disclosing the actual score.

This capability is crucial for privacy-preserving applications and is facilitated by o1js, a TypeScript library designed for building zkApps.

o1js provides developers with familiar programming semantics enriched with zk-functionalities, including privacy, scalable verification, recursion, and composability.

Kimchi: Proof System

At a lower level, Mina employs Kimchi, an extensible proof system that supports the generation of recursive proofs, keeping the blockchain's size constant and manageable.

Kimchi is based on PLONK, a universal SNARK with enhancements for better performance and flexibility with recursion at its core. It allows for the creation of proofs of proofs, a feature that significantly contributes to scalability and efficiency.

Developers can extend and augment Kimchi without necessitating a hard fork, thanks to its design that encourages the addition of new, high-performance components as needed.

This flexibility makes Kimchi akin to a "zkCPU," where developers can live-add enhancements to improve the system's capabilities over time.

Low-Level Access and Extensibility

Mina's architecture is designed to be both accessible and powerful. For everyday development, zkApps provide a high-level interface for leveraging ZKPs in smart contracts, making it easier for developers to create privacy-preserving applications.

On the other hand, Kimchi offers a robust foundation for those looking to dive deeper into the cryptographic underpinnings of Mina or to extend its capabilities.

This dual approach ensures that Mina can serve a wide range of use cases, from simple applications requiring basic privacy features to complex systems demanding extensive customization and optimization.

4.A Fast & Scalable Settlement Layer With a Composable Network of Zk-Rollups and Zk-App Chains

Mina aims to optimize the performance of its Settlement Layer by improving latency, finality, and throughput.

The goal is to achieve low-second or millisecond latency, instant finality, and hundreds or thousands of proofs settled per second.

To achieve these ambitious goals, Mina is taking a multifaceted approach, which also includes an L2 scalability roadmap similar to Ethereum's:

Recursive ZKPs: Mina has already accomplished the primary step towards optimizing settlement layer performance: Recursive ZKPs.

In Mina, transactions are proof verifications, and each transaction is a recursive proof that can be a zk-Rollup of thousands or millions of recursively bundled transactions.

This allows Mina to scale the number of ZK proofs per second that can be settled on the chain and minimize the time to finality for those proofs.

Hardware Acceleration and Parallel Processing:In parallel, strides in hardware acceleration for ZKPs using cutting-edge technologies like Field Programmable Gate Arrays (FPGAs) and Application Specific Integrated Circuits (ASICs) are being made.

This effort is bolstered by parallel processing for SNARK operations, potentially leveraging FPGAs or GPUs.

This approach aims to enhance the execution of complex ZKPs operations, such as Multiple Scalar Multiplications (MSMs) and Fast Fourier Transforms (FFTs), speeding up the verification process and reducing latency to improve system performance.

Improving Composability: For better UX, L2 scalability requires seamless composability between those layers, and Mina is working on improving composability between platforms and enabling applications and platforms to connect and build off of each other.

With recursive ZKPs, Mina can realize trustless bridging between chains and provide trustless bridges between Mina and its L2 zk-rollups and zk-App chains and the rest of the space.

This opens possibilities where Mina can also provide private verification of existing real-world data, and with Mina’s efficient verifiability, enable new use cases.

zk-Rollup SDK: The efforts are on track for the development of an SDK designed for creating composable platforms.

This facilitates the straightforward construction of zk-Rollups and zk-AppChains, which are capable of mutually recursive verification, all the while leveraging the security infrastructure of Mina as a foundational settlement layer.

Random Committee BFT: Plans are underway to redesign the consensus mechanism to use randomly selected committees.

This allows the protocol to still enable anyone in the network to participate while achieving instant finality for transactions and increased performance.

Implementing a Random Committee BFT mechanism, where a committee of nodes witnesses a block for consensus, achieves instant finality. Once a transaction is included in a block and the block is agreed upon by the committee, the transaction is considered final.

Optimized Block Production: Reducing block times and increasing the number of transactions per block contribute to achieving more throughput. This requires engineering improvements to enhance SNARKs proving/verification and networking efficiencies.

Efficient Networking Layer: Implementing an efficient networking layer, such as adapting bitswap, reduces the time it takes for transactions to propagate through the network. This is crucial for minimizing latency as it ensures transactions reach validators quickly for processing.

The Next Big step for Mina

In 2024, the Mina ecosystem will undergo a significant upgrade with the Berkeley hardfork, introducing fully ZK enabled smart contracts, or zkApps, to the mainnet.

This will unlock a plethora of possibilities for both infrastructure and application enhancements within the network, including complex, privacy-preserving computations.

Key improvements with this upgrade will also include performance boosts through reduced slot times and optimizations for validators, enhancing network efficiency and scalability without sacrificing decentralization.

As we look towards a future where there will be seamless integration of blockchain technology into daily life, Mina's approach, with a lightweight, scalable, and user-centric platform, sets a new standard for what is possible.

By enabling privacy-preserving tools and ensuring equitable access to the blockchain, Mina is paving the way for a future where technology serves as a force for good, democratizing access to opportunities and empowering individuals and businesses across the globe.

If you want to listen to a deeper conversation that will take you to the fundamentals of Mina protocol and ZKPs, here's my interview with the CEO of o(1) Labs, Brandon Kase.

What did you think about today's edition?

Login or Subscribe to participate in polls.

DISCLAIMER: None of this is financial advice. This newsletter is strictly educational and is not investment advice or a solicitation to buy or sell assets or make financial decisions. Please be careful and do your own research.

Join the conversation

or to participate.