几个重要的共识机制介绍

  • Blockchain是一种让之前资料很难更动的技术,属于实现分布式帐本(Distributed Ledger Technology, DLT)的一种技术
  • 我们最终想要做到的是DLT,而实现它的技术,目前有Blockchain、Holochain、Hashgraph、Directed Acyclic Graphs(DAG),而Blockchain只是目前最主流的一种。其他的我们之后有机会会提,暂且忽略它们
  • 有共识的意思是说,所有节点上的帐本是一致且大家都认同的
  • 共识机制之所以存在,是要处理有坏节点存在时的情况,坏节点是想来搞破坏的节点,毕竟真实世界是个黑暗森林,岁月静好只在平行时空中
  • 能处理这个问题,等价于做到了去信任化,是件很伟大的事情。以下举几个重要的共识机制来谈

Practical Byzantine Fault Tolerance (PBFT) 实用拜占庭容错算法

  1. 1999年的一篇论文提出来,为的是解决拜占庭将军问题
  2. 拜占庭将军问题简化来说,节点之间想决定一件事情,例如大家往前走一步,或是大家往后退一步,同进退就能活下来,不同步的话就会挂掉
  3. 每个节点都可以跟每个节点沟通,但有坏节点想搞破坏,也不知道是哪一个
  4. 结论是,当坏节点不超过总结点数的1/3,好节点之间还是能达成正确的共识
  5. 但存在的限制是,节点必须是给定的,需要相对可信并且相对有限,也就是不能到一半加入其他节点。处理问题的时间复杂度是O(N²),所以实用性不高
  6. 无论如何,它是共识机制界的OG

Proof of Work (PoW) 工作量证明

  1. 概念上就是天道酬勤
  2. 上一篇说到挖矿这件事,就是算出正确的Nonce值,让Hash去满足对应的要求,例如最前面多少位是零之类的
  3. 最先算出答案的矿工会把答案告诉其他节点,而其他节点验证没问题之后,Block就会成立,接到原先的Chain上过去,而这个算出来的矿工可以获得一定的奖励
  4. 平均来看,如果占全部矿工运算资源的X%,是能获得X%的总奖励
  5. 这里的共识就是,因为你努力工作了,所以大家相信你
  6. 算是第一代出圈的共识机制
  7. 但有很多缺点,例如有很多人专门制造了算Nonce的处理器去挖矿,不只耗电不环保,它也就只会挖矿,对人类文明没有任何贡献

Proof of Stake (PoS) 权益证明

  1. 用户先Stake代币到网路当中,作为股权
  2. 基于用资产加权的币龄去决定下一个区块的验证者
  3. 例如存在一天的10 ETH跟,存在十天的1 ETH有同样的权重
  4. 一但被选中之后,拿过奖励的人,它的权重要归零。(不然我有51%的总资产,就都我在拿就好了)
  5. 验证者的奖励通常是这个新添Block中的交易的手续费,不会新铸造币去给它,这样就不会有通膨的问题
  6. 如果一个节点想停止锻造者的身份,那么它的股权和所得的奖励将在一段时间后被释放,从而使网络有时间验证该节点是否向区块链中添加了假区块
  7. 主要优点是能源消耗低和安全性高

Delegated Proof of Stake (DPoS) 委托权益证明

  1. 由Daniel Larimer 在2014年提出
  2. 可以投票给几个代表代替他们保护网络
  3. 代表们也被称为见证人,他们有责任在产生和验证新区块的过程中达成共识
  4. 投票权与每个用户持有的币数量成比例,投票系统也因项目而异
  5. 通常代表们也会收集奖励并按比例分配给投票者们
  6. 优点很明显,因为节点少,所以在性能方面与PoW和PoS相比更强,也就是理论上TPS能更高
  7. 这就像直接民主跟间接民主的差异,直接民主确实很民主,但很多事情决定起来很慢,也会有很多内耗。越极权处理事情效率就能更高,但有中心化的风险
  8. 所以缺点也很明显,因为依赖特定节点,在三难问题中,牺牲了一些去中心化
  9. TPS 是Transaction Per Second的缩写, 是衡量一条链很重要的一个指标

Proof of Authority (PoA) 权威证明

  1. 找几个愿意暴露自己真实身份,然后又是权威的人士来当作验证者
  2. 节点数可以很少,所以TPS可以很好,交易费用可以很低,但过于中心化
  3. 可以理解成极端版本的DPoS
  4. 通常会搭配多重签证机制来防,就是要多个权威说一样的,才能算
  5. 但总之不看好,所谓知人知面不知心,王力宏都可以一夜身败名裂,谁来当这个权威早晚感觉都会出事

Proof of History (PoH) 历史证明

  1. 这有点超纲,只概念性上的讲一下,因为Solana在用,不能算小众
  2. 共识机制,从另外更高的角度去看,它是想要建立时间的概念,就是想要分清楚先来后到
  3. 共识上有冲突,可以理解成时空上有矛盾
  4. 而PoA用了一种叫做VDF (Verifiable Delay Function) 的函数,可以帮每一笔交易资讯加上了一个加密时间戳,这样就有了时间的概念
  5. 有了先后顺序,就能再交给各个节点来更新与同步我们要的资料

[ 结语 ]

  • 前面只介绍了几个重要的共识机制,现时在玩的时候可以结合起来用,例如PoS + PoW的混合
  • 共识机制是决定一条链本质最重要的元素,没有之一
  • 目前Proof of系列的共识机制还没有哪一个可以一统天下的,都是在三难问题上各有取舍
  • 虽然现在说还不准,但浅薄的以为,用DAG的IOTA链是个很有趣,有机会真正实现圣杯的机制,让我们之后谈

本文链接地址:https://www.wwsww.cn/jishu/13280.html
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。