
从共享记录理解应用边界
现代区块链模式的应用边界是什么,可以从三个问题判断:哪些记录需要多方共享,执行规则依赖哪些数据,结果是否需要链外主体落实。“现代”并不改变这些基础约束,不同架构仍需说明各自的信任条件。
NIST《Blockchain Technology Overview》将区块链概括为分布式实现、能够显现篡改并抵抗篡改的数字账本,并将已发布交易不能更改的表述限定在网络正常运行条件下。其核心价值是维护共同记录;记录内容是否符合现实,还需要其他证据。

适用条件:共享账本与明确规则
当多个参与方需要围绕同一组记录协作,并核验交易历史时,共享账本具有适用基础。判断是否需要区块链,应先明确共同记录的对象、参与者及记录规则。如果需求只是单方保存信息,共享账本这一特征本身不足以说明采用区块链的必要性。

智能合约适合处理条件明确、输入可供节点一致验证的规则。例如,验证签名或判断某项操作是否满足合约条件,都可以基于链上数据完成。涉及现实事件的条件,则需要额外的数据获取与验证安排。
数据边界:预言机连接链外信息
以太坊开发文档说明,智能合约默认无法直接访问链外信息,预言机负责将外部数据引入链上。这样,节点能够依据相同输入执行计算,但应用也会依赖数据来源和传输机制的正确性、可用性。
以天气触发的业务为例,合约可以根据收到的天气数据判断条件是否成立,却无法仅凭执行结果证明传感器准确。多个节点使用同一错误输入,也可能得到一致结果。因此,数据来源、更新时间以及冲突信息的处理方式,都是应用边界的一部分。
常见问题:上链是否意味着真实和自动落实
上链后就能证明信息真实吗?只能据此讨论记录及其后续完整性,不能自动证明最初录入的事实。追溯记录要对应现实物品或事件,仍需可靠的采集和核验环节。
智能合约能包办现实执行吗?链上程序可以按规则改变链上状态;涉及外部设备或服务,还需要链外系统配合。预言机能够传递信息,但现实动作能否完成,取决于相应系统是否正常工作。
采用多个预言机就能消除信任问题吗?仍需检查它们是否依赖相同数据源,以及数据中断或报告不一致时如何处理。增加信息提供者,并不自动保证输入真实。
参考来源
NIST,Blockchain Technology Overview,https://csrc.nist.gov/pubs/ir/8202/final。
以太坊开发文档,Oracles,https://ethereum.org/developers/docs/oracles/。