《从0到1,全面学透区块链》笔记

区块链名词解释

  • 矿工

    给比特币网络提交的转账的请求,需要等矿工来打包处理。

  • 挖矿

    争相计算获得记账权的过程形象地比喻成“挖矿”,竞争挖矿的人或组织,叫”矿工“。

  • 算力

    可简单理解为计算能力。每秒能做多少次哈希碰撞,就是其”算力“的代表。

  • 工作量证明

    一个矿工成功后,TA会把之前打包好的网络上的交易记录到一页账本上,同步给其他人。因为这个矿工能够最先计算出超难数学题的答案,说明这个矿工付出了工作量,是一个有权利记账的人,因此其他人也会同意这一页账单。这种依靠工作量来证明记账权,大家来达成共识的机制叫做“工作量证明”,简而言之结果可以证明你付出了多少工作量。英文简称“Pow”。

  • 权益证明

    “权益证明“,和比特币”工作量证明“相对应的另外一种共识机制。”权益证明“是根据你在这个网络里拥有币的多少来竞争记账的权力,如果你持有的币越多,你的记账的权力的获取概率就越大,这种证明机制在一定程序上缩短了共识的达成时间,也不再需要大量消耗能源挖矿。简而言之【持有越多,获得记账权力概率越大】,这种共识机制叫”权益证明“,英文简称”PoS“。

  • 区块

    区块大体来说包含两部分信息,第一部分信息是这个区块的身份信息。包括这个区块诞生的时间、是第多少个、哈希值是多少、整个区块大小多少。这些信息证明了这个区块是正确的,是沿着上一个区块往下的区块,也给下一个区块提供了验证身份的信息。第二部分信息是这段时间内产生的网络里的交易,也就是这个账本的里面记录的每一笔交易。注意:这里说的交易,是A给B在某个时间点转了N个比特币的时候,这样的转账信息。

  • 区块链

    每个区块被打上时间戳,按照严格的先后顺序,链接起来,叫“区块链”。

  • 最长链机制


区块链的分类

  • 公有链

    任何人都可以参与区块链数据维护和读取、完全去中心化、不受任何机构控制,比特币就是公有链的代表。

  • 联盟链

    是指参与区块链的节点是事先选择好的,对特定的组织或团体开放。R3CEV是联盟链的代表。

    特点是:

    1. 交易速度非常快;
    2. 交易成本大幅降低甚至为零;
    3. 数据就可以有一定的隐私。
  • 私有链

    对单独的个人或实体开放,参与的节点只有自己,数据的访问和使用有严格的权限管理,一般用作内部审计使用。


硬分叉和软分叉

  • 硬分叉

    硬分叉是当比特币协议规则发生改变,如果发生旧节点拒绝接受由新节点制造的区块的情况,区块链将分成2条独立的链,矿工需要在2条区块链中选择一条进行挖矿。

  • 软分叉

    软分叉是当比特币协议规则发生改变,旧的节点并不会意识到规则是不同的,它们将遵循改变后的规则继续接受由新节点创造的区块。因此软分叉不会产生2条区块链,而是在原区块链上同时存在新、旧两种节点挖的区块。

重放攻击:如果比特币分裂为1种或多种比特币,例如比特币1/比特币2等,用户账户内同事存在这3种对应数量的所有分裂的比特币,每条链上的地址和私钥生产算法相同,交易格式也完全相同,导致在其中一条链上的交易在另一条链上很可能是完全合法的。所以使用者在其中一条链上发起的交易,就可以到另一条链上去重新广播,也可能得到确认。这就是”重放攻击“。


共识机制

  • 工作量证明

  • 权益证明

  • 最长链机制

    一般的区块链网络都会要求所有节点遵守一个公式,就是所有保存到本地的区块链,都必须是被本地节点验证通过的最长链。由于区块链的每个区块必须引用它的上一个区块,所以最长链是最难推翻的。