Ecosystem Update

Ecosystem Updates – June 2022

This month's ecosystem updates, which includes the latest progress made by ecosystem partners and community members on various projects such as a non-consensus node, zkBridge, and more.

Here are some updates of the various projects, tooling and resources being worked on by the Mina ecosystem over the last month. 

Updates

*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, whose work are independent from any of the initiatives that the Mina Foundation or its ecosystem partners are working on, unless otherwise stated. 

Chainsafe – Lerna Jabourian, Project Manager

Chainsafe is working on reimplementing the Mina protocol in Rust. As of late we are working on an MVP, which is a smaller scope of the original project. It consists of a non-consensus node which will be able to: 

  • Run a web browser
  • Check the state of the chain
  • Download blocks
  • Validate proofs similar to a full node

We have made significant progress on the web node extension. We’re now able to completely serialize/deserialize an entire block in-browser. At the moment, the state & the chain data are being fetched from the canonical graphQL API (via https://graphql.minaexplorer.com), which will retrieve the latest blocks from the network. Once downloaded, the blocks are sent to the rust module in WASM to deserialize the data in json serialization format. The blocks then get validated and chain selection is run to then proceed with what is considered the best chain. 

See demo below:

Step 1: Click on “Query” to fetch basic info on the latest blocks

Step 2: Click on “Poll latest blocks” to download blocks and run chain selection

Step 3: Receive info for the last 10 blocks

Effort is also being put towards refactoring our consensus tests to make them more maintainable. 

Up Next

We will be working on integrating the web node with the Auro wallet. Additionally, we’ll be delving into supporting retrieval of account information by implementing sparse merkle ledger as well as merkle proofs by way of the new graphQL endpoint.

We are looking into adding issues for outside contributors to work on via Github: https://github.com/ChainSafe/mina-rs/issues 

Feel free to follow our progress and chat with us via:

Channel on Mina Discord: #Chainsafe-rust-client channel
Medium:https://blog.chainsafe.io/
Website: https://chainsafe.io/
Twitter: https://twitter.com/ChainSafeth 

 

=nil; Foundation – Mikhail Komarov, Founder

Nil Foundation is working on In-EVM Mina Verification for the zkBridge. Last month was dedicated to several things: 

  1. Audit-related circuits adjustments – The ABDK team is doing an extraordinary job regarding getting into all the details and this obviously requires us to introduce a lot of adjustments, explanations, etc. 
  2. Proof generation performance – It is critical to have the auxiliary proof generated within reasonable timings, so we’ve dedicated time to that.
  3. Paving the road to the zkBridge’s future – Specifications and papers. We will release a separate blog post about all that 🙂

For those interested in checking out some recent PRs related to proof generation performance adjustments:

Now that we’re preparing a verification part for the audit, we wouldn’t mind if the Mina community takes a look and leaves a review of the implementation of the in-EVM verification part. We would love to adjust it to match the highest community expectations.

 

O(1) Labs – Emre Tekisalp, CEO

o1js (formerly SnarkyJS) Week

The O(1) Labs team has been working hard to prepare to host the first-ever o1js (formerly SnarkyJS) Week. Join to learn how to write zkApps (with Intro & Advanced dev workshops) & to meet other zkApps developers from the Mina community!

Improving Node Stability

The latest alpha release 1.3.2 is being tested on devnet and the last stable release 1.3.1 has been running smoothly on Mainnet for well over a month. We’ve been focused on shipping performance improvements and addressing outstanding issues. We hope to promote 1.3.2 to beta and then a stable release in the coming weeks.

Berkeley QA Network

The Berkeley QA Network is ongoing and the QA task force is diligently participating and helping to address issues that occur. If you would like to participate in the QA network, please chime in on the #devnet channel on Mina’s Discord. A few more redeployments to the QA network are planned in the coming weeks, so look out for more enhancements and fixes.

zkApps & o1js (formerly SnarkyJS)

Deployment of zkApps to Berkeley QANet is now fully possible using Mina zkApp CLI. Elegant support for “preconditions” in o1js (formerly SnarkyJS) has also been implemented. These allow a zkApp developer to set specific network or account-related conditions that must be true in order for their transaction to be accepted by the network; docs coming soon. o1js (formerly SnarkyJS) proving on NodeJS now supports multi-cores for faster performance. Mina zkApp CLI size has been reduced to only 706 KB–now even your tools are lighter weight.

Proof Systems

An update to Proof Systems was recently completed, which improves compile times of o1js (formerly SnarkyJS) circuits by ~5x and similarly improves proving times by around ~3x. Additionally, a first working version of a circuit-writing API was completed for Kimchi. Some optimizations are planned, but we hope to make this new API available for public consumption in the not too distant future. Additionally, the team is reviewing a third iteration of a proposed keccak circuit design which will be a significant step toward enabling compatibility of zkApps and Proof Systems compatibility with Ethereum and other EVM-based chains.

zkOracles

Engineering progress is at a standstill as we continue to recruit for a qualified Rust engineer to work on this project in a dedicated capacity.

 

Mina Alert Bot – Makalfo#7996

Community member and zkApp Builders Program participant Makalfo has built a Mina Alert Bot for blockchain events. This utilizes Telegram to dispatch alerts such as block production, transactions, and delegation transactions. Examples include: 

  • Mina Explorer produces a canonical or orphaned block: A Telegram message would be dispatched of the production of the block, chain status, and the associated coinbase reward
  • DexHeim sends 10 Mina to ZKValidator: A Telegram message would be dispatched of the transaction amount and the decoded memo, if applicable
  • Figment receives a delegation transaction: A Telegram message would be dispatched of the delegation 

Check out this Medium post for how to utilize the bot. If anybody is interested in the Github repo, feel free to reach out to me. I would also appreciate if community members use the service and let me know if there are any functions that are desired! I added some filtering of spam transactions (e.g. balance must be greater than 1 and no links in the memos) but it has met my original goal so I do not need to watch my addresses on the explorers.

 

b62.io – talha | b62.io#0779

Community member Talha was involved in creating b62.io, a resource for the Turkish Mina community.

B62.io is the world’s lightest blog! (The b62’s name comes from the first 3 digits of all Mina wallet addresses.) We create content to help the community, share articles on topics that the community is interested in, provide Turkish translations of news from Mina’s ecosystem, as well as helpful infographics. We are working to create a resource where the Mina Turkey community will find answers to their questions and where they can be informed of developments related to the Mina ecosystem. In addition, the Mina Whale Alert Twitter & Telegram bot which reports large Mina transactions and Mina Turkish trade chat are members of the b62 family. And we are working on introducing other new tools and content to the community on the site soon.

We are happy that the content we produce is read and shared by thousands of people. For example, zkApe, the only Turkish news bulletin that publishes about zero knowledge projects, shared b62 and its contents many times in its bullet and recommended it to its readers. See here, here and here. Articles published on b62 were also shared on Turkish crypto communities, such as those of Blockland DAO, Coin Fedaileri and of course the Mina Turkiye Telegram. 

What’s Next

  1. We are working on a Mina Turkish dictionary.
  2. We are creating some infographic templates for Mina ecosystem projects.
  3. We will create some new social media channels for b62 (like Telegram Mina news feed and b62 Telegram chat).
  4. We will start publishing a  b62 bulletin soon.

We encourage everyone to follow, like and share the b62.io Mina content!

 

Mina Blacklist – carbonara | WeStake.Club#5880

Community and Genesis Founding Member Carbonara has created a new tool called the Mina Blacklist. 

Mina Blacklist is an open/crowd-sourced list of Mina addresses being used for malicious purposes. The list is accessible from the Web UI or from the API. The idea is to have a transparent and up-to-date list, so developers can query addresses in their software and take preventive measures to help end users. For example, Clorio Wallet and MinaExplorer use the Mina Blacklist to verify if an address is in the list and then visually mark the addresses as a threat. The list is automated by the MinaScamWatcher, a bot that is constantly scanning the network for newer threats and when it finds one, it submits them to the repository.

The bot creates the PRs and then one of the maintainers of the repository verifies the legitimacy of the report (sometimes there are false positives, so it’s important to be manually checked) and merges the PR to the list. You can see the github repo 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.