Symbol入門 その12
ハーベスティング
少しずつSymbolの技術について勉強中です。
まずは、入門ということで下記の公式ドキュメントを読んでいくことにしました。
日本語になっているのは非常にありがたいですね。
—
ここ数日、アプリを作るのに夢中になって少々止まっていました。。。 アプリの方は一旦区切りが付きそうなので、来週にもリリースできたらいいなと。。。
今日からまた少しずつ読み進めていきます。 今回はハーベスティング、手数料について読んでみました。
新しいブロックを生成するプロセスをハーベスティングと呼びます。 ビットコインでいうマイニングに当たります。
ブロックをハーベストしたアカウントは、トランザクション手数料とインフレーショントークンが付与されます。 生成された各ブロックは、ハーベスタアカウントの公開鍵とそれが作成したブロック署名をヘッダーに格納します。
適格基準
ハーベストはハーベストが有効になっているすべてのアカウントの中から、ランダムに選ばれます。 選ばれる確率はインポータンススコアによって決定します。
Symbolのパブリックネットワークでは、0より大きいインポータンススコアを獲得するために、10,000以上のXYMを保有している必要があります。
ノードの運用、別のノードにデリゲートハーベスティングのいずれかを行うことで、アカウントはインポータンススコアを使用して新しいブロック生成を行う権利を得ます。
選択した方法に関係なく、ハーベスティングをアクティブ化したいアカウントは、最初に有効なVrfKeyトランザクションを発行します。 このキーはSymbolのランダムなハーベスタ選択に必要です。
報酬
ネットワークオペレーターはハーベスト報酬(ブロック手数料およびインフレーション)から一定の割合で手数料を受け取る、ネットワーク手数料シンクアカウントを定義できます。
パブリックメインネットワークにおいて、この料金は5%に設定されており、さまざまなReward Programsをサポートするために使用されます。
また、ノード運営者は、受益者アカウントを設定して、ハーベスト報酬を一定の割合(最大25%)で取得できます。
分配例は以下のようになります。
ハーベスティングタイプ
ハーベスティングの設定は3タイプが存在します。 ローカルハーベスティング、リモートハーベスティング、デリゲートハーベスティングの3タイプになります。 いずれかを設定することで、ハーベストが有効になります。
- ローカルハーベスティング ノード所有者のみが設定できます。 最も簡単なセットアップ手順ですが最も安全ではない方法です。
ノード構成ファイルに、ハーベスティングプロパティを適切に入力することで有効になります。
ブロックの署名時に、ハーベスタアカウントの秘密鍵が要求されるため、このアカウントの資産がノードに侵入されると盗まれてしまう危険性ががあります。
そのため、基本的にはリモートハーベスティング、またはデリゲートハーベスティングが推奨されます。
- リモートハーベスティング ローカルハーベスティングと同様に、ノード所有者のみが設定できます。
リモートアカウントと呼ばれるアカウントを作成し、ノードに設定します。
ブロックの署名時には、リモートアカウントの秘密鍵で署名を行います。
リモートアカウントはメインアカウントと紐付けられ、インポータンススコアはメインアカウントのものが適用されます。
このことからリモートアカウントはプロキシとも呼ばれます。
- デリゲートハーベスティング ノードを所有しないアカウントは、ノードに対しデリゲートリクエストトランザクションを発行することで、 デリゲートハーベスティングを有効にするリクエストを行うことができます。
ノード管理者が許可を行うと、トランザクションを発行したアカウントはノードに委譲する形でハーベスタとなることができます。
本設定にてハーベスティングが行われた場合、分配例でもあったとおりノード管理者に報酬の一部が手数料として支払われます。
本日は以上になります。