Cartesi - Connecting Linux & Blockchain Technology for DApps

Frequently Asked Questions

General Questions

1

Can you give us a brief introduction of Cartesi? What is the vision of the project and what are the problems Cartesi is going to solve?

Cartesi is an off-chain decentralized computation platform. Cartesi is unique in the sense that it allows decentralized applications to be run on Linux in a way that's verifiable by the blockchain. Complex processing can be executed off-chain free from blockchains' computational limits and corresponding fees.

By offering a Linux runtime environment, Cartesi is the only software-based verifiable off-chain compute system that gives developers a vast array of software that evolved in the last 30 years and that enable the applications we use on the Internet today.

1.1

Could you please elaborate on the relevance of offering Linux and its supported software stacks?

No software application is built in isolation. Mainstream mobile/desktop/web Applications today depend on multiple software dependencies that took decades to mature on operating systems like Linux. Cartesi brings all this software infrastructure to blockchain applications. Whereas without Cartesi, blockchain applications cannot use mainstream software, libraries and services, unless they sacrifice decentralization in some way.

Then, there's the second problem. Besides being hampered by insufficient software infrastructure, decentralized applications also suffer tight on-chain processing limits. So, they can hardly offer a compelling alternative to mainstream centralized applications. They are often hard to build, being clunky and limited for developers and DApp users. Cartesi solves these three problems by 1) offering developers the software and tools supported by a full Linux OS; 2) moving off-chain all the heavy computation over large amounts of data, that blockchains cannot do; 3) offering services and a token economy that allows users to securely rely on the network and remain free from inconveniences of blockchain tech (e.g. slow confirmation times, requirement to remain online to resolve disputes, and others).

1.2

How do you see this new infrastructure brought about by Cartesi impacting the ecosystem?

It's hard to imagine a future for decentralized applications without the infrastructure that Cartesi brings to the ecosystem.

Cartesi exists to provide the infrastructure for decentralized applications that are easier for developers to build and with a user experience comparable to Internet applications. Also, think about all veteran/mainstream software developers that will have a much lower entry barrier to develop DApps!

2

Who are the founders and co-founders of the project?

Erick de Moura (CEO)
A technical leader with deep experience in system design and development. Erick's specialties include software architecture, process definition, and execution. As a consultant, developer and business owner before Cartesi itself, he has dedicated 20 years to the software industry and was pivotal in the success of several tech companies in different verticals such as Fintech, Healthtech, E-commerce, and Infrastructure.
LinkedIn: https://www.linkedin.com/in/erickdemoura

Augusto Teixeira, PhD (Chief Scientific Officer)
A mathematician with a Ph.D. from ETH-Zurich and a post-doc from Ecole Normale Supérieure of Paris. Augusto is an Associate Professor in the Institute for Pure and Applied Mathematics in Rio de Janeiro where he specializes in probability and graph theory. Expert in crypto-economics and is connecting the Cartesi architecture to Ethereum and Turing-complete blockchains. Throughout his career, he published 28 publications and academic papers.
Website: https://www.impa.br/~augusto/
LinkedIn: https://www.linkedin.com/in/augusto-teixeira-39a3a8169/

Diego Nehab, PhD (CTO)
A computer scientist with a Ph.D. from Princeton University and a post-doc from Microsoft Research. Diego is an Associate Professor in the Institute for Pure and Applied Mathematics in Rio de Janeiro where he is a member of the visual computation group. An expert in computer graphics, image processing, and massive parallelism (GPGPU), was granted 3 patents, published 36 articles and scientific papers, and received more than 1900 citations.
Website: https://www.impa.br/~diego/
LinkedIn: https://www.linkedin.com/in/diegonehab/

Colin Steil (COO)
Execution master with years of experience in community and business operations across the globe. Colin is a previous venture capitalist and start-up founder with a specialty in the Asian ecosystem. Colin first got involved in blockchain in early 2017 and began working with blockchain technology, crypto exchanges and ICO projects in the venture capital industry.
LinkedIn: https://www.linkedin.com/in/colinsteil/

