見出し画像

Filecoinにおけるストレージ提供入門

Filecoinネットワークにストレージ提供者(ストレージプロバイダー)として参加するにあたり、マイニングの仕組みや報酬・費用・没収の体系、ハードウェア要件、利用できるソフトウェアなどを押さえておくことが肝要である。本稿ではこれらを概説する。

マイニングの仕組み

FilecoinにおけるマイニングはBitcoinなどにおけるそれと大きく異なる。マイニングとは、元々プルーフオブワーク(Proof-of-Work;PoW)のブロックチェーンにて、参加者が多大な計算資源を割いてチェーンのセキュリティに貢献することで、チェーンにブロックを追加するチャンスを獲得する行為を指していた。この仕組みにおいては、マイニングに対する報酬がインセンティブとして機能する。一方でFilecoinにおいては、ストレージの提供をはじめとしたネットワークへの貢献によって報酬を得る仕組みがあるが、一方でより限定的な意味合いとして、ブロックチェーンにブロックを追加することがマイニングと呼ばれており、こちらにも報酬付与の仕組みがある。

プロバイダーの種類

Filecoinにおいては様々な「プロバイダー」が存在する。Filecoinでストレージプロバイダー(Storage providers)といえば、ストレージを検証可能な形でネットワークやクライアントに提供し、見返りにFILを得る者を指す。なお、以前の記事では「ストレージ提供者」と表現していたが、以降は「ストレージプロバイダー」を定訳としてあてることとする。

一方で、データ取得を担う者もまたFIL報酬を得、こちらは取得プロバイダー(Retrieval providers)と呼ばれる。さらに、未だ実装には至っていないものの、一時的に取得できなくなったデータを取得できるようにする修復プロバイダー(Repair providers)や、アプリケーション開発を行うアプリケーションプロバイダー(Application providers)も、それぞれが提供する価値に応じてFILが支払われるべきであると考えられている。

取引

取引(Deals)はFilecoinの根幹を成す機能であり、その重要な要素として、データ容量、保存期間、価格があることを押さえておきたい。ストレージプロバイダーとクライアントが十分な資金を該当ウォレットに預けた後、取引に関する合意をストレージプロバイダーが受け入れると、その取引が発行(Publishing)される。ストレージプロバイダーは下準備を施したデータをクライアントから受け取ると、それをセクターに詰め、封印して、ブロックチェーンにデータ保管の証明を提出し始める。こうして取引が履行されるにつれ、クライアントはデータが約束通り保管されていることを定期的に確信でき、ストレージプロバイダーはクライアントやFilecoinネットワークから報酬を得る。取引の不履行が発覚すれば、ストレージプロバイダーのブロック報酬や抵当に出されたFILが没収される。

パワーと報酬

ストレージプロバイダーにはパワーが定義されており、ブロックチェーンの各エポックにおいてブロックを追加する(マイニングを行う)権利を獲得する確率はストレージプロバイダーのパワーに比例する。パワーはネットワークに供するストレージ容量とセクターの質に比例する。Proof-of-Spacetime(PoSt)はデータ保管の証明であるが、マイニング権利獲得時のそれをWinningPoStという。その際、WinningPoStストレージプロバイダーは他のストレージプロバイダーが提出したメッセージをブロックに含める見返りに手数料を得る。

ブロックチェーンのマイニングに落選した他のストレージプロバイダーは、定期的にWindowPoStを提出し、これが取引の履行を表す。クライアントはストレージプロバイダーにストレージ手数料を支払う。

報酬

ストレージ手数料

データ保管の証明(PoSt)における都合上、ストレージプロバイダーが管理するセクターは細分化され、各部分に24時間の期間(Window)が設けられている。証明が成功すれば、ストレージプロバイダーはクライアントからストレージ手数料を受け取ることができる。

ブロック報酬

WinningPoStに当選しマイニングに成功したストレージプロバイダーは、ネットワークから多額の報酬を得る。この報酬はFILのインフレーションおよびストレージプロバイダーへのインセンティブの役割を持つ。具体的な報酬額については、例えばFILFOXが参考になる。

取得手数料

データの取得作業においても、取得プロバイダーはクライアントから手数料を徴収できるが、これはチェーン外の支払いチャネルを通して行われる。

その他の報酬

Filecoinには多岐にわたるインセンティブが組み込まれており、上述の他にも報酬が得られる場面が設定されている。例えば、Filecoinネットワークの安定運用を害する参加者は、担保が没収されるが、その一部について、該当行為を報告した他の参加者に支払われる仕組みがあり、ネットワークの安定運用に向けた一種のインセンティブとなっている。また、間違ったWindowPoStが提出された場合に、WinningPoStストレージプロバイダーとしてそれに異議を申し立てる(Disputing)場合にも、報酬が得られる。

ストレージ提供にかかる費用

ガス手数料

WindowPoStに成功したストレージプロバイダーは、WinningPoStに当選した少数のストレージプロバイダーが構築するブロックに自身のメッセージを含めてもらう。当ストレージプロバイダーは、この時に使用料をストレージプロバイダーへ支払う。この額はEthereumなどと同様にガスを単位として計算され、需給によって変動する。

