Descartes SDK — layer 2 scalable solution for smart contracts and dApps

SAMUEL HECTOR
4 min readSep 25, 2020

--

Cartesi is a project that provides the scalability of the mainstream world to dApp developers and users. Descartes SDK is a layer 2 system solution for smart contracts and dApps.

Features of Descartes SDK include Blockchain-agnostic, scalable computation, preservation of privacy. The most unique feature that distinguishes Cartesi from other layer 2 solutions is the fact that dApp logic can be built on Linux and tools from the mainstream software.

Blockchain Agnostic — features for dApps and smart contracts

Scalable computation — dApps built with Descartes achieve large

computational scalability over large amounts of data without compromising the decentralization or security of the blockchain.

Privacy preservation — dApp data is not disclosed on-chain

OS runtime- DApp logic can be built on Linux

All these create a conducive world of productivity for developers.

A Little Introduction About Cartesi

Cartesi is a platform for the development of decentralized applications. Cartesi DApps enable parties that do not trust each other to enter into a binding contract in the blockchain that depends on the results of off-chain computations. Cartesi DApps are therefore a collaboration between a set of smart contracts running in the blockchain, and the off-chain software running on Node A and Node B.

As a general rule, the same DApp developer is responsible for the smart contracts and the Dapp specific off-chain software. Smart contracts cannot afford to store the states for a Cartesi Machine within the blockchain, let alone perform the implied computations. After all, the costs in terms of processing power and storage capacity would both be prohibitive.

To solve these problems, Cartesi uses cryptographic hashes to concisely represent machine states in the blockchain. From the blockchain’s perspective, a computation is simply a pair of hashes corresponding to the initial and final states of the machine. The contents of the memory subtended by such hashes are known only off-chain.

Off-chain implementations of Cartesi Machines serve two purposes. Their main role is the execution of the computation itself. The secondary role is supporting the settlement of disputes over the results of computations. To provide these services, off-chain implementations of Cartesi Machines must expose a programmable interface.

The Cartesi Node is the software and hardware infrastructure that hosts the off-chain components of Cartesi DApps. Each user that wishes to interact with a Cartesi DApp must have a Cartesi Node at his disposal.

How Descartes Works

The dapp smart contract defines the computation and specifies it as Linux Virtual Machine (LVM) that runs the off-chain computations to completion. Programming can be complex and involve large amounts of data. First off, you select a set of Descartes nodes to run the computation off-chain in order to achieve consensus locally on the result of the computation. These Descartes nodes are run by either the dApp users themselves or by the organizations they trust to represent them.

Descartes ensures that as long as our dapp includes one honest Descartes node, the correct result of the computation is delivered to the smart contract. This way, your smart contract is able to deliver complex, intensive Linux-based verifiable computations at little cost in a decentralized, secure way.

During run time, when the dapp requests for computation, all Descartes node involved in the dapp run the specified computation off-chain. A claimer node presents the results on-chain, the other node validates it. If the claimer maliciously submits an incorrect result, any honest node can initiate a dispute to enforce the correct result on the blockchain. Descartes does this automatically. Descartes provides your dApp computational scalability using Linux while it maintains on-chain security and decentralization.

2 principles make Descartes work:

a. Deterministic RISC-V VM architecture.
b. Optimistic local consensus protocol — participants are incentivized to engage with the protocol honestly.

At the core of the VM, Cartesi virtual machine emulates RISC-V ISA and runs a Linux protocol. Hence, a Cartesi machine is reproducible, self-contained, and fully deterministic. These features ensure that different nodes running the same specified computation will sustain the precise machine state at the end of the processing. This allows them to validate computation on-chain achieving local consensus.

Cartesi’s mission is to help DApp developers build ever more compelling products to their clients. Like any paradigm shift, the blockchain brings both opportunities for real innovation. Hence, Descartes SDK is part of the process to bring this scalable solution to bear.

The Topologies of Descartes DApps

Full Article: https://medium.com/cartesi/topologies-of-descartes-dapps-439370973c4a

Cartesi’s Ecosystem Links:

Website: https://cartesi.io

Twitter: https://twitter.com/cartesiproject

Telegram Community: https://t.me/cartesiproject

Discord: https://discordapp.com/invite/Pt2NrnS

GitHub: https://github.com/cartesi

--

--

SAMUEL HECTOR
SAMUEL HECTOR

Written by SAMUEL HECTOR

Web3 Fanatic | Growth Lead/Marketing | Community Manager | Content Marketer | Social Media Manager | Reddit Promotion | L2 Maximalist | #Ethereum

No responses yet