
基本架构解决什么问题
区块链的基本技术架构的应用边界是什么?核心是区分共同记录的可信性与现实事实的真实性。区块链让参与节点按共同规则验证、保存和更新记录;涉及外部事实时,还需要数据来源与核验机制。
Bitcoin Developer Guides 的区块链章节介绍了比特币的基本结构:交易通过默克尔树汇总,区块通过前一区块头的哈希相连,全节点独立验证区块。工作量证明与链选择规则共同提高重写历史的成本。这些机制说明了比特币如何维护账本,但不能直接代表所有区块链的具体设计。

记录完整性的边界
哈希关联使历史内容的改变能够被检验,记录保护还依赖共识机制及其安全条件。因此,“不可篡改”不宜理解为任何情况下都绝对无法修改。

例如,将一份交接记录的摘要写入链上,可以用于核对后来出示的文件是否与该摘要对应。货物是否实际交付、记录是否如实填写,则需要另外的证据。保存记录与核实记录所描述的事实,是两个不同环节。
智能合约与外部数据的边界
Ethereum 的预言机文档说明,以太坊智能合约默认不能直接获取链外信息。预言机将外部数据引入链上,使合约能够使用一致的输入执行规则,同时引入数据正确性、可用性和提供者责任等问题。
据此,涉及天气、设备状态或交付结果的应用,需要明确由谁报告事实、如何处理不同报告,以及数据中断时如何响应。多个节点接受同一个输入,并不自动证明这个输入符合现实。
哪些条件下适用
当多个参与方需要共同核验记录,且业务规则能够表达为确定的验证条件时,区块链具有应用基础。例如,链上输出是否已被使用,可以依据账本历史检查;现实物品是否合格,则无法仅凭链上记录完成判断。
应用设计应明确哪些状态由链上规则决定,哪些事实由外部系统提供。需要外部信息的流程,还应规定数据来源、更新方式和争议处理办法,避免把共识范围扩大到系统无法验证的事项。
常见问题
智能合约能保证业务结果正确吗?它可以按代码和输入执行,但业务结果还取决于规则是否准确、输入是否可靠,以及线下执行是否完成。
交易进入区块就永远确定了吗?比特币可能出现竞争分支,节点依据累计工作量选择有效链,近期记录可能受到链重组影响。应用对确认状态的解释需要符合所用链的机制。
预言机能消除外部信任吗?它提供连接外部信息的途径,仍需评估信息来源和传输过程。区块链的应用边界也因此延伸到数据提供者、外部系统与实际执行环节。