区块链-2 基础

“区块链是一台神奇的电脑,谁都能上传应用,每个应用的数据记录都公开透明。” -Vitalik Buterin
这台电脑不需要关心他的资源、配置等情况,只要上传应用就行了。
区块链演变
区块链-2 基础
文章图片

【区块链-2 基础】区块链和传统数据库的区别
操作上只能插入;每个节点上完全复制块;大多数节点对交易结果达成一致;任何人都可以验证整个网络中的交易;
区块链和分布式账本
重点关注数据如何以块的形式按时间顺序存储和链接到另一个数据;/重点关注网络所有业务参与者之间的数据库共享;
一系列的块;/不要求有一个这样的链;
需要共识算法;/共识算法不是必须的;
不容易扩展;/理论上有更好的扩展选项;
Merkle hash:和全部交易相关的hash
区块链-2 基础
文章图片

Merkle树
也被称为二叉哈希树;用于汇总和验证大型数据集完整性的数据结构;它包含加密哈希;顶部显示“根”,底部显示“叶子”
区块链-2 基础
文章图片

所有的交易最后归成一个hash,Merkel根。

  • 提供了证明数据完整性/有效性的手段
  • 很少的内存/磁盘空间占用,并且计算简便快捷
  • Merkle树证明和管理只需要一个非常小而且很简单的信息通过网络传输
区块链-2 基础
文章图片

共识是区块链的核心
定义一个共识机制的基本参数
拜占庭将军问题
实用拜占庭容错算法(PBFT):以最小的延迟处理大量的直接点对点消息
步骤:
  • 每个节点都保持一个内部状态
  • 当节点收到消息时,他们将该消息与其内部状态结合使用来运行命令或操作
  • 这可以让节点对有问题的消息进行思考
  • 节点个体作出决定后,与系统中的所有其他节点共享该决定
  • 基于所有与节点提交的全部决定来确定一个共识决策
POS和DPOS共识
权益证明(Proof of Stake)
代理权益证明(Delegated Proof of Stake)
私有链公有链
侧链
侧链是独立的区块链,通过双向挂钩(two-way peg)主链,以汇率在区块链间转移数字资产。双向挂钩通过使用简化支付验证(SPV)进行。显示并证明主链上的资产所有权。
SPV一种验证特定交易是否被包括在一个区块中而不下载整个块的方法。一些轻钱包使用该方法。

    推荐阅读