共识算法,如PoW、PBFT、PoS、DPos、Raft?

共识算法在区块链等分布式系统中起着至关重要的作用。目前常见的共识算法有 PoW(工作量证明)、PBFT(实用拜占庭容错算法)、PoS(权益证明)、DPoS(委托权益证明)和 Raft 等。

PoW 最早由 Cynthia Dwork 和 Moni Naor 于 1993 年提出,并由 Satoshi Nakamoto 在比特币白皮书中应用到区块链技术中。在 PoW 算法中,矿工通过解决复杂的数学问题来证明自己进行了计算工作,只有找到符合条件的哈希值,才能将新区块添加到区块链中,并获得相应奖励。例如在比特币网络中,目标难度大约每两周调整一次,以确保平均每 10 分钟生成一个区块。PoW 具有安全性高、去中心化等优点,但也存在高能耗等缺点。

PBFT 算法将拜占庭容错算法复杂度从指数级降低到了多项式级,可以在恶意节点不高于总数 1/3 的情况下同时保证安全性和活性。在 PBFT 中,共识的对象是每一个交易,交易共识的过程是并行的。其算法流程包括客户端发送请求给主节点,主节点广播请求给其它节点,节点执行三阶段共识流程,最后客户端收到来自 f+1 个节点的相同消息后,代表共识已经正确完成。

PoS 类似现实生活中的股东机制,拥有股份越多的人越容易获取记账权。例如在股权证明模式下,有币龄的概念,每个币每天产生 1 币龄,持币越多、时间越长,获得记账权的概率越大。PoS 试图解决 PoW 中资源浪费的缺点,但也存在开发者作恶、信用度低等问题。

DPoS 类似于股份制公司,各个节点投票选举出可信度比较高的节点作为决策者。它能大幅缩小参与验证和记账节点的数量,可达到秒级的共识验证,但整个共识机制还是依赖于代币。

Raft 协议包括领导者选举和日志复制等过程。如果遇到网络分区,Raft 算法能恢复网络一致。它在分布式系统中确保各节点达成一致状态共识,相比传统的分布式系统,区块链作为去中心化分布式系统,没有中心服务器,需要新的共识算法来维护系统一致性。

PoW 的工作原理

PoW(工作量证明)是一种共识机制,常用于区块链中。其工作原理是要求矿工解决复杂的数学难题,称为哈希函数。第一个成功解决难题的矿工可以将交易打包成一个区块,并将其添加到区块链中。作为奖励,该矿工将获得一定数量的加密货币。
在网络世界里,这里的“劳动”就是为网络提供计算服务(算力×时长),这个过程就是“挖矿”。就像按劳取酬一样,付出的劳动越多,获得的报酬就越多。如果是真的矿藏,在均匀分布的前提下,人们“挖矿”所得的“报酬”与各自提供的算力成正比,即能力越强、付出越多,获得就越多。
PoW 的本质是一个 CPU 一票,采用公有链证明,即最长的链包含最大的工作量。基于大多数的 CPU 为诚实的节点所控制的假设,诚实的链增长速度会是最快的。这种机制有效地防止了“巫女攻击”的黑客攻击。工作量证明的难度采用移动平均目标的方法来确定,令难度达到使得运算的时间趋于一个恒定值,也就是难度与解决的速度成反比。
PoW 的技术原理是散列函数,在进行散列值运算时,散列函数对于任意一个输入的值 n,都会得到一个相应的 h(n)结果,但是当 n 发生一个小小的变动

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

百态老人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值