区块链的系统架构,主要是由数据层、网络层与共识层构成的底层网络,由数字货币、智能合约与其它"去中心化"组织等构成的应用层。
数据层封装了底层数据区块的链式结构以及相关的非对称公私钥数据加密、时间戳等技术,这是整个区块链技术中最底层的数据结构。
网络层包括分布式组网机制、数据传播机制和数据验证机制等,由于采用了完全的P2P组网技术,意味着区块链具有自动组网功能。
共识层主要包括封装网络节点的各类共识机制算法。共识机制算法是区块领导核心技术,决定了到底有谁来记账,而且记账者选择的方式将会影响整个系统的安全性和可靠性。知名的有工作量证明机制(PoW)、权益证明机制(PoS)、委托权益证明机制(DPoS)等。
激励层将经济因素集成到区块链技术体系中,主要包括经济激励的发行机制和分配机制,该层主要出现在公有链、私有链中。激励机制往往也是一种博弈机制,让更多节点愿意遵守规则。
合约层主要封装各类脚本、算法和智能合约,是区块链可编程特性的基础。
应用层封装了区块链的各种应用场景和案例。在该模型中,基于时间戳的链式区块结构、分布式节点共识机制、基于共识机制的经济激励和灵活可编程的智能合约是区块链技术最具代表性的和创新点。
在区块链的系统架构中,各个层次以交易为中心构建起一个完整的相互关联的循环体系,这一循环模式是这样的:
首先,应用层的数字货币、智能合约等产品对于底层网络来说,传输的全是数据,即应用层相当于数据层的数据输入源。这些数据必须进入数据层,按照区块链的格式进行封装。
其次,在数据封装完成后,就进入分布式(P2P)网络进行广播,由全网节点通过一定机制进行确认。
最后,当全网达成共识之后,区块构建完成并连接到主链之上,完成一次完整交易的流程,并开始下一次交易的循环。
这一循环过程,从技术角度讲,区块链中的区块是一种记录交易的数据结构,反映了一笔交易的资金流向。系统中已经达成交易的区块连接在一起形成了一条主链,所有参与计算的节点都记录了主链的信息,区块所承载的任务数据具体包括:交易双方私钥、交易数量、电子货币数字签名等。前一个区块形成的散列用来将区块连接起来,实现过往交易的顺序排列。随机数是交易达成的核心,所有"矿工"节点竞争计算随机数,最快得到答案的节点生成一个新的区块,并广播到所有节点进行更新,如此完成一笔交易,然后开始新的循环。