マルチシグ
高度な機能
HyperCore はネイティブなマルチシグアクションをサポートしています。これにより、複数の秘密鍵が単一のアカウントを制御でき、セキュリティが強化されます。他のチェーンとは異なり、マルチシグはスマートコントラクトに依存するのではなく、HyperCore の組み込みプリミティブとして利用できます。
マルチシグのワークフローは以下のとおりです:
- ユーザーをマルチシグユーザーに変換するには、ユーザーは認可ユーザーのリストと、アクションへの署名に必要な認可ユーザーの最小人数を指定した
ConvertToMultiSigUserアクションを送信します。認可ユーザーは Hyperliquid 上の既存ユーザーである必要があります。ユーザーが一度マルチシグユーザーに変換されると、そのすべてのアクションはマルチシグ経由で送信されなければなりません。 - アクションを送信するには、各認可ユーザーがペイロードに署名してシグネチャーを生成する必要があります。
MultiSigアクションは任意の通常のアクションをラップし、認可ユーザーからのシグネチャーのリストを含みます。 MultiSigペイロードには、対象のマルチシグユーザーと、最終的にMultiSigアクションをブロックチェーンに送信する認可ユーザーも含まれます。最終アクションの送信者は、マルチシグアクションのleader(トランザクションリードアドレス)とも呼ばれます。- マルチシグアクションが送信されるとき、トランザクションを送信した認可ユーザーのノンスセットのみが検証・更新されます。
- 通常のアクションと同様に、leader は認可ユーザーの APIウォレットであることもできます。この場合、APIウォレットのノンスがチェックされ、更新されます。
- マルチシグユーザーの認可ユーザーのセットやしきい値は、新しい状態を記述した
ConvertToMultiSigUserアクションをラップしたMultiSigアクションを送信することで更新できます。 - マルチシグユーザーは、マルチシグ経由で
ConvertToMultiSigUserを送信することで、通常のユーザーに戻すことができます。この場合、認可ユーザーのセットを空に設定すると、通常ユーザーへの変換が実行されます。
その他の注意事項:
- leader(トランザクションリードアドレス)はマルチシグアカウントではなく、認可ユーザーである必要があります
- 各シグネチャーは同じ情報(同じノンス、トランザクションリードアドレスなど)を使用しなければなりません
- leader はアクションを送信する前に、すべてのシグネチャーを収集する必要があります
- ユーザーは、マルチシグユーザーであると同時に、他のマルチシグユーザーの認可ユーザーであることができます。また、複数のマルチシグユーザーの認可ユーザーになることもできます。1つのマルチシグユーザーに対して許容される認可ユーザーの最大数は10人です。
HyperEVM ユーザーへの重要な注意:ユーザーをマルチシグに変換しても、HyperEVM 上のユーザーは元のウォレットによって制御可能なままです。CoreWriter はマルチシグユーザーには機能しません。一般に、マルチシグユーザーは変換の前後を問わず HyperEVM と相互作用すべきではありません。
コード例については Python SDK を参照してください。