
先理解区块链:共享且按顺序记录的数据结构
区块链可以理解为由多个网络节点共同维护的公开账本。交易或其他状态变化不会只保存在某一台中心服务器上,而是按照一定规则被收集到区块中,再由区块之间的密码学引用形成连续记录。区块通常会保存前一个区块的相关哈希,因此其中一处数据发生变化,就会影响后续区块的关联关系。
这种结构解决的是共同记录和历史一致性问题。节点会根据协议规则检查收到的区块与交易,只有符合规则的内容才会被纳入各自认可的链。区块链并不意味着数据绝对无法改变,而是意味着修改已经确认的历史通常需要同时面对密码学关联、节点验证和共识机制带来的约束。

节点、交易与区块如何协同工作
节点是参与网络通信和验证的计算机或运行中的软件实例。用户发起交易请求后,交易会通过节点传播到网络中,节点检查签名、格式、余额或其他协议条件。通过验证的交易会等待被打包进区块,区块确认后,交易带来的账本变化才成为网络共同认可的一部分。

在比特币的交易模型中,资金并不是从一个钱包实体直接搬到另一个钱包实体,而是由新交易引用此前交易产生的输出。尚未被使用的交易输出通常称为UTXO,交易必须使用有效的UTXO作为输入,并且同一输出不能被重复使用,否则就会形成双重支付。交易输入与输出之间的差额可以按照协议作为交易费用的一部分。
区块还可以使用默克尔树组织交易哈希,并将最终的默克尔根写入区块头。这样,验证者可以通过一组中间哈希检查某笔交易是否属于特定区块,而不必重复处理整个交易集合。
共识机制:网络如何决定哪条历史有效
多个节点各自保存和验证数据,并不自动保证它们永远看到同一条链。共识机制规定了区块怎样产生、怎样验证,以及出现竞争区块时节点如何选择。它的核心作用,是让相互之间不必完全信任的参与者对交易顺序和账本状态形成共同判断。
比特币使用工作量证明。参与者通过计算寻找符合难度要求的区块哈希,成功创建有效区块后,其他节点还会继续检查区块中的交易和规则。新区块不断接在已有链上,修改较早历史就需要重新处理受影响的区块及其后续关联,因此篡改成本会随着链的延伸而增加。
以太坊采用基于权益证明的共识方式。参与者质押ETH并运行验证者软件,验证者可能被选中提出区块,其他验证者负责检查并确认。这里的关键术语是质押、验证者、区块提议和惩罚机制;它们共同构成维护网络一致性的经济和协议约束。两种共识机制的具体参与方式不同,但都服务于同一问题:确定哪些状态变化可以写入共同历史。
以太坊相关术语:EVM、状态与智能合约
以太坊在区块链账本之上加入了可执行的计算环境。以太坊虚拟机,也就是EVM,可以理解为全网共同认可的一台抽象计算机。网络参与者会围绕它的状态达成一致,包括账户、余额以及已部署代码等信息。交易请求被执行后,EVM状态随之发生变化,结果会传播并写入区块链。
智能合约是部署到EVM中的可重复执行程序。用户通过交易请求调用合约,并提供相应参数;合约根据预设代码执行操作,例如更新记录、转移符合条件的数字资产或调用其他合约。开发者可以利用智能合约构建去中心化应用,包括市场、游戏和某些金融类程序。智能合约的运行结果仍然受网络节点验证和共识规则约束,代码部署也不等于代码必然正确。
ETH是以太坊的原生资产,在协议中用于支付计算请求相关费用,也用于验证者质押和网络激励。这里的费用可以从资源消耗角度理解:执行更复杂的计算通常需要更多网络资源,因此协议需要让请求者承担相应成本,以减少无限制或恶意计算对网络的影响。
如何建立术语之间的整体联系
可以用“请求、验证、执行、打包、共识、状态更新”这条链路理解大多数基础术语。账户是状态的一部分,交易是改变状态的请求,节点负责传播和验证,区块负责批量承载交易,哈希和区块引用帮助连接历史,共识机制决定哪些区块有效。比特币主要围绕可验证的价值转移建立账本,以太坊则进一步把状态变化和程序执行纳入同一网络。
阅读资料或产品说明时,应先判断术语属于哪一层:区块、交易、哈希和默克尔树属于数据组织与验证;节点和共识机制属于网络维护;UTXO属于比特币交易模型;EVM、账户和智能合约属于以太坊执行模型。不同区块链可能采用不同的数据结构、费用规则和共识方式,不能把某一项目中的定义直接套用到所有区块链。
常见问题与适用边界
区块链是否等于数据库?它可以承担公开账本和状态记录功能,但区块链还包含节点通信、验证规则和共识机制。普通数据库通常由明确的管理者控制写入权限,区块链则强调多个参与者按照共同协议维护记录。
智能合约是否真的具有人类意义上的“智能”?通常不是。它本质上是部署在网络中的程序,能按照代码和输入执行条件逻辑。代码存在漏洞、条件设计不完整或外部数据不可靠时,合约结果仍可能出现问题。
所有区块链是否都使用工作量证明或权益证明?不是。共识机制有多种设计,本文涉及的工作量证明和以太坊采用的权益证明只适用于相应网络及其协议语境。理解术语时,应结合具体链的规则、交易模型和执行环境判断其含义。