从POW到Casper,感受以太坊共识机制演进艺术

囚徒戈多
囚徒戈多 得得号

Aug 05, 2018 这是一个写区块链的号,专注于挖掘项目价值。

摘要: 对区块链项目来说,共识机制是其根本价值所在。共识是区块链应用落地的基础,指的是参与者如何在此系统中进行协作。

前言

区块链起源于比特币,发展于以太坊。想对区块链有系统性的认知,最好先熟知比特币和以太坊的知识。这是我从比特币和以太坊写起的原因。

而对区块链项目来说,共识机制是其根本价值所在。共识是区块链应用落地的基础,指的是参与者如何在此系统中进行协作。所以,本文希望能对比特币和以太坊的共识机制做总结,帮助大家更好地认识区块链的价值。

正文

初遇比特币,很多人看到的是一个周身被贪婪、欺骗所围绕,充满暴戾与丑闻的事物。

而当有人试着吹散泡沫,探寻本源时,他们会为比特币所构建的“共识”所折服。感觉像是走入一个全自动化工厂,每个处理事情的节点,都按照既定规则运转。

从广义上讲,共识是一种社会协作方式,可在不同领域应用,提升效率,是比特币区别于“郁金香”、“密西西比”等泡沫事件最本质的不同。

另一方面,比特币共识并不完美。由于中本聪的原意是创造一种“钱”,所以在CAP原则(指的是在一个分布式系统中,一致性Consistency、可用性Availability、分区容错性Partition tolerance,三者不可得兼)框架下,他选择了一致性和分区容错性,弱化了可用性,使比特币共识在扩展应用时,遇到了难题。

CAP原则,文字内容来源于百度百科

基于此,有人试着去研究不同的共识机制,弥补比特币在应用性上的不足。

以太坊社区是其中最著名的一群人,他们正尝试把权益证明POS引入到以太坊中,并将此计划命名为Casper(取自同名电影,中文译为《鬼马小精灵》)。

本文将围绕比特币工作量证明POW与以太坊权益证明计划Casper展开叙述。

比特币工作量证明POW

起初,中本聪想创造一种提前约定好发行机制,并且一旦发行,任何人都无法操控的货币。这样就避免了有人因一己私利,通过控制货币发行量,变相盘剥民众利益。

为了达成目的。首先,中本聪将比特币总量设定在2100万个,并利用动态函数,规定每10分钟产出一定数量。这2100万个币,将于2140年全部流通于世。

其次,比特币交易记录不受任何数据中心控制,而是利用点对点技术(P2P),让用户之间直接转账,过程就像用微信互传文件一样。

为了维护系统正常运行,中本聪将新产出的比特币与转账手续费,奖励给记账参与者(矿工,又称节点)。干活的人得到了奖励,这样便有人心甘情愿的为系统付出了。

为了不出差错,中本聪需要采取一套运行规则来使系统符合以下原则:

1. 结果一致。每个节点记录的全网交易记录是一致的。

2. 不可篡改。任何人无法篡改交易记录。

3. 有效率。货币系统工作效率高。

4. 可持续。货币系统可一直运行下去。

而用以保证系统正常运行的规则,便是共识机制。

比特币共识机制是如何运转的呢?

当用户A给用户B转账时,节点(包括AB自己)的比特币客户端,会收到这一信息。

同时,所有参与者会在客户端内,利用计算设备(矿机)每隔10分钟计算一道“哈希难题”。这道难题出现时间及难度,受动态函数控制,以保证10分钟间隔。

这个过程被称作工作量证明(POW)。

率先计算出正确结果的节点,将根据代码审查交易信息是否属实,将包括AB用户在内、一定时间段内的转账信息,打包在一起确认(打包成“块”),并将当前的“块”,连接到此前的“块”上,生成“区块链”,并同步(广播)至全网所有比特币节点。

此时,A给B的转账交易会判定为有效。

 

记账节点获得新产生的比特币及转账手续费,作为奖励,并开始新一轮的哈希难题计算。

此外,记账结果以“最长链”为准。若有2个参与者同时完成工作量证明,并打包区块,则他俩会开始“竞赛”,谁最先产生新的区块,就以谁为准。

工作量证明机制(POW)使每次参与记账的节点是唯一的,计算结果会被广播至全网且以最长链为准,这保证了全网节点交易记录是一致的。

此外,在记账时,节点同时会检查与该交易有关的、所有地址的“未被花费的余额”(UTXO)。比如,检查A是否有未被花费的余额,则需检查A是否收到过更早的转账,以此类推,直到“创世交易”。

