Below are some updates on the various projects, tooling and resources the Mina ecosystem and community have worked on recently.
*Please note that each ecosystem update may contain forecasts, projections, targets or other forward-looking statements. Such forward-looking statements are based on the relevant ecosystem partner’s estimates and assumptions based on information available at the time such update is made. Accordingly, plans, goals and other statements may not be realized as described, and actual results may differ materially from those presented in such an update. In addition, the Mina Foundation is not responsible for updates made by community contributors or ecosystem partners, whose work is important to the development of the Mina ecosystem and is independent from any of the initiatives that the Mina Foundation is working on.
Mina Foundation — Claire Kart, Head of Marketing; Christine Yip, Head of Community
The Mina Foundation is helping serve and support the Mina ecosystem, specifically by allocating resources, supporting network health and security, and supporting participants on their path to the Mina ecosystem.
zkApp Developer Resources
Mina Protocol Co-Founder and Mina Foundation CEO Evan Shapiro is developing a series of tutorials to help onboard developers wanting to build on Mina with zkApps. Right now, there is a Hello World tutorial guiding someone through coding a basic zkApp from start to finish, as well as a second tutorial about building a smart contract with a piece of private state and hash functions. There are more tutorials to come, but we encourage anyone who has gone through these to share feedback on the #zkapps-developers channel on Mina’s Discord so we can continue to improve on these.
Quarterly Community-Nominated Grants
The Mina Foundation is happy to reward active contributors in the Mina community who have built zkApps, created tooling, furthered the community, and more. For Q2, 57 individuals are eligible for Community Grants, totalling over 75K MINA and $30K in USDC in rewards. Learn more about Q2 grants here, and remember that grant nominations are always open, so you can nominate yourself or someone else for a community grant at any time.
Members of the Mina ecosystem have recently wrapped up an exciting series of events in Colombia, including zkConnect meetups in Medellin and Bogota, ETHBogota and DevCon. We wanted to congratulate all the winners of the ETHBogota hackathon, and highlight the top 3 winners who received Mina prizes:
- Private MultiSig — a multi signature wallet with a private voting solution
- Medellín — a privacy-preserving and fair raffle tool (such as pre-mint) that allows for NFT whitelisting without revealing a user’s sensitive information
- SnarkyBaras — a Capybara-themed Battleship game using recursive proofs
It’s always invigorating to meet and collaborate with Mina community members in person. Mina will be at some upcoming events, and we hope to meet you!
- zkConnect San Francisco Meetup on November 2
- ETHSanFrancisco from November 4-6, where there will be $10K in Mina prizes for ZK builders at the hackathon
- zkConnect Bangalore Meetup on December 1
=nil; Foundation — Mikhail Komarov, Founder
For context, =nil; Foundation is working on bridging Mina to Ethereum and more.
The latest efforts were dedicated to several things:
- Putting the full-circuit in-EVM verification part together after the majority of the circuit audit was done.
- Preparing a toolchain so Mina community members willing to facilitate the bridge launch could participate in that.
- Fixing and enhancing circuits according to audit results.
This Github repo (not its sub-modules, but the actual repo) is relevant to preparations for Mina community participants to become capable of facilitating bridge auxiliary proof generation. The auxiliary proof generator service provided to the Mina community for public testing will come in two modifications: A single-threaded one (for in-browser execution) and a multi-threaded one for those more concerned about providing a proof faster. A single-threaded version can take significant time for a proof to be generated. A multi-threaded one is better, but not executable in-browser (yet).
And the in-EVM verification part after this commit contains full Mina state verification circuit definition printed and ready for accepting Mina’s proofs. The in-EVM verification part with a full circuit contains more than 30 separate parts — it fits into 5m gas, but its consumption varies depending on proof system security parameters. A more secure modification consumes more, a less secure one — less.
In terms of how the Mina community can support, we wouldn’t mind if those willing to facilitate the bridge with proof generation were to reach out to us and help us set up this critical thing by participating in competitive proof generation testing. Also, those who would like to help us with adjusting auxiliary proof generation software to a particular hardware are welcome! Those interested in helping with testing can reach out to us via our Telegram or Discord.
Website sharing more about the project, including timeline and Docs: https://verify.mina.nil.foundation/
O(1) Labs — Emre Tekisalp, CEO
SnarkyJS & zkApps
The O(1) Labs engineering team has identified a performance issue caused by Apple M-series CPUs and is currently implementing a solution to ensure fast performance. We are also experimenting with enabling devs to create a UI project to accompany their smart contract, when using the same `zk project <name>` command, to make it even easier to build a zkApp project. This will be released soon!
Berkeley Testnet Alpha
O(1)’s internal Berkeley QAnet ended and an official public ‘Berkeley Testnet Alpha’ was launched on September 26th. You can read the announcement here in the Mina Discord and find out how to get involved by checking out the Berkeley Testnet Alpha Participation Guide. So far, more than 20 unique zkApps have been deployed and a small number of bugs have been identified. Fixes for these bugs along with a number of other improvements are being planned for an upcoming hard fork of the testnet. Time frame for that upgrade is TBD.
zkApp Protocol Readiness
Now that the zkApps protocol is living and breathing on the Berkeley Testnet Alpha, we’re able to observe and test the protocol. O(1) is working on a number of small zkApps to use for logic testing of the protocol. These include a voting application and a single-pair DEX. O(1) is also planning to perform load testing of the protocol in the near future to benchmark current performance limits.
As part of the ongoing work needed to help improve the performance of zkApps, O(1)’s Core Crypto team continues to work on a number of custom gates which require integration into Mina’s proof system. Optimizations related to the foreign field addition gate, which had originally been implemented back in July, are now completed. Similarly significant progress has been made on an XOR gate and a foreign field multiplication gate. Once finalized and integrated into SnarkyJS, these gates will dramatically improve the performance of common in-circuit operations such as SHA-256 or Keccak hashing. These gates and operations should enable zkApps to do things like verify Ethereum signatures in the near future, a meaningful step to making Mina and zkApps more interoperable with other chains.
A first draft spec for a first working MPC-based version of zkOracles has been written and published for internal O(1) review by our new engineer leading that effort. This work has highlighted the complexity of the protocol and we are working to estimate the time required to complete the implementation. In the meantime, O(1)’s Product Engineering team is working on a very simple architecture and examples which will enable developers to consume off-chain data in their zkApps today!
zkFusion — trivo#0001
Community member Trivo#0001 is working on zkFusion, a modular zkRollup for Mina.
After finishing the first milestone of building a proof of concept and deploying that to testnet Berkeley, things have moved on to improving proof generation speed by developing a system that will allow sequencers to spin up a network of prover nodes (also worker nodes) that produce state transition proofs in parallel using cloud services like AWS or GC. This work lays the groundwork for speeding up transactions that will be required later on. Next steps have been designing a more efficient and general purpose circuit that allows support for zkApp transactions (design phase).
You can check out this PR, which implements a network of distributed proof production workers and overall improves the structure of the repository and does some clean up.
Github repo: https://github.com/Trivo25/mina-zk-rollup
On-Chain Signaling — Nicole McGee, Granola Systems
As mentioned in the previous Ecosystem Roadmap Q3 blog, Granola Systems is working on on-chain signaling, which allows Mina holders to signal their support on-chain for proposed changes on Mina such as hard forks.
Most recently, Phase 2 of the project has been completed, which involves adding features to calculate the votes on a stake-weight basis. For context, Phase 1 involved enabling a Block Producer to submit a ‘voting’ transaction in the memo and also allows those results to be calculated and published via an API.
For next steps, we are moving into the testing phase.
ZK Canvas — Qcomps (45930#8225)
I’m working on ZK Canvas, an interactive zkApp that can read and write to Mina. The main goal is to have an app which runs on people’s browsers that is hooked up to the Mina network. The primary milestone that I reached was deploying a simple version of the app. I am currently working on adding some new features to explore more of the permissions framework on Snarkyjs. If you’re interested, the 0.1 tag on my Github repo is the best place to review.
Interact with ZK Canvas here: https://canvas-zk-app.vercel.app/
Mina Validator 101 — Sam, Journal du Coin
The Journal du Coin team is working on breaking down Mina’s tech stack, by creating easy to read/watch resources to understand the tech better. Recently, we’ve published our Mina Validator 101 write-up. After reading this, you should have a better understanding of how validation works on Mina and how to participate as a validator on the Mina network.
We also had O(1) Labs Cryptography Engineer David Wong on to discuss and ‘demystify’ zkApps in French. The article and video both have received over thousands of views, and we hope to help people’s understanding of Mina through these resources.
Mina Explainer Videos — G-Kriptocu#1377
I have been making videos about Mina Protocol and zero knowledge in Turkish. With each video, I aim to teach people about Mina and explain the tech behind Mina in an accessible way. You can check out the playlist of Mina explainer videos here. Besides my Youtube channel, I plan to publish a new Mina website soon.