3

What is Cartesi’s biggest innovation and has it been academically verified?

The biggest innovation that we bring with Cartesi is the ability to have typical real-world computations running off-chain on a Linux environment, in a way that's verifiable by the blockchain. DApp users can achieve consensus off-chain and if there's an attempt of fraudulent computation, Cartesi uses the blockchain as a supreme court, identifying and punishing dishonest parties.

Cartesi Core has been specified by Diego Nehab and Augusto Teixeira who are both PhD researchers and reviewed by Cartesi's advisor Luiz Henrique de Figueiredo. Cartesi is, in fact, an academic research project and has been published via our technical whitepaper which can be found here: https://cartesi.io/cartesi_whitepaper.pdf

4

Can you give me a simple explanation of how Cartesi works?

Blockchains don't support mainstream computations that we take for granted on our computers and devices. Typically these computations comprise billions or trillions of steps and involve large amounts of data. The processing and data exceed by orders of magnitude the computational throughput capacity of a blockchain. We have also seen a lot of on-chain scaling solutions emerging, but none of them have achieved any significant and convincing results so far.

With Cartesi, we can have typical real-world computations running off-chain on a Linux environment (as they often do!), in a way that's verifiable by the blockchain. DApp users can achieve consensus off-chain and if there's an attempt of fraudulent computation, Cartesi uses the blockchain as a supreme court, identifying and punishing dishonest parties. In the rare cases when these dispute resolutions arise, the blockchain runs an interactive dispute resolution and is left to run a single step of the original computation with a negligible amount of data (we use a Verification Game implementation, akin to Truebit). That happens at a negligible cost to the blockchain. Btw, compared with some well-known Layer-2 solutions, Cartesi doesn’t require parties to remain on-line all the time to participate. Therefore, Cartesi is a platform that users can enjoy the benefit of decentralization without sensing it.

Finally, the Cartesi Network and the Cartesi Token employ economic incentives and services that allow users to participate in DApps in a secure and convenient way.

More details to be released in the future.

Full article on how it works: https://medium.com/cartesi/on-linux-and-blockchains-a955a49a84e1

5

What is the target industry for your project?

Cartesi solves many infrastructure problems of the blockchain and will enable a new wave of DApps that were not possible before. It's more than a simple technology, but a versatile platform that will benefit blockchain applications, regardless of the industry. We know that recently the Chinese government has announced a series of blockchain strategies to explore more business possibilities with different industries. Cartesi is a friendly platform that fits in this trend.

5.1

Which use cases does Cartesi intend to mainly focus on? Finance, logistics & optimization, or gaming? How will Cartesi collaborate with other Public blockchains to create these use cases?

Cartesi is a platform to endless possibilities and is not limited to one specific area. At Cartesi, we do not create the DApps, but will be working alongside developers to assist in implementing our technology.

We currently have 1 fully functional testnet DApp built on Cartesi, Creepts. We are really excited about Creepts as it was not only the first DApp on Cartesi but also a first for blockchains in general.

Creepts is a tournament over a tower defense game. It showcases a fully decentralized game that was developed using conventional software components and resources of Linux (it runs using Typescript and uses the file system). It also requires billions of microprocessor instructions (thus impossible to run on-chain).

Creepts is currently available via its website in a read-only version for easy access, or the fully decentralized version on the Testnet by installing the Cartesi Node and setting it up through instructions. https://creepts.cartesi.io

We have recently announced the launch of the Descartes SDK Documentation portal: https://cartesi.io/docs. The Descartes SDK makes it possible for developers to build computationally intensive DApps with all software tools available for a full Linux operating system. DApps preserve full decentralization and the security guarantees of Ethereum. The portal provides tutorials and the information needed to begin coding with Cartesi.

