区块链基础知识

区块结构

简易版区块包含以下内容:

  • 时间戳
  • 前哈希
  • 当前哈希
  • 实际data(交易信息)

哈希计算

当前哈希的计算方法:

1
当前哈希 = SHA256(时间戳 + 前哈希 + 实际data)

本质特征

区块链本质是一个分布式数据库,每个区块通过哈希值链接到前一个区块。

共识机制

为什么需要共识

  • 区块链是分布式数据库
  • 没有中心化控制者
  • 新区块的加入需要其他参与者同意

工作量证明(PoW)

需要完成繁重的计算工作才能获得添加新区块的权力。

哈希函数应用

哈希函数主要用途:

  • 检测数据一致性
  • 验证文件完整性
  • 建立数据与哈希值的一一对应关系

比特币挖矿算法

计算过程

  1. 组合数据:
    • 时间戳
    • 前哈希
    • 实际data
  2. 使用计数器(nonce)递增
  3. 不断计算哈希值
  4. 直到找到符合条件的结果

难度要求

  • 目标:哈希值前20位为0
  • 成功概率:1/2^20
  • 验证方法:比较哈希值是否小于0x000000…

ps:nonce是一个密码学术语,在这里作为计数器使用。