理论上,只要“创世交易”不变,当前每个人未被花费余额就是确定的。

创世交易不变,加上交易记录分布式存储,使得任何人无法篡改交易记录。

比特币生态

能源消耗与“下议院悲剧”

事实上,比特币为了保证系统一致性,牺牲了可用性,并引出一系列问题。

首先,比特币不是有效率的。

一方面,受到大小的限制,每个“块”包含4000条交易数据,按10分钟的生成时间换算,相当于每秒处理6.67条交易,以至比特币的全网未确认交易数一度达12134笔,这对货币来说是不合格的。

另一方面,工作量证明机制消耗大量无谓资源。每次打包成块时,所有节点分别计算哈希难题,而最终有资格记账权的节点却是唯一的。其余节点所做工作皆是浪费。

此外,为了有更大概率获得记账权,人们发明了专门的矿机来提高算力。而矿机在计算哈希难题过程中,消耗大量电力。据统计,目前全球比特币矿场年耗电量,超过捷克等全球159个国家。

其次,比特币或许不是可持续的,独特的发行机制或许会让比特币陷入“下议院悲剧”。

由于中本聪规定,每产出21万个区块,新比特币奖励减半。到2140年,比特币全部被挖出时,矿工奖励仅剩用户转账手续费。

同时,别忘了“块”的大小是有限制的,所以手续费数量是一定的。

于是,在未来某一时刻,当矿工记账获得的比特币奖励,与矿机硬件、电力地租等成本持平时,大量矿工将退出比特币系统,算力集中在少数人手里。

他们可以凭借已掌握的算力,在之前的区块上,延伸出新的“最长链”,从而将另一条链作废,从而将自己已经支付的币取回。这会对比特币系统造成毁灭性打击。

算力攻击

事实上,比特币社区早已认识到问题的存在,近年来他们讨论过扩大“块”的容量,或者引入隔离见证、闪电网络等方案,提高每秒可处理的交易数(TPS)。他们甚至还讨论过是否扩大发行总量。但始终没有达成一致。

好消息是,尽管比特币支付还不像法币一样方便,但美国、日本、德国、加拿大、白俄罗斯、瑞士等国家已接受比特币支付,并在一定法律范围内,承认其合法地位,部分国家还设置了比特币ATM机。

本质上,作为一种货币,比特币正向着初衷迈进。相比之下,以太坊需要解决的问题,就要复杂很多了。

区块链能干嘛?

比特币诞生后,人们发现共识机制可以提供全新协作方式。

比如,游戏开发者可以将游戏内交易的部分,接入区块链软件开发工具包(SDK),这部分的数据将跟随区块链本身交易数据,一起被矿工打包确认。

这种做法对游戏开发者来说,可以节省相应储存、计算成本。而对于玩家们来说,他们的交易记录无法被任何人篡改,从而不会出错。

再比如,A公司向B公司购买价值10万元商品,双方签了合同,由C公司做证明人担保,约定1个月后付款。合同信息由矿工打包进区块链,无法被篡改。

B公司交付商品,C公司确认合格,双方在支付账户内同时签名,使区块链内的合同生效。1个月后,A公司账户会自动向B公司付款,无需人工干预。

事实上,区块链项目“超级账本”(hyperledger)正在积极实践第二个例子所说的事情。目前,参与这一项目的公司,已经达200余家,包括荷兰银行、巴黎银行、华为、三星、IBM等企业。

可以看出,当矿工打包确认的不仅仅是交易记录,而是更广阔的数据时,区块链使用范围也会随之扩大,其功能跟云计算、支付宝等常见应用类似。

而由于区块链具备不可随意篡改、自动执行合约的特性,使得沟通、信任、执行等成本大幅降低,在部分场景中受到企业青睐。

但现阶段,区块链技术想做到大规模应用,还得解决诸多问题,其中效率和可持续,尤为关键。

所以,相比于比特币,以太坊更关注可用性。

为此,他们正尝试将共识机制由工作量证明(Proof of Work,简写为POW)转换成权益证明(Proof Of Stake,简写为POS)。

并基于权益证明,开发以太坊独有的Casper共识机制,提高交易处理速度等,着重解决效率和可持续问题。

该计划将分为两个阶段实现,第一个阶段名为Casper FFG,第二个阶段名为Casper CBC。 

以太坊生态

权益证明机制POS

本质上,以太坊也是一种“钱”,其产生过程同样来自于矿工记账奖励。

