![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
![]() |
|
协议层
什么是协议层?
区块链的协议层是区块链网络的基础。开发人员可以扩展这一层,为其区块链网络创建新规则。他们可以设计符合其区块链规则的新交易和智能合约。
协议层是一组规则和设计,用于建立:
将价值从一个地址转移到另一个地址的能力
在分类账中记录交易的能力
在链中创建新区块或交易的要求
一种在网络参与者之间就哪些交易有效以及交易应该按什么顺序达成共识的机制
区块创建过程,包括区块中包含的交易类型
向网络添加节点的过程
挖掘新区块的过程。
将信息添加到区块链的规则可以简单也可以复杂,由协议层决定。
将信息添加到区块链的最基本规则是网络中的所有参与者必须就要添加的信息及其添加时间达成一致。
协议层包括共识机制,允许网络中的所有参与者就添加哪些信息以及何时添加信息达成一致。共识机制用于防止网络攻击,例如双重支出,攻击者试图通过在大约同一时间在两个不同的交易上花费一个硬币来两次花费资金。
比特币协议使用工作量证明作为其共识机制。工作量证明允许任何拥有足够计算能力的人向比特币区块链添加交易块。它还大大增加了攻击网络的成本,因为攻击者需要控制网络上一半以上的计算能力才能成功双花硬币。
区块链由不同的层组成:
应用层:它负责与用户交互,例如想要基于特定区块链开发 dApp 的最终用户或开发人员。以太坊钱包、Metamask 等都属于这一类。
合约层:该层包括负责执行交易和更改状态的智能合约。包括Solidity(以太坊)、Neo Contract(Neo)等。
协议层:它定义了如何将交易添加到公共分类账中,以及新节点如何加入现有区块链网络并与之同步。它包括共识协议,如 PoW(比特币)、dBFT(NEO)等,以及 P2P 网络层,如 TCP/IP(比特币)、Devp2p(以太坊)。