美文网首页币圈基础修炼
POW & POS,傻傻分不清楚的共识机制

POW & POS,傻傻分不清楚的共识机制

作者: 韭菜之家中文社区 | 来源:发表于2018-08-14 10:53 被阅读19次

    上周五的推送,韭菜芯儿给自己留了一份作业:

    想想看,择日不如撞日,就今天吧!

    韭菜芯儿跟大家一起学习数字货币世界的共识机制。


    什么是共识机制?

    在我们LeeksPro开号的第二篇,我们就介绍了数字货币名词入门,简单讲解了16个最高频名词,其中一个就是共识机制,还记得吗?

    为什么要有共识机制呢?


    这就必须要解释一下在分布式系统中不得不了解的“拜占庭将军问题”了。

    拜占庭将军问题(The Byzantine Generals Problem)可以总结为一句话:

    在古代,11位忠诚的、不同位置的将军,如何排除叛徒的影响,对进攻或撤退达成一致。

    当然,拜占庭将军问题并不是如今才提出的,我们大中华在春秋战国时期就发明了“虎符”这个神奇的方式来保障命令的正确执行。

    在分布系数系统中,各个节点就是“拜占庭将军”,算法执行中的任意一个错误就是“叛徒”。

    为了尽可能地排除错误、快速达成一致,来让系统有效地、正确地运行,便应运而生了各种“共识机制”。


    下面,韭菜芯儿就来跟大家共同学习,数字货币世界中常见的几种共识机制:

    PoW 

    工作量证明 Proof of Work

    PoW是比特币所采用的共识机制,最早是由Adam Back为了解决垃圾邮件的问题而开发的一个“哈希现金Hashcash”程序。

    比特币采用的是SHA256的单向函数,其具体的工作原理实在太专业,韭菜芯儿只能理解到“SHA256的结果很容易验证,但是要将其计算出来,需要不断尝试运算,直到匹配到某个随机数;技术上而言,任何新增区块都需要经过232394亿运算才能得到”的程度,感兴趣的小伙伴可以搜索SHA256去深入学习。

    因此,只要矿工出示运算结果,那通过PoW,全网节点就认可了他所付出的成本,承认新的区块奖励属于他。

    如此大量的运算相当浪费资源,实际上并没有任何科学或实际用途,只是为了实践工作量证明机制、阻止攻击者伪装成节点来控制网络。

    虽然在2009年时为了构建这种去中心化的、允许所有人可以免费参与的全球货币网络,没有更好的选择;但是发展到如今,已经有了其他不需要大量浪费算力的证明机制,比如我们下面就要提到的,PoS权益证明。

    PoS

    权益证明 Proof of Stake

    主要思想是:节点记账权的获得难度与节点持有的权益成反比,也就是说,一个节点拥有的币越多、时间越久,越容易获取记账权,也就越容易获取区块奖励。

    实际上,最初的PoS是PoW的一种升级,根据每个节点的币龄,来等比例地降低挖矿难度,从而加快找到随机数的速度。

    什么是币龄呢?

    币龄=数量*拥有天数。

    由于区块链中的每笔交易记录都会被标记时间戳,这个时间戳就可以作为币龄的证明,因此币龄也不可能被轻易伪造。

    比如韭菜芯儿从韭菜芽儿那里收到10个币,并且持有了90天,那么,韭菜芯儿就拥有了900的币龄;如果韭菜芯儿卖了这10个币,这900币龄就被消耗了;

    后来,为了彻底摆脱PoW这种依靠算力的共识机制,PoS引入了“利息”的概念;年利率是在PoS机制最初确认时就设定的,一般不会变化。

    利息=(币龄*年利率)/365,如果利率是1%,在上个例子中,韭菜芯儿就可以得到0.02466个币的利息。

    如此一来,PoS区块链的作用过程就可以这样描述:

    在初期,通过PoW机制,产生创世币;

    在创世币达到一定规模时,PoS机制开始作用,交易时消耗币龄、获得产生区块的优先权,并获取利息,同时PoW机制由于消耗太多资源、浪费算力而逐渐淡出;

    最终系统中仅剩PoS来维持正常运作。

    目前大家所熟悉的以太坊,主要还是采用PoW的机制,不过正在转向PoS。

    大家了解了PoW和PoS,在遇到其他共识机制的时候,相信也会比较快得就能理解。

    比如:股份授权证明DPOS,类似于董事会投票;燃烧证明POB;沉淀证明POD;能力证明POC;消逝时间证明PODT,等等。

    韭菜芯儿就不在这里为大家一一展开了,感兴趣的同学可以百度或知乎一下~

    相关文章

      网友评论

        本文标题:POW & POS,傻傻分不清楚的共识机制

        本文链接:https://www.haomeiwen.com/subject/kqpmbftx.html