近两年,随着以太坊等公链的生态发展,应用已经非常之多了,Defi、NFT这些应用虽然比较“简易”,但链上整体操作量之大,让用户和开发者还是很相信以太坊的处理能力和其他公链的处理能力的。
不过,其他公链目前和以太坊相比,一个重要的优势就是以太坊gas费太高,其他公链的gas费极低。
主要原因在于共识算法,以太坊仍是在用1.0链做交易验证,也就是使用PoW算法,而其他公链大部分都使用了PoS或者改进的PoS、PoW。
本文中我们将分析几种共识算法,来展现不同算法的区别。
一个分布式系统是由多个节点组成,节点之间需要网络发送消息通信,根据它们遵循的协议在某个任务消息达成共识并一致执行。这个过程中会出现很多类型的错误,
第一类错误是节点崩溃、网络故障、丢包等,这种错误类型的节点是没有恶意的,属于非拜占庭错误。
第二类错误是节点可能是恶意的,不遵守协议规则。例如验证者节点可以延迟或拒绝网络中的消息、可以提出无效块、可以向不同的对等体发送不同的消息。在最坏的情况下,恶意节点可能会相互协作。这些被称为拜占庭错误。
考虑到这两种错误,系统始终徐亚保持两个属性:安全性(safety)和活跃性(liveness)。
金色财经行情播报丨BTC昨日大幅拉升 多方已显后劲不足:据火币行情显示,昨日BTC大幅拉升,并在7100USDT和6900USDT之间震荡徘徊,1小时图形成局部小箱体并尝试突破。日线级别大箱体企稳,但多方已显后劲不足。BTC 4小时图连续收涨的极限一般是6根K线,目前已经接近。截至10:00,火币平台的主流币的具体表现如下:[2020/4/17]
安全性:在以上两类错误发生时,共识系统不能产生错误的结果。在区块链的语义下,指的是不会产生双重花费和分叉。
活跃性:系统一直能持续产生提交,在区块链的语义下,指的是共识会持续进行,不会卡住。假如一个区块链系统的共识卡在了某个高度,那么新的交易是没有回应的,也就是不满足liveness。
BFT
BFT(拜占庭容错协议)是一种即使系统中存在恶意节点也能保证分布式系统的安全性和活跃性的协议。根据Lamport论文,所有BFT协议都有一个基本假设:节点总数大于 3f 时,恶意节点最大为 f ,诚实节点可以达成一致的正确结果。
PBFT
实用拜占庭容错算法(PBFT)是现实世界里首批能够同时处理第一类和第二类错误的拜占庭容错协议之一,基于部分同步模型,解决了之前BFT类算法效率不高的问题,将算法复杂度由节点数的指数级降低到节点数的平方级,使得拜占庭容错算法在实际系统应用中变得可行。
金色讲堂 | 吕国宁:区块链作为金融基础设施,是非常符合金融开放的长期政策:在今日举行的金色讲堂第19期《2020金融公链如何落地》中,Nervos联合创始人吕国宁表示,以区块链作为金融基础设施,其实是非常符合国家的金融开放的长期政策的。但是金融开放其实有两层含义,第一层是金融服务开放,第二层是金融资本开放,目前区块链最适合的是前者,即金融服务开放的这个场景,而金融资本开放则现阶段并不合适。抛开区块链不谈,金融服务开放已经是我们坚持了很多年的一项基本制度,金融服务的开放是指降低金融服务机构的门槛,提供更多有价值的金融服务,并且开展良性竞争,让普通用户用更低的成本去享受更好的服务,并且通过竞争不断的提高金融服务的水平,这些是好事情,是可以直接惠及大众的。而区块链作为金融基础设施,不管是在支付,交易,保险,借贷等等方面,都能在金融开放的路上向前推进。而且我认为全世界的所有金融机构,也都密切关注区块链是否能帮助中国把金融开放推向一个更新的高度,而中国的金融服务市场也需要不停的释放积极的信号来吸引更多的金融服务机构来提供更好的服务。[2019/12/25]
PBFT正常流程为3阶段协议:
pre-prepare:主节点(Primary)广播预准备消息(Preprepare)到各副本节点(Replica)
金色晨讯 | 支付宝区块链首次用于地铁 俄罗斯或禁止使用加密货币支付:1.厦门市出台四项文件,加快推动区块链等新一代信息技术与实体经济融合。
2.多部委召开电视电话会议 要求推进区块链等新技术在体育产业的实践和应用。
3.支付宝区块链首次用于地铁:长三角地铁“通票”覆盖11城1842公里。
4.原中行行长李礼辉:DC/EP推出后央行仍拥有货币调控的绝对权力。
5.广东党政机关、科研机构600余人集体学习总书记区块链重要讲话,共谋粤港澳区块链创新发展。
1.IDAX Global CEO已失踪5日 暂不能访问交易所冷钱包 也无法提供存提服务。
2.思科新专利将通过区块链保护5G网络安全。
3.日本CBDC研究报告:除央行数字货币在银行间发行,否则它不违反日本银行法案。
4.俄罗斯或禁止使用加密货币支付商品和服务。
5.美国财政部提交报告支持推行区块链监管沙盒。
6.欧盟关于第四项反指令的新提案将允许受监管的银行持有出售比特币。
7.德国银行或将很快可以直接提供加密货币服务,无需依赖第三方托管人。[2019/11/30]
prepare:该阶段是各个节点告诉其他节点我已经知道了这个消息,一旦某个节点收到了包含n-f 个prepare消息(我们将使用QC也就是Quorum Certificate来指代,下同)则进入prepared状态
金色相对论 | Qtum中国CTO钟文斌:绝大多数DApp都是伪需求:在本期金色相对论中,Qtum中国CTO钟文斌表示,绝大多数DApp都是伪需求,token激励方式也是拍脑袋想出来的,根本没有实际应用场景的支撑,价格和价值严重不匹配。这里所谓的“用户”,大多应该是投机者,而真正使用token的用户,在大多数项目中是不存在的。所以个人认为这不叫流失,因为很多只是空想出来的场景,而这些场景中从来就没有用户。[2018/10/19]
commit:该阶段是各个节点以及知道其他节点知道了这个消息,一旦某个节点收到了n-f 个commit消息(QC)则进入committed状态
视图切换(viewchange)是PBFT最为关键的设计,当主节点挂了(超时无响应)或者副本节点集体认为主节点是问题节点时,就会触发ViewChange事件,开始viewchange阶段。
通信复杂度给PBFT的共识效率带来了严重的影响,极大地制约了PBFT的可扩展性。
如何把通信复杂度降低提高共识效率,是BFT共识协议在区块链场景中面临的挑战。针对BFT共识效率的优化方法,具有以下几类:聚合签名、通信机制优化、view-change流程优化。
PBFT,SBFT等协议具有独立的view-change流程,当主节点出问题后才触发。而在Tendermint、HostStuff等协议中没有显式的view-change流程,view-change流程合入正常流程中,因此提高了view-change的效率,将view-change的通信复杂度降低。
金色财经独家消息 王彬生谈《人民日报·三问区块链(经济热点)》:区块链引发的变革本质不是技术问题:金色财经独家消息,王彬生教授针对《人民日报·三问区块链(经济热点)》做出回应,王教授表示:“区块链引发的变革本质不是技术问题,今天计算机专家看比特币以太坊会感觉高深吗?区块链技术的关键是信息的传递成本越来越低,未来边际成本接近零,每个人都可以发布信息每个人都可以记录信息,这才是是区块链引发变革的本质。很多人将区块链理解成高深的技术问题,期待杀手级应用,这个方向是错误的,引起社会变革的技术必须足够简单,茅台要是发token,9000亿市值的股票可能不再存在,把买茅台酒的消费行为和股票的金融行为融合了,这还不是杀手级应用吗?”[2018/2/26]
Tendermint 将roundchange(和viewchange类似)合入正常流程中,因此roundchange和正常的区块消息commit流程一样,不像PBFT一样有单独的viewchange流程,因此通信复杂度也就降低。
HotStuff参考Tendermint,也将视图切换流程和正常流程进行合并,即不再有单独的视图切换流程。通过引入二阶段投票锁定区块,并采用leader节点集合BLS聚合签名的方式,
Hotstuff将传统BFT的两轮的同步BFT改为三轮的链式BFT,没有明确的prepare,commit共识阶段,每个区块只需要进行一轮QC,后一个区块的 prepare 阶段为前一个区块的 pre-commit 阶段,后一个区块的 pre-commit 阶段为前一个区块的 commit 阶段。每次出块的时候都只需要低通信复杂度,通过两轮的通信复杂度,达到了之前的效果。
PBFT、Tendermint等协议具有即时确定(Instant Finality)的特性,几乎不可能出现分叉。在PBFT中,每个区块被确认后才能出下一个区块,Tendermint还提出区块锁定的概念,进一步确保了区块的即时确定性,即在某个round阶段,节点对区块消息投了pre-commit票,则在下一个round中,该节点也只能给该区块消息投pre-commit票,除非收到新proposer的针对某个区块消息的解锁证明。
这类BFT共识协议本质上是一个同步系统,将区块的生产和确认紧密耦合,一个区块确认后才能生产下一个区块,需要在块与块间等待最大的可能网络延迟,共识效率受到很大的限制。
PlatON:CBFT
CBFT基于部分同步网状通信模型,提出了一个三阶段共识的并行拜占庭容错协议。网状的通信模型更适合公网的弱网环境。
CBFT 的正常流程和Hotstuff类似,分为prepare,pre-comit,commit 和 decide几个阶段。但 CBFT 还作了关键的改进:在一个视图窗口内可以连续提议多个区块,下一个区块的产生不用等上一个区块达到QC;而且各个节点可以在接收上一个区块投票的同时,并行执行下个区块的交易,以 pipeline 的方式对区块进行投票确认, 从而极大提高了出块速度。
CBFT 有自适配的视图切换机制:在一个视图窗口内,节点接收到足够多的区块以及赞成票(超过2/3的节点投票,也就是 QC)时,会自动进行窗口切换,切换到下一个窗口,无需进行 viewchange 投票。除此之外,节点会启动 viewchange 流程,并且在 viewchange 阶段引入了和 Hotstuff 一样的二阶段锁定投票规则,同时使用 BLS 聚合签名,可以在低的通信复杂度内完成视图窗口切换。
CBFT 只在正常流程之外才会进行 viewchange,因此相比 HotStuff 会有更少的视图切换开销。
CBFT共识中,每430个区块(称为一个 Epoch)就会更新验证人集合,更新规则如下:
新验证人可能由于网络连接或区块不同步等原因不能参与共识,因此我们每次替换不超过14个节点,如果候选验证人不足14个,替换的数量为候选验证人的总数。使用VRF从候选验证人中随机选出新验证人。
Conflux:GHAST
Conflux 可以实现与比特币和以太坊相同水平的去中心化和安全性,但在交易吞吐量(TPS)和最终延迟方面提供了两个数量级以上的改进。
主要优势在于共识协议、认证存储和交易中继协议。在 Conflux 分类帐中,块被组织为树形图,其中每个块引用一些其他块,其中一个是其父块。仅查看与父边链接的块,账本似乎是一个树结构(父树),而查看所有块,它似乎是一个有向无环图。这也是将 Conflux 的账本结构称为 Tree-Graph 的原因。
Conflux 的共识算法,称为 Greedy-Heaviest-Adaptive- SubTree (GHAST),通过在账本中的父树上应用最重子树规则,使区块链网络中的所有节点能够一致地就区块的枢轴链达成一致,进而基于枢轴链就所有区块的总顺序达成共识。GHAST 还允许 Conflux 节点检测一些可能损害活跃性的攻击(例如,尝试生成两个平衡子树的平衡攻击),即确认交易的能力,并通过自适应调整块的权重来阻止这些攻击。
Tree-Graph 账本和 GHAST 共识算法使 Conflux 节点能够快速生成新块,而不必担心账本中存在分叉可能会损害网络的安全性,从而使系统能够同时实现高吞吐量以及低交易确认延迟。
其他思路
Dfinity
Dfinity更改共识算法上,将传统的共识节点全部参与共识计算修改为通过计算随机数选取部分节点完成共识计算,这是加快共识验证的一个步骤。而更核心的是选中的共识节点是通过非交互式的BSL算法(节点确认数据签名反馈是独立进行的,不是组合进行的)确认交易,意味着不会经历BFT类共识的节点间反复交互的过程,而达到类似“并行”加速的效果。
IOTA
IOTA对算法的修改比较彻底,对比区块链,IOTA使用Tangle数据结构形成总帐本Tangle特点是每个事务都附加到两个先前的事务里,所以要完全消除了原有区块链链式结构对确认时间的依赖。这就形成了交易的无限关联确认结构,可以达到并行效果。
Filecoin
Filecoin在并行上的修订,是在对存储任务的并行处理,因为Filecoin的存储部分,会对存储数据完全进行计算,这个过程极为漫长(对比来说)。所以并行和提速非常之重要,目前,其采用的是更新后的NSE算法。
拆分NSE算法可以看到的是,当处理数据时,会对数据进行分window(可以理解为一个单元)和分layer层的处理,处理完成后才会进行下一步数据存储以及后续的Post证明打包。采用NSE后,在layer的处理部分,layer间没有过多依赖,所以可以形成并行处理效果,可以总结为并行提速的调整。
随着Twitter上的争论不断,大多数技术创始人和风险投资人现在已经选择了一个阵营。Web2.0或web3?web3的支持者认为它是互联网的未来,基于区块链的产品将在未来几年内完全取代Web2.
1900/1/1 0:00:00DAO是人类组织协调的新框架,也是Web3世界的核心组织,凭借着21年的诸多进展以及大机构的力推,成为了加密行业最受关注的赛道之一,也是被认为最具潜力的方向之一.
1900/1/1 0:00:00金色财经 区块链1月11日讯 2022年,似乎对加密市场并不友好,但 Phanta Bear NFT 却在这个寒冬里注入了一丝暖流.
1900/1/1 0:00:00头条▌央视财经:虚拟人软硬件工程师已成为热门职缺1月16日,央视财经报道,近年来,越来越多的企业开始启用虚拟数字员工,来进行一些标准化、重复性的工作,他们出色的业务能力,也让不少人开始担忧.
1900/1/1 0:00:00这周,数字人民币(试点版)App正式在各大应用商店上架。这是继2020年10月深圳试点以来,首次公开数字人民币App下载渠道,对于其产业发展具有里程碑意义。对于为何此时才上架.
1900/1/1 0:00:00DAO是什么?想必大家多多少少都有着自己的理解了。简化来说,DAO是与社区共享价值的承诺。那么DAO寻求的是什么呢?是通过治理为成员提供发声渠道;是形成扁平化的结构,创造灵活的工作流;是分配资源.
1900/1/1 0:00:00