shmn7iii

Blog

IPFSとFilecoin

何が違うのか。公式がドキュメントでセクション作ってたからそこ準拠でまとめていく。

IPFS and Filecoin

FilecoinとIPFSは分散型WEBでデータを保存し共有するための補完的なプロトコルです。両者は無料で、オープンソースであり、データ表現形式やネットワーク通信プロトコルなど多くの構成要素を共有しています。IPFSの利用にFilecoinは必要ではありませんが、全てのFilecoinノードは内部的にIPFSノードであり、手動で設定を行えばlibp2pを使って他のIPFノードに接続したりIPLD形式のデータを取得することができます。ただし、FilecoinノードはパブリックなIPFS DHTには参加しません。

参考

IPLD

InterPlanetary Linked Data コンテンツ指向型WEBのデータモデル。ハッシュでリンクされた全てのデータ構造を、統一された情報空間のサブセットとして扱うことができ、ハッシュでデータをリンクする全てのデータモデルをIPLDのインスタンスとして統一することができます。

libp2p

P2Pネットワークを用いるアプリケーションの開発に利用されるプロトコル、仕様、ライブラリのモジュールシステムです。libp2pはIPFSプロジェクトの一部として開発が始まり、現在もIPFSの重要なコンポーネントとなっています。IPFSのネットワーク層を担い、具体的にはトランスポート、セキュリティ、ピアルーティング、コンテンツディスカバリーなどのP2Pにおける重要な要素に対し柔軟なソリューションを提供しています。

DHT

Distributed Hash Table 分散型ハッシュテーブル。IPFSではコンテンツルーティングの基本コンポーネントとして利用されており、例えるならカタログとカーナビを掛け合わせたような役割を果たします。ユーザーが探しているコンテンツとマッチするコンテンツを保持しているピアにマッチングします。「誰がどのようなデータを持っているかを保存する、巨大なテーブル」だと考えてください。

Data storage incentives

IPFSでは検証可能なデータをP2Pで保存・転送することができます。IPFSユーザーは通常、必要なデータを自分のノードに保存します。これを「ピン留め」と呼びます。データはユーザーの1人でも保持している限り、ネットワーク上に存在し続け、他のユーザーからの要求に応じて提要されます。

しかし、IPFSだけでは各IPFSノードが他人のデータを他人の為に保持し続けるインセンティブがありません。これを解決するのがFilecoinです。FilecoinはIPFS上に構築されており、長期保存のための分散型ストレージ市場を展開しています。大きなストレージ容量をもつノードは、自身の空き容量を他のユーザーに貸し出し、その対価を得ることができます。

Filecoinは大規模なデータを安全に保存するための長期的な永続性を付加することを目的としており、IPFSはコンテンツの迅速な検索と配信に最適化されています。

Data persistence with Filecoin

FilecoinはIPFSのコンテンツアドレッシングをベースに、暗号通貨的インセンティブを用いることにより長期的なデータ保持を実現します。Filecoinにおけるクライアントはデータの保持のため、マイナーとストレージ取引を行います。ネットワークは、マイナーが正しくデータを保持しているかを検証します。ストレージ契約が結ばれている間は、定期的に少額の報酬が支払われます。また、ストレージ契約を遵守しないマイナーにはペナルティが課せられます。コンテンツの検索は、ストレージを担うマイナーが提供することもあれば、検索専門マイナーが提供することもあります。データを要求するユーザーは、これらに対し対価を支払います。

🏝️
IPFSはただの分散型ファイルシステム・プロトコルにすぎない。インセンティブなどは考慮されておらず、P2P型ファイルストレージの仕組みそのものを提供するもの。 対してFilecoinは、IPFSにはなかったノード運営・ストレージ提供に対するインセンティブを支払い、より長期的なファイルの保持を目的としたもの。背後にはブロックチェーンなどの仕組みが存在し、暗号通貨経済的側面をもつ。 両者ともProtocol Labsが提供している。

参考