
分布式账本与区块链
区块链技术系统涉及哪些技术概念,可以围绕三个问题理解:记录如何保存、操作如何验证、多个节点如何认可共同的记录。NIST《区块链技术概述》将区块链描述为以分布式方式实现、具有篡改可察觉性和抗篡改能力的数字账本。
分布式账本强调多个节点共同维护记录;区块链还通过区块之间的关联组织历史数据。其可信性依赖技术规则和网络运行条件,“不可篡改”应理解为正常运行条件下的抗篡改能力,不能视为任何情况下都成立的绝对保证。

密码学:哈希与非对称密钥
密码学哈希函数把输入数据转换为摘要,可用于检查数据是否发生变化。非对称密码学使用相互关联的公钥和私钥,数字签名则用于验证操作是否获得相应密钥持有者的授权。

这两类技术解决的问题不同:哈希帮助检验数据完整性,签名帮助验证授权。通过密码学校验,并不意味着记录所描述的现实事件一定真实。
共识机制:共同认可记录的规则
节点需要按照共同规则判断哪些记录有效,以及如何形成一致的账本历史,这涉及分布式共识。工作量证明、权益证明和权威证明是不同的机制类别,其参与条件与信任假设存在差异。
理解共识机制时,应关注谁能参与、如何产生和确认记录,以及出现冲突时如何处理。并非所有区块链都依赖挖矿,也不能把某一种机制的特点推广到全部系统。
交易、钱包与点对点网络
比特币开发者指南将区块链、交易、钱包、点对点网络和挖矿等列为独立主题,说明一个区块链系统包含相互配合的多个模块。交易表达需要验证并写入账本的操作,网络承担节点间的信息传播。
钱包通常帮助用户管理密钥并构造或签署交易。钱包界面展示的信息、网络传播的信息和最终被账本接受的记录,属于不同环节;理解这些区别有助于避免把提交操作等同于最终确认。
合约、预言机与分叉
智能合约涉及按预定规则执行的程序逻辑;当程序需要链外信息时,便涉及预言机。链上验证可以检查输入和执行是否符合规则,但外部信息的真实性仍取决于其来源与传递机制。
分叉与规则差异或升级有关,软分叉和硬分叉涉及不同的兼容关系。规则如何变化、节点是否采用新规则,会影响系统能否继续维护共同记录。
适用条件与常见问题
区块链适合讨论多个参与方共享记录、验证历史和协调写入的问题。是否需要采用它,还应结合参与方之间的信任关系、访问权限、隐私要求与运行成本判断。
区块链是否等于加密货币?加密货币是其应用方向之一。上链是否代表内容真实?账本能够帮助保留和核验记录,但现实信息仍需可靠的采集与审核。系统是否完全没有中心?这取决于节点参与方式、权限安排和治理结构。