常见区块链虚拟机

本文收集整理并罗列了常见区块链的虚拟机和合约开发语言,不断收集更新中。不足之处请大家留言反馈。

项目平台 虚拟机 合约语言 描述
BTC 简易脚本。(基于堆栈的。它特意设计成非图灵完整,没有LOOP语句。) 一种逆波兰表达式的基于堆栈的执行语言 与FORTH(一种编译语言)一样,脚本是简单的、
ETH EVM (基于栈的图灵完备虚拟机) solidity (一种融合了c/c++/go语言风格的智能合约高级语言)
EOS WASM (内置了WebAssembly的一个基于堆栈的虚拟机) c/c++ 。目前仅支持C和C++语言的合约代码。未来应该也会支持Go或其他语言。 使用WebAssembly指令集,通过允许以近原生速度来执行预编译合约可以提供性能优势。
IBM HyperLedger fabric Hyperledger Burrow (是一个包含了“built-to-specification”的以太坊虚拟机.Burrow发布于2014年12月,首次提供了一个模块化的、带经过许可的智能合约解释器的区块链客户端,它采用了部分以太坊虚拟机(EVM)的技术规范。Burrow是唯一获得Apache许可的Ethereum虚拟机实施。) java "Burrow是一种从以太坊衍生出来的代码库,灵感来自于Monax在2014年开发和开源的一种叫做eris-db的技术。该项目由英特尔和Monax提出,为商业公司和组织提供了一个智能合约平台。其主要由Monax贡献,并由Monax 和英特尔赞助。"
比原链 BVM Ivy bytom基于[Chain]公司的能用[Ivy]高级语言编程的CVM去做自己的扩展,灵活易用。
qtum 量子链 x86虚拟机 C/C++/Rust "能够支持更多种主流的开发语言。x86 虚拟机的基本原理是,你可以使用任何现有的编译器或编程语言,并进行一些简单修改,就可以在Qtum量子链的操作系统上运行。目前几乎所有的编译器都支持x86架构指令集,所以实际的字节码和架构支持已经非常完备。"
小蚁 antshares NeoVM(C#实现的一种基于操作码和堆栈的轻量级通用区块链虚拟机) Java/C/C++/GO/Python/Java"首批支持的语言是 C#、VB.Net、F#等 编译器会针对 MSIL(微软中间语言)来进行编译,所以理论上任何.Net 中的语言或者可被转译成 MSIL 的语言都可以直接被直接支持。Github源代码地址:https://github.com/AntShares/AntShares.VM 白皮书地址: www.antshares.org/files/4007D7.pdf
秘猿CKB CKB-VM RUST 采用RISC-V指令集 ,使用真实的 CPU 指令集来构造自己的虚拟机 CKB-VM。
博晨L0 js/lura Lura /javascript
Algoround 目前没有 - go实现的主链
Definity webassembly - 以太坊网络上的现有应用将在Dfinity上高度兼容。 https://github/dfinity
facebook Libra Move VM(rust实现的具有静态类型系统的堆栈虚拟机 ) move 一种类似rust的主打安全性的语言
filecoin go语言实现的使用带gas消耗的VM,类似以太坊的简单实现。 - 为最终用户提供了两个基本命令:Get和Put,允许在Get和Put之上设计更复杂的操作
恒星网络Stellar - C++ 通过windowsAPI启动进程执行cmd命令来处理交易。C++开发。代码https://github.com/stellar 网址https://www.stellar.org/
zcash 参考btc 参考btc Zcash是bitcoin的分支,保留了bitcoin原有的模式,基于比特币0.11.2版代码修改的。c++实现的主链。代码:https://github.com/zcash/zcash
波场TRON TVM,基于WebAssembly(WASM)进一步优化TVM虚拟机。 Java,后续支持其他语言 最终实现的虚拟机中间层,将依次兼容EVM和EOS的虚拟机.TVM 引进了带宽的概念,不同于以太坊EVM的gas消耗模式,TVM系统中的转账和智能合约的操作是免费的,不需要消耗任何代币,所以原则上在TVM中可执行的计算总量不受代币总量限制。
CyberMiles CVM (是基于以太坊的虚拟机改的) lity,从solidity 语言演化而来,Lity由动态可扩展语言、编译器和虚拟机runtime组成。提供以太坊原生接口(libENI),LibENI 是 Lity 的扩展,是用 C++语言。 CVM虚拟机在加法、乘法、冒泡排序、scrypt各种算法速度上都大大超过以太坊
fcoin FT公链 EVM solidity https://www.fractalproject.com/
本体 neovm和wasmvm,neovm是go语言实现的翻版以太坊虚拟机。wasm是用的wagon(a WebAssembly-based interpreter in Go) Ontology智能合约现包含2种类型的合约:Native合约和NeoVm合约。Native合约是在Ontology底层直接编写的合约,不需要像部署普通合约那样编写合约代码,具有很高的执行效率,是对普通合约的极大优化,通用的服务包括:Oracle,DID,权限管理,数据交易所都将采用Native合约实现。NeoVm合约是采用NeoVm虚拟机运行的合约,需要编写相应的合约代码,现支持的语言包含:Java,C#,Python,NeoVm本身具有轻量级、可扩展、高性能的特性,通过结合Interop Service层能很好的打通虚拟机与账本层间的交互。 官网源码: https://github.com/ontio
铂链(bottos) wasm c++,javascript,goland 源码:https://github.com/bottos-project/bottos

你可能感兴趣的:(常见区块链虚拟机)