撰文:0x76
随着 IBC 跨链功能的上线,以及 Terra 与 Injective 等明星项目的逐渐接入,基于 Cosmos 构建的多链生态目前已经初具规模。然而在我们查询资料的时候发现,当前中文互联网上尚缺少一篇系统地介绍 Cosmos 生态基本交互逻辑的文章。
而 Cosmos 这种原生多链网络的交互逻辑,又与用户已经熟悉的以太坊生态有着本质不同。因此,本文将从已经熟悉以太坊操作的用户视角出发,介绍 Cosmos 多链生态中钱包、IBC 跨链以及交易的基本操作,希望帮助单链生态中的用户更轻松的在 Cosmos 多链宇宙中畅游。
进入多链网络首先要解决的一个问题,便是用户的账户(地址)问题。
其实在以太坊及其他 EVM 兼容公链中,对这个问题已经有了较为成熟的解决方案,那就是使用同一套地址及公私钥对。因此,当用户在不同的公链网络中切换时,并不需要重新注册新的钱包地址并备份助记词。
Cosmos 多链生态也采用了类似的策略,用户依然只需要记住一套私钥助记词。但 Cosmos 相较以太坊有一个最大的不同,那就是其生态公链间原生的支持跨链互操作功能。因此当一个用户在所有 Cosmos 公链中的账户地址都完全一样时,一旦遇到跨链转账便会产生很大的麻烦。
因此,Cosmos 将用户在每一条链上的地址格式进行了二次加工,以便可以直接通过地址格式,判定其属于哪一条链。这相当于在每家银行的账号中,直接嵌入了开户行信息。当用户进行跨行转账时,便不再需要输入收款方开户行,而是直接输入对方账号就可以了。这无疑大大提高了在 Cosmos 生态中进行跨链转账时的用户体验。
下面以由同一套助记词在三条不同 Cosmos 生态链中生成的地址为例:
Cosmos Hub 中的地址:
cosmos15s7e2gwyqke4s3tc8wyqt8szm5wv4tjwryelvh
Osmosis 链中的地址:
osmo15s7e2gwyqke4s3tc8wyqt8szm5wv4tjwtl2069
Kava 链中的地址:
kava1n0qmruvsg90hza0z7a5knz6d5r2j0n76psktfy
可以看出,除了开头处明显的标志代码外,用户在不同链生成的地址,在后半部分还是有明显差异的。有些用户因此担心,当别人向我转账时,万一我给错了地址怎么办,转过来的资金会不会丢失?
其实这是多虑了,只要这个错误的地址依然是由用户的私钥所生成,那么这些资金就会始终处于用户的控制之下。资金充其量是被转到了错误的链而已,用户的资产安全不会出现问题。
谈到公链生态的基础设施,那么便少不了钱包、浏览器,以及基础的 DeFi 组件如跨链桥以及交易平台。
目前 Cosmos 生态中最为主流的钱包应用为 Keplr 钱包。Keplr 包含手机版与 Chrome 浏览器插件版,而以插件版本的功能最为强大,其地位相当于以太坊生态中的 Metamask。
其使用逻辑也极为简单,与 MetaMask 类似,在界面上方可以切换不同的公链网络,而下方增加了 PoS 链特有的 Stake 功能,并直接显示出了当前的收益率。用户只要点击按钮,就会直接跳转到相关的网页界面,这里不过多介绍。
此外,在 Keplr 钱包中,还原生集成了 IBC 跨链功能。但是经过试用后发现用户体验不太好,需要用户手动查询并输入目标链的 Channel ID,因此暂不推荐使用。
多链网络自然需要支持多链的区块链浏览器,这里直接向大家推荐 mintscan.io。
用户进入后首先到上方标红框处选择自己需要查询交易的所在网络,然后在搜索框属于账户或交易地址即可,操作与以太坊浏览器类似。
当然,在 mintscan.io 中还包含不少涉及 IBC 跨链的查询功能,鉴于普通用户的使用频率不高,因此本篇暂不做过多介绍。
IBC 跨链是 Cosmos 多链生态中最重要也是最为独特的功能,在许多生态应用的前端界面中都集成了 IBC 跨链功能。对于第一次体验的用户来说,推荐使用由 Cosmos 官方团队开发的前端应用 Emeris(https://app.emeris.com/)。
Emeris 是一个统一的操作 Cosmos 生态基础功能的前端平台,由官方团队负责开发,将支持基本的交易、跨链,以及 PoS 质押(尚未推出)等基础功能。如果需要进行 IBC 跨链转账,只需要点击网站首页的 Send 按钮。
点击后会进入一个选择页面。其中两个选项都可以调用 IBC 跨链功能,左侧的用于在任意账户间进行 IBC 跨链转账,而右侧按钮则只支持在用户自己不同链的地址间进行 IBC 转账。
我们以左侧更通用的 IBC 转账功能为例。在点击后进入的界面中,需要用户输入收款方地址(注意这里只需要输入地址,并不需要特意注明地址所在的链,因为地址格式中已经包含了这个信息)。这里我们输入刚才用到的 Osmosis 链地址后,点击确认。
下一步需要选择转账的币种以及金额。注意在界面下方会出现手续费的估算界面。由于本次转账的付款链是 Cosmos Hub,而收款链是 Osmosis,因此需要调用 IBC 协议的资产跨链功能,并在交易的 gas 费以外另外收取一笔跨链费用。如果转入与转出地址处于同一条链上,则此处显示的跨链费用为零。
点击确认后,进入交易的最终确认界面。界面中显示了本次交易的转出地址与转出链,转账金额与币种,以及转入地址与转入链。点击确认后将进入钱包签署环节(注意这里还要再支付一次交易的 gas 费),等待几秒钟之后,一笔基于 IBC 的跨链转账交易便完成了。
看到这里,许多读者可能会觉得,这个所谓的 IBC 跨链功能看起来很简单啊,跟平常的转账似乎也差不太多,有必要这么详细的一步步介绍吗?
是的,这其实就是 IBC 协议在用户体验上的最大优势。虽然是在进行跨链,但如果单从用户体验上来讲,整个流程基本就是一次再寻常不过的转账交易。完全不需要提前教学,自己稍微摸索下就能上手,而且到账速度极快。
回忆一下我们之前用过的其他跨链桥。用户在操作前首先需要登陆单独的前端界面,其次这些桥往往只支持一些主流资产,然后部分跨链桥还需要用户等待不短的确认时间。整个跨链过程的体验极差,因此不同的公链生态也被大大割裂,难以形成统一的生态系统。
而 Cosmos 生态中的 IBC 协议则相当于给不同公链间架起了高速铁路,将一个个卫星城连接成城市群,并进一步产生协同效应,促进各个公链经济的发展。
可以说,IBC 协议是真正的实现了,让跨链像转账一样简单的终极目标。目前唯一的不足,便是 Cosmos 生态以外的许多主流公链并不原生地支持 IBC 协议,而这个问题或许只能期待其他公链在后续的升级中逐步解决了。
在单链生态中,交易平台基本都是以智能合约的形式部署到链上,不同项目仅在做市函数上有些许的区别。而在包含原生跨链协议的多链生态中,部署应用的途径获得了很大的扩展。除了传统的智能合约以外,还可以直接部署应用链作为承载应用的载体。
以 Cosmos 生态系统中的交易平台为例,既有基于传统智能合约开发的 Gravity DEX,也有基于 Cosmos SDK 开发的专用于交易的应用链 Osmosis。
Gravity DEX 同样是由 Cosmos 官方团队开发的交易平台,其智能合约被部署在 Cosmos Hub 上,前端地址是:https://app.emeris.com/。是的,跟上文中我们体验 IBC 跨链时使用的是同一个前端。Gravity DEX 并没有开发独立的前端,而是选择将功能直接集成进了同样由官方支持的 Emeris 中。
我们可以在 Emeris 首页的右侧,直接找到 Gravity DEX 的操作界面。整个交易逻辑与以太坊中的交易所基本一致。
这里需要强调一点,就是虽然 Gravity DEX 是部署在 Cosmos 跨链生态的核心 Cosmos Hub 上,但其依然不能算是一个跨链 DEX。任何想要通过 Gravity DEX 交易的资产,都要首先通过 IBC 跨链到 Cosmos Hub 链上,才能在 Gravity DEX 中进行交易。
因此当卖出资产与买入资产处于不同的链上时(如下图),交易者一共需要支付两笔费用。一是调用 IBC 的跨链费(红框 1),二是 Swap 费用(红框 2)。
由于是由 Cosmos 官方开发,Gravity DEX 并没有发行自己的原生代币,因此也暂时没有流动性挖矿等激励措施。目前整个协议的锁仓量不高,大约为几千万美元规模。
Osmosis 是一条基于 Cosmos SDK 构建的独立应用链,同样由开发了 Keplr 钱包的团队开发。目前其主网已经通过 IBC 协议连接到了 Cosmos Hub 上,因此可以顺畅的与 Cosmos 生态中的其他资产进行跨链交互。
与其他通过智能合约构建的应用不同,Osmosis 的交易逻辑完全部署在自己的公链之上。当我们提到 Osmosis 时,既可以表示一条公链,也可以表示一个去中心化应用,Osmosis 的链与其应用是有机的组合在一起的。
Osmosis 的做市函数基于 Balancer 的模型构建,Osmosis 中的 LP 可以在自己创建的资金池中定义两种资产的比例,以及手续费比例。
此外由于采用了应用链的底层架构,使得 Osmosis 团队获得了更大的施展空间。Osmosis 为主流的交易对提供了流动性挖矿的激励措施,而对于资金池中的 OSMO 代币,由于其同样属于公链的原生资产,因此在做市时,还可以同时享受到 PoS 的 Staking 收益。
在这种三重激励(交易手续费、流动性挖矿奖励、PoS 质押奖励)的奖励下,当前其资金池的年华收益率普遍高于 50%,锁仓量也比 Gravity DEX 高出不少,TVL 已经达到了 6 亿美元的规模。
此外,截止目前,在 Osmosis 上的交易依然是免 gas 费的。这便是应用链的优势,可以根据上层应用的发展需求,随时调整底层的财政政策,以便更好地支持上层应用的发展。
最后补充一点。虽然 Osmosis 与 Gravity DEX 采用了不同的底层技术架构,但是他们的交易逻辑,都是先将资产通过 IBC 跨到 DEX 所在的公链然后再进行交易。在 Osmosis 中,将资产从其他公链跨链到 Osmosis 被称作 Deposit,跨回被称为 Withdraw。但读者需要清楚,这些功能只是站在 Osmosis 的视角,对 IBC 跨链功能的另一种描述而已。
在上文中我们反复提到,无论是基于智能合约的 Gravity DEX,还是基于应用链的 Osmosis,其本质上都不是真正的跨链 DEX。想要在这些 DEX 上交易的前提,都是先将资产跨到 DEX 所在的目标链上。
那么有没有不用改变资产的所在链,直接在链与链之间进行撮合交易的交易平台呢?
有的,Thorchain 便是这种类型的 DEX。Thorchain 同样是基于 Cosmos SDK 开发的应用链,虽然没有通过 IBC 协议与 Cosmos Hub 进行连接,但某种程度上也可以算是 Cosmos 生态的相关项目。
但在本文中,我们不对 Thorchain 项目做过多介绍。一是其机制本身较为复杂,二是该项目曾出现过安全问题。因此,对于普通用户来说,了解 Gravity DEX 与 Osmosis 这两个项目便足够了。
想要在短短几千字中系统性地将 Cosmos 多链生态,以及 IBC 的使用场景介绍完整显然是不可能的。因此本篇文章只是希望先将读者带入多链生态中简单地一探究竟。
在这里,公链既可能是平台,也可能是应用。转账既可以是支付,也可以是 IBC 跨链。随着目前单链生态逐渐地朝多链方向演化,未来的多链生态将会越来越多(波卡的异构分片、章鱼网络的应用链系统等等)。
虽然目前的多链网络还存在着各种问题,即便是 Cosmos 生态也因为经济架构的设计问题,导致原生代币 ATOM 难以很好地捕获生态价值。但在这种更高维度的环境中,有可能会诞生出更多有价值的创新,就如 Cosmos 生态中的明星项目 Terra。
因此,关注早期投资机会的投资人,不妨多去体验体验新的多链生态中的明星项目及跨链。只要体验过 Cosmos 中的 IBC 功能,可能就再也用不回跨链桥了。
欢迎加入律动 BlockBeats 官方社群:
Telegram 订阅群:https://t.me/theblockbeats
Telegram 交流群:https://t.me/BlockBeats_App
Twitter 官方账号:https://twitter.com/BlockBeatsAsia