区块链工作量证明共识机制

175 阅读2分钟

去中心化最大的本质差别是,一个公司内的分布式系统中的结点是被假设成可信任的,而在去中心化的网络下,结点要被假设成不可信任的。

为了解决数据一致性问题,用大规模的计算来找到一个符合系统要求的区块 ID。要找到符合条件的区块 ID 只能通过暴力穷举的方式,所以要付出大量的系统计算资源和电力。用这种“极度消耗计算力”的方式来提高成本。

  1. 修改几乎变得不可能。试想,如果生成一个区块需要大量的长时间的计算力。也就是在世界上最好的电脑集群下计算 10 分钟才能打好一个包。那么,当我们要去修改数据内容的时候,这个过程也是一样的。前面说过,如果你要伪造一个块,那么你就要修改后面所有的块,修改一个块的成本如此之高,那么修改整个链的成本也就非常之高了。
  2. 能掌握 51% 的算力的人变得几乎不可能。除了伪造一条链的成本很高,还要控制大多数人的算力,这意味着需要巨额的资金投入。这两个难度加起来,几乎不太可能。
  3. 解决分歧。一方面,这么大的工作量找出来的区块 ID,已经有效地降低了大家有意见冲突的概率。另一方面,就算是出现了合法冲突的区块(同时出现了多个合理的区块,即区块链出现分支 / 分叉),也就是多个合法的账本。而因为挖矿的成本太高,导致要同时跟进多个账本是不可能的,所以矿工们只能赌跟其中一个。大多数人所选择的那一个分支的链就会越来越多,于是另外一边也就无人问津,从而作废了。

此文章为4月Day10学习笔记,内容来源于极客时间《左耳听风》,强烈推荐该课程!