Basic questions on where is stored data on Mina blockchain

Hi everyone I try to learn how to build dapp on Mina protocol but coming from EVM blockchains there is few things that I don’t really understand.

I do understand how zk-snark works and why they allow Mina protocol to have a very lightweight blockchain.
But (correct me if I’m wrong) zk-snark are not reversible so we can’t reverse the snark of a block in order to know what’s inside.
So with this said, where is stored the data on Mina? Like account balances, smart-contracts …
There is a Mina explorer but as the blockchain is only a zk-snarks how can we reverse this snark to get all the information about what happened in the blocks until today?
Is all this data stored off-chain in a kind of non-snarked blockchain by some nodes ?

Thanks for your answer that will really help me to understand this very attractive protocol.

1 Like

Thanks for the question @TanguyLauc, I know some of the more technical members of the community might be able to give you a more detailed answer, but basically Mina Protocol only stores the proof of the data, rather than the data itself.

So eg, if you are using data from an API, https or trusted source or something that has been verified off chain, then that would be where the data is held. I think that when they are ready, Zkoracles will come into this as well.

In addition to the regular nodes, there are also Mina archive nodes, from which the entire history can be found.

Hope that helps!


I imagine that every node stores the full state for the last k blocks. This means all account balances and zk apps data.