zoukankan      html  css  js  c++  java
  • 什么是区块链分叉

    因为区块链是一个去中心化的数据结构,区块链的不同副本不是时刻都能保持完全一致的。区块在不同节点间的到达时间会存在差异,因而不同的节点可能拥有不完全一样的区块链视图。为了解决这个问题,每个节点总是选择并尝试延长代表了最大工作量证明的区块链,即最长的链条或者最大累积难度的链条。通过汇总记录在链上的每个区块的难度值,节点可以计算出创建这个链所耗费的工作量证明总额。只要所有节点都选择最大累积难度的链条,全局比特币网络最终将调整到一致状态。分叉是不同版本的区块链间暂时的不一致现象,当更多区块被加入其中某一个分支时,最终收敛将解决这一问题。

    在接下来的几张图中,我们将在全网范围内,追踪“分叉”事件的整个过程。图形是比特币作为一个全局网络的简化表示。在现实中,比特币网络拓扑并没有按照地理位置进行组织。相反,互连的节点形成了一个网状网络,但是相连的节点间地理距离可能非常遥远。使用地理拓扑的表示法是为了更加简洁地演示分叉。在真实的比特币网络中,节点间的“距离”是用节点到节点间的“跳数”(hops)来衡量的,而不是基于它们的物理位置。出于演示目的,不同区块用不同颜色表示,散布在网络中,而它们经过的连接也用该颜色标示出来。

    第一个图例(见图8.2),全网拥有统一的区块链视图,蓝色的区块位于主链的顶端。

    区块链分叉前

    图8.2 区块链“分叉”事件演示——分叉前

  • 相关阅读:
    Photoshop
    你会为了钱出售自己的个人资料吗?
    [ElasticSearch] 空间搜索 (一)
    hdu1584 A strange lift (电梯最短路径问题)
    Android API Guides---OpenGL ES
    Qt 推断一个IP地址是否有效
    bzoj1670【Usaco2006 Oct】Building the Moat 护城河的挖掘
    集成学习1-Boosting
    微信开发模式之自己定义菜单实现
    人件札记:开放式的办公室环境
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13312825.html
Copyright © 2011-2022 走看看