本文深入探讨了跨链消息传递中LayerZero v2和Chainlink CCIP两种协议的架构设计与权衡。Shift通过构建统一的消息层,集成了LayerZero和CCIP,实现了与底层传输协议的解耦,从而提高了系统的灵活性、弹性和独立性,并着重强调了消息传递在DeFi中的重要性,以及如何构建具有弹性的消息传递基础设施。
在本文中,我们将剖析 Shift 如何处理任何跨链系统中最重要的架构决策之一:消息传递基础设施,我们在本系列的第 1 部分 中详细介绍了这一点。你将了解为什么消息传递不仅仅是一个传输层,而是一个控制层,以及我们如何评估该领域中最成熟的两个协议:LayerZero v2 和 Chainlink CCIP。
我们将介绍每个协议的工作原理、它们的差异以及 Shift 如何构建一个统一的消息传递层来集成两者——而不会锁定到任何一个。
在 DeFi 中,消息传递不仅仅传输数据——它还决定行为。
消息不仅仅是一个信号。它是一个命令:重新平衡投资组合、进入或退出头寸、触发链上操作。如果该消息被延迟、丢弃或错误路由怎么办?这不仅仅是一个错误——这是一个损失。
在跨链资产管理中,消息传递失败是对资本的直接风险。
在 Shift,我们从一开始就将消息传递视为一流的架构层。不是插件,不是事后才想到的——而是一个控制平面,它需要与托管、执行和风险管理相同级别的严谨性。LayerZero v2:模块化、速度和手动控制
它没有规定单一的消息传递管道,而是让开发人员可以精细地控制消息的验证、路由和执行方式。这包括:
这种模块化意味着 LayerZero 可以根据特定需求进行定制——无论目标是低延迟、冗余验证还是专用执行逻辑。
在大多数 L1 和 L2 中,典型的消息传递需要 3-10 秒——这是其他系统难以匹敌的速度基准。
灵活性引入了复杂性——和局限性。
因此,尽管 LayerZero 在形式上是去中心化的,但在实践中,它需要信任协议的基础设施和服务级别保证。
如果 LayerZero 提供极高的灵活性,CCIP 则提供可预测性。
Chainlink 的跨链互操作性协议 (CCIP) 是一个紧密集成的系统,旨在“正常工作”——无需手动设置,无需自定义组件。
它围绕 去中心化预言机网络 (DON) 构建;这是支持 Chainlink 核心产品的相同预言机框架。这个网络:
开发人员不会接触内部结构。没有暴露的验证器或执行选项。相反,CCIP 是一条单一的路线——稳定、固执己见且可用于生产。
主要优势
但简单性是有代价的
没有路由逻辑:如果消息失败,则没有内置机制在其他地方重试
对于优先考虑 易于集成和安全性而不是定制 的团队来说,CCIP 是一个强大的默认选项。但对于高级的、实时的或具有回退意识的架构,它施加了限制。
Shift 如何集成 LayerZero 和 CCIP
我们没有致力于单一的消息传递协议,而是从一开始就将 Shift 设计为独立于任何一个提供商。我们的架构围绕 统一消息传递层 构建——一个共享接口,通过该接口执行所有核心操作(例如 ENTER、EXIT、REBALANCE),无论它们是通过 LayerZero 还是 CCIP 路由。
这种抽象允许我们将业务逻辑与底层传输分离,从而实现跨协议的策略执行,而无需代码重复或重写。
特定于协议的适配器 我们为 LayerZero v2 和 Chainlink CCIP 构建了自定义序列化库。这些适配器处理低级消息传递格式和接口细节,使我们的核心逻辑保持干净且与协议无关。
基于上下文的路由 每个策略都可以指定交付偏好。需要最低的延迟?通过 LayerZero 路由。优先考虑稳定性和原子性?选择 CCIP。路由逻辑是声明性的,并且嵌入在执行上下文中。
默认的回退机制 如果提供商变得不可用或消息未在定义的超时时间内传递,系统会自动通过替代通道重试。此设计消除了单点故障,并保护资本免受基础设施风险的影响。
监控和可审计性 每个消息生命周期——从分发到确认和执行——都会被记录和跟踪。这为内部运营、外部审计和机构合作伙伴提供完全的可观察性。
业务逻辑的分离 策略并不关心使用哪个消息传递协议。它们只是发出一个命令。底层系统决定如何最好地交付它。这种关注点分离提高了模块化,并使其可以轻松地演进或交换消息传递后端,而无需重写策略代码。
从第一天起,Shift 的设计就是与消息传递无关的。我们不将业务逻辑硬连接到任何一个协议——我们为适应性、弹性和独立性而构建。
可替换的消息传递提供商 任何支持的消息传递协议都可以被替换,而无需触及策略层。如果提供商更改条款、遭受停机或交付不足,我们会立即绕过它。
统一接口,无缝集成 无论命令是 ENTER、EXIT 还是 REBALANCE,它都通过相同的统一消息传递层流动。策略逻辑保持不变。这意味着我们可以升级提供商、添加回退或针对不同的链进行优化,而无需冻结代码。
内置回退,而不是事后才想到的 回退不是补丁——而是一个设计特性。每条消息都会被状态跟踪,如果出现问题,它会自动重新路由。无需手动干预,不影响策略执行。
默认情况下透明且可观察 每次交互都会被记录和跟踪。对于机构用户和审计员来说,这意味着完全的可见性。对于工程团队来说,这意味着更轻松的调试和运行时保证。
消息传递不是我们插入的基础设施——而是我们围绕构建的基础设施。
在传统系统中,消息传递只是传输。在 DeFi 中,它是信任、执行和完整性的结合。
当策略发送一个命令——进入金库、重新平衡资本或退出头寸——这不仅仅是一个函数调用。这是一个赌注,即系统将:
当消息传递失败时会怎样?资本被卡住。投资组合错过了收益窗口。用户失去信心。曾经的后端管道变成了前沿风险向量。
案例:Multichain。 Multichain 曾经是跨链通信的关键参与者,但其架构缺乏可验证性和回退机制。当基础设施受到攻击时,攻击者使用相同的消息传递路径跨网络提取资产——耗尽了数百万美元。没有验证,没有回滚,没有信任。
没有验证的消息传递不仅脆弱——而且是一个攻击面。
在 Shift,我们不将消息传递视为集成——我们将其视为基础设施。这意味着从一开始就为独立性、可观察性和信任而构建。
我们的设计原则:
在 DeFi 中,消息传递不仅仅是移动数据包——而是关于保证结果。这就是为什么我们已经像托管或执行一样构建了我们的消息传递:冗余、可观察且为任何事情做好了准备。
当你管理机构资本时,基础设施不是一个细节——而是一个风险因素。Shift 的消息传递架构旨在消除单点故障、减少延迟并确保策略按预期跨链执行。
消息传递不是关于传输——而是关于信任。
如果你在 DeFi 中构建或分配,并且这引起了共鸣——请在 X 上关注 @Shift_DeFi,分享这篇文章,或联系以探索早期访问。
欢迎来到正确完成的消息传递!
- 原文链接: medium.com/@SHIFT_DeFi/e...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!