
過去 2 年間で、NFT ブームが世界を席巻しました。さまざまなブロックチェーン上で NFT を鋳造することは一般的になってきています。ただし、これらの NFT 資産の保管は見落とされがちです。 IPFS は惑星間ファイル システムとしても知られており、NFT 資産を保存するための一般的な標準となっています。
見落とされがちな詳細は、IPFS 自体はストレージ ネットワークではないということです。これは、データのルーティングおよび転送プロトコルに近いものです。 IPFS ネットワークは、情報を交換するノードの集合です。ファイル エントリはパブリック IPFS DHT (分散ハッシュ テーブル) に「固定」でき、ネットワーク上の他のノードにどのホストがどのファイルを保存しているかを知らせることができます。
IPFS エコシステムには、多数のパブリック ゲートウェイがあります。これらのゲートウェイの中にはファイルをアップロードできるものもありますが、通常はファイルがオンラインに残るという保証はありません。ファイルが IPFS ノードによって明示的に固定されていない限り、ファイルは次回ガベージ コレクション プロセスが実行されるときに削除されます。これにより、NFT ストレージに関するいくつかの問題が明らかになります。
これを支援するために、いくつかの異なるピン留めプロバイダーが登場しました。これらのプロバイダーでは、有料でファイルをアップロードでき、ファイルを固定することもできます。
ただし、これらのファイルは実際にはどこに保存されているのかという新たな疑問が生じます。開発者はこの問題の調査に多くの時間を費やし、約 10 億のファイルを分析した結果、次の問題を発見しました。
1. ほとんどの IPFS ピン留めプロバイダーは、Amazon S3 およびその他の集中型オブジェクト ストレージ サービスをバックグラウンドで使用します。単純なプラグインを使用して、IPFS サーバーの「データ ストア」を S3 に指定できます。
2. AWS S3 を使用しているため、プロバイダーは TB あたり 150 ドル以上の料金を請求しています。
3. AWS S3 に障害が発生すると、IPFS サーバーにも障害が発生します。データがどこかにキャッシュされていない限り、IPFS CID リンクにはアクセスできなくなります。これは、NFT の「ラグプル」のような問題につながる可能性があります。
4. この構成のシステムでは、AWS S3 にアクセスするための非常に特殊な方法も導入されています。 AWS にそれほど依存しているのであれば、なぜ単純な HTTP URL を使用しないのでしょうか?
開発者は上記の問題に対する解決策を考案し、暗号通貨エコシステム全体に利益をもたらすでしょう。簡単に言えば、Web3 を Web3 で構築します。
Filebase を使用して IPFS に固定されたすべてのファイルは、実際には、主要な分散ストレージ ネットワークの 1 つである Sia に保存されます。これにより、IPFS ノードのデータ ストレージ層の可用性が高く、最も重要なことに地理的に冗長な環境が構築されます。ストレージに分散ネットワークを使用することで、ブロック ストレージ ボリューム (AWS EBS) や集中ストレージ バケット (AWS S3) をクラウド プロバイダーに依存する必要がなくなります。
IPFS にデータを固定するにはどうすればよいですか?簡単です。次の 2 つのオプションがあります。
1. ファイルベース ダッシュボードでシンプルなドラッグ アンド ドロップ インターフェイスを使用します。
2. シンプルな S3 互換 API を使用する
ファイルをアップロードすると、IPFS CID (コンテンツ識別子) が返されます。その後、この CID を使用して、自分の IPFS ノードまたはパブリック インターネット上の他の IPFS ゲートウェイからデータにアクセスできます。 CID はダッシュボードに明確に表示され、プログラムで取得することもできます。
ダッシュボードから IPFS バケットを開くと、CID 列が表示されます。任意の CID をクリックすると、自動的にクリップボードにコピーされます。
オブジェクトの概要ページには、CID とその他の詳細も表示されます。
S3 互換 API を使用している場合、PutObject 呼び出しへの応答で CID が返されます。たとえば、次の AWS CLI コマンドを実行するとします。
応答を以下に示します。便宜上、対応する応答ヘッダーが強調表示されています。
いつでも HeadObject API を呼び出して CID を取得することもできます。
IPFS 機能が有効になったので、開発者はこの統合をさらに構築し続ける予定です。