如何从 Hyperlane 邮箱转移所有权
本指南解释了如何使用 Hyperlane CLI 更改 Hyperlane 邮箱的所有者。转移所有权在您希望将控制权交给其他地址时是必要的,例如出于安全原因或在更改邮箱管理者时。
作为新所有者,您将完全控制邮箱设置,包括管理钩子、ISM 配置和消息处理权限。我们将指导您更新所有者地址、应用更改并确认一切设置正确。
使用 Hyperlane CLI
使用 Hyperlane CLI 转移邮箱所有权是最快的方法之一。
前提条件
- 由
hyperlane core init
生成的核心配置。- 此配置用于部署核心合约,包括邮箱。默认情况下,它使用
CURRENT_DIR/configs/core-config.yaml
的文件路径。
- 此配置用于部署核心合约,包括邮箱。默认情况下,它使用
- 邮箱部署的链。
- 访问当前拥有邮箱的私钥。
信息
如果您遵循了 如何将您的链与 Hyperlane 连接 的指南,您可能已经部署了一个所有者设置为单个私钥的邮箱。在生产环境中,建议使用多签名。
要确认使用 Hyperlane CLI,请执行以下命令,--chain
设置为您部署邮箱的链的名称:
hyperlane core read --chain <yourChain>
运行 core read
后,您应该会看到类似的配置,其中 owner
设置为私钥的地址:
defaultHook:
address: "0xC2E88eC0aB5FDB9756CD3EFEE40D24120fFa6E57"
type: "merkleTreeHook"
defaultIsm:
address: "0xF37395A79f56268FD0040E1f5711e9Af974a545A"
relayer: "0xa5558cA30cd9952Ab0e2349C274a3736698bD60e"
type: "trustedRelayerIsm"
owner: "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
requiredHook:
address: "0x390d29a822C21F57B163F1173cD43382bd643401"
beneficiary: "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
maxProtocolFee: "100000000000000000"
owner: "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
protocolFee: "0"
type: "protocolFee"
输出将保存到 CURRENT_DIR/configs/core-config.yaml
。
请按照以下步骤使用 CLI 将现有所有权转移到另一个地址。
第一步:更新配置
在 core-config.yaml
中更新 owner
地址
core-config.yaml
defaultHook:
address: "0xE71AC7A1ccB822423576EfFdb0B74564C49BEcBA"
type: merkleTreeHook
defaultIsm:
address: "0x89842f40928f81FC4415b39bfBFC3205eB6161cB"
relayer: "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
type: trustedRelayerIsm
- owner: "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
+ owner: "0x70997970C51812dc3A010C7d01b50e0d17dc79C8"
requiredHook:
address: "0x390d29a822C21F57B163F1173cD43382bd643401"
beneficiary: "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
maxProtocolFee: "100000000000000000"
owner: "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
protocolFee: "0"
type: protocolFee
第二步:应用
使用 CLI 执行:
hyperlane core apply --chain <yourChain>
您应该会看到一批交易在链上执行,并且最后一条消息指示邮箱已更新。
第三步:确认
要确认使用 Hyperlane CLI,请执行以下命令:
hyperlane core read --chain <yourChain>
运行 core read
后,您应该会看到类似的配置,其中现在更新的 owner
为:
defaultHook:
address: "0x67F8c06Fd2915728E9D21451E33FbDFbCcd63c44"
type: "merkleTreeHook"
defaultIsm:
address: "0xac7D6df90fa937ADEfE7aD2d4905f0AEa170c467"
relayer: "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266"
type: "trustedRelayerIsm"
owner: "0x70997970C51812dc3A010C7d01b50e0d17dc79C8"
requiredHook:
address: "0x1Cd94b4D9B5f0e3474a6bDB8b9503Ca84F53e548"
beneficiary: "0xa5558cA30cd9952Ab0e2349C274a3736698bD60e"
maxProtocolFee: "100000000000000000"
owner: "0xa5558cA30cd9952Ab0e2349C274a3736698bD60e"
protocolFee: "0"
type: "protocolFee"
通过完成这些步骤,您已成功将邮箱的所有权转移并验证到新地址。