Hi 游客

更多精彩,请登录!

比特池塘 区块链前沿 正文

理解区块链共识机制POW

排头小兵
75 0 0
当有人问什么是区块链的时候,经常听到一句简洁的回答“区块链就是去中心化的分布式的帐本”。& {: `, M: @8 X" z- R2 s
; K1 \& t- Z: C9 F- Q6 x' E7 I
    在这个账本中,是如何对几乎相同时间内产生的交易前后排序的呢?这就涉及到了区块链网络的共识机制,其实,共识机制,就是一套让参与者都达成共识的方法论,它决定得区块链的记帐权和奖励。
/ c/ n7 E) f) w3 p( c2 n% ^; X, n) h+ V7 k  d+ D1 `
    POW(ProofofWork):工作量证明机制
  q1 H7 j, Z9 k( j- L
0 T  r4 {. G, x- Z% E" Z    POW基本原理:
" x. }+ z0 C; Q7 y# ?1 R/ x
9 H' s1 ?+ R! l2 R% U    第一代共识机制,比特币的基础。理解起来,很简单,它通过评估你的工作量来决定你获得记帐权的机率,工作量越大,就越有可能获得这次的记帐机会。在区块链的网络世界里,这里的劳动就是你为网络提供的计算服务(算力x时长),提供这种服务的过程就是“挖矿”。假如是真的矿场,显然在均匀分布的前提下,人们“挖矿”所得的比重与各自提供的算力成正比,通俗一点就是,能力越强获得越多。( q1 w5 Z8 B  t8 R2 }- k
4 X7 j+ a- h2 P/ C+ m/ a7 {* P
    POW机制的基本步骤:2 I2 O7 g6 x- b8 W% Z4 a
4 p1 G$ \$ [+ k6 F
    第一步:节点监听全网数据记录,通过基本合法性验证的数据记录针其暂存;# }; U/ G7 R3 f# N
  Z+ ^& e$ Q& a5 ]* _
    第二步:节点消耗自身算力尝试不同的随机数,进行指定哈希计算,并不断重复该过程直至找到合理的随机数;
. o9 K$ D+ z( ^% P6 k, ]; ~! V* P' v+ }  ?9 S: O, s2 D1 w
    第三步:找到合理的随机数后,生成区块信息,首先输入区块头信息,然后是数据记录信息;
4 R+ M' W$ K8 H, \4 I9 V
$ K) g8 x* P3 X2 y$ R- }    第四步:接单对外部广播出新产生的区块,其他节点验证通过后,连接至区块链中,主要链高度加1,然后所有节点切换至新区块后面继续进行工作量证明和区块的生产。  n+ Q; t6 B; ^7 x

- z, S3 T. \6 q) V( N5 ?0 P: k- X    以上是书上讲的步骤,用简单易懂的语言来说的话,就我们一起用个例子说明下:工作量证明机制其实就像一场有奖抢答比赛,假设现在区块链世界有甲、乙、丙、丁四个参赛选手,他们必须挑战相同的数学题目,谁要是最先完成这些题目的计算,并且节目方认为这个算出的答案是对的,那么他就能获得最后的奖杯(记账权)和对应的奖金(完成记账后系统会奖励比特币)。
  n: p! L  \- e, W' a3 L) S  m9 r0 \* [! d
    有人可能会问,假设乙和丁两人同时抢答成功(也就是现在出现了两个同时满足条件的区块),那这该怎么判定?我们把这种情景称为分叉:在以工作量证明为共识机制的区块链系统中,这个问题是这样被解决的:进行加时赛。尽管乙和丁现在难分胜负,但由于他们各自的解题能力是不同的,因此在一段时间过后,总会有一个人的答题数量要超过另一人(即区块链全网有一条更长的链出现),那么他就是最终获得记账权和奖励的人。
4 C  {5 a, c. p) Y/ E
/ u+ U. \2 n; G( f9 M    而输了的那个人也不会继续答题,因为继续答题也不会有任何奖励。因此获胜者所在的这条链就成为了主链,分叉出来的链就消失了,从而保证区块链数据的唯一性,这就是在工作量证明机制遵循的最长链原则。当然这种情况发生的前提是所有人遵从同样的机制,如果不遵从,分叉还是会继续。
$ m* O2 R9 g. L  _1 r0 Q1 N* ^
2 h/ s: w5 `2 ]& I/ e    PoW的优点:2 A1 z) y9 L7 O7 D

+ ~. h4 @9 G0 g7 s8 ]( Z    最大的优点是算法简单,实现容易。但POW机制本身当然很复杂,有很多细节,比如:挖矿难度自动调整、区块奖励逐步减半等,这些因素都是基于经济学原理,能吸引和鼓励更多人参与。理想状态,这种机制,可以吸引很多用户参与其中,特别是越先参与的获得越多,会促使加密货币的初始阶段发展迅速,节点网络迅速扩大。在CPU挖矿的时代,比特币吸引了很多人参与“挖矿”,就是很好的证明。通过“挖矿”的方式发行新币,把比特币分散给个人,实现了相对公平。
5 U9 W  s% {* Z4 ^: M, n8 p2 G8 c8 k; O9 U! f6 C; ]
    PoW的缺点:" M5 P% @" h: \; q
+ u& y( N8 X* G7 t
    1、速度慢是最不能接受的一点,达成共识的的周期过长,处理效率低(比如比特币每秒只能做7笔交易),不适合商业应用;6 V" d  I- f% p, r/ X* f! K8 h
3 K  \9 {" {" O( {1 `8 n6 V: A
    2、算力是计算机硬件(CPU、GPU等)提供的,要耗费电力,是对能源的直接消耗,与人类追求节能、清洁、环保的理念相悖,浪费大量计算能源,因为同时参与答题挑战(挖矿)最终只能有一个胜出,那么其他参与者这个过程中消耗的计算能源都被浪费了;9 `* r  Y+ _; ?; m& @1 s

# N4 ]. J5 j0 T$ O3 l    3、用户也从个人挖矿发展到大的矿池、矿场,算力集中越来越明显,矿池BTC.COM、蚁池和微比特,一共控制了超过51%的算力,如果他们联合起来或者被黑客控制,那么就可能会发生可怕的51%攻击;, R5 a4 c# M; x5 q

' f' E% B) Z0 Z# o  `) w    4、容易产生分叉,采用POW机制,己经分叉出了多少个币,看看,这是我以前整理的,以下大部分都是我们中国的人搞出来的。
" {0 V, h# [3 L) y+ |6 A. \+ Z! u# D6 E
    以上是针对区块链共识机制POW的一些理解学习与记录,希望对你有也有帮助。
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

排头小兵 小学生
  • 粉丝

    0

  • 关注

    0

  • 主题

    3