木星链 木星链
Ctrl+D收藏木星链

加密货币:a16z 介绍 ERC-4626 金库通用属性测试:让 DeFi 可组合性更安全

作者:

时间:1900/1/1 0:00:00

随着DeFi不断发展并逐渐成熟,开发人员的首要考虑是可扩展的基础设施和可组合性。用于构建基于以太坊的应用程序的标准化工具包ERC一直发挥着重要作用。例如广泛使用的代币标准ERC-20为开发人员提供一致的指导方针,让他们无需从头开始就可以为生态系统做出贡献。今年早些时候,为了鼓励收益型代币之间的交叉兼容性,代币化金库标准ERC-4626被推出。除此之外,ERC-4626还可以解决紧迫的可组合性问题,使协议集成更容易,减少出错几率。

目前已经有一些DeFi项目为了提高其金库的可组合性,采用了该标准,我们预计整个生态系统将得到更广泛的采用。然而,调整现有的金库确实会带来一些痛苦,至关重要的是某些实施错误可能被暴露,成为新的攻击目标。即使是很小的错误也会对安全和用户体验产生重大影响,因此还需要更多的安全工具和措施,特别是在更可组合的DeFi生态系统中。

如果在被攻击之前就检测到简单的错误,则可以提供相对简单的解决方案,理想情况下甚至在部署之前就能进行检查。为此,我们发布了用于模糊测试和符号执行的ERC-4626属性测试,以帮助金库构建者检测可能破坏集成或导致漏洞的标准违规行为。这篇文章解释了激励问题,介绍了检测方法,并在结尾处提到一些可行的建议。

巴克莱银行分析师:Ripple诉讼案的初步裁决对Coinbase有利:金色财经报道,英国银行巨头巴克莱银行周一在一份研究报告中表示,美国南区法院部分支持支付网络Ripple的裁决对加密货币交易所 Coinbase (COIN) 来说“越来越积极”。该银行分析师写道:“考虑到在某些情况下代币可能不是证券,我们认为这一裁决对Coinbase来说是越来越积极的”。分析师对COIN设立的目标价为70美元。

然而在XRP裁决之后,并非所有分析师都对 Coinbase 的股票持积极看法。投资银行Berenberg上周表示,一些投资者可能错误解读了这一裁决,Coinbase股价反弹过快。[2023/7/18 11:00:40]

ERC-4626标准的背景

ERC-4626于3月被推出,是一套代币化金库的标准,旨在扩展广泛使用的ERC-20标准,推动跨收益金库的标准化,并确保需要与其交互的应用程序和协议的可组合性。这意味着为了与任何其他ERC-4626金库一起使用,在ERC-4626金库上构建的任何应用程序都可以轻松扩展。

金库代币化后,能够允许用户自由存入资产来铸造金库代币,然后赎回这些代币从金库中提取本金和利息。这些金库代币是ERC-20代币,可以轻松被交易或用作抵押以借入其他资产。例如,用户可以将他们的资产存入Yearn金库以铸造yVault代币,然后在Uniswap上进行交易、抵押以获得额外收益,也可以用作贷款协议的抵押品。

Binance以监管问题为由主动宣布退出加拿大市场:金色财经报道,Binance在社交媒体上发文称,“不幸的是,今天我们宣布,Binance将加入其他知名加密货币企业的行列,主动退出加拿大市场。

我们要感谢那些与我们合作以解决加拿大用户需求的监管机构。尽管是一个小市场,但作为我们创始人的故乡,它对我们来说具有情感价值。我们对加拿大区块链行业的其余部分寄予厚望。不幸的是,与稳定币相关的新指南和提供给加密货币交易所的投资者限制使得加拿大市场此时不再适合Binance。只要我们可以探索其他合理的途径来保护我们的加拿大用户,我们就会推迟这个决定,但很明显没有。

我们其余的加拿大用户将收到一封电子邮件,其中包含全面的信息,说明这将如何影响他们未来的账户。虽然我们不同意新指南,但我们希望继续与加拿大监管机构合作,旨在制定周到、全面的监管框架。我们相信,当加拿大用户再次可以自由访问更广泛的数字资产套件时,我们总有一天会重返市场。”[2023/5/13 15:00:23]

产生、分配收益以及确定代币价格的逻辑可能因实际情况而异。为了覆盖尽可能多的金库,ERC-4626标准侧重于构建用户界面,而大部分实现细节未确定。只要金库满足接口的特定要求,就能够允许业务逻辑的变化,实现跨许多不同类型的应用程序和ERC-4626金库类型的互操作性。

The Graph将在几天内启动Arbitrum One扩容计划第二阶段:金色财经报道,去中心化索引协议The Graph将在未来几天内启动Arbitrum One扩容计划第二阶段,以启用索引奖励。此前报道,2月15日The Graph完成Arbitrum One扩容计划第一阶段,该协议在L1和L2上共存,第二阶段是协议在Arbitrum上原生运行后启用索引奖励。第三阶段是将索引奖励逐渐转移到L2等。[2023/3/30 13:34:24]