In regards to public blockchains, Cartesi is initially built on Ethereum and our plan is to be blockchain agnostic in the future. We are looking to build strategic partnerships with several public blockchains where we will benefit each other to rapidly increase adoption and release the killer DApps the community is searching for.

6

Why do we need Cartesi?

No software application is built in isolation. Mainstream mobile/desktop/web Applications today depend on multiple software dependencies that took decades to mature on operating systems like Linux. Cartesi brings Linux to blockchain applications. Whereas without Cartesi, blockchain applications cannot use mainstream software, libraries and services, unless they sacrifice decentralization in some way.

Besides being hampered by insufficient software infrastructure, decentralized applications also suffer tight on-chain processing limits. So, they can hardly offer a compelling alternative to mainstream centralized applications. They are often hard to build, being clunky and limited for developers and DApp users. Cartesi solves these three problems by 1) offering developers the software and tools supported by a full Linux OS; 2) moving off-chain all the heavy computation over large amounts of data, that blockchains cannot do; 3) offering services and a token economy that allows users to securely rely on the network and remain free from inconveniences of blockchain tech (e.g. slow confirmation times, requirement to remain online to resolve disputes, and others).

It's hard to imagine a future for decentralized applications without the infrastructure that Cartesi brings to the ecosystem. Cartesi exists to provide the infrastructure for decentralized applications that are easier for developers to build and with a user experience comparable to Internet applications.

7

Is Cartesi a public chain? What’s the TPS of Cartesi?

Cartesi is not only about bridging the gap between a real OS and blockchain and providing virtually unlimited computational power.

The most important asset for Cartesi is a team of very strong researchers and engineers extremely excited to create and implement novelty in the blockchain space.

Cartesi has designed and redesigned itself several times, and a necessary space of experimentation has allowed us to understand better and better where we want to get, and our priorities.

Scalability is a multidimensional problem. With Cartesi Core and Descartes we empower computation. With upcoming roll-ups, we can essentially have smart-contracts being implemented and running on Linux. With the Side Chain, we can achieve much higher throughput, lower latencies, and cheaper temporary storage for DApps.

With these systems in place, we get something that could be analogous to general-purpose Linux servers, however, decentralized, efficient, and with the same security guarantees that the blockchain provides.

This is the fundamental roadmap of Cartesi for 2020 and 2021. That being said, there are other very important side projects being executed by the tech team. The PoS system of Cartesi Side Chain will allow people to stake and receive mining rewards. This should be ready before the conclusion of the Side Chain itself. Another important project is related to the creation of an infrastructure for greater convenience for DApp developers and users. We already provide preliminary information about it in the Documentation Portal.

8

What differences does Cartesi have with other Layer-1 solutions and layer 2 solutions? Why do you design this way?

Some examples of Layer-1 solutions existing are:

  • DPoS: Allows a small range of super nodes to verify all transactions, and these nodes are selected through democratic voting.
  • Sharding: Sharing groups accounts as different “shards”, these independent shards will then be linked to the main chain for cross-shard settlement.
  • Varieties of BFT, PBFT: Results in faster consensus compared to PoW, but with limited participants.

All of these innovations intent to boost transaction processing power of the blockchain, but inevitably, finalizations of these transactions will still require global consensus, and when the computational demands of smart contracts or the number of accounts interacting grow beyond a certain threshold, the cost to reach global consensus will grow in a super-linear way, even in sharding technology, making it severely restrictive or infeasible.

On the other hand, Cartesi only tries to reach local consensus for the computation itself. Only the users who are interested in a particular computation are responsible for performing the off-chain computation and for the on-chain settlement, thus solving these issues.

Nonetheless, these new layer-1 solutions can be integrated with Cartesi in order to combine the advantages of both.

