セキュリティ強化のために、プロキシアカウントを介して新しいブロックのハーベスティングします。
リモートハーベスティング は ノード所有者 に、ノード設定ファイルにメインアカウントの秘密鍵を 公開せずに 新しいブロックの生成報酬を受け取ることができます。
注釈
ブロックはノードだけがハーベストできます。ノードは所有していないが、ハーベスティング手数料を受け取りたい場合は デリゲートハーベスティング で ノードにハーベスティングをリクエスト します。
このガイドでは 2つのセクション があり、 Symbol Bootstrap を使用して、または手動でノードを構築したかによります。
Symbnol ノードの立ち上げ ガイドに従った場合は、ノードを構築する際に Symbol Bootstrap を使用したはずです。 すぐに使用できるプリセットにより、デフォルトでリモートハーベスティングが可能になる ので、そのガイドに従い、ハーベスティングを有効にした場合は、何もする必要はありません。
明確にするために、 Symbol Bootstrap はリモートアカウント (addresses.yml
ファイルで remote
とラベル付けされている) を自動的に作成し、それを新しいブロックの署名者として設定します。 (harvesterSigningPrivateKey
プロパティの秘密鍵を使用) 次に symbol-bootstrap link
コマンドは、アクティベーションを完了するために必要な AccountKeyLink および VrfKeyLink トランザクションをアナウンスします。
注釈
注目すべき点として 非推奨です が カスタムプリセットファイル のこの行を使用して、リモートアカウントを省略し メインアカウントで直接 新しいブロックに署名できます:
nodeUseRemoteAccount: false
メインアカウントの秘密鍵はノード設定ファイルに存在し、ノードに侵入されたはアクセスされる恐れがあることは言うまでもありません。
例えば catapult-server インストラクション に従ってノードを自分でデプロイした場合は 手動でハーベスティングを有効 にする必要があります。
catapult-server ドキュメント では、サーバがメインアカウントの秘密鍵を保有する方式で ローカルハーベスティング を有効化する方法について説明があります。このセクションでは より安全な プロキシアカウントを使用した リモートハーベスティング を有効化する方法を説明します。
これは symbol-cli ツールを使用して実行されます。必要な手順は次のとおりです:
リモートアカウント として機能する新しいアカウントを作成します。このアカウントは トランザクションを送受信したことがない 必要があり、リモートアカウントとして機能している間はトランザクションに関与できないため、最初から作成するのが最も安全です。
これをターミナルで実行します:
catapult.tools.addressgen --network public
# Change the network type to suit your needs
symbol-cli account generate
# Do NOT save the account, and set the import type to PrivateKey
新規アカウントの 公開鍵 と 秘密鍵 を書き留めてください。
config-harvesting.properties
ファイルを編集します (catapult-server 手順 に従っている場合は resources
ディレクトリ内にあります) harvesterSigningPrivateKey
フィールドを探し出し、リモートアカウントの秘密鍵を書き込みます。
メインアカウントをデフォルトプロファイルとして symbol-cli を設定してください。 (そうでない場合は --profile
パラメータを使用します)
このコマンドをターミナルで実行します:
symbol-cli transaction accountkeylink --action Link -u <PUBLIC-REMOTE-KEY> --sync
ステップ 1 で取得した <PUBLIC-REMOTE-KEY>
を使用します。 --sync
パラメータは、トランザクションが承認されるまで待機します。このトランザクションをアナウンスするために支払う手数料は 手数料ドキュメント を確認してください。
すべての 適格アカウント は VRF キーを登録する必要があります。 config-harvesting.properties
ファイルの harvesterVrfPrivateKey
フィールドを確認してください。すでに入力されている場合はこの手順をスキップできます。
それ以外の場合は、手順 1 と同じように別のアカウントを作成して、VRF アカウントとします。
catapult.tools.addressgen --network public
# Change the network type to suit your needs
symbol-cli account generate
# Do NOT save the account, and set the import type to PrivateKey
構成ファイルの harvesterVrfPrivateKey
フィールドに 秘密鍵 を書き込み、VRF とメインアカウントをリンクするために VrfKeyLink トランザクション をアナウンスします:
symbol-cli transaction vrfkeylink --action Link -u <PUBLIC-VRF-KEY> --sync
これでノードはリモートハーベスティング構成になりました。ただし、次の重要な点に注意してください。
importanceGrouping
プロパティを参照してください。お探しのものは見つかりましたか? フィードバックをください。