达尔文智能合约解决方案:达尔文虚拟机(DVM)
2020 年,达尔文网络通过 DVM (Darwinia Virtual Machine 达尔文虚拟机)智能合约方案选择性地接入以太坊生态系统中的成熟项目和优质工具。以太坊作为当前最成功的智能合约平台,经过数年的发展,已经存在众多成熟的智能合约项目和基础设施工具。
达尔文网络最初创立的愿景即是连接不同的网络,打破不同网络间的信息孤岛,让有价值的信息和工具最大程度地在网络*享,兼容其他网络的优秀基础设施也是其中之一。达尔文网络 DVM(Darwinia Virtual Machine)智能合约集成方案是基于 Parity EVM 兼容层框架 Frontier 做改进后的产物,是达尔文网络的智能合约执行方案。
在 DVM 集成到达尔文网络后,使用者不需要花费很大的精力,就可以将目前部署在以太坊上的智能合约项目迁移到达尔文网络中。同时,还可以利用以太坊现有的基础设施内容如 Remix,MetaMask 等。DVM 虽然基于 Frontier 框架实现,但是达尔文团队结合自身特点,做了很多如下改善性设计:
1.支持无精度损失的进行 Evm Address 和 Darwinia Address 之间转账。
在以太坊中,最小的精度单位是 18 位,1 ether = 10¹⁸ wei,在达尔文网络中,代币的最小精度是 9 位,1 ring = 10⁹ nano ring,这样的精度差别在兼容以太坊工具时,会出现精度误差,导致账户余额不够精确。在 DVM 的设计方案中,开发团队对账户余额的存储进行全新的设计,将余额误差部分单独存储,在转账时不会造成精度损失。
2. 更易理解的提现设计(从 Evm address 到 Darwinia Address)
相较于 Frontier 的短地址提现来说,达尔文开发团队设计了一种预编译 Native 合约来实现从 Evm Address 到 Darwinia Address 余额转账,对用户更加友好,使用者只需要填入提现目标 Darwinia Address 即可完成全部操作。
3. 方便好用的 Pangolin 免费测试网络
达尔文网络很早就开放了集成 DVM 方案的免费测试网络 Pangolin,希望在达尔文网络中实现自己的智能合约的开发者能够便捷的进行部署与调试。并提供了较为详尽的辅助文档,请查看:
https://docs.darwinia.network/docs/zh-CN/wiki-tut-...
4. 新型具有识别特征的地址转换协议
为支持以太坊工具集,达尔文团队设计出一种新型具有识别特征的地址转换协议,通过该协议,给定 Evm address,可以转换为一个可识别的 Darwinia address,可用于接收和发送代币。相比于原有的哈希地址转换方式,灵活性,可扩展性更高。更多关于该协议的详情,请参考:
https://github.com/darwinia-network/darwinia/wiki/...