Hi 游客

更多精彩,请登录!

比特池塘 区块链前沿 正文

理解区块链共识机制POW

排头小兵
84 0 0
当有人问什么是区块链的时候,经常听到一句简洁的回答“区块链就是去中心化的分布式的帐本”。4 ]8 M( V. Y) u' v; ]3 H1 w$ b  L
: O5 p  g# i+ k1 M; V% Q: |
    在这个账本中,是如何对几乎相同时间内产生的交易前后排序的呢?这就涉及到了区块链网络的共识机制,其实,共识机制,就是一套让参与者都达成共识的方法论,它决定得区块链的记帐权和奖励。  Z" p! a; W" f7 P" R

6 V" n' o6 J9 l  I1 y3 R( y% x  B    POW(ProofofWork):工作量证明机制
7 }; U4 H) \  @2 I4 n; P6 Z, }4 Z; P& |$ W+ _
    POW基本原理:
$ o0 x  M6 t6 Z5 W% B3 d, Z' y: z  P& }* V- x2 {8 Q
    第一代共识机制,比特币的基础。理解起来,很简单,它通过评估你的工作量来决定你获得记帐权的机率,工作量越大,就越有可能获得这次的记帐机会。在区块链的网络世界里,这里的劳动就是你为网络提供的计算服务(算力x时长),提供这种服务的过程就是“挖矿”。假如是真的矿场,显然在均匀分布的前提下,人们“挖矿”所得的比重与各自提供的算力成正比,通俗一点就是,能力越强获得越多。
$ }3 |* v2 O- x2 ^% ~  l. V% z0 E$ l% p- k6 S8 C3 T1 V! ]; Y- \  o$ i! E
    POW机制的基本步骤:
' {) @( y+ _! k& V& \! F# b3 z9 U6 C- [! l7 g+ T: ~% |! j, V  P1 M
    第一步:节点监听全网数据记录,通过基本合法性验证的数据记录针其暂存;( O( `, o7 {8 D6 X. G! q3 C* _
2 P4 P3 a' M* P" o0 a' y$ `
    第二步:节点消耗自身算力尝试不同的随机数,进行指定哈希计算,并不断重复该过程直至找到合理的随机数;" y' J2 W) \* ?4 z# Q
: N% c: i5 g* E6 L2 v/ V5 F
    第三步:找到合理的随机数后,生成区块信息,首先输入区块头信息,然后是数据记录信息;
. d, o" ^0 w4 s, m6 I9 U0 l, b" \5 E2 o- Q$ A. k# z
    第四步:接单对外部广播出新产生的区块,其他节点验证通过后,连接至区块链中,主要链高度加1,然后所有节点切换至新区块后面继续进行工作量证明和区块的生产。
# M, d& ]/ s7 ^
) e. F- H2 n+ g' c1 @- Z7 \& f. _    以上是书上讲的步骤,用简单易懂的语言来说的话,就我们一起用个例子说明下:工作量证明机制其实就像一场有奖抢答比赛,假设现在区块链世界有甲、乙、丙、丁四个参赛选手,他们必须挑战相同的数学题目,谁要是最先完成这些题目的计算,并且节目方认为这个算出的答案是对的,那么他就能获得最后的奖杯(记账权)和对应的奖金(完成记账后系统会奖励比特币)。, U/ D7 a' `$ x3 k4 w

, Y  T3 o* ~" Z$ V0 Q& m    有人可能会问,假设乙和丁两人同时抢答成功(也就是现在出现了两个同时满足条件的区块),那这该怎么判定?我们把这种情景称为分叉:在以工作量证明为共识机制的区块链系统中,这个问题是这样被解决的:进行加时赛。尽管乙和丁现在难分胜负,但由于他们各自的解题能力是不同的,因此在一段时间过后,总会有一个人的答题数量要超过另一人(即区块链全网有一条更长的链出现),那么他就是最终获得记账权和奖励的人。. c+ Z: f9 i; R

8 j- e5 Z( @6 y! `    而输了的那个人也不会继续答题,因为继续答题也不会有任何奖励。因此获胜者所在的这条链就成为了主链,分叉出来的链就消失了,从而保证区块链数据的唯一性,这就是在工作量证明机制遵循的最长链原则。当然这种情况发生的前提是所有人遵从同样的机制,如果不遵从,分叉还是会继续。
0 L- G7 B2 ~1 x9 ?/ m: v6 g$ p# O; l" h; c  x$ \
    PoW的优点:
% `% P9 Q' {! H. ]4 N9 ?& P6 r: J0 m0 G* f; l" E. g1 R7 C
    最大的优点是算法简单,实现容易。但POW机制本身当然很复杂,有很多细节,比如:挖矿难度自动调整、区块奖励逐步减半等,这些因素都是基于经济学原理,能吸引和鼓励更多人参与。理想状态,这种机制,可以吸引很多用户参与其中,特别是越先参与的获得越多,会促使加密货币的初始阶段发展迅速,节点网络迅速扩大。在CPU挖矿的时代,比特币吸引了很多人参与“挖矿”,就是很好的证明。通过“挖矿”的方式发行新币,把比特币分散给个人,实现了相对公平。
+ L. T( j: f$ B! o4 [# v6 `( D1 c' |, t8 W! x. W
    PoW的缺点:7 Z: J" y  X# G& h3 R- {2 w' {8 Q
. l3 q1 h( s# \- @* P* k  p3 c
    1、速度慢是最不能接受的一点,达成共识的的周期过长,处理效率低(比如比特币每秒只能做7笔交易),不适合商业应用;& F8 O3 M5 @! u6 B) C2 h
1 |" c6 b( V" g' r& C' H8 v$ q
    2、算力是计算机硬件(CPU、GPU等)提供的,要耗费电力,是对能源的直接消耗,与人类追求节能、清洁、环保的理念相悖,浪费大量计算能源,因为同时参与答题挑战(挖矿)最终只能有一个胜出,那么其他参与者这个过程中消耗的计算能源都被浪费了;
* m& j/ J% H7 i+ U  Y
$ m% V2 ~8 @- ^    3、用户也从个人挖矿发展到大的矿池、矿场,算力集中越来越明显,矿池BTC.COM、蚁池和微比特,一共控制了超过51%的算力,如果他们联合起来或者被黑客控制,那么就可能会发生可怕的51%攻击;! u. {2 y; B1 c/ m2 D  m

; ?3 D  J9 s, K( l* {    4、容易产生分叉,采用POW机制,己经分叉出了多少个币,看看,这是我以前整理的,以下大部分都是我们中国的人搞出来的。
% b) z( N/ a. x
4 g5 A7 i  C! `    以上是针对区块链共识机制POW的一些理解学习与记录,希望对你有也有帮助。
BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

排头小兵 小学生
  • 粉丝

    0

  • 关注

    0

  • 主题

    3