Retro

Berkeley Testnet Alpha Update

Learn about Berkeley Testnet Alpha and the key learnings to inform future iterations

On September 26, 2022 Mina ecosystem partner O(1) Labs launched Berkeley Testnet Alpha and invited community members to help test zkApp features in a public, live environment in preparation for a future incentivized testnet. 

The launch of Berkeley Testnet Alpha has been a crucial step towards achieving easier zkApp programmability on Mina mainnet. 

The goals of Berkeley Testnet Alpha include: 

  • Understanding how the network is working and identifying improvements
  • Deploying as many zkApps as possible on the network 
  • Capturing user feedback on the experience, features, and issues

This update aims to inform the community on the progress achieved between the launch on Sept 26 through Nov 7, in addition to learnings and next steps to inform future iterations.

Testnet Activity

  • Number of unique zkApps deployed: 24
  • Number of successfully applied zkApp transactions: 3,023 (includes deploys)
  • Community submitted protocol bugs: 2
  • Feedback: we are constantly monitoring feedback on key Discord channels and have engaged the community to share feedback on the leaderboard, as well as tutorials to improve the experience for future iterations.

New zkApps Deployed on Berkeley Testnet Alpha

See some of the new zkApps that have been deployed during this timeframe below, which include ones during the ETH San Francisco hackathon from Nov 4-6, 2022.

  • AnonDao (First place at ETHSF) Propose and vote on Dao Proposals anonymously using zero knowledge.
  • Factum – A general platform enabling zero knowledge proofs with the demonstrated use case of validating asset valuation without sharing non-essential information.
  • Vmina – A Secure Video Marketplace that protects videos from third-party access using zero knowledge proofs. 
  • CompliSend – KYC erc20/721 transfer with messaging and zero knowledge reporting to an auditor.

Bug Fixes/Updates Made 

  • Community member garethdavies#4963 reported a bug on September 26, 2022. He discovered a zkApp transaction was broadcasted and accepted by the node but never got included in a block. See more details here.
  • On October 19th ecosystem partner O(1) Labs discovered a bug which would allow potential attackers to alter a zkApp account with invalid permissions. This could have allowed such an attacker to mint an infinite number of tokens in an account which issued custom tokens for example. In response, they added an ‘access’ permission to accounts which prohibits zkApp accounts from being accessed if the authorization is incorrect. This ensures that an ’empty update’ to e.g. a token zkApp can’t be used to pass unauthorized sub-calls. See more details here.
  • To eliminate a discrepancy in a naming function that impacts network compatibility for Mina’s signer, O(1) Labs released a network upgrade on November 15, 2022. See more details on Discord here. With this update, any zkApps that were previously launched on testnet were requested to be re-deployed. Community members were also asked to upgrade any current projects to use o1js (formerly SnarkyJS) version 0.7.0 and upgrade zkApp CLI to 0.5.0. 

Key Takeaways

  • The testnet is stable and continues to process both zkApp and non-zkApp transactions consistently. The next step is to encourage more testing and activity to continue gathering learnings.
  • A few key bugs have been found and fixes are planned – outlined above.
  • The first set of early adopters are helping to improve the experience by deploying apps, reporting bugs, and sharing feedback. These efforts are paving the way for future developers to start deploying zkApps with ease. 

Next Steps

Going forward, we’re looking for the community to help:

  • Deploy more zkApps! Sign up to join zkSpark, Cohort 0 to build zkApps and win rewards from a 250K MINA grant pool. Cohort 0 starts November 22, 2022 – get in now! See new zkApps built here for additional ideas. 
  • Interact with zkApps on testnet and ask questions/share feedback directly with Mina’s core devs on the #zkapps-developers channel on Discord. 
  • Report Mina Protocol issues and all other protocol-related bugs through Mina’s Github Repo. Please reference the standard bug template for instructions on reporting. 
  • Report bugs related to o1js (formerly SnarkyJS) here.

About Mina Protocol

Mina is the world’s lightest blockchain, powered by participants. Rather than apply brute computing force, Mina uses advanced cryptography and recursive zk-SNARKs to design an entire blockchain that is about 22kb, the size of a couple of tweets. It is the first layer-1 to enable efficient implementation and easy programmability of zero knowledge smart contracts (zkApps). With its unique privacy features and ability to connect to any website, Mina is building a private gateway between the real world and crypto—and the secure, democratic future we all deserve.

More from our Blog

SEE ALL POSTS
Learn / 2024-04-11 / Yonatan Medina
Introducing recursive zkRollups: A recursive improvement to zkRollups and zkApps for Mina
Recursive zkRollups are a scalable and adaptable zero knowledge proof (ZKP) accumulator tool that the Mina ecosystem can use to efficiently process transactions and optimize blockspace utilization for zkApps. Learn more about them in this blog.
Read more
Learn / 2024-04-04 / Vitor Silva
Mina’s Berkeley Upgrade – What to Expect
Read more
Retro / 2024-03-21 / Vitor Silva
Upgrade Mechanism Testing Retrospective
Read more
Learn / 2024-03-15 / [email protected]
Introducing ‘httpz’: the internet you can trust
Read more

About the Tech

AboutTechCta

Mina uses advanced cryptography and recursive zk-SNARKs to deliver true decentralization at scale.

Get Started

GetStartedCta

Getting started with ZK on Mina is simple.