
先建立基础概念之间的联系
理解新区块链概念入门需要了解什么,可以从三个问题开始:记录怎样保存,参与者怎样核验,分歧怎样解决。区块链将记录分批组织为区块,以密码学引用连接前后区块,并由网络中的节点依据规则验证。学习时把数据结构、验证规则和共识机制分开,更容易看清各自的作用。
从比特币理解账本与共识
比特币开发者指南介绍了公开交易账本:区块引用前一区块的区块头哈希,全节点独立验证区块。交易使用未花费交易输出,即UTXO,作为输入,已花费的输出不能再次使用。工作量证明要求区块头哈希满足难度条件;存在有效分支时,节点依据累计工作量选择链。
这些概念分别回答不同问题。哈希关联帮助识别历史内容的改动,UTXO规则约束同一笔输出的重复使用,链选择规则处理竞争历史。仅知道数据被打包进区块,还不足以理解系统如何防止重复支付。
从以太坊理解可执行的规则
以太坊开发者文档将EVM描述为网络共同维护状态的虚拟计算环境。交易可以转移ETH、部署程序或调用程序;部署在链上的程序称为智能合约。ETH用于支付网络计算费用,也参与权益证明的安全机制。验证者质押ETH,参与区块提议与验证,并受到奖励和惩罚规则约束。
理解智能合约时,可以把它看作接受输入、按既定代码处理并影响链上状态的程序。例如,阅读一个合约功能说明,应关注调用条件、执行规则和状态变化,而不能只凭应用名称判断它能做什么。
哪些概念可以通用,哪些需要区分
区块、交易、节点和共识是理解这两类网络的共同入口,但具体实现不能混用。比特币的UTXO记账方式不能直接套用为以太坊的账户余额模型,工作量证明也不能与权益证明视为同一流程。
讨论某条链时,应明确自己描述的是数据结构、记账模型还是执行环境。以太坊的EVM与合约机制适用于理解其应用执行方式,不能据此推断所有区块链都提供相同能力。
入门常见问题
广播交易是否代表已经完成?广播只是将请求传播到网络;它还需要经过验证并被纳入链上记录。理解交易状态时,要区分发送请求与网络接受记录。
不可篡改是否意味着绝对无法改动?更准确的理解是,改动历史会破坏后续密码学关联,还必须克服共识机制施加的约束。安全性需要结合具体网络机制讨论。
智能合约是否保证结果正确?代码按规则执行,与规则符合人的真实意图,是两个不同问题。理解程序的条件和行为,是理解合约功能的必要部分。