前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Tendermint 与其他技术的比较

Tendermint 与其他技术的比较

作者头像
用户1558438
发布2018-08-23 17:37:50
6310
发布2018-08-23 17:37:50
举报
文章被收录于专栏:liuchengxu

Tendermint 大体上与两类软件很类似。第一类包含了分布式的键值存储,比如 Zookeeperetcdconsul,它们都使用了非拜占庭容错共识。第二类就是 “区块链技术”,它既包括了像比特币和以太坊这样的加密货币,也包括了像 Hyperledger Burrow 这样的分布式账本设计。

Zookeeper, etcd, consul

Zookeeper,etcd 和 consul 都是在一个经典的非拜占庭容错共识算法上实现了一个键值存储。Zookeeper 使用了一个叫做 Zookeeper Atomic Broadcast 的 Paxos 版本,而 etcd 和 consul 使用了更年轻,也更简单的 Raft 共识算法。一个典型的集群由 3-5 台机器构成,虽然可以经受住 1/2 的机器发生问题,但是只要发生一次拜占庭故障就可以摧毁整个系统。它们每一个都提供了一个稍微有别于键值存储的实现,但是都将关注点放在提供分布式系统的基础服务,比如动态配置,服务发现,锁,选取领导人等等。

Tendermint 是一个本质上类似的软件,但是有两点关键不同:它是拜占庭容错的,这意味着它可以经受 1/3 机器发生任意形式的故障 -- 包括黑客和恶意攻击。

它并不像键值存储一样针对某一指定类型的应用。相反,它关注与任意的状态机复制,因此开发者可以量身打造适合自己的应用逻辑,从键值存储到加密货币到电子投票平台,甚至更多的应用都可适用。

以上内容取自于 consul.ioHashicorp sites.

Bitcoin, Ethereum, etc.

在比特币和以太坊这样的传统加密货币下出现了 Tendermint,它的目的在于提供一个比比特币的工作量证明更加有效和安全的共识算法。在早期,Tendermint 内置了简单的货币来参与共识,用户必须向一个安全账户中“绑定”一定数量的货币,如果他们表现不端,这些钱就会被收回 -- 这一点使得 Tendermint 成为一个 POS 算法。

自那时起,Tendermint 已经进化为一个能够承载任意应用状态的通用区块链共识引擎。这意味着它可以成为其他区块链软件共识引擎的一个即插即用的替代品。所以基于当前的以太坊代码库,无论是以 Rust,Go,Haskell,任何人都可以使用 Tendermint 共识运行一个 ABCI 应用。实际上,我们已经完成了这一点(https://github.com/tendermint/ethermint)。此外,我们也计划为 Bitcoin,ZCash,和其他确定性的应用完成同样的工作。另一个基于 Tendermint 构建的加密货币应用是 Cosmos

Fabric, Burrow

Fabric 采用了与 Tendermint 类似的方法,但是更关注于如何管理状态,并且要求所有的应用行为能够在多个 docker 容器,它们叫做 “chaincode” 的模块中运行。它使用了来自 IBM (augmented to handle potentially non-deterministic chaincode) 的 PBFT 实现。通过扩展 Tendermint 来处理未来工作存在的不确定性,在 Tendermint 中以一个 ABCI 应用实现这个基于 docker 的行为是完全有可能的。Burrow 是一个以太坊虚拟机和以太坊交易机制的实现,同时附带有名字注册,许可权和天然合约,可替代区块链 API等额外特性。它使用 Tendermint 作为它的共识引擎,提供了一个特殊的应用状态。

本文译自:Tendermint vs. Other Software

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017.08.07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Zookeeper, etcd, consul
  • Bitcoin, Ethereum, etc.
  • Fabric, Burrow
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档