本文介绍了智能合约自动化的概念,它允许开发者以自动化的方式触发智能合约功能。文章探讨了智能合约自动化的安全性和成本考量,并重点介绍了Chainlink Automation作为一种去中心化、低成本且可靠的智能合约自动化工具的优势,最后展示了Web3自动化解锁的各种用例,包括自动化的收益收割、DEX限价单、动态NFT等。
定义
智能合约自动化使开发者能够以自动化的方式触发智能合约功能。
智能合约的效用随着时间的推移不断发展。最初的智能合约被用于发行和分配基于区块链的代币的权利。后来,开发者开始利用预言机网络来创建混合智能合约,这些合约在链上应用程序中使用外部数据和链下计算,从而实现新的市场,例如 DeFi、动态 NFTs 和 GameFi。现在,另一种基础设施正在崭露头角——智能合约自动化。
本文将探讨智能合约自动化及其所开启的可能性。我们首先定义智能合约自动化,并检查围绕自动化智能合约执行的关键安全和成本注意事项,然后重点介绍智能合约自动化工具 Chainlink Automation 的优势,并展示由 Web3 自动化解锁的各种用例。
如果你是一名开发者,并且想立即深入研究代码和技术组件,请跳至下面的初学者指南教程或访问 Chainlink Automation 文档。
智能合约自动化允许开发者以自动化的方式触发智能合约函数。这些可以包括收获收益、铸造 NFT、启动和停止游戏回合、触发抵押不足贷款的清算等等。为了更好地理解智能合约自动化的广泛优势,让我们从智能合约自动化帮助开发者克服的问题的角度,建立对智能合约自动化的工作理解。
智能合约是在区块链上运行的确定性程序。它们包含的代码声明,“如果发生 x 事件,则触发 y 动作。”但是,智能合约不是自我执行的,这意味着在被链上交易触发之前,它们的代码不会运行并在区块链上进行状态更改。外部交易充当“poke”,以唤醒智能合约并启动其逻辑,类似于单击鼠标如何启动计算机程序。
例如,基于区块链的借贷协议在进行链上交易调用其清算功能之前,无法清算抵押不足的贷款。一旦被调用,该协议的清算智能合约将通过引用链上价格信息来验证贷款是否抵押不足。如果抵押不足,则用户的抵押品将被清算以偿还其债务——否则,交易将恢复。
在某些用例中,最终用户通过他们自己的智能合约交互直接调用链上函数。例如,当用户想要在去中心化货币市场中提取贷款时,他们针对其抵押品借入代币的交易会直接触发贷款发放功能执行。此功能将确定用户的最大贷款规模,然后将借入的代币转账到他们的地址。但是,在许多情况下,智能合约必须执行链上功能以维持协议的健康和效用——而没有直接的用户交互来触发它们。
“Keepers”是外部拥有账户 (EOA),它们被激励根据预定义的条件触发智能合约的执行。条件在作业中定义,并由开发团队、DAO 或协议用户提交到去中心化网络,并提供基于绩效的奖励。智能合约自动化的条件通常基于时间(例如,每天美国东部时间下午 5:00 触发 x 函数)或事件(例如,仅当资产价格超过某个阈值时才触发 y 函数)。
去中心化自动化节点检查条件,并在满足这些预定义条件后进行交易。此过程通常涉及节点使用链下计算来执行可能最终在链上调用的相同智能合约函数。一旦函数返回 true,则节点通过发出链上交易在链上调用该函数。当调用该函数时,协议的智能合约可以在进行状态更改之前在链上验证条件,从而帮助确保节点是正确的。最终结果是智能合约仅在需要时以及根据明确定义的条件在区块链上运行。
虽然自动化的目的相对简单,但重要的是要查看一些关键的技术考虑因素,以便了解 Chainlink Automation 等工具的优势。
以下是在你的 dApp 中使用智能合约自动化工具时要考虑的一些关键安全风险和成本考虑因素。
一种智能合约自动化的实现方式包括在中心化服务器上运行 Solidity cron 作业,或者让开发团队手动监视条件并进行链上交易。在这种设置中,自动化节点成为中心化的故障点,从而导致智能合约函数执行不及时的风险(例如,停机或延迟)。未按要求执行的智能合约可能导致不对称的漏洞利用和错失的机会,例如交易滑点、协议资不抵债和用户资金损失。
手动开发者运营 (DevOps) 也对项目有限的时间和资源提出了要求,否则这些时间和资源可以用于核心产品开发和生态系统扩展。随着项目寻求简化用户体验并通过智能合约自动化向其 dApp 添加高级实用程序,手动 DevOps 也可能会随着时间的推移变得更加繁重。最后,智能合约需要端到端去中心化,包括负责触发其执行的链下自动化基础设施。
另一种设计智能合约自动化系统的方法是提供赏金,并在满足某些条件时向第一个调用链上函数的节点分配经济奖励。虽然此方法改进了中心化自动化模型,但它带来了成本效率、中心化和不可预测性方面的挑战。例如,在最早的去中心化自动化解决方案之一 Ethereum Alarm Clock 中使用的激励系统意味着交易可能根本无法执行。
赏金的主要问题在于,节点最终会参与直接竞争以获得赢家通吃的奖励,从而引发优先级 gas 拍卖 (PGA) 竞标战。竞争节点将不断提高他们愿意支付的 gas 价格,以激励矿工首先处理他们的交易。由于智能合约函数只能在其条件满足后调用一次,因此只有第一个节点成功并获得其工作的报酬。每个其他节点都不成功,并且由于未发出 gas 消耗的补偿,因此会产生损失。由于大多数自动化作业成本都涉及基本成本加上 gas 费用,因此 PGA 会增加最终用户的成本,他们必须支付更高的 gas 费用。
围绕公共赏金设计的智能合约自动化实现还会助长其他几个意想不到的后果。首先,PGA 会增加区块链上的网络拥塞,从而为节点和网络上的每个人带来更高的 gas 价格。此外,竞争可能导致节点的数量随着时间的推移自然减少到少数几个资金充足的参与者,他们会提交具有侵略性的 gas 价格。中心化自动化网络通过减少监视和提交交易的节点数量来降低可靠性。
公共赏金的另一个风险是,智能合约没有节点提供及时服务的直接承诺。这引入了一定程度的不确定性,尤其是在市场剧烈波动和网络拥塞的时期,而此时最需要自动化。例如,如果一小组有竞争力的节点由于 gas 价格过高、gas 资金耗尽或他们专注于其他活动而未及时采取行动,则不会清算有毒头寸的借贷协议可能会变得资不抵债。
从这些设计中得出的结论是,自动化网络需要以经济高效、防篡改且高度可用的方式执行智能合约自动化。
与其依赖中心化设置或冒险使用竞争性公共赏金,项目可以将他们的智能合约执行外包给 Chainlink Automation——一种去中心化的智能合约自动化工具,在超可靠性和激励对齐方面具有可靠的记录。Chainlink Automation 已经在 Avalanche、BNB Chain、Ethereum 和 Polygon 上线,未来将添加对更多链的支持。
Chainlink Automation 服务的一些好处包括:
以下仅是通过 Chainlink Automation 实现的众多智能合约用例中的一小部分,包括流动性管理、DEX 限价单、动态 NFT 等。还有大量的其他用例尚未创建,等待着创新和富有创意的开发人员来开拓。
Alchemix 是一种自我偿还贷款协议,它集成了 Chainlink Automation,以每天收割用户抵押品产生的收益。然后,收益用于偿还贷款产生的部分债务,而无需任何手动输入或开发人员开销。
COTI 正在使用 Chainlink Automation 每天在 UTC 时间午夜重新抵押与 Crypto Volatility Index (CVI) Hook的波动性代币的供应。这为代币以完全去中心化的方式保持与底层 CVI 指数Hook提供了更强的保证。
Visor Finance 是一种适用于 Uniswap v3 流动性提供者 (LP) 的管理协议,旨在优化收益回报。当超过某些预定义的阈值时,Visor Finance 使用 Chainlink Automation 将获得的费用和新资本存款再投资到活跃的流动性头寸和单资产限价单中。最终结果是 LP 能够通过有效和及时地部署资本来维持高资产利用率。
The Curse NFT 是一个动态 NFT 艺术项目,它根据 ETH 的价格变动显示模型 Krystal Schott 的正面或负面 3D 渲染图。The Curse NFT 正在使用 Chainlink Automation 来触发 NFT 以显示其最终的“幸运”形式,如果 ETH 的价格达到 2 万美元。
基于 NFT 的策略游戏 Planet IX 正在 Polygon 上使用 Chainlink Automation 进行每周抽奖的基于时间的智能合约自动化。这有助于为用户提供更强的保证,即抽奖将按时开始和停止,而不会中断。现在,开发人员可以使用 Chainlink Automation 创建 Avalanche、BNB Chain、Fantom 或 Ethereum 基于时间的智能合约。访问 docs 了解如何使用智能合约自动化触发交易。
Chainlink Automation 可用于定期触发智能合约启动和结算功能,以帮助以预定义的间隔执行游戏或回合。如果没有智能合约自动化工具,开发人员将需要手动触发负责启动和停止回合的智能合约功能。
去中心化交易所需要智能合约自动化工具,以便用户可以在平台上设置限价单,并解锁更无缝的用户体验。Chainlink Automation 可以监视链上条件,以便在达到特定价格时自动触发限价单。
Chainlink 自动化网络可以监视预定义的条件,并在满足这些条件时触发链上支付,从而有助于促进自动化的链上支付工作流程。
Chainlink Automation 节点可以根据预定义的计划定期触发锁定或归属资产的释放,从而帮助项目利用透明的代币归属机制。
Chainlink Automation 可以通过持续检查未平仓贷款的抵押率是否低于预定义的清算阈值来监视去中心化货币市场上用户贷款的健康状况。如果发现用户的借款交易抵押不足,Chainlink Automation 可以调用货币市场的清算功能,从而有助于确保协议保持偿付能力。
动态 NFT 会响应预言机中继的外部数据而演变。当某些条件发生变化时,Chainlink 自动化网络可以触发动态 NFT 更新,并帮助解锁越来越复杂的艺术项目、粉丝体验、游戏资产等。
去中心化治理流程通常需要手动执行,从而将中心化风险引入组织的管理中。Chainlink Automation 可以通过自动触发国库更新和贡献者付款、在链上中继链下治理投票等来帮助去中心化治理流程。
Chainlink Automation 支持各种用例,包括收割和自动复利收益、启动和停止预测回合、设置限价单等。
如何使用 Chainlink Automation 触发 Solidity 智能合约 - YouTube
Chainlink
148K 位订阅者
如何使用 Chainlink Automation 触发 Solidity 智能合约
Chainlink
搜索
信息
购物
点按取消静音
如果播放没有立即开始,请尝试重新启动设备。
你已退出登录
你观看的视频可能会添加到电视的观看历史记录中,并影响电视推荐。为避免这种情况,请从电脑上取消并登录 YouTube。
取消确认
分享
包括播放列表
检索共享信息时出错。请稍后重试。
稍后观看
分享
复制链接
在以下位置观看:
0:00
/ •直播
•
按照此技术指南了解如何使用 Chainlink Automation 自动化智能合约。你将了解如何部署与 Automation 兼容的合约、如何注册维护以及更多信息。
如果你想立即开始构建混合智能合约应用程序,并且需要某种类型的外部数据或计算,请参阅文档以了解如何触发智能合约函数、在 Discord 中提出技术问题,或与专家安排通话。
Chainlink VRF 支持的 35 多个区块链 RNG 用例
Chainlink Automation 释放的智能合约用例
Chainlink VRF 支持的 35 多个区块链 RNG 用例
Chainlink Automation 释放的智能合约用例
- 原文链接: chain.link/education-hub...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!