
先理解“分层”是什么意思
区块链并不是只有一条链或一套程序,而是由多类功能共同构成的系统。所谓分层开发架构,通常是为了便于分析和开发,将系统拆分为数据层、网络层、共识层、执行层以及应用交互层。不同项目的具体分层方式可能不同,因此这些名称更适合作为理解工具,而不是所有区块链都必须遵循的固定标准。
数据层关注区块、交易、账户状态、哈希和交易组织方式;网络层负责节点之间传播交易和区块;共识层负责参与者如何对有效数据和链的顺序形成一致意见;执行层负责按照规则处理交易或运行程序;应用层则面向用户,提供钱包、市场、游戏或其他服务。

数据层:区块、交易与链
交易可以看作对区块链状态提出的变更请求。例如,在支持智能合约的平台上,交易可能是转移资产、发布合约代码,或调用已经发布的合约。交易经过验证、执行并被纳入区块后,才会成为网络认可的状态变化。

区块是交易的组织单位。多个交易会被批量写入区块,区块通常还包含指向前一区块的密码学引用,因此区块按顺序连接成链。修改历史区块中的数据,会影响相关哈希以及后续区块的引用,这也是区块链能够提供历史完整性的重要原因之一。
不同区块链记录状态的方式并不相同。比特币采用未花费交易输出,也就是UTXO模型:新的交易使用此前交易产生且尚未花费的输出作为输入。以太坊则维护包括账户余额在内的全局状态,交易执行后会改变这份状态。因此,不能把一种链的账户、余额或交易模型直接套用到另一种链上。
共识层与网络层的区别
节点是运行区块链软件并保存、验证或传播数据的计算机。网络层解决的是信息如何在节点之间传递,例如交易和新区块怎样被广播;共识层解决的是节点在面对多个候选结果时,依据哪些规则接受某个区块和链的状态。二者相互配合,但职责并不相同。
比特币资料展示了工作量证明的基本思路:区块头需要满足特定哈希目标,参与者通过计算寻找符合条件的结果,链的累计工作量用于帮助节点选择有效链。以太坊基础介绍则说明,其网络采用基于权益证明的共识方式,由验证者参与区块提议和检查。由此可见,“区块链共识”是通用概念,而具体机制需要按项目分别理解。
执行层:EVM与智能合约
以太坊的执行层可以用以太坊虚拟机,也就是EVM,来理解。EVM是一种全网共同认可的虚拟计算环境,网络参与者依据相同规则执行交易,并据此更新状态。用户并不是直接修改链上数据,而是提交请求,由协议验证并执行后产生状态变化。
智能合约是发布到执行环境中的可重复调用程序。开发者先部署合约代码,用户随后通过交易并携带参数调用合约。合约可以实现资产转移、市场规则、游戏逻辑等应用功能,但其执行仍受区块链的验证规则、资源限制和费用机制约束。智能合约并不等同于完整应用,钱包界面、服务器服务或外部数据接口仍可能属于应用层或链下部分。
开发时如何使用这些术语
如果目标是开发与链交互的应用,通常需要先掌握账户、交易、区块确认、节点接口和状态读取,再根据目标平台选择相应的开发框架。如果目标是编写智能合约,则重点是执行环境、合约语言、状态存储、调用权限和资源消耗。如果目标是运行节点或参与网络维护,则需要进一步理解客户端、数据同步、验证规则以及具体共识机制。
常见误区是把“区块链”当成单一数据库,把“交易”理解成必然即时完成,或认为所有平台都有相同的账户和合约模型。更准确的判断方式是先问三个问题:数据以什么结构保存,节点按照什么规则达成一致,交易执行后会改变什么状态。回答这三个问题,通常就能确定一个术语属于哪一层,以及它在开发流程中的作用。
常见问题
“区块”和“交易”有什么区别?交易是状态变化请求或其执行结果,区块是批量组织交易并连接历史的结构。一个区块可以包含多笔交易,区块本身还承担顺序和历史引用的作用。
“共识”和“智能合约”是否是一回事?不是。共识决定网络如何认可区块和状态,智能合约则是在认可的执行环境中运行的应用程序。合约代码即使正确,也必须通过所在网络的交易验证和区块确认流程才能产生链上效果。
“分层架构”是否适用于所有区块链?它适合作为通用分析框架,但具体项目可能合并、拆分或重新定义某些模块。阅读技术文档时,应以该项目对节点、状态、执行和共识的实际定义为准。