BTC
ETH
HTX
SOL
BNB
View Market
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

Comparison of smart contract platforms on Polkadot: Acala, Patract, Moonbeam and Plasm

PolkaWorld
特邀专栏作者
2021-01-29 03:07
This article is about 5276 words, reading the full article takes about 8 minutes
A new generation of smart contract platform.
AI Summary
Expand
A new generation of smart contract platform.

As the largest smart contract platform at present, Ethereum has been plagued by problems such as network congestion, high handling fees, and slow transaction speed. In the rising Polkadot ecosystem, there are also some projects developing new smart contract platforms. Can they solve the existing problems of Ethereum and bring the smart contract and DApp ecology to a new level?

andAcalaPatractMoonbeamandPlasm, they all plan to become parachains on Polkadot, and both have the function of deploying smart contracts.

mdnice editor

Opportunities and challenges of smart contract chains on Polkadot

Due to the characteristics of Polkadot itself, the smart contract platform built on Polkadot has some natural latecomer advantages, such as lower contract fees, faster speed, interaction with other chains, and support for cross-chain assets.

But every new smart contract platform will face a very difficult challenge, that is, ecological construction. The core issue is "how to attract more developers to use your platform", because only when more developers continuously develop good projects can you attract more users to use your platform, which in turn will attract more developers. More developers, forming a virtuous circle of increasing network value.

At present, the ecology of Ethereum has been developed for several years. The contract development environment is mature, the tools are complete, and there are many developers. There are already some high-quality DApps. These are the advantages of Ethereum and the smart contract platform on Polkadot. Up.

mdnice editor

Moonbeam: a contract platform compatible with Ethereum

Moonbeam is positioned as a Polkadot smart contract platform compatible with Ethereum. We want developers to be able to deploy existing Solidity smart contracts and DApps to Moonbeam with minimal changes. It mainly provides an entrance for those smart contracts that have been developed on Ethereum and want to develop multi-chains, so that they can be easily deployed in the Polkadot ecosystem, and various tools on Ethereum can also be used.

Maximum compatibility with Ethereum

The Moonbeam chain's compatibility with Ethereum is mainly achieved through the use of the Frontier layer. Frontier, developed by Parity with some involvement from Moonbeam, is an Ethereum compatibility layer on Substrate that allows Substrate-based chains to run unmodified Ethereum contracts. Frontier is still under development and mainly includes the following modules:

  • Web3 RPC module: Existing tools and applications interact with Ethereum through Web3 RPC. Moonbeam deploys Web3 RPC to allow existing tools and applications to connect to Moonbeam. For these tools and applications, just It's like just connecting to another Ethereum network. For example, only a simple configuration of MetaMask is required to point MetaMask to a Moonbeam-based node, and then users can use MetaMask normally as usual, but for MetaMask it is just a Web3 RPC with Moonbeam or API conversations.

  • Ethereum module: simulates how Ethereum works, including blocks, receipts, logs, being able to subscribe to log events, etc.

  • Complete EVM implementation: EVM is the contract virtual machine of Ethereum, and Moonbeam integrates the EVM module to be compatible with the EVM on Ethereum.

The address on Moonbeam uses the H160 account address, and the key used to sign the transaction uses EDCSA. Although this means that users can use their original Ethereum accounts and keys to interact with Moonbeam, it also means that the public and private keys used in Polkadot cannot be used on Moonbeam.

developer incentives

developer incentives

mdnice editor

Plasm: Layer 2 scalable + contract platform compatible with Ethereum

Support EVM + Wasm virtual machine

Plasm also introduces Frontier toCompatible with Ethereum. Different from Moonbeam, Plasm intends to support both EVM and Wasm virtual machines, so that Plasm can use EVM to run existing Solidity contracts on Ethereum, and can also run Wasm contracts written in ink! Plasm also introduces Solang, which supports compiling Solidity to Wasm and running it on the Wasm virtual machine.

Layer 2 scalability

Another feature of Plasm is that it supports smart contract functions on both Layer 1 and Layer 2 to further improve scalability. Plasm introduces a virtual machine OVM that supports all layer-2 protocols, and supports many layer-2 expansion solutions such as Plasma and Lightning Network, so that tokens can be transferred on Layer 2. Then, by introducing Rollups, an extension solution that supports Layer 2 smart contracts, smart contracts can also be used on Layer 2. At present, Plasm has successfully deployed ZK Rollups on the Plasm network.

Innovation point: DAppRewards mechanism

mdnice editor

Acala: a contract platform focused on DeFi

Bodhi: Retain the advantages of Substrate while being compatible with Ethereum

Acala is positioned as a DeFi Hub on Polkadot. Since many existing DeFi contracts are deployed on Ethereum, Acala also considers the compatibility of Ethereum.

Both Moonbeam and Plasm integrate the current Substrate EVM compatibility solution, which uses Frontier to emulate Ethereum's nodes. It is designed to implement the full suite of Ethereum RPCs and simulate the Ethereum block production process, allowing existing Ethereum tools such as Metamask and Remix to work seamlessly with Frontier-enabled nodes.

However, Acala believes that the method of simulating Ethereum nodes like Frontier and inheriting the advantages and disadvantages of Ethereum may not be what those smart contracts that choose the Polkadot ecology really want. Acala regards EVM as part of Acala/Substrate/Polkadot, and hopes to make the Acala network provide a very different experience from Ethereum.

