在BenFen上使用Move语言开发智能合约,开发者应遵循以下核心安全原则,以充分利用语言优势,构建稳健的应用。
-
优先使用官方标准库:BenFen提供的标准库经过了形式化验证,是构建安全应用的基础。应优先使用标准库中的模块来处理资产,而不是重新发明轮子。
-
深入理解资源所有权:清晰地管理每个资源(Resource)的所有权、存储和生命周期是Move安全的核心。确保资产绝不会意外滞留在合约内部或被错误处理。
-
善用形式化验证:对于核心的、处理高价值资产的合约,强烈建议编写Move Specification Language (MSL) 规范,并使用Move Prover进行形式化验证,以在部署前通过数学方法证明其不存在某些类型的漏洞。
-
明确定义权限与能力:谨慎地定义和授予函数的能力,确保只有预期的角色才能执行关键操作(如铸币、销毁资产)。
-
进行严格的链下测试:在部署到主网前,在测试环境中对所有可能的路径和边缘情况进行全面测试。