Web3计算的一大飞跃——Chainlink Automation 2.0的可验证计算
通过将链上计算转移至经密码学验证的链下计算,实现成本节约。
自Chainlink Automation推出以来,其重点一直是开发新功能并引导开发人员能够构建新颖的链上应用,而无需创建和管理一些基础设施。为此,Chainlink Automation已经助力实现了可靠且去中心化的自动化,适用于各种智能合约自动化案例。
Chainlink Automation 2.0的可验证计算引领保障和信任最小化的智能合约自动化进入了新时代,从轮询机制过渡到使用Off-Chain Reporting (OCR) 3.0的共识机制。现在,开发人员可以利用Chainlink Automation 2.0的共识模型来转移计算、提高性能,并通过访问具有企业级可靠性和最高标准的加密安全、可靠和可验证的链下计算,来降低链上成本。
在这篇博文中,我们将概述Chainlink Automation 2.0的可验证计算层的优势,并展示为开发人员带来竞争优势的新颖案例。
这是关于Chainlink Automation 2.0的三部分系列文章中的第一篇。
安全的链下可验证计算的重要性
智能合约需要一种安全、透明、可靠且经济有效的触发方式。虽然链上计算适用于许多情况,但对于安全可靠的自动化来说并不理想,因此需要用到链下计算。一些项目使用中心化的设置在链下触发计算,尽管这些方法可能性价比较高,但与去中心化标准相比,它们在安全性、透明度和可靠性上并不理想。
一些自动化服务通过使用节点的去中心化网络来触发智能合约,每次只有一个节点负责,将重新验证计算的成本密集型责任落到项目的链上。
Automation 2.0在去中心化链下计算中引入了密码学共识,消除了项目进行昂贵的链上计算验证的需求,为用户提供了任何智能合约自动化解决方案中安全性、透明度、可靠性和经济效益的最佳组合。通过Automation 2.0,开发人员能够提高其dApps的运行时间,降低成本,简化用户体验,并创建端到端完全自动化的复杂、功能丰富、可验证的应用程序。
Chainlink Automation 2.0:面向Web3自动化的可验证计算层
随着2.0的推出,Chainlink Automation不仅是一个安全可靠的智能合约自动化服务,它现在还是一个完整的、高效的、可验证的计算服务,适用于链上应用。Solidity计算可以转移到经过大量测试的Chainlink去中心化预言机网络(DONs),以实现最多10倍的gas成本,有效地使开发人员在相同成本下提高10倍的计算能力。
由于其核心功能和可组合性能力,Automation 2.0是构建Web3服务的强大解决方案,遵循触发——计算——操作的工作流程,为连接多个dApps打开了新的方式。
链接自动化2.0的Quorum机制
自动化网络中的节点持续监视作业,使用OCR 3.0达成共识,并在作业交易发送之前签署报告。签署的报告包含将在链上执行的performData,并且在执行之前于注册表上进行验证,以提供密码学保证。这确保了作业事务和输入在执行之前经过了多个节点确认,提供了高程度的信任最小化,因为用户无需信任点对点网络中的任何单个节点来执行其自动化作业。
使用OCR 3.0作为共识机制意味着开发人员可以在链下执行复杂、gas密集型的计算,现在有了10M的gas限制,节省链上gas成本,并在链上发送结果,知道多个节点已确认相同的计算。这些链下计算是使用链上逻辑和数据的Geth模拟,这引入了额外的冗余,因为在单个节点离线的情况下,作业不会受到影响。此外,无需对结果执行额外的链上验证,进一步降低了gas成本。
节点通过利用Chainlink的事务管理器成功执行事务,负责gas增加、nonce管理、区块重新组织和gas波动。这个事务管理器经过多年的实战考验,并且不断在提高韧性方面进行改进。最终的产品是一个超可靠且信任最小化的自动化服务,即使在强烈的gas波动、或者网络存在区块重新组织或共识不一致的情况下,也能执行和确认交易。
Chainlink Automation 2.0 可验证计算的使用案例
Automation 2.0的可验证计算能力优化了gas效率和计算能力。由于Automation 2.0利用了Chainlink的OCR 3.0协议,作业在执行之前必须得到多个节点的确认,提供了强大的密码学保证,并对自动化作业的执行进行了高度的信任最小化。
开发人员可以利用Chainlink Automation 2.0的共识模型来转移计算、提高性能,并通过访问具有企业级可靠性和最高标准的密码学保证的安全、可靠和可验证的链下计算,从而降低链上成本。借助OCR 3.0作为共识机制,还可以解锁新的用例,因为链上计算可以转移到链下。
这些可验证计算功能为Web3开发人员解锁了多种用例。以下是一些例子,帮助您入门:
- Vault deposit/withdrawal calculations—当用户在一个ERC-4626通证化的保险库中进行存款或提款时,Automation 2.0可以执行密集的计算,将资产转换为池中的流动性份额。然后,可以根据距离上次更新的时间或在指定的偏差阈值处,重复执行相同的计算。
- Fisher-Yates shuffle on Chainlink VRF response—基于随机种子输入对数据组进行洗牌是一个在链上执行成本过高的计算。通过Chainlink Automation,可以将这种计算的成本转移到链下,而只有数据(新数组)会被写入链上。项目可以利用这个用例来帮助对NFT进行随机化铸造,或在游戏中洗牌一组数据。
- Limit orders and liquidations—DeFi项目可以利用OCR 3.0和链下计算,通过对dApp中所有未完成订单进行不断的检查,看是否需要执行或清算任何订单。通过使Chainlink Automation DON中的所有节点在链下对这些订单的执行达成共识,项目可以节省链上可能产生的gas成本。
在接下来的部分,我们将展示一些正在生产中的Automation 2.0用例,演示可验证计算服务如何提升Web3项目的能力。
可验证计算的实际应用场景
Automation 2.0通过使用户能够将复杂的计算转移到链下点对点网络,实现了降低gas成本。
其中一个例子是Sommelier,这是一个为用户提供自动产生收益的保险库的协议。当用户存款或提款时,ERC-4626通证化的保险库使用复杂的计算将资产转换为池中的流动性份额。随着在自定义组合应用程序中增加保险库的数量,这种计算会逐渐增多。通过利用可验证计算,可以在链下执行计算,将结果发送到Sommelier的智能合约,为最终用户节省高达十倍的成本。
Sommelier Finance业务增长的负责人Josh Kessler表示:”Sommelier正在使用Chainlink Automation 2.0的安全链下计算,通过将gas负担转移到链下计算,极大地降低用户保险库的存款/提款成本。”
通过将工作转移到Chainlink Automation DONs,开发人员可以显著提高计算的性价比。通过使用日志触发器实现更多组合性和可扩展性,Automation 2.0解锁了连接智能合约和构建端到端自动化的新方式,同时通过可验证计算实现了大幅增加的计算能力。
当这些增强功能结合在一起时,Automation 2.0创造了强大的复利效应。
Uniswap v3的增强用户界面Oku,利用了Chainlink Automation实现了DEX限价订单,通过在链下执行定期的繁重计算来判断是否需要执行任何限价订单。
GFX Labs & Oku创始人Getty Hill表示:”我们很高兴使用Chainlink Automation帮助用户在所有主要链上发布Uniswap v3的限价订单。如果没有经过大量实践考验的自动化服务,我们将需要维护内部基础设施来实现限价订单功能。Chainlink Automation帮助我们更轻松地处理工作,使我们能够专注于为Uniswap v3用户和更广泛的DeFi生态构建更先进的工具。”
Thena,一个BNB Chain上的流动性层和自动化市场制造商,正在使用Chainlink Automation来实现无缝的用户奖励分发。
Thena的首席执行官兼联合创始人Theseus表示:”Thena每周三次将费用分发给veTHE持有人。这个循环需要使用多个数组(内存)和存储进行索引。由于OCR 3.0,我们能够在checkUpkeep上进行循环,并对performUpkeep所需的数据进行编码,极大地降低了我们的成本。首次运行即确认减少了约40%的自动化成本。”
作为Uniswap v3的自动做市解决方案,ICHI使用Chainlink Automation对Uniswap v3的集中流动性池进行连续检查,以得出经过复杂计算的算法策略。ICHI利用这个计算的结果来决定何时执行必要的再平衡,从而节省了大量的计算和gas成本。
Chainlink Automation 2.0的开发者资源
Chainlink Automation 2.0代表了Web3应用程序开发的范式转变。作为一个可验证的计算层,Automation使开发人员能够在保持底层区块链的信任最小化和密码学保证的同时,访问先进的链下计算。通过以可验证且极其可靠的方式使开发人员能够将任何智能合约计算从链上转移到链下,Automation 2.0从而节省了高达90%的gas成本。
截至2024年1月,Chainlink Automation已在七条区块链上投入使用:Arbitrum、Avalanche、BNB Chain、Ethereum、Fantom、Optimism和Polygon。
要开始使用Chainlink Automation,请查阅开发者文档和Automation应用,或观看Automation Masterclass。
如果您想尝试使用Automation,请查看QuickStarts——可以帮助您快速创建基于Chainlink的应用程序的代码示例和工具。