なちゃっとさんが興味深いことを呟いてました。
Nemberartはあまり触れていないので詳しくないのですが、IPFSは最近触っていて、この方法で復活できるらしいというのも噂で聞いていたので、確かめてみようと思います。
何をしようとしているのかというと、IPFSから画像を読みだそうとしているNFT(など)のIPFS画像が消えた際に復活させようと思います!
IPFSはファイルを変換して得られる固定長の「ハッシュ」というデータに変換し、その「ハッシュ」に対応するデータがどこかに保存されていれば読み出すことが出来ます。
ただ、全てのサーバから「ハッシュ」に対応するデータが消えてしまうと、当然ながらデータが読みだせなくなります。
ここで、同じファイルに対しては同じハッシュが生成されるので、もう一度同じファイルをIPFSにアップロードしてあげれば、IPFSを読みだそうとするコンテンツはまた画像が表示されるようになるはずです。(理論上は)
これを試してみましょう。
nemberartがよろしくない状態みたい。役に立つかわからないけど僕のアイディアと知ってることを書いておく。
幸いなことにnemberartのメタデータはチェーン上にあり、画像はIPFSにあるので引継ぎが可能。
この構造はMonacard2.0とほぼ同じ。— なちゃっと (@nachat_dayo) October 24, 2021
今はIPFSのデータを見れる状態だけど、nemberartが閉鎖したら誰もpinしなくなり見れなくなる可能性が高い。ローカルも含めてIPFSの画像がなくなったら二度と画像を表示できないので、引き継ぐなら早くpinするかダウンロードしておいた方がいい。
— なちゃっと (@nachat_dayo) October 24, 2021
NFTサービスの運営は普通のWebサイトと比べて手間もコストもかかるので、儲からない場合は撤退するのが普通の企業判断。
NFTを作ったり買う場合は、運営がどういう性質なのかきちんと利益を上げているのか継続できる仕組みを作っているのか見極める必要がある。難しいけどね。— なちゃっと (@nachat_dayo) October 24, 2021
個人で今できる防衛手段は、残したいアートのIPFS画像をダウンロードして自分のパソコンに保存しておくことかな。これが使える日が来るかはわからないけど、仕組み上はこれさえあれば復活させることができる。
注意点はサムネイル画像ではなくて、必ずIPFSからダウンロードする必要があること。
— なちゃっと (@nachat_dayo) October 24, 2021
取り敢えず、適当な画像を用意します。
pinataというサービスを使って、IPFSにあげてみます。
この「QmSmngkSVtFMQJ8hZveCSuJdySY1wfr9y2pqw9RtXtezDa」というものがハッシュです。
IPFSに対応している読み出し方であれば、例えば以下の2URLなどで画像を確認することが出来ます。(Chromeなどの対応ブラウザのみ)
上はpinata経由、下はIPFSの汎用な呼び出しです。
https://gateway.pinata.cloud/ipfs/QmSmngkSVtFMQJ8hZveCSuJdySY1wfr9y2pqw9RtXtezDa
https://ipfs.io/ipfs/QmSmngkSVtFMQJ8hZveCSuJdySY1wfr9y2pqw9RtXtezDa
こんな風に、呼び出すURLに差があっても、同じハッシュを呼び出せば同じ画像が呼び出されます。
さて、次にimgurはダメと言われていましたが、imgurにも上げてみます。
正直見た目は一緒ですね。
両方とも、画像ファイルをダウンロードしておきます。
では、IPFSのPIN止めを削除します。
本来はPIN止め(確実に持っているサーバ)が0になるとサーバ上から無くなる可能性があるのですが、
残念ながら?そんなすぐには消えないので同じハッシュ値が出来ることの検証になります。
ちなみに、imugrにアップロードしてからダウンロードした画像がこちら。
見た目では分かりませんが、しれっとファイルサイズが「332KB」から「269KB」に減っています。
IPFSからダウンロードした方は、元のファイルサイズのままでした。
では、IPFSからダウンロードした画像とimgurからダウンロードした画像をIPFSにアップロードします。
同じファイルでないことを示すために、適当に名前を変えてアップロードしてみました。
下がIPFSからダウンロードした画像、上がimgurからダウンロードした画像です。
下のハッシュは「QmSmngkSVtFMQJ8hZveCSuJdySY1wfr9y2pqw9RtXtezDa」であり、先ほどと同一です。
よって、IPFSから画像が消えてもこのように自分でIPFSからダウンロードしておいた画像があれば、復活させられることが分かりました!
ちなみに、上のハッシュ値は元のファイルから変わってしまっています。
このため、IPFS上にアップロードしたとしても、NFTなどは「QmSmngkSVtFMQJ8hZveCSuJdySY1wfr9y2pqw9RtXtezDa」を探そうとするため復活させることはできません。
よって、なちゃっとさんの言う通り、サムネイルなどではなくIPFSからデータを保存することが復活させる条件です。
理論上できるとは知っていましたが、やってみると面白いですね!
コメントを残す