区块链Zilliqa、RChain、Neblio、Go Ethereum Meitu介绍
以下为你介绍的区块链都可用在Linux系统上:Zilliqa(高吞吐量公共区块链平台)、RChain(可并发、组合、无限伸缩的区块链)、Neblio(开源商业区块链解决方案)、Go Ethereum Meitu(以太坊的 DPoS 算法实现)。
1、Zilliqa(高吞吐量公共区块链平台)
Zilliqa 是一个新的区块链平台,每秒可处理数千个交易,并且内置分片。通过分片,Zilliqa 可以匹配传统支付方式(如VISA和MasterCard)设置的吞吐量基准。更重要的是,Zilliqa 的交易吞吐量随其网络规模(大致)线性增加。
特性:
工作量证明机制 1 (PoW1) 和 2 (PoW2)、网络分片、目录服务、DS 块,Sharding 结构,Shard 微块 和 Final 块的一致性、EC-Schnorr 签名、数据层和帐户存储、查找节点以允许新节点加入、持久存储交易、Merkle Patricia tree、交易验证、Zilliqa 钱包。
依赖:
build-essential、Boost、CMake、clang-format、git、JsonCpp、json-rpc-cpp、LevelDB、OpenSSL、pkg-config。
建立依赖关系:
Ubuntu 16.04:
sudo apt-get update
sudo apt-get install git libboost-system-dev libboost-filesystem-dev libboost-test-dev \
libssl-dev libleveldb-dev libjsoncpp-dev libsnappy-dev cmake libmicrohttpd-dev \
libjsonrpccpp-dev build-essential pkg-config libevent-dev libminiupnpc-dev \
libcurl4-openssl-dev libboost-program-options-dev gawk
从源代码构建Zilliqa:
# download the lastest stable Zilliqa source code
$ git clone git@github.com:Zilliqa/Zilliqa.git
$ cd Zilliqa && git checkout tag/v4.8.0
# build Zilliqa binary
$ ./build.sh
如果要构建开发分支,请执行以下操作:
$ git checkout master
下载地址:https://github.com/Zilliqa/Zilliqa
2、RChain(可并发、组合、无限伸缩的区块链)
RChain 项目正在建立一个去中心化的、经济的、抵制审查的公共计算基础设施和区块链。它将主持并执行通常被称为“智能合约”的计划。这将是可信的、可扩展的、并行的,具有POS共识和内容交付。
通过使用智能合约,可以在此平台上面构建大量可完全扩展的分布式应用程序(dApp)。DApps可能涉及诸如身份、代币、时间戳、金融服务、货币化内容交付、去中心化自治组织(DAO)、交易、声誉、私人社交网络、市场等领域。
RChain网络实现了直接的节点到节点的通信,每个节点在其上运行RChain平台和一组dApp。
RChain的核心是Rho虚拟机(RhoVM)执行环境,它运行多个RhoVM,每个执行一个智能合约。这些是同时执行并且是多线程的。
这种并发性是围绕着移植性过程演算的形式化模型而设计的,伴随着组合命名空间的应用,每个节点允许实现多个区块链。这种独立执行的虚拟机实例的多链与“全局计算”设计形成鲜明对比,“全局计算”设计限制了事务只能在单个虚拟机上顺序执行。另外,每个节点都可以配置为只订阅和处理它感兴趣的命名空间(区块链)。
像其他区块链一样,为区块链状态实现跨节点的共识至关重要。RChain的复制和共识协议被称为Casper,是一个POS协议。类似于以太坊,合约在一种状态下开始,许多节点收到一个签名的事务,然后他们的RhoVM实例执行该合约到下一个状态。一系列节点操作人或“有抵押验证人”将一致性算法应用于加密经济学,验证RhoVM实例的状态配置和状态转换的整个历史记录,是否在分布式数据存储中准确复制。
区块链合约(也称为智能合约、流程或程序),包括安装时包含的系统合约,均使用RChain通用语言“ Rholang ”(反映式高阶语言)编写。Rholang从rho-calculus计算用形式化语言派生而来,支持内部程序并发。它形式化地表达了并行执行中许多过程的沟通和协调。Rholang自然地适应了代码移植性、reactive/monadic API、并行性、异步性和行为类型的行业趋势。
由于节点是内部并发的,每个节点都不需要运行所有的命名空间(区块链),系统将是可扩展的。
由于合约语言和虚拟机是从可证明数学的形式化规范构建而来的,由于编译流水线和工程方法在构造上是正确的,我们期望这个平台将被视为值得信赖的。
安装:
Docker:
$ docker pull rchain/rnode
Debian/Ubuntu:
从发布页面下载.deb软件包。
$ sudo apt install ./rnode_<VERSION>.deb,其中<VERSION>类似于0.8.3。
RedHat/Fedora:
从发布页面下载.rpm软件包。
$ sudo rpm -U ./rnode_<VERSION>.noarch.rpm,其中<VERSION>类似于0.8.3。
下载地址:https://github.com/rchain/rchain
3、Neblio(开源商业区块链解决方案)
Neblio 区块链是做什么的?
Neblio 是给企业或者机构提供区块链解决方案的技术平台。Neblio 跟其他的区块链网络本质上是一样的,都有去中心化的 p2p 网络;有很多节点,用交易形式交换信息;在不可篡改的分布式账本上存储数据,所有节点都有全部账本记录,一个记录的信息会广播到整个网络,一旦区块存储进入区块链,所有交易信息不可逆,不可改变。账本信息需要升级,则通过新的交易进入新的区块链,也有 pos 的共识算法。
同时,Neblio 它跟普通的区块链平台不同,它专注于给企业或机构提供区块链的技术服务,它认为与传统的数据库相比,使用 Neblio 的区块链网络可以实现交易和数据的不可篡改,实现透明、安全、可靠和去中心化等好处。
Neblio 区块链平台应用的用户场景:
Neblio 主要帮助企业和机构建立和部署分布式应用。分布式应用主要在 Neblio 区块链上获取和存储信息的应用。这些应用有典型的前端和后端的客户端,可以存储、处理、展示应用的数据。
下载地址:https://nebl.io/
4、Go Ethereum Meitu(以太坊的 DPoS 算法实现)
Go Ethereum 项目是美图技术团队在以太坊上实现的 DPoS 算法,是以太坊协议的 Go 语言实现,目前尚处于实验阶段。
基于 Ethereum(1.7.3版本) 实现 DPoS 共识算法:
以太坊当前代码里面已经包含了几种共识算法的实现:
PoW 在主网使用。
FakePow 在单元测试使用。
PoA(Proof of Authority) 在测试网络中使用。
为了在代码中实现多种共识算法,以太坊抽象了一套共识算法接口,实现不同的共识算法只要实现几个接口即可。另外由于 DPoS 为了避免每次选举都从创世块开始回放历史数据,增加了几个全局状态树用来记录选举和投票的状态, 并把树对应的 root 存储到块头,其中包括:
EpochTrie 记录每个周期的验证人列表。
VoteTrie 记录投票人对应验证人。
CandidateTrie 记录候选人列表。
DelegateTrie 记录验证人以及对应投票人的列表。
MintCntTrie 记录验证人在周期内的出块数目。
下载地址:https://github.com/meitu/go-ethereum
注明
以上就是区块链Zilliqa、RChain、Neblio、Go Ethereum Meitu的介绍内容,这些区块链都能使用在Linux操作系统中。