随着越来越多的代币化金库被创建,我们希望看到它们从一开始就按照ERC-4626标准实施。但我们目前处于某种过渡阶段,为了符合标准,开发人员将需要以更大可组合性的方式来更新现有的金库、应用程序和协议,他们也面临着许多复杂挑战。

标准一致性的挑战

遵循新标准并不总是那么简单。每个ERC-4626金库都必须忠实且准确地实现所描述的标准要求,否则为了应对不同的变化,集成会变得越来越复杂。这种复杂性使集成天生容易出错。并且由于它们没有足够安全测试,随着时间的推移可能会导致系统漏洞。

为了安全地处理不同的行为,非ERC-20标准代币需要许多DeFi系统在执行代币转移时使用额外的金库。例如TetherUSD在执行代币转移时需要额外用到SafeERC-20。

即将上任的众议院主席希望监管机构成立创新办公室:金色财经报道,即将上任的众议院金融服务委员会(House Financial Services Committee)主席再次提出立法,要求金融监管机构设立创新办公室。

该法案要求联邦金融监管机构建立“金融服务创新办公室”,该办公室将“建立程序,以减少向公众提供金融创新的时间和成本,并使更多的人能够获得金融创新。”这包括允许公司申请替代合规计划,以及放弃或修改法规,以使公司能够提供可能与这些规则相冲突的服务。(the block)[2022/12/20 21:55:38]

这意味着如果系统的设计不能正确处理「丢失退货」的情况,任何与这些代币交互的系统都可能变得脆弱。这些场景可能会引入一个常见的安全陷阱,并增加整体开发和维护成本。因此,符合标准不仅对个人至关重要,而且对整个生态系统的安全也至关重要,单个系统或依赖项中的一个漏洞就可能会导致广泛的问题。

理想情况下,标准将被明确地正式指定,并且每个实现都可以根据标准规范进行正式验证。然而在实践中需要社区的努力且需要一定的费用或时间成本,这在短时间内并不容易实现。

通过引入可执行的ERC-4626属性,识别一致性问题

Vitalik:新加坡在加密货币监管方面的善意尝试可能不会奏效:11月21日消息,以太坊创始人 Vitalik Buterin 近日在接受采访时表示,新加坡在加密货币监管方面的善意尝试可能不会奏效,因为新加坡监管机构试图将“区块链使用”和“加密货币”区分开,“如果没有加密货币,那么你拥有的区块链就是假的,没有人会关心这些区块链”。

此外,Vitalik Buterin 表示,监管机构既要支持新技术,又要打击不良参与者,在两者之间取得平衡难度很大,但他也表示新加坡很早就将自己定位为对加密货币友好的司法管辖区,只是最近几个月才开始收紧尽管,监管机构只是试图“阻止加密货币投机”,而不是完全禁止加密货币。(straitstimes.com)[2022/11/21 22:11:32]

当我们朝着理想状态努力,每个金库都根据严格的正式规范进行了正式验证时,为了捕捉标准要求的微妙、容易遗漏的细节中的差异,我们编写了ERC-4626标准属性。

为了检测其实施中潜在的标准违规行为,代币化金库的开发人员可以在部署之前运行测试。金库集成商可以检查给定的金库是否符合标准,然后再将它们集成到他们的系统中。针对已经部署在主网上的实时金库,也可以通过主网分叉测试的方式进行测试。为了确保所有系统参数都已正确设置,尤其是在最近部署或升级的金库,测试实时金库可能会很有用。

为了使属性可执行,我们用Foundry编写,并由fuzzer运行。为了正式验证给定的进金库是否满足所有可能的输入和条件的属性,将来它们也可能由符号执行或模型检查工具运行。

在编写时通用性是首先考虑的,我们希望测试可以应用于实现不同业务逻辑的各种金库。我们只使用公共接口函数来使它们与实现细节无关。但是由于此限制,某些涉及特定于实现的内部数据的标准要求从属性中省略了。

例如,以下属性对应于convertToShares()函数的要求之一,「不得根据调用者显示任何变化。」

给定两个账户地址和金额,它使每个账户以相同的金额调用convertToShares(),并确保两个返回值相等。此属性独立于实现细节convertToShares()。这些细节因金库的不同而异,并且必须由任何实现ERC-4626的金库来满足。在这种情况下可以通过提供特定输入值、许多用于模糊测试的随机输入或用于符号执行和形式验证的符号值来执行此属性。它也可以在本地运行或针对主网分叉运行。

用例:测试舍入错误的属性

例如舍入错误是一类看似轻微的但很重要的错误,它可能会产生一些系列影响。在ERC-4626的基本会计逻辑中,舍入误差是不可避免的,例如计算要铸造的资产数量,或要提取的资产数量,等使用定点算法实现的指令。为了安全性考虑,该标准明确指定了每个接口函数的首选舍入方向,同时未指定误差范围。具体来说deposit()和redeem()函数应该返回一个低于精确值的近似值,而mint()和withdraw()函数应该返回一个高于精确值的近似值。例如当前股价为2,那么deposit()3wei的资产最多只能铸造1wei的代币,而withdraw()3wei的资产应该在至少2wei的代币。

