Home > 观点 > 以太坊在智能合约安全审计标准方面取得进展
观点

以太坊在智能合约安全审计标准方面取得进展

以太坊在智能合约安全审计标准方面取得进展

企业以太坊联盟发布了智能合约安全审计规范,以确保智能合约安全的一致性。以太坊生态系统继续见证一系列活动,个人和组织部署的代币合约,为矿池增加流动性并部署智能合约以支持广泛的商业模式。虽然值得注意的是,这种增长也充满了安全漏洞,使得去中心化金融协议容易受到黑客攻击和诈骗。

根据海外网站最近的调查结果显示,从年初到 2022 年 7 月,与虚拟货币相关的黑客攻击增加了 58.3%。该报告进一步指出,在这段时间内,黑客损失了 19 亿美元,这一数字不包括 2022 年 8 月 1 日发生的价值 1.9 亿美元的 Nomad 桥梁黑客事件。

尽管开源代码可能对区块链行业有益,但不幸的是,它很容易被网络犯罪分子研究以寻找漏洞。智能合约的安全审计旨在解决这些挑战,但该程序缺乏行业标准,因此产生了复杂性。

企业以太坊联盟安全级别工作组主席克里斯心表示的那样,随着以太坊区块链行业的发展,需要一个成熟的框架来评估智能合约的安全性。为了解决这个问题,科迪与几位具有审计和安全专业知识的企业以太坊联盟安全级别工作组成员代表于 2020 年 11 月帮助建立了安全级别工作组。此后,该组织一直在起草一份智能合约规范或行业文档草案标准,旨在提高智能联系人背后的安全性。

最近,工作组宣布发布安全级别规范 v1。企业以太坊联盟安全级别工作组技术项目主管查莱斯内维尔表示,该规范描述了适当的安全审计要求作为最低质量衡量标准的智能合约漏洞:“它与开发人员使用 Solidity 作为编码语言的所有基于以太坊虚拟机的智能合约平台相关。在 Splunk 最近的一项分析中,这远远超过了主网合约的四分之三。但是,也有一些私有网络和项目基于以太坊技术堆栈但运行自己的链。该规范对他们和对主网用户帮助保护他们的工作一样有用。”

从技术角度来看,查莱斯内维尔解释说,新规范概述了组织在进行智能合约安全审计时应考虑的三个级别的测试。

他补充说,高级测试要求进行更严格的静态分析,并指出这包括要求人工审核员确定是否需要使用某个功能,或者关于代码安全属性的声明是否合理。

查莱斯内维尔进一步解释说,基本上的测试提供了对测试代码实现的业务逻辑的分析。“这是为了确保代码不会出现已知的安全漏洞,同时还要确保它正确地实现了它声称的内容。”

还有一个可选的 “推荐的良好实践” 测试可以帮助增强智能合约背后的安全性。内维尔说:“使用最新的编译器是‘推荐的良好做法’之一。在大多数情况下,这是一个非常简单的做法,但有很多原因导致合约可能没有使用最新版本部署。其他良好做法包括报告新漏洞,以便可以在更新规范中解决这些漏洞,以及编写干净易读的代码。”

总体而言,整个规范中有 107 项要求。根据查莱斯内维尔的说法,其中大约 50 个是由 Solidity 编译器中的错误引起的要求。

查莱斯内维尔指出,以太坊官方安全组所认为的安全级别规范的最终目的是帮助审计师向客户证明他们正在以适合行业的级别运营。“审计师可以指出这个行业标准来建立基本的可信度。”

区块链安全公司 CertiK 的首席执行官兼联合创始人阐明了这一点,拥有这样的标准有助于确保预期的流程和指导方针。然而,他指出,这些标准绝不是表明智能合约完全安全的“橡皮图章”:“重要的是要了解并非所有智能合约审计员都是平等的。智能合约审计始于对智能合约被审计的特定生态系统的理解和经验,以及所使用的技术堆栈和代码语言。并非所有代码或链都是平等的。”

鉴于此,希望对其智能合约进行审计的公司应该超越审计员声称拥有的认证,并考虑审计员的质量、规模和声誉。

从开发人员的角度来看,这些规范可能被证明是非常有益的。新兴的基于区块链的社交网络 Myco 的联合创始人马克·贝林表示,这些标准对于帮助智能合约开发人员更好地了解安全审计的期望将非常有价值。他表示:“目前,智能合约安全性有许多分散的资源,但审计人员在评估项目的安全性时并没有具体的规则手册。使用该规范,安全审计员和他们的客户可以在同一页面上检查什么样的安全要求。”

该规范的开发者和贡献者迈克尔·勒韦伦进一步解释,这些规范通过提供一个已知安全问题的清单来帮助检查。“许多 Solidity 开发人员最近没有接受过 Solidity 开发的安全方面的正规教育或培训,但安全性仍然值得期待。拥有这样的规范可以更容易地弄清楚如何更安全地编写代码。”

迈克尔·勒韦伦还指出,大多数规范要求都以直截了当的方式编写,使开发人员易于理解。但是,他评论说,并不总是很清楚为什么包含要求。“有些有漏洞的外部文档链接,但有些没有。如果开发人员有更清晰的示例来说明合规和不合规代码的外观,他们会更容易理解。”

综合考虑,安全级别的规范通过建立智能合约审计指南来帮助推进以太坊生态系统。然而,内维尔指出,前进中最具挑战性的方面是预测漏洞如何发生。他说:

“这个规范并没有完全解决这些挑战。不过,规范所做的是确定某些步骤,例如记录合同背后的架构和业务逻辑,这对于实现彻底的安全审计很重要。”

随着 Web3 的发展,不同的链将开始制定类似的标准。例如,以太坊行业的一些开发人员正在提出自己的智能合约要求来帮助其他人。例如,RTFKT 的首席技术官塞缪尔·卡迪略最近在推特上表示,他为开发人员创建了一个系统,可以根据开发方面的好坏要素公开评估智能合约。

尽管所有这些都是朝着正确方向迈出的一步,但顾指出,标准需要时间才能被广泛采用。此外,内维尔解释说,安全从来都不是一成不变的。因此,他解释说,个人可以向编写规范的工作组发送问题。“我们将接受这些反馈,并查看更广泛的公共空间中的讨论内容,因为我们希望更新规范。”

http://xzh.i3geek.com

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据