译者序:DeFi协议Uniswap及dForce于4月18、19日相继受到重入攻击,损失金额高达数千万美元。有惊无险的是,dForce已追回被盗资产并归还用户。一时之间,矛头直指ERC-777代币标准。然而,ERC777 本质上作为ERC-20的扩展,目的是增加新功能从而提升用户体验。我们是否真的要因噎废食?DeFi又应该如何突破安全瓶颈?
仅仅只是一个周末的时间,智能合约帐户被盗金额高达数千万美元。
Uniswap的imBTC资金池遭到黑客攻击,导致价值30万的代币丢失。时隔不久,dForce也遭到了类似的攻击,尽管大部分的失窃加密货币目前已被归还。这两起事件都是利用重入攻击向量漏洞发起攻击。
有人声称ERC-777代币标准的某些函数存在漏洞是造成这两起攻击的原因。但是,重入攻击漏洞已司空见惯,尤其在2016年的DAO攻击发生期间名声大噪。因此实际上,攻击与ERC-777代币标准本身无关。
韩国DeFi项目Donnie Finance将向IOST用户首次空投DON总供应量的5%:据IOST官方消息,此前Donnie Finance团队决定将DON(Donnie Finance通证)总供应量的10%空投给IOST持有者,并将通过几次活动发放。近日Donnie Finance确认将向IOST用户首次空投DON总供应量的5%。韩国最受信任的交易所之一UPbit已正式发布公告:将支持IOST快照DON空投活动。
Donnie Finance已推出7款产品,DON也已上线韩国头部交易平台CoinOne,2月下旬Donnie Finance即将推出流动性挖矿。[2021/2/18 17:26:51]
重要的是,随着这个新兴行业的发展,我们必须要认识到各种协议的优点和缺点,鼓励开放协作与争议,共同致力于提高行业标准。
怪罪于代币标准是无建设性的,并且会误导大众。旨在解决旧问题的新代币标准本身更具备安全性,却因此或许面临被质疑的风险。反之,我们要对这种不断演变的事实进行周全的分析并采取行动。
ERC-777是什么?
Open DeFi联盟公布首批新成员:Open DeFi联盟迎来首批新成员:Aave,Balancer,BlockScience,dydx,Ocean Protocol,Outlier Ventures,Quantstamp和SuperRare。该联盟目前已有16名成员,其中4个为锁定资产全球排名前20的DeFi项目。Open DeFi联盟初始成员包括红杉资本、Blockpower Capital、dForce、MCDEX、Antelope Holdings、DeBank、MoonSwap以及Conflux。
Aave创始人兼首席执行官Stani Kulechov感谢了Open DeFi联盟对DeFi“无国界精神”的支持,并表示,作为联盟一员,他为能够合作构建金融工具和基础设施而感到兴奋。
dYdX商务发展经理David Gogel看到了中国市场所带来的机会,认为:“中国市场在全球DeFi生态系统中发挥着重要作用,并且是促成全球DeFi生态系统成功的关键。中国庞大的用户群将为全球市场带来更多流动性、引入更多用户和更多创新,从而催生出全球DeFi生态系统的增长潜力。”[2020/11/10 12:14:15]
以太坊代币即运行于以太坊之上的数字货币,在生态系统中发挥着独特而重要的作用。各个代币由其智能合约表示,其他DApp和用户与这些智能合约进行交互。
独家 | DeFi累计用户数接近45万:据DappBirds DeFi Data专题数据显示,DeFi累计用户数接近45万,DeFi中锁定资产总价值达98.31亿美元,较昨日上升-0.60%,其中Uniswap,Aave,SushiSwap,MakerDAO,Curve分别以14.37亿美元,13.24亿美元,12.10亿美元,10.98亿美元,10.18亿美元位列前五名。[2020/9/9]
因此,以太坊引进了代币标准,以此来简化生态系统中的诸多DApp与代币之间的交互,从而提高可组合性。秉承着成为 “标准代币接口” 的目标,ERC-20代币标准最初于2015年投入开发。此处是ERC20代币标准运作机制的相关指南。
随着时间的推移,以太坊代币与生态系统建立起越来越多的联系,应用范围越来越广泛。代币的用例和应用日益增多,更加复杂的智能合约对基本ERC-20代币标准提出了更高的要求,因此其部分局限性也随之开始显现。
彭博社:8月加密市场因DeFi火爆增加超500种新代币:由于DeFi热潮涌动,2020年8月加密货币市场已经增加超500种新代币,或导致加密泡沫再次变得越来越大。在投机欲望激增的推动下,猪排(Porkchop)、Davecoin、意面(PASTA)、寿司(Sushiswap)Newtonium等新代币纷纷登场,许多项目没有实际效用,但投资者已经投入数十亿美元。根据DeFi市场数据提供商DeFi Pulse数据显示,截至9月2日,用户向所有DeFi应用程序投入的资金超过94.6亿美元。(彭博社)[2020/9/2]
实际上,最初该标准是为处理基本功能性而设的,因此不适用于所有用例。
尽管当今大多数代币都遵循ERC-20标准,但仍有部分代币在此基础上根据自身需求添加自定义功能。结果,部分非标准功能 (称为 “扩展功能 (extension)” ) 已添加到各个代币。
譬如,ERC-20标准不支持铸造和销毁功能,但事实上这些功能是必需的,于是便被添加为扩展功能。在某些情况下,功能需求部分重合,因此各种代币添加的扩展功能不尽相同。
观点:DeFi行业需要自我监管:COMEX前董事长、纽约天使基金会的董事会成员Donna Redel和芝加哥肯特法学院兼职教授Olta Andoni今日在CoinDesk刊文称:“我们认为,DeFi行业需要自我监管,否则将面临严格的监管审查和声誉风险。DeFi热潮和2017年最初的ICO泡沫有相似之处,即疯狂交易,出现了很少或根本没有经过测试和审计的项目;目前尚无明确的监管指南,且以太坊gas费用上涨。从证券法和商品法的角度来看,许多问题都应该重新研究,以了解它们如何适用于去中介化、去中心化的金融模型以及如何对其进行重新构想。 我们认为,DeFi需要创建一套新的行业规则,包括审计,适当的风险披露以及计划在实际发生问题之前预测可能出了什么问题。DeFi的自我监管应规范抵押品充足性审查、审核标准、持续和危机基础上的治理、以及代币以发行为中心的所有权。”[2020/8/25]
ERC-20标准的这种分散性使DApp集成过程,甚至整体可组合性不必要地复杂化。为了解决这种分散性问题,社区试图就新标准达成共识。
经过持续两年的开放讨论,这项新的ERC-777代币标准于去年推出。ERC-777代币标准的功能更为强大,它 “试图对广泛使用的ERC20代币标准进行改良”,并成为其正式化的完全扩展版本。
它引入并 “明确了与代币交互所需的高级功能”,使代币持有者能够更好地控制其资产。所有ERC-777代币都向后兼容ERC-20标准,这意味着如果DApp或钱包支持ERC-777标准,那么也就支持ERC-20 标准。
ERC-20是一种简单的代币格式。正是得益于其简易性,目前已有众多项目和团队利用该标准相对轻松地构建了新的DApp,既促进了生态系统的发展,也激发了创新创造活力。然而,它的局限性也使其面临用户体验方面的持续挑战。
ERC-777标准旨在解决ERC-20标准固有的两个主要问题
1.ERC-20仅对以太币 (ETH) 交易做出响应。批准并转账需要进行两个步骤,这一缺点导致诸多用户体验问题。最明显的问题是,处理单个请求需要发起两笔独立的交易。ERC-777则能通过执行功能实现代币的转入,无需借助ETH作为媒介,从而简化了转账流程。
2. “用户操作失误” 导致价值数百万美元的代币丢失。用户通常将其代币发送到智能合约,而不是区块链目的地址。由于尚未界定在处理此类错误的情况下`transfer` 函数的标准行为,所以ERC-20合约无法检测到此类错误。
ERC20代币标准的这一特征 “是一个软件bug,可归类为软件漏洞”。相比之下,ERC-777智能合约能够检测到此类错误并拒绝错误的代币转账行为。
ERC-777标准与某些协议不兼容
ERC-777标准的特定函数是其独特的特征。这些函数实现了协议之间的互操作性,这对于扩展以太坊生态系统至关重要。
但是,由于ERC-777代币标准是去年才引入的,所以这些特征可能与某些协议不相兼容,尤其是某些先前部署的智能合约。
鉴于以太坊的快速发展以及新兴去中心化金融智能合约的日益复杂,存在不兼容性不足为奇。但重要的是,也要尽快解决协议中的这些问题,因为它们暴露在攻击向量的入侵之下。对于其他各种不兼容性来说也是一样的道理,不仅仅是针对ERC-777标准。
随着该新标准的采用率越来越高,其他项目也就必须支持ERC-777代币,或者以其他方式实施必要的安全措施,以保护自身项目免受此类攻击。不幸的是,许多项目并没有做到以上两点。
在某些情况下,例如,即使Uniswap团队公布了 V.1版本存在此问题,也只是不鼓励用户锁定其ERC-777代币到流动性池中。
Uniswap团队似乎还错误地以为,转账代币时受到重入攻击,合约仍处于安全状态。请注意,这种假设对于任何一种智能合约都不成立,但是某些协议还是将代币转账(不仅是ETH转账)错误地假定为比正常情况更安全。不幸的是,上上个周末发生的重入攻击正是操纵了此漏洞。
发起重入攻击即操纵智能合约中进行交互 (进行“交流”和互操作) 的函数对合约进行攻击。例如,用户兑换其代币时或许会涉及三个智能合约;智能合约A (一种dApp或协议如Uniswap)与智能合约B (代币智能合约如imBTC,或另一种dApp或协议) 进行交互,然后智能合约B与智能合约C (任何能够由黑客创建,只为盗取资金的智能合约) 进行交互。
如果智能合约C受攻击者劫持,它可以发送代币请求,但会伪造收到资金的确认信息。发送代币至智能合约C的请求仍然执行,但是攻击者可以继续假装从未收到代币。由于这是一个自动化过程,因此无法进行干预,除非用户意识到正在受到攻击并终止合约。
前车之鉴
这种攻击向量暴露在被攻击的风险下。作为以太坊互操作性的一项关键特征,它可以通过多种方式加以操纵。代币智能合约也是发起重入攻击的工具之一。最近发生的imToken / Uniswap和dForce攻击就是如此。
我们不能因噎废食,攻击事件并不足以为DeFi时代划上句号,甚至不足以使我们质疑ERC-777代币标准的安全性。
ERC-777代币的数量正在稳定增长。诸如Augur之类的团队正在决定将其代币格式从ERC-20升级为ERC-777。随着DeFi行业的发展,我们必须了解使用此类创新技术的风险以及如何将风险降至最低,这一点至关重要。
这种漏洞的优点在于,它属于代码错误,而非传统金融行业中普遍存在的固有的系统性缺陷——腐败、过度监管和排斥性。通过DeFi,我们已经将信任从人类转移到代码身上。因此,尽管总会有人存心利用代码,但是至少代码本身并没有从人类身上获利的企图。当今的经济体系却并非如此。
作为DeFi行业的一份子,我们应该不断改进标准,使每次迭代都变得更强大、更安全。目前,ERC-777具有一系列优势,能为代币持有者和DApp带来价值。我们应该始终致力于改进ERC-777标准以及今后所有的标准。DeFi要脱颖而出,突破口正在于此。
来源 | Medium
作者 | Provable Things
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。