跳到主要内容

常见问题解答

一般问题

什么是Hyperlane?
Hyperlane是第一个为模块化区块链堆栈构建的通用和无需许可的互操作性框架。任何人都可以部署Hyperlane到任何区块链环境,无论是第一层、rollup还是应用链,使该链能够与已部署Hyperlane的任何其他链无缝通信。

使用Hyperlane对区块链开发者有什么好处?
Hyperlane为区块链和dapp开发者都提供了好处。

  • 对于区块链开发者,Hyperlane部署扩展了对已部署Hyperlane的其他连接区块链上的用户、资产和有价值状态的可访问性。
  • 对于dapp开发者,Hyperlane提供了跨多个区块链的无缝连接,允许开发者创建跨链网络效应和流动性,用户可以从他们首选的链上与应用程序交互。

什么是Abacus Works?
Abacus Works是一个致力于Hyperlane的法律实体名称。你可能在较早的帖子和存储库中看到一些对Abacus的引用。Hyperlane在2022年秋季从Abacus更名为Hyperlane。

我可以用Hyperlane构建什么?
Hyperlane的消息接口允许dapp开发者在不同链上的智能合约之间发送任意字节。这可以用来创建跨链应用程序,即跨越多个链的dapp。

为了获取灵感,看看一些基于Hyperlane构建的预构建应用程序,包括:

  • Warp Routes:让用户将代币从一个链移动到另一个链。
  • 跨链账户:让用户进行跨链函数调用。
  • 跨链查询:让用户进行跨链视图调用。

我是一名开发者。我的团队如何使用Hyperlane构建?
如果你正在阅读这个FAQ,你已经找到了文档,这是一个很好的起点。话虽如此,我们知道在实施过程中会出现问题,我们很乐意帮助你。Hyperlane社区在Discord上定期活跃。开发者的反馈直接影响产品路线图。

技术问题

消息传递

当我在Hyperlane上发送消息时会发生什么?
有关更多详细信息,请参阅发送接收页面。总结如下:

  1. 应用程序在源链上调用dispatch()函数,将消息插入到Mailbox的Merkle树中。
  2. Hyperlane中继器观察已发送的消息,并为接收者的跨链安全模块(ISM)组装元数据。
  3. 中继器通过调用Mailbox.process()将消息传递给接收者。
  4. Mailbox使用接收者的ISM验证消息,并调用recipient.handle()来传递消息。

如何查看我发送的消息的状态?
Hyperlane消息浏览器的搜索栏中粘贴地址或交易哈希,以查看有关消息状态和历史的详细信息。

如果消息因某种原因发送失败,将会有错误消息指示可能出了什么问题。有关更多信息,请参阅浏览器调试

使用Hyperlane发送跨链消息是否意味着实时聊天和文本?
不是,Hyperlane是一个设计用于允许不同链上的智能合约相互交互的协议。
当我们提到消息传递时,它是指在智能合约之间发送任意字节,而不是点对点或文本消息传递。

对于聊天用例,请考虑XMTPPushOrbis

Hyperlane是代币桥吗?
不完全是。Hyperlane是一个通用消息传递(GMP)协议,允许区块链之间的通信。代币桥只是可以在Hyperlane之上构建的众多应用类型之一!

部署

Hyperlane部署在哪里?
已知部署的列表可以在合约地址页面上找到。

高级主题

Hyperlane如何保证安全?
Hyperlane由其模块化安全堆栈保障,该堆栈具有跨链安全模块(ISM)。开发者可以配置各种预构建的ISM,将它们相互组合,甚至根据应用程序的需求创建自定义ISM。 安全的模块化方法确保Hyperlane将继续跟上安全模型的最新行业进展。

Hyperlane有多少验证者,谁来运营它们?
验证者的数量取决于跨链安全模块(ISM)配置。默认ISM使用特定的验证者集合,你可以在这里查看详细信息,如阈值、运营商和地址。

我们如何确保消息完整性?
Hyperlane的消息安全由跨链安全模块(ISM)配置驱动。默认情况下,消息依赖于默认ISM的验证者集合,该集合需要验证者的法定人数签名以确保安全。在验证者被入侵的不太可能的情况下,消息的安全性可能会受到影响。然而,开发者有灵活性配置自己的ISM,使他们能够自定义和加强安全模型以适应其应用程序的需求。

源链是否收到目标链上交易执行的确认?
目前,源链不会自动收到来自目标链的执行确认。但是,可以通过自定义目标链上的handle函数来添加此功能。有关更多信息,请参阅handle函数

为什么出站消息ID存储在Merkle树中?
出站消息ID存储在Merkle树中以高效跟踪和验证消息。这种机制确保验证者可以准确检测并签署新创建的消息。

为什么验证者调用MerkleTreeHook.latestCheckpoint()
验证者使用MerkleTreeHook.latestCheckpoint()函数来确定何时需要索引新交易。这种轮询机制确保验证者可以立即开始签署新消息,而无需回填整个树。

社区与贡献

如何加入Hyperlane社区?
你可以加入Discord或在Twitter上关注Hyperlane,在那里你可以找到一个不断增长的开发者和爱好者社区,讨论跨链未来。

我对在Hyperlane工作感兴趣。在哪里可以看到职位空缺?
这里查看我们的开放职位。

如何为改进此文档做出贡献?
你可以通过文档仓库直接编辑此文档提交PR。

在哪里可以获得支持或询问有关Hyperlane的问题?
你可以在我们的Hyperlane Discord上获得支持和提问,社区和团队在那里活跃并随时准备提供帮助。