ハーベスト

Last-modified: Sun, 22 May 2022 10:36:10 JST (704d)
Top > ハーベスト

新しいブロックを生成するプロセスをハーベスティングと呼びます。

このプロセス中にハーベスタと呼ばれる、ブロックをハーベストするアカウントは、生産したトランザクション手数料と発生したインフレーショントークンで報われます。

生成された各ブロックは、ハーベスタアカウントの公開鍵とそれが作成したブロック署名をヘッダーに格納します。

 

ハーベスタ適格基準 Edit

インポータンススコアはハーベストが有効になっているすべてのアカウントの中から、次のブロックを収集するためにアカウントを選択する確率を決定します。

 

Symbolのパブリックネットワークでは、0より大きいインポータンススコアを獲得するために、アカウントは10,000以上のハーベスティングモザイクを保有している必要があります。 ノードの運用 または、別のノードに デリゲートハーベスティング を有効にすることで、適格なアカウントはそのインポータンススコアを使用して新しいブロック生成を行います。

選択した方法に関係なく、 ハーベスティングをアクティブ化したいアカウント は、最初に有効な VrfKeyLinkTransaction を通知します。このキーは Symbol のランダムなハーベスタ選択に必要です。

ハーベスティングモザイク

Symbol プラットフォームは様々なビジネスニーズに合わせたハーベスティングを目的とした モザイク定義 をサポートします。

例えばコンソーシアムネットワークではインフラを運営する企業間でハーベスティングモザイクを配布することができますが、他の参加者はサービスを利用するために 通貨モザイク を支払う必要があります。

これとは対照的に、パブリックネットワークではトランザクション手数料の支払いとネットワーク運用には同じモザイクを使用することがあります。たとえば Symbol のパブリックネットワークでは symbol.xym をハーベストモザイクとして使用して、適格な参加者が新しいブロックをハーベストできるようにしています。

報酬

ネットワークオペレーターはハーベスト報酬 (ブロック 手数料 および インフレーション)の割合を受け取る ネットワーク手数料シンクアカウント を定義できます。パブリックメインネットワークにおいて、この料金は 5% に設定されており、さまざまな 報酬プログラム をサポートするために使用されます。

さらに、各ノードは 受益者アカウント を設定して、ハーベスト報酬の割合 (最大25%) を共有できます。ノードオペレータはこの機能を使用して、ノードサポータのインセンティブ構造を作成できます。

受取人の共有比率とネットワークシンクアカウントは ネットワークごとに設定可能 です。

../_images/network-sink-beneficiary.png

ネットワークシンクに対するネットワークの共有率が20%、受益者に対するネットワークの共有率が10%である場合の報酬区分。

 

注釈

受益者の割合の計算は、ネットワークシンク計算後に行われます。ノードオペレーターが受取人またはネットワーク手数料シンクを定義しない場合、すべての報酬はブロック署名者に送られます。

 

ハーベスティングタイプ Edit

ハーベスタアカウントがノードを所有しているか、および要求するセキュリティレベルに応じて、さまざまな種類のハーベスティングを利用できます。: ローカル、リモート そして デリゲート です。

 

ローカルハーベスティング

これは 最も簡単なセットアップ手順 ですが 最も安全ではない方法 です。ノード設定を変更する必要があるため、ノード所有者のみが利用できます。これはノード構成ファイルにハーベスティングプロパティを適切に入力することで有効になります。

ご覧の通り、作成されたブロックに署名するために harvesterSigningPrivateKey に指定されたハーベスタアカウントの 秘密鍵 が要求されます。このアカウントには資産が含まれており、ノードが侵害された場合、侵入者が設定ファイルにアクセスする可能性という セキュリティ上の懸念 が存在します。資産が提供されたアカウントの 秘密鍵は常にオフラインで保存する必要があります 。

そのため この方法はあまり良くありません 。 リモートまたはデリゲート ハーベスティングを推奨します。

 

リモートハーベスティング

ノード所有者は プロキシとして機能 する リモートアカウント を使用して、新しく作成されたブロックに署名しますが、ハーベスト手数料は引き続きメインアカウントが徴収されます。 リモートアカウントは資産を持たない ので、その秘密鍵がノード上の設定ファイルに記述されていることは問題になりません。引き続き、メインアカウントの 重要度スコア に基づきます。

この設定では、簡単にするために、引き続きメインアカウントは ハーベスタ と呼ばれますが、リモートアカウントはプロキシと呼ばれます。

リモートハーベスティングは ローカルハーベスティング と同様に有効になりますが、 harvesterSigningPrivateKey プロパティに設定されたリモートアカウントの秘密鍵を使用し、リモートアカウントとメインアカウントをリンクする AccountKeyLinkTransaction をアナウンスします。

これはノード所有者に 推奨される方法 です。リモートハーベスティングをアクティブ化する方法の詳細な手順については、 ハーベスティングガイド を参照してください。

 

デリゲートハーベスティング

ノードを所有していない 適格なアカウント は それらのアカウントのハーベストをノードにリクエスト することで、ハーベスティング報酬の恩恵を受けることができます。アカウントの インポートスコア が使用され、収集された手数料はアカウントとノードの受益者の間で分割 (報酬 セクションで説明) されます。 これはアカウントとノードの両方にとって有益 です。

その後、アカウントはノードに デリゲートハーベスティング すると言われますが、依然としてアカウントはハーベスタと見なされます。

 

委任されたハーベスティングはリモートハーベスティングと同様に有効になりますが、アカウントはノードの構成にアクセスできないため、代わりにPersistentDelegationRequestトランザクションをアナウンスします(これはウォレットから簡単に実行できます)。要求を受信すると、ノードは、その構成と受信した残りの要求に応じて、要求を許可する場合と許可しない場合があります。

リモートハーベスティング と同様に、プロキシリモートアカウントが使用されるため、メインアカウントの秘密鍵が危険に晒されることはありません。

デリゲートハーベスティングを有効にする、ステップ・バイ・ステップの手順については ハーベスティングガイド を参照し、デリゲートリクエストが許可されているかを確認します。