Comparison with Layer-2 solutions and Integrations:
A variety of Layer-2 solutions have also been proposed in order to improve the performance of blockchains, such as Plasma and State Channels. These allow a large number of transactions to be performed off-chain and then the proof of the transaction is submitted on-chain for settlement. Generally, these solutions require the blockchain to be able to resolve any possible disputes when Plasma exits, or when the state channel closes. In the worst case, heavy computations will be replayed on-chain, from the moment of channel opening. Obviously, this mechanism limits the maximum transaction volume or computational complexity that can happen off-chain, since the mainchain is unable to settle them efficiently.

Integrating Cartesi can greatly improve these types of technologies, as it allows both a Plasma or a State Channel to exploit full computational power from the Cartesi Machine, and in case any divergence arises, the mainchain is able to settle any disputes through Cartesi’s verification game, no matter how complicated the contract was.

9

What is the difference between Cartesi and Truebit?

Cartesi is quite similar to TrueBit at first glance, but they differ vastly in their design decisions. The first major difference between TrueBit and Cartesi concerns the virtual machine itself; TrueBit’s virtual machine is based on WebAssembly (WASM). WASM is the W3C Community Group’s Instruction Set Architecture (ISA) for efficient web applications, while Cartesi’s virtual machine implements the RISC-V ISA.

TrueBit’s technology focuses on boosting the computational power for smart contracts, which operate under a bare-bones runtime environment. However, as we said earlier, the applications that we use on the Web or our devices don't exist in isolation. Instead, they stand on top of an operating system and depend on numerous software components that evolved throughout decades. Our architectural choice enables Cartesi computations to run on a proper operating system. In this environment, DApps are built with mainstream software stacks, which allows for vast new possibilities, besides being easier to code and with much lower entry barrier for professionals.

9.1

Are there any other important design distinctions with Truebit?

Yes. One of the differences of greatest consequence is in how Cartesi aligns the interest in off-chain computations with the responsibility for their execution. In TrueBit, there is no such alignment. A smart contract posts the computation to a pool of untrusted parties and waits for one of them to perform it off-chain and post the result back. In this sense, TrueBit can be seen as a means for increasing the computational power of individual smart contracts. Cheating is prevented with a complex incentive layer that rewards pool members for successively disputing incorrect results. To keep the members engaged, computations with incorrect results must be artificially injected by the incentive layer. This inefficiency is a fundamental part of the design of TrueBit.

Conversely, Cartesi can be seen as a way for off-chain computations to be endorsed by a smart contract. All parties that could be affected by this endorsement are responsible for performing the computation off-chain and, if needed, starting a dispute. Although the ensuing verification can be outsourced to a dispute resolution market, there is no built-in inefficiency and no need for an incentive layer.

10

What is the current status of the project and what is the roadmap of Cartesi?

Cartesi is not only about bridging the gap between a real OS and blockchain and providing virtually unlimited computational power.

The most important asset for Cartesi is a team of very strong researchers and engineers extremely excited to create and implement novelty in the blockchain space.

Cartesi has designed and redesigned itself several times, and a necessary space of experimentation has allowed us to understand better and better where we want to get, and our priorities.

Scalability is a multidimensional problem. With Cartesi Core and Descartes we empower computation. With upcoming roll-ups, we can essentially have smart-contracts being implemented and running on Linux. With the Side Chain, we can achieve much higher throughput, lower latencies, and cheaper temporary storage for DApps.

With these systems in place, we get something that could be analogous to general-purpose Linux servers, however, decentralized, efficient, and with the same security guarantees that the blockchain provides.

This is the fundamental roadmap of Cartesi for 2020 and 2021. That being said, there are other very important side projects being executed by the tech team. The PoS system of Cartesi Side Chain will allow people to stake and receive mining rewards. This should be ready before the conclusion of the Side Chain itself. Another important project is related to the creation of an infrastructure for greater convenience for DApp developers and users. We already provide preliminary information about it in the Documentation Portal.

11

What's your plan for growth? How do you attract users and developers?

Our initial plan for user growth relies on the Cartesi Network and its features. Cartesi will run a mine based on real-world computations. Instead of wasting electricity, Cartesi's mine will help to bootstrap the network of Workers running disputes created by Cartesi itself. We have a dedicated mining and staking pool of tokens reserved for this purpose. The mine fulfills three main objectives:

