DeFi(去中心化金融)是通过智能合约实现的金融协议,包括资产交易、借贷、保险等。DeFi的特点是去中心化和自动运转,没有第三方机构进行管理和维护,因此合约风险控制成为行业难题。
DeFi既是金融又是科技,主要存在以下风险:
1. 代码风险:包括以太坊底层代码、智能合约代码、钱包代码等风险。例如,DAO事件和Uniswap漏洞攻击都源于代码问题。
2. 业务风险:指业务设计中的漏洞,容易被人操纵。例如,FOMO3D被堵塞攻击和dZx错误使用Uniswap预言机被攻击的情况。这里的人称为套利者,他们对DeFi项目既有不利的一面也有有利的一面。
3. 市场波动风险:DeFi设计时未考虑到所有变量,导致在市场极端情况下出现穿仓。例如,MakerDao在3月12日的市场波动风险。
4. 预言机风险:预言机提供全局变量,是大部分DeFi的基础。如果预言机遭遇攻击或出现故障,DeFi将崩溃。预言机的去中心化是未来DeFi最关键的基础设施。
5. "技术代理"风险:普通用户对智能合约和区块链不熟悉,使用了中心化团队开发的交互工具,可能存在风险。
任何设计DeFi项目时都需要考虑这些风险。完整的流程不仅仅是文档内的提示,还需要一些风险管理手段。这些手段大部分以去中心化的方式进行,少量以社区治理的方式完成。
我们提出一个DeFi风险管理框架,主要分为事前、事中和事后:
- 事前:对合约代码进行形式化验证,确定方法、资源和指令的边界,建立在论证过的方法组合上。
- 事中:设计停机和异常触发机制来识别和干预攻击行为。异常触发是对合约运行中超预期现象的一种控制管理。
- 事后:包括修正代码漏洞、链上治理、合约分叉、保险机制和追踪与合作机构合作追踪损失。
以上是我们对DeFi安全的一个系统框架,希望可以供大家参考。目前行业对安全的理解还比较早期和传统,如果不能引入新的思想,无法适应未来的发展。