
入门的范围与主线
理解全球区块链产业的技术基础,可以先围绕三个问题展开:数据如何记录,参与者如何认可记录,应用如何使用记录。比特币与以太坊提供了两种有代表性的技术实例,但它们的设计不能直接代表所有区块链,也无法据此判断各地区的产业规模或发展水平。
从两个技术实例理解基础结构
比特币开发者指南介绍了以区块组织交易的公共账本:区块通过哈希引用前一区块,默克尔树汇总交易;全节点独立验证规则,工作量证明支撑历史记录的保护。其交易使用未花费交易输出,即UTXO,已经花费的输出不能再次使用。
以太坊开发者文档将网络描述为共享状态的计算平台:以太坊虚拟机执行程序,交易可以转移ETH、部署或调用智能合约;网络采用权益证明,ETH承担计算费用及验证者激励、抵押等作用。
区分数据验证与共识
哈希让数据变化可以被检测,数字签名用于验证相应授权,共识机制则帮助网络确定接受哪段有效历史。这些环节各有职责:一笔交易符合验证规则,并不意味着它已经被网络纳入共同认可的记录。
理解这一点,也就能区分节点与出块者。保存和验证数据是一类职责,提出新区块是另一类职责;不能把所有节点都理解成矿工或验证者。
交易模型与应用执行
UTXO模型可以从“哪些输出尚未使用”理解,账户模型则可以从“账户及相关状态如何变化”理解。两者都会约束资产状态的有效变化,但开发者读取数据、构造交易和追踪状态的方式不同。
智能合约把可重复执行的规则放到链上。理解一个应用,需要同时理解调用参数、执行条件和状态变化。计算与存储消耗资源,因此应用复杂度也受到网络资源和费用机制的约束。
适用条件与常见问题
当需求涉及多方共同维护记录、独立验证历史或共享程序执行结果时,区块链的这些机制具有讨论价值。评估适用性时,应先明确参与者需要共同认可什么,再判断相应网络的验证规则和执行能力是否匹配。
区块链是否绝对不可篡改?历史保护依赖密码学关联与共识机制,安全性需要结合网络条件理解。链上记录是否证明现实信息真实?账本能验证协议内的记录和规则,现实输入的真实性仍需其他证据。智能合约是否天然正确?自动执行只表示程序按规则运行,业务规则是否合理、代码是否符合预期仍须检查。