
链上资产首先受链上规则约束
理解区块链链上资产的应用边界是什么,可以从三个问题入手:谁有权改变资产状态,改变状态需要什么条件,这些条件由谁验证。条件越能直接用链上数据表达,执行过程越能在链内完成;涉及外部事实时,就需要额外的信息与信任机制。
比特币开发文档介绍,普通交易通过输入引用此前的输出,并创建新的输出。尚未被花费的输出构成可支出的余额,花费它们需要满足相应脚本条件。这说明链上资产的控制可以由可验证的授权规则表达。

适用条件:授权和执行条件能够明确验证
链上规则适合处理能够明确判断的条件,例如签名是否有效、被引用的输出是否可花费、支出是否满足脚本要求。这里验证的是交易是否符合协议规则,不能仅据此推断现实中的交付或承诺已经完成。

不同区块链的编程能力也有差异。比特币开发文档所述脚本采用受限制的设计,不能把其他智能合约平台的功能直接套用到比特币上。评估应用范围时,需要以具体网络支持的规则为准。
外部事实需要数据接口
以太坊预言机文档说明,智能合约默认无法直接访问链外信息。预言机把外部数据引入链上,供合约使用;外部系统也可以接收链上信息并作出响应。其关键要求包括数据正确、持续可用,以及提供者具有提交可靠信息的激励和责任约束。
因此,依赖天气条件的资产划转,与仅检查链上签名的划转有不同边界。前者还需要确定观测来源、更新时间和数据分歧的处理方式。节点对同一份输入执行出一致结果,并不意味着输入所描述的现实情况必然准确。
常见问题:记录、真实性与履约有什么区别
资产记录上链,是否就能证明对应物品真实存在?仅靠交易记录不能得出这个结论。链上规则可以验证记录及其变更是否符合条件,物品是否存在仍需要链外证据。
预言机是否消除了外部信任?它提供了连接外部信息的机制,但数据源错误、更新中断等问题仍需处理。判断应用是否成立,应同时检查链上规则与外部信息的可靠性。
链上操作完成,是否等于现实服务已经履行?两者需要分别验证。例如,链上事件可以成为外部设备执行动作的依据,但设备是否实际响应,仍取决于外部系统。应用边界应覆盖从数据输入到实际执行的完整过程。