Mina aspires to be the smallest blockchain in the world, claiming that its protocol maintains a constant size of around 22 kilobytes. This is ostensibly achieved using recursive zk-SNARKs – the same technology used by privacy-centric cryptocurrency Zcash (ZEC). However, while the latter uses this technology to provide greater privacy to its users, the former uses it for scalability.
A zk-SNARK, which stands for zero knowledge, a succinct, non-interactive argument of knowledge, allows a party to prove that it has certain information without revealing what that information is. It’s similar to how a smartphone can recognize its owner without storing the person’s actual identity data.
There has been a lot of talk about using zk-SNARK to evolve various protocols, including Bitcoin, although there are currently few practical applications of the technology. Evan Shapiro, CEO of O (1) Labs, the company behind the Mina blockchain, said that while it was a great idea, his team had to solve many technological challenges to bring this concept to life:
âIt’s a very clean and beautiful idea at a high level. But then when you jump into implementing it, there is a lot of complexity that you need to be aware of and deal with in order for this to actually happen.
Regarding the project nodes, their size will depend on the needs of the network. A “normal” node will only require a few kilobytes, while a node participating in consensus may require around a gigabyte:
âIf you’re a normal node that just needs untrusted, unauthorized access to a few accounts, it’s on the order of kilobytes because you just need the proof and the actual counts. If you like consensus building, then you need all the accounts. So there are let’s say a million accounts. Each is one hundred bytes, probably a little more, like kilobytes, so you need a gigabyte to store it.
Originally, the project was envisioned with a proof of work consensus, but the team decided to adopt Cardano’s Ouroboros consensus earlier this year. Despite this, substantial work has gone into adapting this system to the zero-knowledge cryptography used by Mina. Unlike Zcash, which is just a cryptocurrency, Mina has a smart contract layer and its own version of decentralized apps, or DApps, called Snapps.
Shapiro said that Mina’s other distinction is that he will be able to consume external data securely, without the need for oracles. This combination of external data and zero-knowledge cryptography could open up a number of use cases. For example, Mina could allow users to provide decentralized financial applications with their credit history settings without having to reveal what that information actually is. This, in turn, could lead to lower inherent risks and lower interest rates for borrowers. Users could potentially take advantage of Know Your Customer information verified by an exchange to bypass the verification requirements of another crypto service provider.
Mina recently changed her name to “Coda” due to legal action by the R3 consortium, which felt the name was too close to her own “Corda”. Mina’s mainnet is now expected to launch in the coming months.