May 2022 Development Recap for The Blockchain OS.

See the latest updates on the Cartesi Machine, Cartesi Rollups, and Noether.

Cartesi Foundation
Cartesi
7 min readMay 20, 2022

--

Looking for the latest developments on the components of The Blockchain OS? You’re in the right place! As outlined in our roadmap article, we’re moving towards more regular and frequent updates to keep our community in the loop on the progress we’re making to get The Blockchain OS to the production level — to where a beautiful and diverse DApp ecosystem can flourish and grow.

Not too familiar with the components of The Blockchain OS? Make sure you take a read through these introductory articles to get you up to speed before you dive in:

For a quick overview, check out the roadmap diagram below to see overall progress for the Cartesi Machine, Cartesi Rollups, and Noether. Stay tuned for next month’s report where we’ll have a refreshed diagram to show detailed progress per milestone!

The Cartesi Machine

The Cartesi Machine is Cartesi’s deterministic virtual machine that emulates a RISC-V architecture and can run a full-fledged Linux OS. It is a groundbreaking technology that offers a runtime for decentralized applications built with mainstream software.

The Microarchitecture

  • The microarchitecture has reached a milestone in which we can compile parts of the main emulator code to run within it and still access the state of the main emulator. We are now planning the set of changes needed to merge this into our development branch.

Self-Hosted Distributions

  • Our product team started testing the Gentoo self-hosted distribution.
  • We have started exploring a build with Alpine Linux but stumbled on some cross-compilation problems for the RISC-V architecture. We are investigating ways to overcome this.

Benchmarks

  • We have benchmarks comparing our emulator with two other emulators. Tinyemu is a non-jitting RISC-V emulator that does implement floating-point instructions using soft-float. It performs better than our emulator but we are confident we can close the gap when the microarchitecture is in place. QEMU is a jitting emulator that uses hard-float. It is significantly faster than our emulator and closing that gap would require a lot of research, increased complexity, and effort.
  • We also have benchmarks comparing our emulator against a few EVM implementations. Our emulator is many times faster and can operate on vastly greater amounts of data. In real workloads, all EVM Dapps would be competing for the same resources. In contrast, each Cartesi Dapp works independently. Therefore, the advantage would be several orders of magnitude greater.

Improved APIs

  • The improved HTTP DApp API was published with the latest version of SDK and rollups-examples. We are now improving the interfaces between components, like the changes we are doing to the exception handling on the server-manager interface.

New Features’ Documentation

  • Documentation of new features is progressing slowly but will pick up pace in the next sprints.

Cartesi Rollups

Cartesi Rollups is Cartesi’s optimistic rollup layer-2 system relying on the Cartesi Machine to allow developers to create scalable decentralized applications with mainstream software components. It consists of on-chain and off-chain components that allow the blockchain to provide data availability, order input data, bridge tokens between layer-1 and layer-2, and serve as a referee in case of disputes.

Road to Mainnet

  • Last month we released Cartesi Rollups 0.2.0 and with it, we took an important step toward Cartesi’s Testnet Infrastructure (Milestone II on our road to Mainnet) and also made available the economic components of our solution.
  • We are working on automated integration tests for Cartesi Rollups Examples in order to keep our development teams working fast while keeping the code quality high.
  • We believe that examples and working code are effective ways to learn new technology. With that in mind, we have been working on 2 new examples to share with you soon.

Are you a Rust developer? Yeah! Your example is coming.

We will also provide an example of how the Portal works. Remember, the Portal component is responsible for bringing assets from L1 to L2, and vice versa.

OpenCV is an open-source library for image processing and performing computer vision tasks. It can also be used to perform tasks like face detection, object tracking, landmark detection, and much more.

Running OpenCV inside the Cartesi Machine will enable DApp developers to explore, in a decentralized manner, complex subjects such as fingerprint spoof detection in biometrics where features are extracted from fingerprint images using OpenCV and then provided to machine learning models for pattern recognition.

Hello data scientists and computer vision developers, welcome to The Blockchain OS!

DApp Validator Nodes

  • We are currently testing and polishing our procedure to deploy Cartesi Rollups DApps on our Cartesi Testnet Infrastructure (Polygon Mumbai + AWS).

Rollups Enhancements

  • We are well advanced with the HTTP API redesign. The following step will be to refactor some components to follow this new design. The redesign will make it clearer how frontend clients can retrieve notices, vouchers, and reports generated by the Cartesi Machine running the DApp’s backend code.

Support for Computational Oracles

  • We continued discussing technically and strategically how to move our Computational Oracle forward together with Cartesi Rollups.

Arbitration for Rollups

  • We finished the implementation for the splice component and it is currently being tested.
  • To increase robustness and test coverage, we added symbolic execution tests for PartitionLib and Partition Enum. We also updated, fixed, and refactored the tests for the two-party arbitration system.
  • As soon as we finish the tests we will integrate all individual components.

Automatic Voucher Execution Incentivized by CTSI

  • We continued discussing how the payment for vouchers should be, where it will come from, and how it will be informed to the executors.
  • ⚠ It is important to mention that this feature depends on the scheduler component.

Transaction Sequencer Incentivized by CTSI

  • We are still developing the on-chain part and researching/implementing “prototypes” for BLS signature aggregation.
  • ⚠ It is important to mention that this feature depends on the scheduler component.

Noether

Noether is Cartesi’s side chain for data availability. It is the part of Cartesi’s solution that will enable blockchain applications to use much more data than would be possible with Ethereum or other base layers.

Noether Version 2.0: Upgrade from PoS to PoS 2.0

  • Another round of gas optimization for the smart contracts was completed!

The Scheduler

  • We are close to a proof of concept for our Scheduler. We already deployed the on-chain part on Goerli/Mumbai testnets to achieve two-way message transmission.

Explorer

  • We continued evaluating and testing alternative backend solutions for the Cartesi Explorer.
  • We increased our test coverage by implementing unit testing for the UI code using the Testing Library.
  • As part of the effort to improve the user experience:

We collected data about the wallets being used. Currently, Metamask is the number 1 wallet for our users. Metamask is a very popular wallet, it was the first one supported by us and is also one of the easiest to use. The complete result can be checked in the chart below.

Wallet usage in the Cartesi Explorer

We are prototyping a new UI for some important features. Below you can see the future UI for the Staking feature.

New UI for the Staking feature

Contribute to The Blockchain OS

Interested in developing with us? We’re always looking for collaborative team players! Feel free to contact us on Discord, check our current career openings, or send your resume along with an introduction to our HR e-mail: hr@cartesi.io

About Cartesi

The Blockchain OS is a decentralized layer-2 infrastructure that supports Linux and mainstream software components. For the first time, developers can code scalable smart contracts with rich software tools, libraries, and the services they’re used to, bridging the gap between mainstream software and blockchain.

Cartesi is enabling millions of new startups and their developers to use The Blockchain OS and bring Linux applications on board. With a groundbreaking virtual machine, optimistic rollups, and side-chains, Cartesi paves the way for developers of all kinds, to build the next generation of blockchain apps.

Welcome to The Blockchain OS, home to what’s next.

Follow Cartesi across official channels:

Telegram Announcements | Telegram | Discord (Development Community)| Reddit | Twitter | Facebook | Instagram | Youtube | Github | Cartesi Improvement Proposal (CIP) | Website

--

--