13.审计报告
最后更新于
最后更新于
CertiK 于 9 月 29 日就 XEN Crypto 审计提供了初步意见。9 月 30 日,他们提交了最终报告。存在不同安全级别的三个问题。我们查看报告并让社区成员审查 XEN 智能合约代码。
XEN 审计报告 网络安全公司 CertiK 进行了手动 XEN Crypto 代码审查。
XEN Crypto 的代码存储库可以在这里找到:https://github.com/FairCrypto/XEN-crypto,
Litepaper 可以在这里找到 https://faircrypto.org/xencryptolp.pdf,
审计报告页面在这里:https://www.xencrypto.io/what-is-Xen-Tokenomics/。
在存储库中,Contracts/XENCrypto.sol 是 XEN Crypto 源代码的主要部分,只有 417 行长。
代码简单明了。 Leonid Belyaev 和 Nicholas Pettas 是主要贡献者。
CertiK 使用静态分析技术发现了三个问题。一个问题是次要的,涉及代码和文档之间的不一致,另一个是关于合同目的的争论,最后一个是关于惩罚计算的限制。
CertiK 建议的代码修复程序已被开发人员及时应用,并且文档已更新。
CertiK 在报告中询问了 Migrations.sol 的目的。根据 Belayev 的说法,“这是 Truffle 包在开发/测试阶段附带的辅助合约。我们不打算在生产中使用它。”
合约 migrations.sol 已被移除,AMP 计算已被简化。
代码与文档的不一致与 AMP 减少的方式有关。审计报告所指的文件指出:“……奖励放大器 (AMP) 是一个常数,奖励增加 3,000 倍,每 30 天减少 30 倍,直到达到 1 的平台期。”;而 CertiK 则断言源代码不会以 30 天的间隔减少该值。
事实上,由于 REWARD_AMPLIFIER_STEP 恰好是 30,奖励放大器应该每天减少 1。为了每月减少 30(大约),计算需要先除以 SECONDS_IN_MONTH,然后再乘以 REWARD_AMPLIFIER_STEP”,CertiK 写道。
还有一个关于处罚的不一致之处,其中 2 天和 5 天的处罚百分比降低了 1%。延迟铸造 2 天的罚款应为 3%,延迟 5 天的罚款应为 35%。
“因此,处罚有两件事:
1) 2 起案件的百分比下降(必须处理四舍五入函数)。我们修复了轻质纸以匹配坚固性结果。
2) 在某些潜在情况下,罚款的计算可能会导致溢出(人们希望在到期后超过 256 天领取薄荷糖,这无论如何都是不可能的)。我们完全按照他们的建议在审计后提交中修复了这个问题。我们还在计算中发现了一些差异,并在审计后对其进行了修复。
此外,我们决定添加另一个 getter 来检查当前 MaxTerm 的声明/挖掘”,Leonid Belayev 说。
最高惩罚已从 100% 更改为 99%。此更改可防止用户在 7 天后丢失整个MINT,并且他们始终可以在任意时候回来领到 1%币。
独立于 CertiK 的审计报告,YouTuber 和 XEN 社区成员 Fashioncoder6 提供了 XEN Crypto 的源代码审查。她带我们浏览 GitHub 存储库,审查和解释代码的不同功能和参数。她解释了 XEN 在幕后工作的来龙去脉。下方是视频:
Crypto 代码还有一个有趣的销毁功能,允许销毁 XEN 代币并创建可被连接的 DeFi 服务使用的销毁记录,这些服务将建立在 XEN Crypto 智能合约之上。