本页面为社区翻译版本,仅供参考;内容以英文原版为准。
查看英文原版 ↗

多签

高级功能

HyperCore 支持原生多签操作。这允许多个私钥控制单个账户,以增强安全性。与其他链不同,多签在 HyperCore 上是内置原语,而无需依赖智能合约。

多签工作流程描述如下:

  • 要将用户转换为多签用户,该用户需发送一个 ConvertToMultiSigUser 操作,指定授权用户集合,以及签署操作所需的授权用户最低数量。授权用户必须是 Hyperliquid 上的现有用户。一旦用户被转换为多签用户,其所有操作都必须通过多签发送。
  • 要发送操作,每个授权用户必须对一个载荷签名以生成签名。MultiSig 操作可包装任意普通操作,并包含来自授权用户的签名列表。
  • MultiSig 载荷还包含目标多签用户,以及最终将 MultiSig 操作发送到区块链的授权用户。最终操作的发送者也称为多签操作的 leader(交易牵头地址)。
  • 发送多签操作时,仅验证并更新发送该交易的授权用户的 nonce 集合。
  • 与普通操作类似,牵头者也可以是某个授权用户的 API 钱包。在这种情况下,将检查并更新该 API 钱包的 nonce。
  • 多签用户的授权用户集合和/或签名门槛可通过发送一个包装 ConvertToMultiSigUser 操作的 MultiSig 操作来更新,后者描述新的状态。
  • 多签用户可通过多签发送 ConvertToMultiSigUser 转回普通用户。此时,授权用户集合可设为空,账户将被转换为普通用户。

其他注意事项:

  • 牵头者(交易牵头地址)必须是授权用户,而不是多签账户本身
  • 每个签名必须使用相同的信息,例如相同的 nonce、交易牵头地址等。
  • 牵头者必须在提交操作前收集所有签名
  • 一个用户可以既是多签用户,同时又是另一个多签用户的授权用户。一个用户可以是多个多签用户的授权用户。单个多签用户最多允许 10 个授权用户。

对 HyperEVM 用户的重要提示:将用户转换为多签后,其 HyperEVM 用户仍可由原始钱包控制。CoreWriter 对多签用户不适用。总体而言,多签用户在转换前后都不应与 HyperEVM 交互。

代码示例请参见 Python SDK。

英文官方来源: https://hyperliquid.gitbook.io/hyperliquid-docs/hypercore/multi-sig
原文抓取日期: · 镜像构建日期: · 社区翻译,以英文原版为准
非官方社区镜像与翻译,内容版权归 Hyperliquid 所有,以英文原版为准。 来源: https://hyperliquid.gitbook.io/hyperliquid-docs/hypercore/multi-sig