区块链(Block Chain)

技术思想基于分布式,类似git,分布式数据库。

技术(分布式账本):

  • 信息公开透明
  • 不可篡改,任何人可以查看
  • 系统永不宕机
  • 链算能力强

思想(共识机制):

  • 去中心化架构
  • 决策民主高效,决议自动执行
  • 智能合约
  • 规则严格执行

比特币设计理念:

  • 避免作恶(避免叛徒节点捣乱)

  • 负反馈调节 (网络越大时,决策能力越强,越稳定,防作弊能力越强)

  • 共识机制:PoW(Proof of Work算法,在一个区间范围内产生一个随机数,哪个block最先穷举猜出这个数,将此block链接,其他分支抛弃。缺点是算法耗cpu,效率不高,每秒最多交易可能仅10次左右。)

相关实践

Hyperledger — 超级账本(Linux基金会下的开源项目):

  • 区块链服务(Blockchain)
  • 链码服务(Chaincode)
  • 成员权限管理(Membership)

Ethereum — 以太坊(blockchain1.0 simple state machine ——-> blockchain2.0 state machine+code)

  • 单独为智能合约指定编程语言Solidity

  • 使用了内存要求较高的哈希函数,避免出现算力矿机

  • uncle块激励机制,降低矿池的优势,减少区块产生间隔为15s

  • 难度调整算法,一定的自动反馈机制

  • gas限制调整算法,限制代码执行指令数,避免循环攻击

  • 记录当前状态的哈希数的根哈希值到区块,某些情况下实现轻量级客户端

  • 为执行智能合约而设计的简化虚拟机EVM