zoukankan      html  css  js  c++  java
  • 区块链技术栈-区块链账本

    区块链账本

      区块链表示一种特有的数据记录格式,区块链就是“区块+链”,所谓的区块就是数据块的意思,每一个区块之间通过某个标志连接起来,从而形成一条链,如下图:

      如图所示,一个区块一个区块的衔接,大家可以发现在生活中有很多相似的记录方式,比如企业会计账本,每个月会将记账凭证汇总并且月结,这样一段时间下来,就按月形成了一个连续账本,每个月的数据就相当于一个区块,区块与区块之间通过年月进行串联。以比特币来说,大约10分钟产生一个区块,区块中主要包含了交易事务数据以及区块的摘要信息。我们看下比特币中区块链数据组成示意图:

     

      通过上图我们可以看到比特币中区块链账本的数据组成及关系,并且可以看到区块数据在逻辑上分成了区块头和区块体,每个区块头中通过梅克尔根(梅克尔根也称为梅克尔根哈希值,具体概念后续详细介绍,暂且可以认为是一个区块中所有交易事务的集体身份证号)关联了区块中众多的交易事务,而每个区块之间通过区块头的哈希值串联起来,这是一个很有趣的数据格式,它将连续不断的数据分成一个一个的数据块。在下载同步这些数据的时候,可以并行的从各个节点来获得,无论数据的先后,到达本地后在根据身份证号进行组装起来就行,另外,这是一种链条格式,链条最大的特点就是一环扣一环,很难从中间去破坏。比如有人篡改了中间的2号区块,那就得吧2号区块后的所有区块全部改掉,这样的难度非常大。在区块链系统中,一个节点产生的数据和更改的数据要发送到网络中其他节点去确认,而其他节点是不会确认通过一个被篡改的数据的,因为跟自己本地区块链账本匹配不起来,这也就是区块链数据不可篡改的一个很重要的设计。

      这种格式还有一个巧妙的地方,如果这个数据总是由一个人来记录那就没什么意思了,但是如果放到网上,大家共同来维护这个数据,这也才会体现出价值,每个区块由谁来记录或打包,可以有一个规则,比如掷骰子,大家约定好一个规则,赢者就让他来记录下一个区块的数据,为了补偿她的劳动投入,奖励他一部分收益,比特币就是使用了这样的原理来不断的发行新的比特币出来,奖励给打包记录区块数据的那个人的比特币就是新发行的比特币,这个也叫做挖矿。

  • 相关阅读:
    Git 基础
    SharePoint 2013 对象模型操作"网站设置"菜单
    SharePoint 2013 隐藏部分Ribbon菜单
    SharePoint 2013 Designer系列之数据视图筛选
    SharePoint 2013 Designer系列之数据视图
    SharePoint 2013 Designer系列之自定义列表表单
    SharePoint 2013 设置自定义布局页
    SharePoint 2013 "通知我"功能简介
    SharePoint 2013 创建web应用程序报错"This page can’t be displayed"
    SharePoint 禁用本地回环的两个方法
  • 原文地址:https://www.cnblogs.com/gslblog/p/8795182.html
Copyright © 2011-2022 走看看