マルチシグ・アカウント・キー
AccountKeyWeightedMultiSigは、閾値とWeightedPublicKeys(公開鍵とその重みからなるリスト)を含むアカウント鍵タイプである。
AccountKeyWeightedMultiSigに関連付けられたアカウントで取引が有効であるためには、 以下の条件を満たす必要がある: 署名された公開鍵の加重和が閾値より大きいこと。 無効な署名はトランザクションに含めるべきでない。 * 署名された公開鍵の数は、weightedPublicKeysの数より少なくなければならない。
ethers.jsにkaiaの機能を追加するために、ethersおよび @kaiachain/ethers-extパッケージをインポートする。
送信者のaddressとprivate keyおよびすべての重み付きマルチシグ秘密鍵を定義する。
指定されたkairos testnet URLでプロバイダを設定します。 エーテルにおけるプロバイダーとは、ブロックチェーンのデータにアクセスするための読み取り専用の抽象化されたものである。
また、プロバイダのURLをkairosからquicknodeに変更することができます。
weight multi-sig秘密鍵とプロバイダを使って3つのウォレットを作成する。
署名され、復元されるメッセージを定義する
送信者のwallet3でメッセージに署名する。
ethers.utils.verifyMessage
を使用して署名されたメッセージからアドレスを復元する。
klay_recoverFromMessage
を使って署名されたメッセージからアドレスを復元する。