
如何认识区块链
NIST《区块链技术概述》将区块链描述为分布式实现、能够显露并抵抗篡改的数字账本。参与者可以在共享账本中记录交易,网络正常运行时,已发布的交易记录不能被随意更改。理解这一特征,需要保留其运行条件,不能将其扩大为任何情况下都绝对安全。
以太坊智能合约介绍说明,智能合约是部署在链上、按代码执行的程序。它能够根据预先定义的规则处理交互,但获取现实世界信息需要预言机等外部数据机制。账本记录与程序执行共同构成应用基础,也各自存在能力边界。

共享账本适用的基本条件
首先,业务需要多方共享并核验同一组记录。例如,在跨机构交接的假设场景中,各方需要确认记录顺序、提交主体和后续变更,才有理由评估共享账本。仅有单方保存数据的需求,并不足以说明需要区块链。

其次,参与方必须能够约定共同规则,包括谁能提交记录、谁负责验证、如何识别权限,以及出现争议时如何处理。技术上的共同记账仍需配合业务治理,不能自动消除组织之间的分歧。
数据与智能合约的适用条件
业务必须具有可靠的数据输入机制。记录难以被修改,只能增强记录保存后的可核验性,不能证明最初录入的内容符合现实。涉及货物状态、检测结果等信息时,还需要明确采集、审核和责任归属。
使用智能合约还要求规则能够清楚地表达为程序,输入和执行结果具有明确含义。依赖主观判断、临时协商的事项,需要保留人工处理安排。使用链外数据时,也应评估数据提供者及传输过程的可靠性。
实施前还需评估什么
适用性评估还应覆盖隐私、性能和维护成本。需要明确哪些参与方能够看到数据、哪些内容应保留在链外,以及业务能否接受相应的确认流程与运行开销。
对合约应用,应提前明确权限管理、程序检查、异常处理和规则变更方式。按代码执行意味着错误规则也可能被执行,因此不能把自动化本身视为正确性的保证。
常见问题
上链后是否就能保证真实?不能。账本机制与现实信息的真实性属于不同问题,后者仍依赖可信采集与核验。
智能合约是否可以独立判断现实事件?不能直接做到。它需要通过外部数据机制获得相关信息,判断结果也受输入质量和程序规则约束。
所有业务都适合上链吗?并非如此。若缺乏多方共享核验需求,或者无法建立共同规则,应先比较普通数据库与共享账本各自满足需求的程度。