智能合约重构社会契约赛迪智能合约安全标准
Posted thefist11
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了智能合约重构社会契约赛迪智能合约安全标准相关的知识,希望对你有一定的参考价值。
1. 安全实施框架
根据运行机制可分为运行与规划、合约创建、安全审计、合约触发、合约运行、合约废止六个阶段。
2. 编译部署安全要求
- 区块链系统应校验智能合约的编译实体、写入策略和签名内容。
- 区块链系统应将智能合约内容的哈希值写到区块链账本中。
- 区块链系统的共识机制安全可靠,才能保证智能合约安全。(必须使用拜占庭容错算法或其优化算法,并通过第三方验证)
3. 智能合约触发安全要求
3.1 直接接口调用安全要求
- 接口名称应明确接口功能,应具有可读性和可维护性;
- 直接接口调用应执行规定合约调用流程。
3.2 合约间调用安全要求
- 应丰富智能合约的内置方法和原生库实现不官使用合你间调用,避免合约间调用可能存在的不确定因素安全风险;
- 宜减少外部合约调用防止不受信任的外部合约引发的风险和错误出现
3.3 预言机调用安全要求
- 接口名称、输入参数、返回数据应符合 API 接口规范;
- 接口描述文件应为预言机提供的结构化描述语言;
- 接口协议应包含安全传输协议;
- 预言机本身应通过第三方的安全性和可靠性评估;
- 预言机的安全和可靠性评估应为定期进行的持续行为;
- 当智能合约发生错误,应考虑预言机是否提供了错误数据,如果发现预言机故意提供错误教据,应及时更正或者更换预言机;
- 预言机提供数据时,也应提供数据可靠性指标。
4. 智能合约运行安全要求
- 应提供运行载体,如虚拟机、容器等,保证智能合约运行环境与外隔离,调用智能合约不能修改区块链系统;
- 在运行智能合约前,应检查该智能合约和链上智能合约的哈希值的一致性;
- 应当将智能合约代码转换成运行环境可执行的格式,保证合约在智能合约运行时环境中的执行结果具备事务一致性;
- 应校验智能合约的实例化实体、通道写入策略和签名;
- 宜将合约状态作为合约账户的属性、合约内容的哈希值保存在区块链网络
- 对于与区块链系统外部数据进行交互的智能合约,外部数据必须先经过验证存在区块链上,然后再传递至智能合约;而智能合约必须先将数据写在区块链上,才能输出到外面系统。严禁智能合约系统和外界直接对接,以维持区块链溯源机制;
- 当智能合约出现错误时,宜提供智能合约挂起或重启恢复功能。
以上是关于智能合约重构社会契约赛迪智能合约安全标准的主要内容,如果未能解决你的问题,请参考以下文章