我们将舍入相关属性编写为独立于基础会计逻辑,并将其视为「黑匣子」。具体来说我们将它们表述为所谓的「往返」属性,它描述了两个相反函数之间的关系。例如以下属性规定,通过铸造N股来提取刚刚托管的资产必须燃烧不少于N股。换句话说,没有人可以通过反复铸造和提现来反复转换资产和金库代币来获利。

事实上,我们发现主网上的几个ERC-4626保险库由于舍入错误而无法满足上述属性。这意味着任何人都可以通过简单的反复铸造和提取,慢慢地耗尽金库来赚取satoshiBTC。在低Gas费的链如Fantom上可能会实现获利,或者在价格上涨时也会获利。

ERC-4626标准的广泛测试

我们在主网上约100个ERC-4626金库进行了属性测试,发现许多金库未能遵循标准要求。其中的主要原因是舍入错误。具体来说mint()函数尽管标准明确要求这样做,但某些金库未能铸造该函数请求的确切份额数量。其中一些还发出了不一致的Deposit事件,其中记录的数据与实际生成的数据不同,甚至有些金库根本就没有进行现场铸造过。相反他们只是将铸币请求放入队列中,稍后将它们作为单独的事务分批处理。

尽管这些不同的行为本身是不可利用的,但当它们集成到只执行标准行为的其他系统中时,它们可能会变得容易受到攻击。这些问题将使金库集成变得更加困难,可能会抵消一部分努力。

属性测试和其他可操作的步骤实现标准一致性

在部署之前严格遵循标准可以防止出现不同的行为。我们希望我们的属性和一些额外的操作项对于那些正在开发或集成ERC-4626金库的人能够提供帮助:

我们强烈建议对您的金库运行属性测试。如果有任何明显违反标准的行为,问题会很快被发现。我们还建议检查我们的属性,以检查您对标准要求的理解,如果有任何无意的差异,请调整实施方案。如果金库必须偏离标准,我们建议明确记录非标准行为,以便其他人在与金库集成时可以正确处理这些偏差。小结

在可预见的未来,ERC-4626金库有可能成为DeFi的重要组成部分。为了保持可组合性,新的和现有的金库都必须遵循该标准。新的标准将出现,因此现在是现有金库标准化的最佳时机。

当我们朝着不同金库统一组合的理想状态努力时,可以运行ERC-4626属性测试以更轻松地检测金库实施中的标准违规行为。属性测试的文档和示例都在我们的Github存储库中公开可用。

标签:加密货币OINCOINCOI加密货币市场最新消息今天TongtongcoinRatscoinFlapXCoin

币安app下载热门资讯
APT:Aptos主网上线,这里有你关心的所有重要内容(持续更新)

北京时间10月18日,备受市场期待的Aptos正式上线主网Autumn。作为「Meta」系选手,Aptos诞生之初就吸引加密社区及VC关注,获得a16z、FTXVentures等顶级机构支持.

1900/1/1 0:00:00
NFT:Web3游戏反思:不是游戏,只有DeFi

最近,我花了很多时间思考,尽管该领域已经获得了大量的资金,为什么Web3游戏还没有起飞。我问自己,是什么让一个游戏变得有趣并让我不断回顾时,我脑海中都会出现我一直以来最喜欢的游戏:军团要塞2.

1900/1/1 0:00:00
APT:币安用户 APTOS 来源分析与女巫攻击预警

概述:X-explore对所有价值到币安的APTOS进行了成本来源分析,其中65%的资金为女巫地址入金,累积超过630WAPTToken,这给币安带来了严重抛压,造成了价格一路上涨走低关系.

1900/1/1 0:00:00
NFT:“磁吸”NFT的Tweet Tiles,会是NFT的新叙事吗?

还有不到3个月,2022年就要过去了。坦率地说,今年NFT市场表现并不尽如人意,我们看到新买家和卖家数量减少、欺诈风险上升、交易额急剧下降等一系列问题.

1900/1/1 0:00:00
APE:ApeCoin:一个远不止于 The Otherside 的 DAO

?关键要点·?尽管ApeCoin因其与BoredApeYachtClub生态的关系而闻名,但它被设计为一种Web3原生的交易媒介,作为更广泛的采用.

1900/1/1 0:00:00
APT:Aptos合约开发者笔记:「高性能」标签尚待验证,安全性设计优于EVM公链

笔者是?Meson?团队的智能合约核心工程师,过去几个月一直在高强度的开发Aptos合约。最近两天,终于赶在Aptos主网上线之际,完成了Meson协议在Aptos上的开发,这个过程中还是有挺多.

1900/1/1 0:00:00