区块链原理与技术
  • 区块链原理与技术
  • 比特币密码学基础
    • 密码学简介
    • 哈希函数
    • 数字签名
  • 比特币数据结构
    • 哈希指针
    • 默克尔树
    • 数据结构
  • 比特币交易模型
    • 身份确认
    • 交易服务
  • 比特币共识机制
    • 共识机制
    • 区块链的共识机制
  • 挖矿&脚本
    • 挖矿
    • 比特币脚本
    • 多重签名
  • 区块链分叉
    • 硬分叉与软分叉
  • 问题
  • 比特币匿名性
    • Page 1
  • 以太坊数据结构
    • 以太坊概述
    • 以太坊账户
    • 以太坊状态树
  • 交易树&收据树
    • 以太坊交易树&收据树
    • 布隆过滤器
    • GHOST协议
  • 以太坊:从PoW到PoS
    • 工作量证明PoW(节能)
    • 权益证明PoS
Powered by GitBook
On this page
  • 拜占庭将军问题和容错算法
  • BFT容错算法
  • 比特币中的共识机制
  • Sybil Attack 多重身份攻击/女巫攻击
  • Proof-of-Work 工作量证明
  • POW最长链机制
  • 51%攻击
  1. 比特币共识机制

区块链的共识机制

Previous共识机制Next挖矿

Last updated 4 months ago

副官副官不同区块链需要不同的共识机制。比如公有链几乎人人都可以参与,每个参与者都是匿名,参与者之间不存在任何信任,采用算力敏感的挖矿共识作为激励机制。但是联盟链和私链在一组已知的、已识别的、且经过审查的参与者中进行区块链的操作。节点具有一定的信任基础,不需要算力敏感的共识机制,BFT类型的共识机制比较适合。

拜占庭将军问题和容错算法

分布式节点按照投票决定下一步行动,按照多数节点的意见执行,但是分布式系统中可能存在恶意节点,也可能宕机。简化为将军和副官模型,忠诚的副官会遵守同一命令。

BFT容错算法

恶意节点为m,总结点为n,n>3m时,是可以解决的。

预设条件:

  • 至少4个以上的参与者

  • 每轮次有一个发令者

  • 少于1/3的参与者作恶或失效

  • 极大概率可达的网络(区块链网络)

比特币中的共识机制

区块链的共识算法本质上是为了解决拜占庭将军问题。

Sybil Attack 多重身份攻击/女巫攻击

比特币作为无中心登记的匿名服务,创建多重身份的代价极低,多重身份意味着多重的投票权利。

Gloria可以实行多重身份攻击,从而允许她的双花行为。原因是身份制造几乎没有成本,所以我们需要取代用身份投票的机制,我们采用资源成本进行投票。提高作恶的代价!

Proof-of-Work 工作量证明

挖矿(Mining)就是将新区块添加到区块链的过程。

通过消耗资源解决一个问题获得投票资格(即记账权)。记账权必须通过花费资源来获得,比如通过蛮力解决一个问题,通过记账奖励鼓励投入资源。

具体挖矿过程:参与者综合上一个区块的Hash值,上一个区块生成之后的新的验证过的交易内容的Merkel Root值,加上猜测一个随机数Nonce,再加上时间,一起打包到一个新的候选新区块,让新区块的Hash值小于比特币网络中给定的一个数。

挖矿成功:SHA(Merkel Root + 上一个区块Hash值 + 时间 + Nonce) < target

这是一道面对所有矿工的计算题,target范围越小,计算出来就越难(基于Hash函数特性)。系统每隔2016个区块,会根据上一周期的挖矿时间来调整挖矿难度(通过调整0的数目),来调节生成区块的时间稳定在10分钟左右。

整个争夺记账的过程就是挖矿的过程,也就是比特币发行的过程。挖矿争夺记账权奖励,记账有利润:比特币奖励+交易手续费。很多人争夺记账圈,通过付出计算量解决一个难题,谁先解决谁获得记账权,坏人作恶的成本变高。每十分钟左右生成一个不超过1MB的区块(记录了这10分钟发生的验证过的交易内容),串联到区块链尾部,每个区块的成功提交者可以得到系统一定数量的比特币的奖励(该奖励作为区块内的第一个交易,一定区块数后才能使用),以及用户附加到交易上的支付服务费用。

POW最长链机制

计入全网同时有两个合法提案会在网络中进行广播,收到的用户进行验证后,会基于用户认为的最长链基础上继续难题的计算。因此,系统中可能出现链的分叉(fork)。解决方案:比特币网络最长链机制。

51%攻击

双花能够成功需要攻击者拥有一半以上的算力,比特币网络的安全,要求一半以上的算力是可信的。一般个体达到1/3的计算力,比特币网络就存在破坏的风险了。

副官会同时收到A和W
副官收到的A多于W
副官收到的A多于W