论坛风格切换
  • 188阅读
  • 0回复

[数字货币]陈楚初老师带你明白区块链的核心概念以及哈希算法 [复制链接]

上一主题 下一主题
离线陈楚初
 

发帖
1
金钱
10
威望
1
贡献值
1
交易币
0
好评度
0
— 本帖被 赵子龙 从 外汇 移动到本区(2020-01-11) —

  区块链的核心概念
  
  在讲解区块链的工作原理之前,我们先将区块链中涉及的几个核心概念做一个简单的阐述。
  
  一、区块
  
  区块作为区块链的基本结构单元,由包含元数据的区块头和包含交易数据的区块主体构成。
  
  首先区块头包含三组元数据:
  
  1. 用于连接前面的区块、索引自父区块哈希值的数据;
  
  2. 挖矿难度、Nonce(随机数,用于工作量证明算法的计数器)、时间戳;
  
  3. 能够总结并快速归纳校验区块中所有交易数据的Merkle(默克尔)树根数据。
  
  区块链系统大约每10分钟会创建一个区块,其中包含了这段时间里全网范围内发生的所有交易。每个区块中也包含了前一个区块的ID(识别码),这使得每个区块都能找到其前一个节点,这样一直倒推就形成了一条完整的交易链条。陈楚初老师提示从诞生之初到运行至今,全网随之形成了一条唯一的主区块链。
  
  二、哈希算法
  
  哈希算法是区块链中保证交易信息不被篡改的单向密码机制。哈希算法接收一段明文后,以一种不可逆的方式将其转化为一段长度较短、位数固定的散列数据。
  
  它有两个特点:
  
  1. 加密过程不可逆,意味着我们无法通过输出的散列数据倒推原本的明文是什么;
  
  2. 输入的明文与输出的散列数据一一对应,任何一个输入信息的变化,都必将导致最终输出的散列数据的变化。
  
  在区块链中,通常使用SHA–256(安全散列算法)进行区块加密,这种算法的输入长度为256位,输出的是一串长度为32字节的随机散列数据。区块链通过哈希算法对一个交易区块中的交易信息进行加密,并把信息压缩成由一串数字和字母组成的散列字符串。区块链的哈希值能够唯一而准确地标识一个区块,区块链中任意节点通过简单的哈希计算都可以获得这个区块的哈希值,这里陈楚初小提示一下,如果计算出的哈希值没有变化,那么也就意味着区块中的信息没有被篡改。
 
分享到
快速回复
限100 字节
 
上一个 下一个