Darwinia Smart Contract Solution: Darwinia Virtual Machine

Image for post
Image for post

Darwinia Network integrates established projects and quality tools in the Ethereum ecosystem through the DVM ( Darwinia Virtual Machine) smart contract solution.

Darwinia DVM (Darwinia Virtual Machine) smart contract solution is an improved version of the Frontier project, the Parity EVM compatible layer frame. It is the smart contract execution module of the Darwinia network.

Darwinia Virtual Machine

To achieve a seamless Ethereum experience on Polkadot and Substrate, Darwinia delivered a smart contract solution based on Frontier; we name it Darwinia Virtual Machine(DVM). DVM is fully compatible with EVM (Ethereum Virtual Machine) in Darwinia Network, supporting Metamask.

Darwinia has launched a testnet Pangolin for dapp developers who want to test and play with DVM.

Users and developers can:

  • Use Metamask to connect with Pangolin.
  • Use Solidity to develop applications or games with the DVM.
  • Use the Ethereum contract development tool, e.g., Remix.
  • Migrate existing dapp applications or games to the DVM.

DVM features:

  • Recognizable EVM account to substrate account conversion
  • Transfer balance between EVM account and substrate account without loss of accuracy
  • Fully compatible with EVM

With the integration of DVM into the Darwinia Network, users can efficiently migrate smart contract applications currently deployed on Ethereum to the Darwinia network.

Although DVM is based on the Frontier framework, the Darwinia team has made many improvements to its design, including:

1. Support transfer between Evm Address and Darwinia Address without precision loss.

In Ethereum, the minimum precision unit is 18 bits, 1 ether = 10¹⁸ wei. The minimum precision of tokens is 9 bits in the Darwinia network, 1 ring = 10⁹ nano RING. Such precision difference will lead to a precision error when compatible with the Ethereum tools, resulting in a less accurate account balance. In DVM’s design solution, the development team made a new design for the storage of account balance, storing the balance error part separately, which will not cause accuracy loss when transferring.

2. Easier to understand withdrawal design (from the EVM address to Darwinia Address)

Compared to Frontier’s short address withdrawals, the Darwinia development team designed a pre-compiled native contract to transfer the balance from the EVM Address to Darwinia Address, which is more user-friendly. Users only need to fill in the withdrawal Darwinia Address to complete the entire operation.

3. Efficient and free testnet Pangolin

Pangolin, a free testnet with an integrated DVM solution, has launched. Developers who wish to implement, deploy and debug smart contracts on the Darwinia network as a playground to test it out.

More detailed supporting documentation is available at https://docs.darwinia.network/docs/en/wiki-tut-dvm-recharge.

4. A new address translation protocol with recognition features

To support the Ethereum toolset, the Darwinia team has designed a new address conversion protocol with recognition features. An EVM address can be converted into a recognizable Darwinia address to receive and send tokens. Compared with the original hash address conversion method, it is more flexible and scalable.

For more details about this protocol, please refer to https://github.com/darwinia-network/darwinia/wiki/Darwinia-Address-Format-Overview.

All you need to know about Darwinia

[Website] [Twitter] [Telegram] [GitHub] [Discord]

As an open cross-chain bridge protocol based on Substrate, Darwinia focuses on the construction of future Internet of Tokens. TG: http://t.me/DarwiniaNetwork

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store