
先明确溯源的适用范围
在乡村农产品等场景中,区块链可以用于保存和共享溯源记录,但不能单凭上链证明产地、品质或检测结论真实。需要区分两个问题:记录提交后是否被改动,以及记录最初是否符合实际。本文讨论通用技术条件,不代表任何具体项目已经达到这些要求。
链外数据如何进入链上
以太坊预言机文档说明,智能合约默认不能直接读取链外信息,需要通过预言机等机制接收外部数据;其中的重要挑战包括正确性、可用性以及提供者的责任归属。

落实到溯源设计,应明确每条记录来自人工填报、设备还是外部系统,并保留提供者和核验依据。来源身份可确认、传输过程未被篡改,并不等于原始测量或填报必然正确。多个接入节点若依赖同一错误来源,也不能自动消除风险。

记录之间必须形成可追踪关系
W3C的PROV-DM将溯源描述为实体、活动和责任主体之间的信息关系,也包含时间与派生关系。这一模型有助于不同系统理解和交换溯源信息,但本身不是产品质量认证。
据此设计农产品记录时,可以把批次作为实体,将加工、分装、交接作为活动,并关联参与主体。尤其要明确拆分或混合后形成的新批次与原批次的关系。只有一串时间记录,而没有前后关联,仍然难以追查来源。
数据缺失和冲突不能被隐藏
适用条件不仅是能够上传,还包括需要时能够取得数据。系统应区分业务发生时间、采集时间和提交时间,避免把延迟补录误认为实时记录。
对于缺失、过期或相互矛盾的数据,应预先约定标记、复核和处理方式。若记录还会触发智能合约,应明确哪些异常需要暂停自动处理,不能把没有收到异常信息视为已经核验合格。
责任与常见误区
溯源记录应能回答谁提交、谁核验、谁负责解释。错误发生后,需要保留原记录与更正记录的关联,让查询者能够理解变化原因,而不是只看到一个失去背景的新结论。
常见问题是把“有查询入口”等同于“可信溯源”,或把“上链成功”等同于“产品合格”。更有意义的判断标准是:实物与记录如何对应、关键环节是否有证据、缺失信息是否明确呈现,以及责任主体能否被追溯。区块链记录应支持这些核查,而不能替代它们。