担保

ストレージプロバイダーは3種類の担保を提供しなければならず、費用の一種に数えられる。

初期保証担保(Initial pledge collateral)は、ストレージプロバイダーが取引を健全に履行し、また長期的にFilecoinネットワークにおけるコンセンサス乗っ取りを防止することを目的としている。その額は、例えばFILFOXで確認できる。

ブロック報酬も担保の一種で、マイニングに参加している間、ストレージプロバイダーに段階的に支払われる。初期保証担保と合わせて、時間を経るごとの収益性が比例関係に劣る(Sub-linear)ように設定されている。

ストレージ取引担保(Storage deal collateral)もストレージプロバイダーがサービスの品質を保証するための担保であるが、セクターが約束より早く終了した場合に限って、この担保が没収される。最低額はプロトコルによって定められており、FILコインの循環量の1%に、ネットワークベースラインまたはネットワーク全体容量の大きい方に該当取引の容量が占める割合をかけた量となっている。余分の担保額をもってサービスの信頼性や質を潜在クライアントにアピールすることもできる。

ストレージ障害による没収

セクターの信頼性を損ねたり、故意にネットワークから退いたりするストレージプロバイダーには、過料が課される。例えば、定期的なPoStに2回以上失敗したストレージプロバイダーはその都度障害過料(Fault fees)を支払い、これが14日間続くか、専用のウォレットが空になると、ネットワークから除外される。障害過料の額はブロック報酬の期待値より少し大きくなるように計算される。また、WindowPoStの期限前に障害の発生をネットワークに報告しなかった場合は、該当ストレージプロバイダーにセクター違約金(Sector penalties)が発生する。さらに、セクターが意図の如何に依らず約束より早く終了してしまった場合、やはりストレージプロバイダーに解約手数料(Termination fees)が生ずる。

コンセンサス障害による没収

意図的なフォーク形成など、コンセンサス形成において悪意ある行動をとったストレージプロバイダーは、他の参加者に告発されると全ての担保が没収される。加えて、当Filecoinネットワークにおけるパワーを失い、実質的にストレージプロバイダーとして失格となる。

オフチェーンの費用

チェーン外では、厳しい要件を満たしたハードウェアを含む設備費用やネットワーク費用、人件費などが一般にかかる。

ハードウェア要件

Filecoinストレージプロバイダーを運用するためのハードウェア要件は概して厳しいが、個人にとってもまとまった資金があれば不可能なレベルではないといえる。CPUは最小8コアで、Intel/AMDのSHA拡張機能サポート付きが強く推奨されている。RAMは128GiBが最低限必要であり、またそれ以上を確保できない場合は、非常に高速なNVMe SSDに256GiB以上のスワップ領域を充てることも必要となる。高性能GPUも推奨されており、SNARK計算の高速化に役立つ。ディスクに関しては、1TiB以上のNVMeベースのストレージがキャッシュのために推奨されている。これはディスク速度がマイナーに要求される手順に大きく影響するためであり、例えば、32GiBのデータは封印プロセス中に480GiB程度まで展開される。

以上の要件は、想定内の将来においては更に厳しくなることはない。

ソフトウェア

以下では、ストレージプロバイダーに必須または有用なソフトウェアをいくつか紹介する。公式のリストも参照されたい。

Filecoinノードの実装

Filecoinノードの実装例として4つが挙げられ、いずれもオープンソースである。もっとも代表的なものは公式に開発されているLotusである。他には、Forest(言語:Rust、開発主体:ChainSafe)、fuhon(言語:C++、開発主体:ソラミツ)、venus(言語:Go、開発主体:IPFS-Force Community)がある。

LotusについてはDigitalOceanAWSで発行されているイメージも利用可能である。

エクスプローラー

Filecoinのエクスプローラーは、前述のFILFOXの他、Filscoutもある。アカウントやFILの循環量はもちろん、取引の蓄積データ、ガス料金やネットワーク全体の容量の推移なども確認できる。

評判システム

ストレージプロバイダーとしては、クライアントに取引相手として選ばれる必要があるが、その判断材料としてFilRepCodefi Storageなどの評判システムが利用されると考えられる。このようなシステムでは、オンライン到達可能性やストレージ容量をはじめ、没収履歴、地理的所在、再生可能エネルギーの購入量なども比較できるため、多くの収益を得たいストレージプロバイダーは、評判システムを参考にクライアントに選ばれやすい構成を考える必要があるだろう。

まとめ

本稿では、Filecoinにおけるマイニングの仕組みと報酬・費用・没収体系について述べ、その中でストレージプロバイダーがインセンティブによってFilecoinネットワークに貢献する仕組みを説明した。下図に、通常時のあるエポックにおける価値のやり取りを簡略化して示す。

また、本稿ではハードウェアとソフトウェアについても触れ、ストレージプロバイダーとしてFilecoinネットワークに参画するための基礎をまとめた。ハードウェア要件は緩くはないが、個人でも調達不可能ではないレベルであり、クラウドサービスの対応もある。エクスプローラーや評判システムもまた、ストレージプロバイダーにとって活用する価値があるといえる。


この記事が気に入ったらサポートをしてみませんか?