严格来说,区块链目前并没有明晰的定义。区块链技术在不断的发展,区块链与区块链技术的定义也跟着发生着变化。下面对区块链的解释,也只是我自己的理解,并不完全正确。
区块链,顾名思义,就是由一个个区块组成的链。每个区块由区块头和区块体两部分组成。
下面以比特币为例,做个简单的介绍。
每个区块头保存了前一个区块的哈希值(第一个区块除外),这样可以通过该哈希值找到前一个区块,依此类推,能从链尾一直找到到链首,把全部的区块串起来。
每个区块体里保存了一部分交易信息,全部的区块加起来,完整地记录了比特币所有的交易信息。这看起来像是一个账本,所以区块链也被称为账本数据库。
区块链网络里存在多个节点,每个节点都保存了完整的区块数据库。节点跟节点之间是对等的,整个网络结构中不存在中心节点。
因此,也可以说区块链本质上是一个对等网络(peer-to-peer)的分布式账本数据库。
在技术实现上,并不存在单一的区块链技术。我们所说的区块链技术实际上是包含了分布式数据存储、点对点传输、共识机制、加密算法等多种计算机技术,区块链是这些技术综合起来的新型应用模式。
区块链的网络架构和数据结构,决定了区块链相对于中心化的服务器架构在效率上存在着天然的劣势。因此,区块链的应用场景可能没有我们所想象的那么多。