Blockchain

区块链

RED PRECIOUS STONE Series

2016.9

October 31, 2008

RED PRECIOUS STONE Series

比特币 核心概念

  • 一种面向p2p的数字货币系统

  • 采用数字签名解决密码安全性(SHA256)

  • 创造性削减了数字货币系统中的double spend攻击问题

RED PRECIOUS STONE Series

RED PRECIOUS STONE Series

Q1. 什么是数字货币?

电子现金 ? 数字货币 ?

RED PRECIOUS STONE Series

Q2. 什么是double spend(双花攻击)?

  • 节点C有{a}个币,先向节点A购买价值{a}的货物,然后再向B购买同样价值的货物,如果系统先后分别承认两笔交易合法的话,这样C就有可能只花{a}个币,买了价值2{a}的货物,即一钱二用(double spend attack)

RED PRECIOUS STONE Series

Q3. 为什么会发生双花攻击?

  • 实质是交易顺序的一致性共识问题
  • 分布式系统的CAP原则
  • 数字货币系统在形式上是一个公共网络下的AP系统

RED PRECIOUS STONE Series

Q4. 如何保证分布式系统的最终一致性?

  • Byzantine Generals Problem [1982]

RED PRECIOUS STONE Series

(续)Q4. 如何保证去中心化系统的最终一致性?

  • ​假设节点的总数为N,其中问题节点数量为F,则理论上可能满足一致性的条件是:N ≥ 3F + 1
  • 即当问题节点数少于总数三分之一时,实现最终一致性的问题被证明是理论可解的(但怎么解?

RED PRECIOUS STONE Series

Q5. 比特币如何解决一致性共识问题?

  • 并没有
  • 比特币系统创建的区块链技术,通过结合人类社会的现行规则体系,尝试迂回突破理论证明的制约,使一致性得以在N ≥ 2F + 1的条件下得到了保证,从而大幅提高了系统安全性

RED PRECIOUS STONE Series

Q6. 比特币的未来?

  • 实验目的已经达到
  • 由于独特的发行机制,比特币基本不受任何政府控制
  • 目前央行绝不会认可未经批准发行的数字货币
  • 投机客的涌入,导致比特币的区块链实现受到了空前挑战,整个网络目前趋近于中心化,交易确认速度缓慢(数小时到数天时间)
  • 核心开发者逐渐流失,自我改进机会渺茫

更多信息请关注:http://slides.com/hanyi8000/blockchain

Blockchain in Bitcoin

第一条区块链

RED PRECIOUS STONE Series

任何一笔交易信息将被全网广播

RED PRECIOUS STONE Series

区块生成

RED PRECIOUS STONE Series

生成的合法区块将被全网广播

RED PRECIOUS STONE Series

所有合法区块构成全局唯一的链

RED PRECIOUS STONE Series

“合法区块生成/验证机制是保证最终一致的基础,而Bitcoin采用了基于Proof of Work(工作量证明)体系。”

RED PRECIOUS STONE Series

PoW的前世今生

  • Cynthia Dwork and Moni Naor[1993]提出运用经济手段防御DoS攻击
  • 那些年,12306的验证码

RED PRECIOUS STONE Series

(续)PoW的前世今生

  • Adam Back[1997]提出Hashcash算法,基本思想是要求发起者承担一定程度的计算任务,且其正确性易由第三方快速验证
  • Bitcoin区块链中实现的Hashcash算法:
    • 假设系统给定一个目标数T,寻找一个SHA256随机数M,使M<T
    • 如果当前目标数为2**192,那么在SHA256随机数中找到M的概率约为2**192/2**256,即1/2**64
    • 也就是说,使用随机数找到合法的M平均需要2**64次计算
  • 当Bitcoin客户端找到合法的M,则成功生成一个区块,并广播全网
  • 所有客户端只接收最长链长上生成的区块,该区块就是最新的合法区块
  • 系统每隔2016个区块会根据全网算力调整目标数,即Hashcash的难度值,使理想情况下的区块生成速度维持在10分钟左右

RED PRECIOUS STONE Series

设想双花攻击

RED PRECIOUS STONE Series

RED PRECIOUS STONE Series

Bitcoin区块链的技术劣势

  • PoW基本保证了最终一致性,但由于Hashcash计算过于纯粹依赖CPU,专用硬件设备(矿机)的出现导致了算力出现集中(大于50%的概率大大增加)的可能

 

  • Bitcoin的发行奖励机制保证了整个网络的算力,但矿工的逐利性导致大型矿池接连出现(矿池会向网络内广播一个最新区块的hash,池内矿工会同时接着该区块继续计算Hashcash,这样矿池内每位矿工挖到矿的概率是均等的),从而导致生成的合法区块分支减少,交易确认缓慢,交易手续费增加

 

  • 由于涉及大量矿工利益,目前Bitcoin的任何技术改进工作几乎都已经停滞不前(因为矿工拒绝使用修正后的Bitcoin客户端软件),核心开发者面临大量流失

RED PRECIOUS STONE Series

Blockchain: Challenges & Applications

比特币以外的区块链:挑战与应用

RED PRECIOUS STONE Series

神奇的区块链

Decentralized system

Trustworthy computing

?

RED PRECIOUS STONE Series

神奇的区块链

Decentralized

Trustworthy

system

computing

RED PRECIOUS STONE Series

面临的挑战

  • 改进共识方法和完善理论证明
  • 实现工业化

RED PRECIOUS STONE Series

共识方法和理论证明

  • 拜占庭容错系统
  • PoW只是冰山一角
  • 共识机制成为研究热点:跨越多个高难度学科(Consensus Research
  • Proof of Stake/Delegated Proof of Stake

RED PRECIOUS STONE Series

(续)共识方法和理论证明

RED PRECIOUS STONE Series

工业化的挑战

  • 承载全人类高频行为信息量的可行性
  • 目前根本无法抵御洪水攻击
  • 块生成速度越来越慢
  • 吞吐能力逐渐降低

RED PRECIOUS STONE Series

工业化的挑战:解决途径 I

  • 拥抱中心化,在保证交易不可逆的前提下,开发维护成本高,交易费用高

RED PRECIOUS STONE Series

工业化的挑战:解决途径 II

  • 增加网络设计的健壮性,例如引入路由节点,变成混合型网络,避免全网广播带来的破坏性

RED PRECIOUS STONE Series

工业化的挑战:解决途径 III

  • 私有网络

RED PRECIOUS STONE Series

Blockchain架构的应用方向

  • 公有链Public chain
    • 基于bitcoin的链内应用
    • 与bitcoin无关的开放性区块链,如全功能区块链Ethereum

RED PRECIOUS STONE Series

Blockchain架构的应用方向

  • 国家、巨头紧盯的目标
  • 巨头们(顶级投行、商业银行、证券交易所、R3、IBM、思科、埃森哲、Intel、VMware等各行各业的龙头企业)已齐聚Linux基金会,希望能率先统一行业标准——Hyperledger

RED PRECIOUS STONE Series

RED PRECIOUS STONE Series

Ethereum

以太坊: 公共区块链项目

RED PRECIOUS STONE Series

以太坊的理念

  • 把Bitcoin built-in script转变为图灵完备的语言
  • 公共去中心化应用提供共识服务平台
  • 在构建系统的同时进行形式化证明Yellow paper

RED PRECIOUS STONE Series

核心功能

  • 自定义脚本语言Solidity (Javascript like languages)
  • 基于内存困难的PoW:Ethash
  • 近期以硬分叉替换PoW的PoS:Casper

RED PRECIOUS STONE Series

图灵完备与计算安全性

  • EVM的单位计算消耗:Gas
  • 作为交易费用,由交易发起者设置Gas单价(对应以太币),并且进行支付
  • Miner可以在客户端设置可以接受的最小Gas单价,但是不合理的单价将导致在挖矿时处于劣势(块生成速度变慢)

RED PRECIOUS STONE Series

Casper:基于PoS的Ethereum共识确认机制

RED PRECIOUS STONE Series

  • 网络中的任何人都能申请成为验证人,并且需要在网络上提交一笔保证金
  • 验证过程是用私钥签名一个块,并向网络广播投票选其为有效的块
  • 网络会综合所有验证人的投票数,以获得多数票为有效块。命中的验证人能获取一部分交易费。同时投票给无效块的验证人将失去该笔交易费
  • 合作博弈与非合作博弈

以太坊的应用方向

  • TRUSTLESS CROWDSALE

  • 带有匿名性的自治组织

  • 其它去中心化应用

    • 域名注册系统

    • 存储

    • 保险及其它金融衍生品

    • 点到点的无欺诈赌博

    • 去中心化的网络bbs

    • 民主选举 e-Vox

RED PRECIOUS STONE Series

以太坊的应用方向

RED PRECIOUS STONE Series

Bitcoin 1.0, 2.0, 3.0

Bitcoin & Virtual currencies

Smart Contract

What's next ?

RED PRECIOUS STONE Series

Easy Blockchain

By hanyi8000

Easy Blockchain

  • 2,554