首页 理论教育区块链分层结构:提升分布式数据库技术

区块链分层结构:提升分布式数据库技术

【摘要】:图19.18区块链的分层结构图下面对区块链系统的分层结构进行讨论。来自执行层的事务由一组指令构成,在语义层得以验证其有效性。在比特币系统中,合法事务、双重支出问题、是否获得授权等都在语义层进行验证。区块链系统的安全性也要在这个层面确认。

图19.18 区块链的分层结构图

下面对区块链系统的分层结构进行讨论。区块链不仅是一种技术,而且是商务规则、经济学博弈论、密码学和计算机科学技术的组合。参照TCP/IP协议栈(请参见参考文献[4]),可以将区块链系统分层。图19.18是区块链的分层结构图。

1.应用层

如前所述,区块链的重要特征是数据的不变性、对参与者的透明性和抗攻击性等,这体现在应用层(application layer)上,区块链应用也构建在应用层上。用户在这层上为其所需的功能进行编码,可以使用经典的软件开发方法,如客户端程序编制、脚本开发、API、开发框架等。

2.执行层

执行层(execution layer)负责执行应用层传递过来的指令,可以是一个简单指令,也可以是一个指令集。在执行过程中,需要保证事务的正确执行。区块链网络中的所有节点必须独立执行程序/脚本。按相同输入集和条件确定性地执行会在所有节点上产生相同的输出,有助于避免不一致性。

3.语义层(www.chuimin.cn)

语义层(semantic layer)是一个逻辑层,这里的事务和区块是有序的。来自执行层的事务由一组指令构成,在语义层得以验证其有效性。在比特币系统中,合法事务、双重支出问题、是否获得授权等都在语义层进行验证。

在这个层面会定义一些系统规则。

4.传播层

在这个层面,前面尚未涉及的节点间协调问题需要通过传播层(propagation layer)是Peer-to-Peer通信层来解决,允许节点发现其他节点、相互交谈和同步。众所周知,生成事务后会广播在整个网络;当节点推出有效块时,也会立即传播于整个网络,以便让其他节点书写相关数据。简言之,事务和块的传播在这个层面定义,以确保网络的稳定性。

5.一致层

一致层(consensus layer)是区块链的基础层。这一层的基本目的是让网络所有节点的记账处于一致状态。区块链系统的安全性也要在这个层面确认。