Therefore, Acala will adopt a self-developed Ethereum compatible solution-Bodhi. This solution is not compatible with Ethereum RPC, but a JavaScrpt SDK that simulates a Web3 provider and can package Polkadot Extension into an extension similar to MetaMask. Such ready-made Ethereum Dapps can also use Polkadot Extension to interact with Acala EVM.

At the same time, Bodhi avoids some legacy problems of Ethereum, and retains the advantages of Substrate while being compatible with Ethereum. For example, let Acala have a customizable economic mechanism, allow users to use any supported token to pay transaction fees, native cross-chain functionality, on-chain governance mechanism (no more locked funds), fully upgradeable (no need for contract migration), etc. . And these innovations are impossible to achieve on Ethereum.

However, this also means that if the contracts on Ethereum want to be deployed on Acala, some adjustments to the code may be required to be compatible with Acala's economic model.

Focus on DeFi scenarios

mdnice editor

Patract: Contract platform focused on Wasm

Complete developer tools and development environment

As I said before, one of the problems to be faced in building a smart contract parachain on Polkadot is the lack of a useful development environment and tools. In this regard, the solutions of Moonbeam, Plasm, and Acala are: since Ethereum already has mature development tools, we will provide a method so that developers can easily use the ready-made tools of Ethereum.

And Patract believes thatWasm virtual machines are the future, so focus on the Wasm contract. Their solution is to build a complete set of open source development tool suites and development, testing, and release environments in the Polkadot ecosystem, so that developers can happily develop Wasm contracts. Wasm is a relatively new technology adopted by the Polkadot smart contract module. Wasm-based smart contracts have been proven to have better performance and scalability than EVM-based ones, and can also use more advanced AssemblyScript, Rust, C++, etc. Write more complex contract applications in high-level languages.

What Patract does, ininclude:include:

  • Jupiter: An independent smart contract test network that provides an environment for contract developers to test the contract chain.

  • Ask!: The AssemblyScript version of the Ink! contract framework, attracting TS/JS developers and giving contract developers who are unwilling to use rust another choice.

  • Redspot: Wasm contract development workflow and scaffolding: Comparing with Tuffle/Redhat in the Ethereum ecosystem, it is a project-based and automated tool for contract development. Redspot adopts a plug-in design, allowing developers to add their own designed plug-ins to enrich the functions of Redspot.

  • Europa: Runtime and contract running sandbox: benchmarking against EthereumJS/Ganache in the Ethereum ecosystem, providing contract developers with rich debugging information for rapid contract development.

  • Elara: real-time and scalable Polkadot API: benchmarking against Infura in Ethereum, providing contract project parties with node endpoints, without having to build nodes to obtain data. Elara uses Substrate-archive to export status data, which can be expanded in parallel to accept tens of millions of visits.

  • Megaclite: Low-level support for zero-knowledge proof: Provide zero-knowledge primitive support in the Jupiter/Patract chain, allowing project parties to design zkRollup or other zero-knowledge related contracts.

  • Metis: Ink! Contract standard library: Comparing with openzeppelin-contracts in Ethereum, it provides contract developers with reusable wheels without having to write contract code from scratch.

  • Himalia: Multilingual contract SDK: Comparing with SDKs such as Web3J and Web3Py in Ethereum, it provides different language environments for contract project parties, and rich interfaces to interact with contracts

  • Leda: Contract monitoring platform: Benchmark various contract monitoring facilities in the Ethereum ecosystem, allowing contract project parties to monitor contract storage, token transfers, contract calls, etc. at any time.

  • exist

existinclude:include:

  • Patra Store: As the entrance to the Patract parachain wallet and DApp ecology, some sample applications and supporting development kit usage demonstrations will be integrated during the testnet stage to help developers quickly develop Wasm contracts and front-end interfaces, and help users quickly enter Polkadot’s new contracts ecology.

  • Patra Scan: A blockchain browser optimized for smart contract chains, which integrates richer contract data information display than the unified chain browser, and enhances statistics and custom query functions.

(Patract Hub Tools at a Glance)

Use DOT and KSM as native tokens

Patract will also run a series of smart contract parachains called Patract Network.

What is more special is that Patract Network is not going to issue tokens, but strives to become the system parachain of Polkadot and Kusama, directly using DOT/KSM as the tokens of the Patract contract platform. System parachains refer to some chains that are useful to the Polkadot network and beneficial to the public interests of the network. They do not need to participate in parachain auctions, but can directly enter Polkadot as system-level parallel links.

Summarize

Summarize

In general, the smart contract chains of these four Polkadot ecosystems have their own advantages and disadvantages.

Moonbeam focuses on full compatibility with Ethereum, allowing developers to deploy existing Solidity smart contracts and DApps to Moonbeam with minimal changes.

While being compatible with Ethereum, Plasm improves scalability through Layer 2 solutions and supports smart contracts on Layer 2. At the same time, Plasm also attracts contract developers through the DApp reward program.

Acala, on the other hand, focuses on DeFi scenarios. While being compatible with Ethereum, it has made some optimizations and set a certain entry threshold, which is more suitable for deploying smart contracts in the financial field.

Patract provides a good development environment and complete tools for Wasm contract developers, and directly uses DOT/KSM as native tokens to make the developer experience smoother.

Can these "back wave" develop and grow, drive a new round of innovation, and push the smart contract and DApp ecology to a new height? Let us wait and see.

Polkadot
smart contract
Welcome to Join Odaily Official Community