1 - The establishment of an active pool of Cartesi Workers, with more and more computer power being incentivized to participate;
2 - The fair and even distribution of tokens to these miners;
3 - The continuous validation of the dispute resolution protocol and progressive improvement of the security of the Cartesi Network.

11.1

How about onboarding developers to create DApps for Cartesi?

Throughout the past year, we’ve been exploring numerous ways and possibilities to onboard users, developers, and create an excellent developer ecosystem. Prior to the Binance IEO, we embarked on actions to initially build the Cartesi infrastructure and community-specific to cryptocurrency. During the past months, we’ve begun launching significant actions such as our ambassadorial program, exploring new clever tactics to raise awareness for Cartesi amongst developers, and most recently redesigning our website completely and launching the developer portal.

Our future actions to onboard users and developers rely heavily on delivering on what we set out to achieve, and through that, will open up many new opportunities to expose Cartesi to a heightened level. Accordingly, we’ve recently expanded our marketing team with a CMO candidate and are pursuing new initiatives.

The recent SDK documentation release opens up an entirely new field for the Cartesi team and it will make it significantly easier to communicate what Cartesi is (in technical terms) and aid developers in the direction of exploring, experimenting and ultimately building DApps with Cartesi’s technology.

We’ll be launching a variety of programs to coincide with this and encourage DApp development on Cartesi.

Token Questions

12

What is the utility of the Cartesi Token (CTSI)?

Cartesi aims to bring mainstream scalability and power to decentralized applications through a network of nodes. The CTSI token has been designed to incentivize Cartesi Node operators to engage with the system honestly and in an efficient way. It comprises the following use cases:

  • Cartesi Core: the Cartesi Core relies on an arbitration mechanism that uses CTSI as collateral to enforce honest behavior;
  • Cartesi Side Chain: users of the Cartesi Side Chain pay for temporary data storage for Cartesi dApps with CTSI. Block generators receive CTSI block rewards and the fees paid by users adding data to the Side Chain;
  • Consensus System: CTSI is used to participate in the Side Chain's Proof-of-Stake consensus system. Miners with the highest stakes have a higher probability of being selected to generate the next block;
  • Data Availability Protocol: CTSI will also power a data availability protocol to aid with the transfer of large data blobs used for machine snapshots.

For more information on the Cartesi Network and CTSI: https://medium.com/cartesi/cartesi-network-and-ctsi-b9a5e206fedf

13

Why do you think a native token is necessary for your project?

Because several of our algorithms are based on PoS and their security depends on the assumption that our tokens are evenly distributed among the users who run a Cartesi Node.

14

What is the total token supply?

1,000,000,000 CTSI initially. As Cartesi will rely on a PoS-like system for the services it will offer, new CTSI may be periodically minted, in order to foster the participation rate of Worker Nodes.

We have specified a unique system that allows Cartesi to maximize the participation rate while limiting inflation and allowing workers to express their economic preferences. The system also allows for future deflationary scenarios. Therefore, if a lot of people participate in our network to earn a profit, it will demonstrate an elastic inflationary/deflationary effect.

15

What are the notable funds that are supporting Cartesi? Are there any traditional funds involved as well?

There are several investors, advisors and funds supporting Cartesi, such as LD capital, SNZ Holding and CoinIX. Chinaccelerator (SOSV) as a traditional fund, Big Bang Angels, Artesian Capital through advisory. Serguei Popov (Founder of IOTA).

Technical Questions

16

Linux on blockchains? What does that mean? Ethereum and implementations of Plasma also run on Linux.

For sure you can run Ethereum and plasma nodes on Linux. What you cannot do is the opposite, to run Linux on Ethereum or on Plasma. With Cartesi, you can have DApp logic actually running on Linux, preserving decentralization and the security guarantees of the blockchain. You can get an in-depth explanation here: https://medium.com/cartesi/on-linux-and-blockchains-a955a49a84e1.

