
一、先区分程序能力与监管范围
智能合约是运行在区块链上的程序,按预设规则处理输入并改变状态。以太坊开发文档介绍的是以太坊技术机制,不能把其部署方式、费用或权限特点直接视为国内所有区块链系统的共同条件。
《区块链信息服务管理规定》针对在境内通过网站、应用程序等向社会公众提供的区块链信息服务。判断适用要求,应先看实际服务形式和主体角色,而不是仅看是否使用了智能合约。
二、业务条件:规则清楚且结果可核验
适合程序执行的业务,应能明确回答由谁触发、需要什么输入、满足什么条件、产生什么结果。对于依赖主观评价或临时协商的事项,不宜把全部判断直接交给代码。
例如,判断记录是否包含必要字段,与判断现实履约是否完全合格,是不同问题。前者容易转化为程序规则,后者通常还需要外部证据和争议处理机制。这是场景选择的判断方法,并非具体应用已经有效运行的结论。
三、数据条件:链外事实需要可靠输入
以太坊开发文档指出,智能合约自身不能直接获取现实世界事件,需要通过预言机等机制引入链外数据。自动执行不等于自动辨别输入真伪。
涉及物流、验收等外部事实时,应明确数据提供方、确认权限及错误处理办法。如果输入存在争议,程序执行得再准确,也可能得到不符合业务实际的结果。
四、技术条件:安全与异常处理可落实
技术评估不能停留在代码能否运行,还应覆盖权限控制、密钥管理、边界情况测试及必要的安全审查。对暂停、升级或人工复核机制,应事先明确授权范围,避免引入不受约束的控制权。
需要区分修改程序与撤销既有执行结果。不能因为系统支持升级,就假定历史状态可以任意恢复;异常处理能力应结合具体链和合约设计判断。
五、合规条件与常见问题
属于上述规定范围的服务,需落实身份认证、服务协议、信息安全管理、备案等义务;上线新产品、新应用、新功能,应按有关规定进行安全评估。相关规定还要求具备违法信息处置能力,不能以链上记录难以更改为由忽略管理责任。
所有智能合约都要单独备案吗?该规定要求区块链信息服务提供者履行备案手续,不能据此推导每段代码都须单独备案。
代码能替代协议吗?程序规则与双方权利义务并非同一层面。业务设计仍应说明代码执行范围、异常责任及争议处理方式,不能仅凭执行成功认定全部法律和业务问题已解决。