LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 币圈百科 > 金融分布式账本技术安全规范之智能合约

金融分布式账本技术安全规范之智能合约

2021-04-14 喵喵说链 来源:区块链网络

基本要求

可支持非图灵完备智能合约和图灵完备智能合约,两者都应符合安全要求。?

版本控制

应在源代码中通过金融分布式账本指定的方式定义版本号。

应在配置文件中定义版本号,该配置文件应与智能合约代码一同部署。

应在部署或升级操作时定义版本号。

智能合约升级后,应在金融分布式账本中保留前一版本。

交易信息中应明确调用的智能合约版本。?

访问控制

应有相应的机制控制用户对智能合约的访问。

应有相应机制在支持智能合约之间相互访问的条件下,限制错误智能合约的感染。

应有相应机制控制智能合约对外部环境的访问。

宜针对智能合约提供隔离的执行环境。

复杂度限制

宜从合约源代码总长度、资源消耗和执行时间等方面限制合约代码的复杂度。

原子性

智能合约的执行应有原子性,支持执行过程中发生错误时的回滚操作。

一旦出现异常,所有的执行应被回撤,以避免中间态导致数据不一致。

一致性

智能合约执行应具备一致性,合约在所有金融分布式账本网络节点上的执行结果应完全相同。

多个节点同时实现合约时,应保证数据的完整性且数据同步不相互干扰。

安全审计

智能合约的安全审计和评估对象应包括智能合约设计与业务逻辑安全、源代码安全审计、编译环境审计及相关的应急响应机制等。

智能合约应经过相关专业技术人员的审计,并保留审计记录。

生命周期管理

从部署到废止的生命周期满足以下要求

——应有相应机制控制智能合约的部署行为,防止恶意部署智能合约;

——应提供智能合约的冻结功能,防止智能合约的漏洞持续影响系统;

——应提供智能合约升级方案和机制以修复智能合约的漏洞;

——应提供智能合约的废止功能;

——应支持权限可控的智能合约升级方法;

——应支持从金融分布式账本中获取与合约相关的原始数据来解析智能合约在金融分布式账本上的业务数据;

——应在合约更新升级、重新部署后,能安全地将原合约数据迁移至新合约。

攻击防范

应有相应机制保证系统能对抗由智能合约引起的DDoS攻击,防止其长时间占用资源。

应有相应机制保障在系统遭受DDoS攻击、服务受到影响时,智能合约的运行可被干预。

应有相应机制防止隔离执行环境中的智能合约访问其执行环境之外的资源。

安全验证

应基于智能合约安全规则库和问题合约模式库实现智能合约的漏洞检测,可从合约源码和字节码两方面进行安全扫描。

应实现基于安全规则和配置信息自动生成安全智能合约模板的机制。

宜通过形式化方法验证智能合约代码的正确性。

—-

编译者/作者:喵喵说链

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...