只是,以太坊矿工除了记录交易信息,还记录游戏、金融领域的一些数据,这一载体被称为“智能合约”。

所以,在解决效率和可持续问题之前,以太坊也需要做到结果一致、不可篡改。

那么,股权证明共识机制是如何运转的呢?

当用户间发生转账,以太坊节点客户端,会收到信息。

 同时,所有参与者(节点,或称验证人)客户端会根据代码,审核信息是否属实,并自动打包成“块”。然后客户端会对这些“块”进行投票。

得票最高的“块”胜出,组成“链”,并同步至全网以太坊节点。此时,转账信息被判定为有效。

胜出“块”的支持者们将获得以太坊币奖励,并开始新一轮投票。

其中,投票权重由客户端里以太坊币的多少决定。客户端持有的以太坊币越多,投票权重越高,获得奖励概率越大。

这个过程被称作权益证明(POS)。

在权益证明共识中,得票最高的“块”通常是唯一的,且结果会被广播是全网,这保证了全网交易记录的一致性。

更重要的是,在权益证明机制产生区块链的过程中,不需要使用机器计算“哈希难题”,使得其每秒可处理的交易次数大幅提升,并且节省了机器所需的电费、地租等成本。

以太坊权益证明Casper

今年5月,FFG阶段第一个代码版本已正式发布,旨在将以太坊工作量证明转变为权益证明。

在Casper FFG阶段,以太坊每50个区块中,会有1个由权益证明产生。

在未来Casper CBC中,以太坊共识机制将全面转为权益证明,并在此基础上,做两方面升级:加入保证金制度,上线分片技术。

保证金制度是为增强安全性而设立的。Casper规定,节点需提交以太坊币作为保证金,一旦其想作弊,比如在为全部“块”进行投票,或者试图对网络发起攻击,则他们的保证金将全部被没收。

而分片技术,是为了进一步提升系统处理交易的速度。分片技术指的是,先将节点分组,再将完整的交易数据分片,随机放到不同组内验证,最终结果打包成“块”,组成“链”。

分片技术就像写书一样。首先,系统将“写作主题”,也就是一定时间内的交易信息,梳理出“章节目录”;然后,随机将不同章节的写作任务,分配给不同的小组。大家分头写完后,再组合成“书”。

理论上,参与验证的节点是无限多的,分组也会无限多,所以,以太坊处理交易速度是无限快的。

从目前的进度来看,以太坊有望在明年年底前,完成Casper CBC上线。

同时,随着子母链(Plasma)、账户分离概念(account abstraction)以及无状态客户端(statelessclients)等功能上线,以太坊网路建设将全部完成。

 

 网传V神个人以太坊地址

V神的“骄傲”

Casper共识对于以太坊意味着什么?从其创始人V神(Vitalik Buterin,以太坊创始人)的言论中,可以看出端倪。

在他个人推特中,置顶内容是,提醒大家防范假冒以太坊的骗子。

此外,他还说过数字货币随时可能归零,以及劝赚钱的项目方不要炫富。

在接受“王峰十问”采访时,V神表示,以太坊已经不再那么依赖比特币了,并且他还认为交易所都应该下地狱。

将这些言论概括起来,V神表达的意思是,希望以太坊可以独立活下去,不受比特币和币圈其他因素影响。Casper是这一切的开始。

权益证明不仅使以太坊从根本的共识机制上,区别于比特币,更重要的是,它是有效率的,这使得以太坊币这一数字资产,有了锚定实体产业应用的可能性,让其嵌入实体经济运行当中。

当以太坊币有了实体资产负债做发行背书,其与法定货币已经没有本质差别了。

而权益证明使得节点想参与记账前,需买入大量以太坊币,并锁定。客观上,锁仓会使以太坊币价格达到新高度。

若以太坊币价借此超越比特币,或将彻底摆脱比特币“阴影”,其价格不受比特币涨跌影响。

目前,Casper CBC的细节仍在讨论中,整个网络预计将于2019年部署完毕。经历过The DAO黑客事件的V神,明显比之前谨慎了很多。

他一手缔造了币圈的繁荣,这是他的“骄傲”,他不想让自己的“骄傲”轻易死去。

链得得仅提供相关信息展示,不构成任何投资建议
本文系作者 囚徒戈多 授权链得得发表,并经链得得编辑,转载请注明出处、作者和本文链接

更多精彩内容,关注链得得微信号(ID:ChainDD),或者下载链得得App

分享到:

相关推荐

    评论(0

    Oh! no

    您是否确认要删除该条评论吗?

    分享到微信