17

Could you clarify whether we should be worried about the huge attack vectors surrounding traditional a Linux development environment running on Cartesi Nodes?

We will ensure a high level of security in Cartesi due to the following:

  1. The nodes cannot talk to each other at the current stage, however, they can do this through the blockchain. Later on, we will implement a verified networking port in the Nodes which allows for secure timely data.
  2. The native DApp components run inside individual containers.
  3. The reproducible DApp components run inside an emulator within these containers.

18

What is "Reproducibility" in Cartesi, does it really work for reproducibility within a Linux OS and VM?

Cartesi implements a self-contained and deterministic VM that emulates a RISC-V architecture. That means that given a specification of the initial state of the VM (e.g. input data and program to run) and considering a given number of steps of processing, the VM state advances precisely in the same way, regardless of the system hosting the VM.

RISC-V is an open instruction set architecture that was designed from the ground up to support a modern operating system. It is not much more complex than a smart-contract VM. It's just better suited for the purpose of running real-world programs on top of an OS. The Linux kernel and several Linux distributions (and other OSes!) have already been ported to it. There are mature compilers. It is a much better match for the problem that Cartesi is trying to solve: bringing real-world computations to the blockchain.

A little primer about RISC-V: RISC-V (pronounced "risk-five") is an open-source hardware instruction set architecture (ISA) based on established reduced instruction set computer (RISC) principles. The project began in 2010 at the University of California, Berkeley, but many contributors are volunteers not affiliated with the university.

19

What is the "Verifiability" in Cartesi? Is it truly secure and trustworthy?

The verifiability component of Cartesi Core allows these complex computations to be adjudicated for correctness on the blockchain, at negligible cost, in a safe and decentralized way.

In practical terms, that means that any honest participant of a DApp running on Cartesi is able to prove to the blockchain they are correct even if all the other participants are malicious. And that's how users can count on the strong security guarantees of the blockchain when needed.

As mentioned above, Cartesi uses the blockchain as a supreme court, identifying and punishing dishonest parties. In the rare cases when these dispute resolutions arise, the blockchain runs an interactive dispute resolution and is left to run a single step of the original computation with a negligible amount of data.

And yes, it is secure and trustworthy. For a better understanding of the key principles that make Cartesi secure, we recommend reading our article "On Linux and Blockchains" or the tech paper. We are also glad to receive all security-related questions on our Discord channel.

20

The decentralization of POS has recently become a focus of discussion. How does cartesi achieve full decentralization of its system?

In Cartesi, we are committed to keeping the decentralization guarantees over other factors. For example, we do not plan to attain scalability by using "super-nodes" and instead, our nodes are expected to run on consumer hardware. The way we attain scalability is by locality (as we explained above, not everyone needs to know everything within the system).

21

What is the governance mechanism of Cartesi?

As the circulating supply of CTSI and the Cartesi Network comes into full effect, the network will move towards full decentralization where there is no governing body. The Cartesi Foundation will then only commit to further development of the Cartesi infrastructure.

22

What’s the advantage of Cartesi’s Layer-2 system compared with Nervos?

Nervos is a blockchain project, whereas Cartesi is a Layer-2 system. We are similar in the sense that both projects employ a RISC-V architecture for the VM. Cartesi allows for great scalability that is not possible on the consensus layer (like on Nervos). Also, because on Cartesi the computational throughput is not capped by the capacities of the consensus mechanism, it's possible to run much heavier computation and boot a whole operating system, like Linux.

For instance, it is not possible to create a DApp on Nervos alone that leverages Linux and the software stacks it supports.

23

Which Linux distributions are currently implemented or does Cartesi plan to support?

Inside the emulator, we have an embedded Linux based on buildroot and kernel 4.20.8. This will be improved, updated, and replaced as the need arises.

Have any questions?