区块链系统由自下而上的数据层、网络层、共识层、激励层、合约层和应用层六个模块组成
区块链系统数据层
一、数据层
数据层是整个区块链技术中最底层的数据机构,包括了底层数据区块的链式结构以及相关的非对称公私钥数据加密技术和时间戳技术,这些技术应用在数十年前都已被发明,而且在计算机领域运行了很久,其安全性可见一斑,如果这些技术出现了安全性上bug,那么全球性的金融技术都将出现问题。比特币设计之时,中本聪就为每个区块设置了大小的容量限制(1Mb),现如今,由于比特币交易量的几何式上升,原来每个区块的容量限制了比特币交易,所以有社区有一部分人想以扩容的方式来突破这个限制。
数据层
二、网络层
网络层包括分布式组网机制、数据传播机制和数据验证机制等,由于采用了完全P2P的组网技术,也就意味着区块链是具有自动组网功能的。这种P2P组网技术,在早先应用于BT(比特流)和eMule(电驴)之类的P2P下载软件中,也是一种相对来说非常成熟的技术。
网络层
(三)共识层
共识层主要封装网络节点的各类共识机制算法。共识机制算法是区块链技术的核心技术,因为这决定了到底由谁来进行记账,记账者选择方式将会影响到整个系统的安全性和可靠性。目前已经出现了十余种共识机制算法,其中最为知名的有工作量证明机制PoW(Proof of Work,PoW)、权益证明机制PoS(Proof of Stake,PoS)、股份授权证明机制DPoS(Delegated Proof of Stake,DPoS)等。
共识层
(四)激励层
激励层将经济因素集成到区块链技术体系中来,主要包括经济激励的发行机制和分配机制等,该层主要出现在公有链(PublicBlockchain)中,因为在公有链中必须激励遵守规则参与记账的节点,并且惩罚不遵守规则的节点,才能让整个系统朝着良性循环的方向发展。所以激励机制往往也是一种博弈机制,让更多遵守规则的节点愿意进行记账。而在私有链(PrivateBlockchain)中,则不一定需要进行激励,因为参与记账的节点往往是在链外完成了博弈,也就是可能有强制力或者有其他需求来要求参与记账。
激励层
(五)合约层
合约层主要封装各类脚本、算法和智能合约,是区块链可编程特性的基础。以以太坊为首的新一代区块链系统试图完善比特币的合约层。比特币尽管也包含了脚本代码,但是并不是图灵完备的,即不支持循环语句;以太坊在比特币结构的基础上,内置了编程语言协议,从而在理论上可以实现任何应用功能。如果把比特币看成是全球账本的话,那么就可以把以太坊看作是一台“全球计算机”
合约层
——任何人都可以上传和执行任意的应用程序,并且程序的有效执行能够得到保证。
(六)应用层
应用层则封装了区块链的各种应用场景和案例。比如搭建在以太坊上的各类区块链应用就是部署在应用层,所谓可编程货币和可编程金融也将会搭建在应用层。该模型中,基于时间戳的链式区块结构、分布式节点的共识机制、基于共识机制的经济激励和灵活可编程的智能合约是区块链技术最具代表性的创新点。其中数据层、网络层和共识层是构建区块链应用的必要因素,否则将不能称为真正意义上的区块链。而激励层、合约层和应用层则不是每个区块链应用的必要因素,有部分的区块链应用并不完整地包含着这三层结构。
应用层
参考《区块链社会》
领取专属 10元无门槛券
私享最新 技术干货