区块链基础架构可以分为6层,数据层,网络层,共识层,激励层,合约层,应用层。每层分别完成一项任务,各层相互配合,实现一个中心化的信任机制。
(1)数据层:数据层主要描述区块链技术的物理形式,区块链系统设计的技术人员们首先建立的一个起始节点是“创世区块”,之后再同样规则下创建的规格相同的区块通过一个链式的结构依次相连组成一条主链条。随着运行时间越来越长,新的区块通过验证后不断被添加到主链上,主链也会不断地延长。
(2)网络层:网络层的主要目的是实现区块链网络中节点之间的信息交流。区块链网络本质上是一个P2P(点对点)网络。每一个节点既接受信息,也产生信息。节点之间通过维护一个共同的区块链来保持通信。
区块链网络中,每一个节点都可以创造新的区块,在新区快被创造后会以广播的形式通知其他节点,其他节点会对这个区块进行验证,当全区块链中网络中超过51%的用户验证通过后,这个新区快就可以被添加到主链上了。
(3)共识层:共识层能让高度分散的节点在去中心化的系统中高效地针对区块数据的有效性达成共识。区块链中比较常用的共识机制主要有Pow(工作量证明),Pos(权益证明)和DPos(股份授权证明)三种。
(4)激励层:激励层的主要功能是提供一定的激励措施,鼓励节点参与区块链中安全验证工作。以比特币为例,它的奖励机制有两种。在比特币总量达到2100万枚之前,奖励机制有两种,新区快产生后系统奖励的比特币和每笔交易扣除的比特币(手续费)。而当比特币总量达到2100万时,新产生的区块将不再生成比特币,这是奖励机制主要是每笔交易扣除的手续费。
(5)合约层:合约层主要是指各种脚本代码,算法机制以及智能合约等。其实合约就是一个规定了交易方式和过程中的种种细节的设计
(6)应用层:应用层封装了区块链的各种应用场景和案例,就像手机上的很多APP一样,通过区块链特性和技术设计的产品都可以成为区块链应用。
下一篇讲解区块链的基本类型