PoA共识机制是什么意思?提到共识机制,相信很多人都不陌生,毕竟现如今共识机制在区块链中扮演的角色还是很重要的,目前常见的共识机制有很多,其中投资者最了解pow共识机制,pow共识机制就是多劳多得,谁能最快的猜出随机数,谁就能做记账人,但是对于本文要说的poa共识机制基本不了解,那么,PoA共识机制到底是什么意思呢?下面小编就给大家详细说说PoA共识机制是什么意思?
PoA共识机制是什么意思?
POA全称是proof of activity。他不是一种独立的共识算法,而是POW和POS混合的算法,目前有唯链,欧链等采用了POA共识机制。
POA的算法大致流程是这样的,每个活跃节点不断的进行哈希计算,寻找哈希值小于特定值的区块头,区块头中包括前区块哈希值,本地节点的地址,区块序号以及nonce值。当节点找到满足条件的区块头后,就会向全网广播这个区块头,所有的活跃节点收到广播进行验证。若验证通过,则以广播中的区块头作为数据源,导出N个随机的股权所有者,所有的活跃节点判断自己是否是哪个幸运的股权人。如果自己是前面N-1个幸运股权人中的一个,也一度用私钥对上述的区块头进行签名。并且将这个签名在全网广播。如果自己是第N个幸运股权持有者,则用这个区块头来构建一个新的区块,区块中包含了自己选出的尽可能多的交易,前N-1个幸运股权人的签名还有自己对完整区块链的哈希值的签名。然后将这个签名后的完整节点在全网广播。所有的活跃节点在收到完整节点之后进行验证。验证通过则认为该节点是一个合法的新区块。将其加入区块链当中去。
倘若这个区块属于最长链,则以他为前区块,转回到最初的步骤,否则就做丢弃处理。不难发现,POA算法要求N个幸运者全部在线,任意一个幸运股权人不在线都将导致该区块丢弃。
这也是活跃证明的由来,POA算法会周期性的统计被丢弃的区块数量。并且按照这个来调整N的数值。如果丢弃的区块数量比较多,那么就减少N,否则就增大N.
POA算法的区块丢失是一种算力损失。POA算法中。区块中的交易费由区块的发布者与n个幸运股权人共享。
POA算法最重要的是它可以防止非厉害攻击者。所谓的非厉害攻击是指具有强大的算法,但是仅仅持有少量的股权的攻击者。POA算法中POS部分使得非厉害者得到构建区块机会是非常少的。应该我们无法有效的进行攻击。
POA算法中,幸运股权人依靠资本获利,这个想当持有股篇而获得股息,这种机制会估计持股人长期持续这个股权有利于数字资产的保值以及减少波动。
POAstay大众的pow部分,通过哈希算法难度控制了新区块头生成的速度。起到稳定网络,避免分叉的作用。
PoA 共识机制的优点和缺点
即便是现在,还可以看到很多人为 PoW、PoS、DPoS 等共识算法孰优孰劣争得面红耳赤、不可开交。其实,共识算法并没有那么明显的优劣之分,只有是否合适之分,适合应用场景的共识算法就是好的共识算法。
PoA 共识机制中,节点可以无限多,但验证人数量是有限的。节点主要是同步区块链账本信息,而验证人则负责验证交易、打包出块。由于验证人数量有限,PoA 共识机制的区块链在效率、可扩展性上就远远超过像比特币、以太坊这些主流的、去中心化程度高的公链。
由于存在准入门槛,PoA 共识机制在安全性上也有一定的保证。常见的安全问题,比如双花,也就是一份钱使用多次,在 PoA 共识机制中能非常容易地避免掉,因为所有的交易都是验证人进行验证的。举个例子,假设张三发起了双花,同一笔钱既转给了李四,又转给了王五,验证人在收到交易确认时,可以按照时间顺序,直接把后一笔转给王五的转账去掉,去确认转给李四的交易,从而避免张三发起的双花取得成功。
但如果验证人自己作恶,自己发动对网络的攻击或者篡改账本,就很容易对整个区块链网络造成伤害。对此,很多采用 PoA 共识机制的区块链会采用多重签名机制来避免单个验证人作恶,或者让验证人来自不同的区域、不同的利益集体,从而避免作恶。
与其他共识机制相比,PoA共识机制具有一些优势,PoA共识机制设计与PoS协议相似,但也与PoW共享一些元素,然而由于不需要节点之间的通信,PoA共识机制处理事务的速度要快得多,此外,与PoS共识机制和PoW共识机制相比,PoA共识机制需要更少的计算能力,因此更容易设置和参与。
推荐您阅读更多有关于“共识机制”的文章