
从技术组成理解区块链
讨论“前景广阔的区块链技术涉及哪些技术概念”,首先要理解区块链如何让多个参与者共同维护记录。其基础包括数据组织、交易验证和网络共识;应用是否合适,还取决于参与者之间的信任关系与验证需求。
分布式账本、哈希与默克尔树
比特币开发者指南介绍了这样的结构:全节点独立验证区块,区块头引用前一区块的哈希,交易通过默克尔树汇总为根哈希。交易以先前的未花费输出为输入,同一输出不能重复花费;出现有效分支时,节点依据累计工作量选择链。
这些概念分别解决不同问题。哈希链接让历史改动能够被检测,默克尔树支持核验某笔交易是否包含在区块中,未花费交易输出模型则帮助节点判断哪些输出仍可使用。包含证明本身并不等于对交易全部规则的验证。
共识、抗女巫攻击与分叉选择
以太坊开发文档把共识机制解释为协议、激励及相关规则的组合。工作量证明和权益证明承担抗女巫攻击与区块生产者选择等作用;分叉选择负责处理竞争分支。文档描述的以太坊权益证明机制还使用按质押权重计算的投票,以及奖励和惩罚。
女巫攻击指一个参与者制造大量身份来扩大影响。如果网络只按身份数量分配权力,创建身份就可能成为攻击途径。将参与权重与计算资源或质押资源关联,可以增加这种操纵的成本,但安全性仍依赖完整协议及其运行条件。
这些技术在什么条件下有用
当多个参与者需要核验共同历史,并按一致规则判断记录是否有效时,区块链的这些组件具有意义。判断方案时,需要分别考察数据如何保存、交易如何验证、分歧如何解决,以及破坏规则需要付出什么成本。
不同链的具体规则不能直接互换。例如,理解比特币的交易输出模型,有助于认识防止重复花费的方式,但不能据此认定所有区块链都采用同一种状态模型。
常见问题:记录是否绝对不可修改
哈希使改动留下可检测的痕迹,共识规则进一步约束网络接受哪一份历史。因此,“难以篡改”具有协议和资源条件,不能解释成任何情况下都无法改变。
另一个误区是把“最长链”理解为区块数量最多的链。对比特币而言,关键是有效链的累计工作量;区块高度也不能唯一标识区块,因为竞争分支可能在同一高度出现不同区块。