CoW Protocol 推出了一项名为“条件订单”的新架构,通过与 Safe 合作开发的 ExtensibleFallbackHandler,为 Safe 钱包增加了额外的功能,同时保留了 Safe 的安全保证。用户可以通过升级 Safe 的 fallback handler 并启用 ComposableCoW,来使用 TWAP 等条件订单功能,并享受签名 MEV 保护和无失败交易等优势。
别担心,交易愉快! 我们一直忙于开发条件订单,这是一种允许开发者(及其用户)创建各种订单的架构。 该系统的核心是一个灵活的智能合约钱包,允许我们实现这种逻辑,还有什么比站在生态系统巨头的肩膀上更好呢? Safe
。
等等? 智能合约钱包? CoW Protocol 在以太坊领域为 EOA(想想 Metamask、Trezor、Ledger 等)率先推出了 intents,但一直以来,我们都在使用一个鲜为人知、更灵活的系统 - ERC-1271 集成。 听起来很技术性,但基本上这是一个旨在允许智能合约“签名”的标准 - 经验丰富的 CoWmunity 已经熟悉的一种体验 - 但现在有了这个系统,你可以定义条件,智能合约钱包可以为你完成点击。
ExtensibleFallbackHandler
由 Safe
合作设计、实施和测试,并通过我们的 Grants Program 孵化。 听起来很复杂! 简而言之,这是一种为你的 Safe
增加额外能力的方式,同时保留 Safe
一直以来备受推崇的强大安全保证。
升级你的 Safe
的 fallback handler 的过程是一个安全的过程,你应该始终遵循 Safe
用户界面的引导。 实现此系统的合约已经过审计,既有独立的 Gnosis 审计员(实施者不是 Gnosis / CoW Protocol LDA 的一部分),也有来自 Ackee Blockchain 的外部审计员。
在你们当中眼光敏锐的人会意识到,智能合约始终可以使用 CoW Protocol,但这既需要链上交易来表示你的意图,并且订单是固定的(不是有条件的)。 向这些限制说再见!:wave:。
有了 ExtensibleFallbackHandler
+ 启用 ComposableCoW
的 Safe
,你现在可以享受签名 MEV 保护、无失败的交换交易、执行路径发现、条件订单以及批量处理(如果你需要执行 approve
之类的繁琐操作)。 如果你精通技术,你可以看看如何 开始使用 ComposableCoW
构建条件订单,或者在我们的 discord 上进入 #tech-talk! 当你忙于阅读如何编写最新最好的条件订单时,你可以使用 TWAP
逐渐购买更多你喜欢的代币 👇
为了庆祝 ComposableCoW
的条件订单超能力,我们为启用了 Safe
的用户发布了支持 TWAP
(时间加权平均价格)订单的版本。 只需前往 Safe
并从 Safe
的“Apps”中使用 CoW Swap
。
首次通过 Safe
应用程序下达条件订单时,系统会提示你发出包含一批交易的交易签名请求(我们非常喜欢通过批量处理节省 gas ⛽🚫)。 此批处理中包括 setFallbackHandler
- 条件订单框架依赖于比标准版本更具可扩展性的“fallback handler” - 因此我们会升级到新的 handler!
什么是 Safe
fallbackHandler
? 长话短说,Safe
旨在对基本操作(想想执行交易、花费你宝贵的代币)具有强大的安全保证,但没有足够的时间来编写用户_可能_需要的所有功能。 因此,Safe
可以将所有未知的函数请求“转发”到另一个合约(FallbackHandler
)。
至关重要:
FallbackHandlers
不具有与调用它们的Safe
相同的权限。 由于Safe
的安全架构,FallbackHandler
无法代表Safe
执行交易。
好的,所以 fallbackHandler
无法为你执行交易,你为什么要关心? 默认情况下,Safe
(没有 fallbackHandler
)不支持 ERC-1271
签名。 Safe
的标准部署使用 CompatibilityFallbackHandler
作为 FallbackHandler
进行部署,它具有有限的(读取:无法自动化的)ERC-1271
支持。 我们的系统通过允许 Safe
_额外_指定一个智能合约来增强此功能,该智能合约可以代表其上的特定应用程序签署消息。
这就是 ComposableCoW
发挥作用的地方! 🐮🎶 你可以将 ComposableCoW
视为一个自主代理,签署满足你已指定条件的订单。 当你创建你的第一个条件订单时,你将在批处理中看到的第二个交易是启用 ComposableCoW
,你告诉你的 Safe
“我希望 ComposableCoW
能够签署来自 CoW Protocol
的订单”。 TWAP
只是一种与 ComposableCoW
一起使用的 ConditionalOrder
类型。
至关重要: 由于 ERC-1271 的设计,所有签名验证都是只读的,这意味着
ComposableCoW
或任何条件订单都不可能 _直接_访问用户资金(交换中的资金移动仅由结算合约发起)。
总而言之,要享受 CoW Swap 的新 TWAP
订单功能:
Safe
用户需要升级他们的 fallbackHandler
(启用条件签名)。我们非常重视安全性,Safe
fallbackHandler
升级过程是安全的,底层代码已由 Safe
和 CoW
团队以及独立的外部审计员全面审计,你可以在 此处 找到最终报告。
所提出的解决方案保持了强大的 Safe
安全保证,并获得了上游(Safe
)的厂商支持。 但是,令你惊讶的是,我们构建的 fallbackHandler
不仅仅是下达订单。 它允许无限的、尚未知的功能。 也许你想:
Safe
变成 ERC-20 代币)。EIP-712
域验证器,由此实现 ISafeSignatureVerifier
的合约可以自动执行你的繁琐签名(正是_此_接口由 ComposableCoW
实现 - 并为闪亮的新 TWAP 订单提供支持)。Safe
支持的一组方法(interfaceId
),并使用 ERC-165 报告此类方法。ExtensibleFallbackHandler
的架构可以在 此处 查看。
注意:审计并不能保证代码没有错误。 请谨慎使用。
- 原文链接: hackmd.io/@mfw78/HyuvoGt...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!