LATER
NEXT
NOW
COMPLETED
How to View This Roadmap
This is an interactive visual;
Zoom In and pan around with your mouse to explore.
Hover over a component for more detail.
Mina Protocol’s Multi-Year Roadmap
Building the Future of Programmable ZKPs
The information contained herein is result of a
culmination of inputs gathered from various
Mina ecosystem participants. It is provided for
illustrative purposes only and is not to be read
as a forecast or a guarantee.
Component States
The various states of completion for each component
on this roadmap.
FULL SCREEN
ZOOM IN
ZOOM OUT
COMPLETE
CRITICAL MILESTONE
IN PROGRESS
NOT STARTED
Trust Minimization
Ensuring the Mina blockchain is sustainably and
scalably decentralized.
Read More
Democratizing
Consensus
Participation
Increases the likelihood an
individual running a node
produces a block, by
re-weighting their
likelihood of being selected
to participate in consensus,
with the goal of a world
where everyone’s devices
are running a node—further
decentralizing consensus
and increasing
participation in the network.
Staking Pool
Reward Saturation
To promote delegations
to smaller pools for
optimal decentralization,
the amount of rewards
available for delegating to
a block producer gets
capped at a saturation
point.
Robust On-Chain
Identity
Research direction with
the aim of enabling
secure, on-chain identity
in a privacy-preserving
manner.
Succinct
Blockchain
Mina is the first
cryptocurrency that uses
a succinct blockchain,
which provides a short
and constant verification
time for each transaction.
Mina gets this done by
including succinct proofs
of state validity in each
block.
Mobile and
Browser Block
Production
In-browser and mobile
network validators / block
producers. Mobile nodes
able to come online for
block production, to
minimize impact on
battery usage while
maximizing
decentralization.
Full Node
in-browser
Rust implementation of
the Mina node that runs
inside the browser,
providing the ability for
users on browser and
mobile to verify state and
transactions without
having to trust a third
party.
Uncapped
Consensus
Participation
A critically important
property of our protocol is
that there is no limit on
participation by nodes in
any manner, meaning that
participation in consensus
is open to anyone able to
run a node.
Single-Server
Off-Chain Storage
Allows zkApp developers
to verifiably store data for
their applications
off-chain in a
single-server model.
Off-chain data is stored in
a Merkle tree and the
state root of the Merkle
tree is stored on-chain as
an attestation to what is
stored off-chain.
Multi-Server
Off-Chain Storage
A multi-server storage
solution that can be run by
multiple parties for
stronger trust guarantees.
Modular
Blockchain
Off-Chain Storage
Solutions leveraging
storage on modular
blockchains for zkApp
data availability.
On-Chain Data
Availability
Bonded on-chain storage
and data availability using
the MINA token.
Data Availability
Committees
Scalable Data Availability.
Assigns consensus nodes
to committees, which are
each assigned a portion
of total on-chain data
storage.
Quantum
Resistance
Make Mina’s zero
knowledge proofs
quantum-resistant.
ZK Programmability
Building the best possible ZK programmability
layer on Mina with scalable verification and zero
knowledge privacy.
Read More
Custom Tokens
Native tokens available on
Mina, analogous to
ERC-20, but with the full
ZK programmability
provided by Mina’s
zkApps.
Account
Abstraction
Account abstraction gives
developers much more
flexibility when interacting
with Mina accounts
enabling features such as
multi-sig, and smart
recovery as well as
leverage the ability to
change keys without
changing wallets.
Extended Lookup
Tables
A powerful PLONK
custom gate which
enables efficient parsing
of strings in-SNARK,
among other things.
Rust Circuit
Writing API
A Rust API for writing and
working with Mina
zkApps-compatible
zk-SNARK circuits via
lower-level primitives.
SnarkyJS
Designed to run in the
browser, SnarkyJS is
Mina’s front-end ZK
programmability SDK,
enabling full
programmability of ZKPs
and all the features they
unlock in TypeScript.
Recursive ZKPs
One of the first teams to
implement recursive
zk-SNARKs, making the
lightweight nature of Mina
possible by allowing a
single proof to attest to
the correctness of
practically unlimited other
proofs.
zkApps on
mainnet
Full ZK programmability
available for Mina,
including native privacy,
scaling, recursion, and
easy-to-program
primitives such as
zkRollups and privacy
pools.
Cross-Chain
Crypto Primitives
Support for SHA-256,
ECDS, Keccak256, and
other cross-chain crypto
primitives for efficient
verification of commonly
used signature schemes.
Increase Circuit
Size Limit
Kimchi is limited to 15
columns and 2^16
constraints. That works
well for many use cases,
but maybe not other
situations where one has
a multitude of inputs to
the circuit, or needs many
more constraints.
This will allow proofs of
arbitrarily large
computations, without
needing to break the
computations up into
multiple proofs.
Proof System
Composability
Enable recursive
composition of different
proof-system versions on
Mina, allowing multiple
versions to co-exist on the
same mainnet.
Running
Mina in Mina
Verify new versions of
Mina inside existing
versions of Mina, enabling
new versions of Mina to
interoperate with existing
versions, enabling
straightforward testing
and zero-downtime
upgrades.
Pickles
The Pickles proof system
and associated toolkit
offered substantial
performance
improvements and
importantly opened the
path towards general
computation for zero
knowledge smart
contracts.
VMs as Custom
Gates
Makes custom-built,
efficient virtual machines
easy to deploy on Mina’s
proof system, enabling
zkApps to be written in
and execute languages
like Rust or WASM.
Compile Any Code
to Mina
Enable developers to use
any programming
language and compile
almost all existing code to
zkApps.
zkApps CLI
The command line
interface to Mina’s zkApps
and SnarkyJS, built with
NodeJS and NPM for
compatibility with the
existing JavaScript and
TypeScript ecosystems.
Custom Gates
A set of low-level PLONK
custom gates useful for
implementing common
crypto algorithms. These
gates include a foreign
field multiplication gate,
foreign field addition gate,
XOR gate, bitwise rotation
gate, and range check
gadget.
Kimchi
Kimchi, a PLONK-based
proving system that
brings faster verification
and prover time than the
original.
No Trusted
Setup
Pickles is one of the first
deployed proof systems
which doesn't require a
trusted setup.
Settlement Layer
Performance
Optimizing the performance of Mina’s latency,
finality, and throughput.
Read More
Libp2p
Libp2p is a network
framework that is used to
create decentralized
peer-to-peer applications
on Mina.
Ouroboros
Samasika PoS
Mina builds on Ouroboros
to create Ouroboros
Samasika, a provably
secure PoS protocol that
combines the best
features of each iteration
of Ouroboros to deliver a
PoS mechanism that can
resolve long-range forks
without requiring history
or risking centralization by
relying on trusted third
parties to provide fork
information.
Advanced
Networking
Add Bitswap to Mina’s
networking, in order to
improve the the
networking capacity as
well as the speed at which
peers can request and
receive information.
Decentralized
Sequencing
Between Mina’s
decentralized consensus,
and decentralized SNARK
proving market, Mina
achieves decentralized
sequencing of zero
knowledge proof
transactions.
Mina Node
Optimizations
Key operations and
processes within the Mina
node will be optimized, to
achieve better node
performance, creating
opportunities for
increased throughput and
improved latency.
Ultra Low
Latency
Network and node
optimizations will allow for
fast transaction
settlement, reducing the
latency from transaction
creation to it being
accepted by the network.
GPU Accellerated
Proving
Hardware accelerated
proving with GPUs. This
reduces the latency to get
large proofs included as
part of zkRollups, and
potentially reduces cost
as well for proofs of large
computations.
Off-Chain
SNARK Work
Enable SNARK work to be
performed off-chain such
that transactions which
include many account
updates, along with the
accompanying SNARK
work proof, are executed
simultaneously.
Decentralized
Prover
The core data structure
powering Mina’s prover
sequencer. Implements
an infinite accumulator of
transactions with finite
(O(1)) memory usage and
parallelized proving for
adjustable throughput,
allowing for decentralized
proving.
Snarketplace
Mina eliminates the need
for trust and also
incentivises the work of
creating SNARK proofs by
having a marketplace of
‘SNARK workers’: nodes
which are responsible for
producing SNARK proofs
of transactions in the
network.
Random Committee
BFT
Mina’s consensus
mechanism will be
redesigned to evolve to
use randomly selected
committees, allowing the
protocol to still allow
anyone in the network to
participate while enabling
instant finality for
transactions and
increased performance.
Instant
Finality
Consensus redesign will
aim to achieve instant
finality for transactions,
meaning that any
transactions can be
considered final and
irreversible with no
chance of it being rolled
back.
Optimized TPS
Through the redesign of
consensus and the
peer-to-peer network,
Mina’s throughput will
perform at the limits of
package delivery of the
P2P network itself.
Raise zkApps
Composability
Limit
Re-architect zkApp
transactions to enable
them to take full
advantage of the
decentralized prover.
Composability is then
limited only to the
maximum number of
proofs in a block.
Transaction
Execution
Committees
Assign Mina consensus
nodes to native roll-ups
that process transactions
in parallel.
Infinitely
Horizontal
Scaling
Incentivize consensus
nodes to participate in
transaction execution
committees contingent on
demand, allowing
on-demand scaling.
Leverage Data-availability
committees, plus insights
from horizontally scalable
databases (eg BigTable) to
unlock a straightforward
API for developers looking
to build at scale.
Minaverse
Pushing the boundaries of composability between
platforms and enabling applications and platforms
to connect and build off of each other on Mina.
Read More
Trustless
Interoperability
with Ethereum
Ethereum applications
can make use of zero
knowledge proofs on
Mina. Ethereum state can
be used to call and update
zkApps on Mina.
zkApps as
Ethereum L2s
Applications on Mina can
choose to get their
security from Ethereum.
The ground truth of the
application state is
verified by the Ethereum
settlement layer.
Universal
Multi-Sig
Derive a Mina private key
in zero knowledge, derive
private keys for other
chains with it, and sign
transactions via an
on-chain threshold
signature scheme, all in
zero knowledge.
Cross-Chain
Custody
Leveraging cross-chain
crypto primitives to
enable users to trustlessly
self-custody their crypto
assets across different
blockchain networks from
Mina.
Succinct Proofs
Mina’s proof system was
developed to enable
succinct, constant-sized
proofs, small enough to
be sent around the
internet with low
bandwidth, enabling
Mina’s low-cost
verifiability.
zkBridge
zkBridge will enable
Ethereum and other
EVM-based applications
to leverage Mina’s
zkApps, using Mina’s
succinct proofs to enable
fully trustless cross-chain
interoperability between
the chains.
Composable
Rollups
Libraries for connecting
rollups, both between
each other, and to Mina,
by managing messaging
and asset transfers
between them.
Sequencer
Libraries
Provide consensus
libraries for sequencing
transactions, with
flexibility between simple
(e.g. centralized
single-server), and more
complex (e.g.
instant-finality BFT).
zkEVM
Implement a zkEVM for
Mina, allowing EVM code
to be deployed on Mina
directly. EVM-on-Mina
codebases to
interoperate with zkApps
for ZK programmability
features.
Recursive Rollups
SDK
Recursive Rollups SDK is
a framework that
developers can reuse to
build and deploy their very
own general-purpose or
application-specific rollup
(zkApp-chains).
zkApp-Chains
Recursive Rollups will
enable developers to
easily launch
zkAppChains that
recursively verify each
other, while being able to
rely on the security
provided by Mina as a
settlement layer.
Cross-Rollup
State Proof
Interoperability
Enabling trustless
interoperability between
the Mina rollup ecosystem
and those of other
networks.
Infinite
Recursion
Mina’s proof system offers
infinite recursion to
accommodate as much
computation as desired in
exchange for extra
recursive steps. So now
we have unlimited
off-chain computation
and a solid bedrock for
ZK-based applications
and zkRollups.
zkRollup PoC
A proof-of-concept of a
zkRollup on Mina,
showing the performance
and throughput potential
of a zkRollup leveraging
recursion.
zkOracles
An MPC + ZK protocol for
trust-minimalized oracles
of Web2 data via HTTPS,
with optional primitives for
preserving the privacy of
that data.
Road to DAOification
Setting up a system of decision-making for Mina to
function effectively and have a positive impact on
the world.
Read More
Governance Sandbox Phase
A time period when the
community and
ecosystem iterate on
different governance
configurations to develop
a better governance
system that works for
Mina. This phase will
involve reflection and
iteration—learning
opportunities—so that
insights and outcomes
with the wider ecosystem.
Delegation
Program
Mina Foundation is
committed to
decentralization and has
adopted a policy through
which any voting power of
the Mina tokens held by
Mina Foundation is
delegated to third-party
block producers.
zkVoting
A mechanism whereby an
account can participate in
on-chain voting without
other accounts being able
to see how such an
account voted.
Potential Future
MIPs*
There are many potential
future types of MIPs to
apply to Mina. Some
examples of possible
future MIPs are shown.
Specifics on which of
these MIPs happen, and
their exact format, will be
determined by the
community and the
ecosystem.
Protocol Vision
A possible future MIP for a
“north star” of Mina to be
established by
contributors to the
protocol. Could include
the basic traits of
decision-making for Mina,
the norms for how
community members
treat each other, and
Mina’s mission, values,
norms, and possibly
“constitution” for how it
operates.
Protocol Fiscal
Policy
A possible future MIP, or
set of proposals, for
setting the fiscal policy for
Mina, such as
amendments to block
rewards and different
transaction fee models,
such as fee-burning.
Community
Governance
With the delegation
program, hardfork
governance, and Mina
Improvement Proposal
process, the Mina
blockchain is governed by
its community of token
holders and block
producers.
Community
Iteration on MIP
Process
An interactive and
inclusive process in which
we collectively
experiment, learn &
improve the MIP process
over time.
During the governance
sandbox process, the MIP
process will respond to
new learnings. Likely
changes include zkVoting,
identity and novel
mechanisms for
deliberation and decision
making, among other
things.
Protocol
Roadmapping
A possible future MIP for
community-driven
updates to the
development roadmap of
Mina Protocol involving
representatives of
community contributors.
On-Chain
Decentralized
Protocol Treasury
A possible future proposal
to create an on-chain
decentralized treasury
that is allocated to
community programs,
such as zkIgnite, for
community benefit.
Funding sources
potentially include
portions of block rewards,
transaction fees,
proceeds from the grant
portion of MF’s delegation
program, and the project
grant tokens managed by
MF.
Hard Fork
Governance
The process by which the
community can decide
whether to perform a hard
fork, by moving stake over
to nodes running a new
hard fork.
On-Chain Funding
A possible future MIP for a
funding process for all
budgetary decisions
concerning the evolution
of the Mina Protocol and
ecosystem. Drawing on a
decentralized treasury
powered by a zkApp, no
single actor or group
would control the
process.
Mina Improvement
Proposals
The Mina Improvement
Proposal (MIP) process is
a mechanism open to all
token holders to propose
important changes to the
protocol or new features
for Mina. A group of MIP
Editors oversees the
process to check that
each step is carried out
correctly. MIPs are
accepted by a
stake-weighted on-chain
vote (OCV). Any Mina
account can vote by
either using its tokens or
delegating its tokens to a
block producer that can
vote in its stead (weighted
by the stake delegated to
it). This process enables
the community to decide
on the adoption of key
upgrades to the protocol.
zkIgnite:
Distributed
Ecosystem Funding
Process
A series of grant
programs that are
managed by a
decentralized governance
process in which grants
are allocated to recipients
through representatives
of community
contributors.
zkIgnite1
Current and future
iterations of zkIgnite. Each
iteration will be organized
to grow the ecosystem by
deciding how to fund
zkApps and their tooling.
On later iterations the
scope of zkIgnite
decisions might expand to
include other types of
funding decisions around
protocol improvements
and/or maintenance.
zkIgnite2
Current and future
iterations of zkIgnite. Each
iteration will be organized
to grow the ecosystem by
deciding how to fund
zkApps and their tooling.
On later iterations the
scope of zkIgnite
decisions might expand to
include other types of
funding decisions around
protocol improvements
and/or maintenance.
zkIgnite3
Current and future
iterations of zkIgnite. Each
iteration will be organized
to grow the ecosystem by
deciding how to fund
zkApps and their tooling.
On later iterations the
scope of zkIgnite
decisions might expand to
include other types of
funding decisions around
protocol improvements
and/or maintenance.
zkIgniteN
Current and future
iterations of zkIgnite. Each
iteration will be organized
to grow the ecosystem by
deciding how to fund
zkApps and their tooling.
On later iterations the
scope of zkIgnite
decisions might expand to
include other types of
funding decisions around
protocol improvements
and/or maintenance.
*We note that this list is non-exhaustive and is provided for illustrative
purposes only. The Mina community will determine which MIPs to propose
and which to adopt.