以前の記事、『「フルオンチェーンでないNFTの怖さ」が現実に!〜フルオンチェーンNFTを可能にする技術』で YAMATO の NFT についてお話しました。 この記事に、
「Etherscan や LooksRare からは参照できているし、NFT は消えていないのでは?」
というコメントを頂きました。 今回は、この点について解説したいと思います。
最初にNFTとはなにか?
非代替性トークン( 英:non-fungible token、略称: NFT)とは、ブロックチェーン上に記録される一意で代替不可能なデータ単位である。(Wikipedia)
NFT には標準規格があり、ERC721 や ERC1155 がそれに当たります。OpenSea で取り扱われる NFT は、基本的にこの規格に沿って作られている必要があります。
ERC721 では
metadata の baseURI という項目に、NFT と紐づく画像ファイルを指定することができます。ここで指定されたファイルが、OpenSea や Etherscan で表示される画像になります。
(Etherscanとは)
(OpenSeaに独自コントラクトのNFTを登録してみよう【テストネット編】)
例えば YAMATO #8 は、ERC721 で作られており Contract Address→Contract Address→Contract→ReadContract から metadata を確認することができます。 baseURI を確認すると、
ipfs://QmWoWBYFZ8iSbUZYsBzNj5rTVTD9itZccbydtoc5DmETtF/
とあります。ここから IPFS という仕組みを使用して画像を保存していることがわかります。
IPFS とは
分散型ファイルシステムにデータを保存・共有するためのプロトコルです。例えば Google Drive に画像ファイルをアップロードすると、ファイルは Google が管理するサーバーに保存され、削除しない限り消えることはありません(Google が倒産する等のレアケースは除きます)。
これに対し、IPFS は特定のサーバーにファイルをアップロードするわけではなく、複数のノード(IPFS がインストールされたサーバーなど)で構成されており、利用するためにはノードを準備し、そのノードにファイルを登録します。登録されたファイルをダウンロードする場合、まずダウンロードする場所にネットワーク上で最も近いノードにファイルがコピーされ、そのノードからファイルをダウンロードすることになります。
IPFS に登録されたファイルは、登録したノード上で PIN 留めされた状態となり、消えることはありませんが、別のノードにコピーされたファイルはキャッシュと呼ばれる状態となっており、ノード管理者が任意のタイミングで消すことができます。
理論上は、いろんな場所からダウンロードが行われることで、このキャッシュが複数のノードに分散されて存在することになり、1つのノードでキャッシュが消されてもファイルをダウンロードし続けることができます。しかし、ダウンロードが少ないファイルの場合、十分にキャッシュが作られないため、ファイルをPIN留めしたノードが止まってしまうと、ファイルがIPFS 上から消えてしまう可能性があります。
PIN 留めの状態を保ち続けるためには、自分でノードを運営するか、PIN 留めをしてくれるサービスを使う必要がありますが、どちらにしてもコストが発生します。 (詳しくは「分散型ファイルシステム「IPFS」は本当に分散型なのか」などを参照してください)
画像ファイルの確認
ここで実際にファイルを確認してみたいと思います。IPFS のファイルにアクセスするためには、例えば YAMATO #8 の場合、以下のコマンドを実行することで参照(確認?)することができます。
ipfs get QmWoWBYFZ8iSbUZYsBzNj5rTVTD9itZccbydtoc5DmETtF
実行結果は
Error: merkledag: not found
つまりデータが存在しないということを意味します。
今回の件では、なにがおこっていたのか?
ここからは推測ですが、OpenSea は metadata で指定された画像ファイルが存在しないことで、YAMATO の NFT は OpenSea で取り扱えないと判断し、削除に至ったのではないかと考えられます。
それでは、コメントにあった Etherscan や LooksRare では、なぜ画像が表示されているのでしょうか? それぞれのページの HTML を確認すると、画像を表示するために lh3.googleusercontent.com や looksrare.mo.cloudinary.net といったドメインを参照していることがわかります。これらは IPFS とは関係のない、各 Web サイトが所有するファイルサーバーです。 現在、主要なブラウザは IPFS のファイルを直接参照することができないため、Web サイトで NFT の画像を表示するためには、一旦どこかのファイルサーバーに画像のコピーを保存する必要があります。その結果、IPFS から画像ファイルが削除されても、各 Web サイトのページでは画像が表示され続けてしまうという現象が発生します。
一方、NFT と紐付いている画像ファイルは、あくまで IPFS に登録されているファイルであるため、IPFS で画像が参照できない以上、表示する画像の存在しない NFT になっています。 Web サーバ上の画像は、複製のようなものなので、世界中にモナリザの複製画があるがルーブルのモナリザが地球上からなくなってしまったような状態です。これでは OpenSea のようなマーケットで取り扱えなくなるのも無理はありません。
まとめ
- IPFS 上にはキャッシュも存在しない状態になっている
- Ehterscan や LooksRare はどうやって画像を表示しているかを確認したところ、独自のファイルサーバーに画像を保存している
- OpenSea では、contract に紐づくファイルが存在しないため取引ができなくなった
最後に
NFT を所有する、ということは、 イーサリアム上のデータと、それに関連する画像などのファイルを所有することであり、そこに正しい情報が存在しない場合には、その NFT は「実在しない」 ということになります。
イーサリアム上のデータは、イーサリアムの仕組みがある限り存在しますが、外部に登録された IPFS や、それ以外の方法で保存されている画像などのコンテンツのデータは、今回のように無くなったり、アクセスできなく可能性があり、本当にそのデジタルデータを所有しているとは言えないのです。
我々が、フルオンチェーンの NFT にこだわる理由がこれです。真の NFT は、フルオンチェーンでなければならないのです。
このような事が起きないように!!デジタル庁に提言
以前からガクトのスピンドル事件を問題視し、あらゆる所で提言していたシンギュラリティ・ソサエティの代表の中島が、Web3 を推進するデジタル庁と NFT + DAO について会議を行いました。 その内容のまとめを掲載します。
会議の前に考えた事
- DAO は画期的な仕組みではあるが、株式会社を置き換えるものではない。
- Web3 ベンチャーの多くが、NFT + DAO を消費者から運営資金を集める手法として使っているが、とても危険。詐欺が横行しているのはもちろんだが、詐欺でないものでも、十分な情報を得ていない一般消費者が大きなリスクにさらされている。
- Web3 の世界では、後から参加した人から得たお金を先行者に流すことにより、先行者であるインフルエンサーにマーケティングをさせる「先行者マーケティング」が盛んに行われている。インフルエンサーがポジショントークで、ポンジスキームに加担する仕組みになっている。
- 以上の理由から、営利事業者が NFT + DAO を使って「資金」を集める場合は、株や社債と同様の法律(出資法、金融商品取引法)を適用して、消費者を守るべき。米国では、Hawie Test を適用してその判断をする方向で話が進んでいるが、これを参考にすべきである。
- しかし、非営利な団体が「寄付」を集める手段としての NFT + DAO は、大きなポテンシャルを持つので、適切な法的整備により、非営利団体が活用出来るようにするべきである。
Web3 業界では、ICO、IEO、ガバナンストークンの発行がベンチャー企業の便利な資金調達手段になっているけど、これはその道に通じた VC も追わない大きなリスクを、一般消費者に追わせていることに相当する。詐欺やラグプルが横行して当然なのである。
会議で話した事まとめ
- Web3 には大きなポテンシャルがあるが、消費者保護をしっかりしないと、ガクトが起こしたスピンドル事件のような事件が多発することになる。
- その意味では、「みせしめ」の意味を込めてガクトや、最近ラグった Yamato の創業者たちを逮捕するなどして、断固として消費者を守る態度を国は示すべきです。
- DAO に関しても、ガバナンストークンの発行がベンチャー企業にとっての「安易な資金集めの方法」になっていることそのものが問題であることを認識すべきです。ベンチャー投資の世界は、VC でさえ火傷をすることの多いハイリスクな世界。そこに一般消費者を巻き込むリスクを考えるべきなのです。
- とは言え、ブロックチェーンには税金の使い道を明確にする、不動産登記のコストを大幅に下げるなどの大きなメリットもあるので、そこは国が率先して導入を検討すべきです。
CBDC(中央銀行デジタル通貨)も真剣に考える必要がある。ステーブルコインは国が発行するのが一番ステーブル。そんなステーブルコインが出来たら、消費者も安心して使えるし、キャッシュレス化、DX も一気に進むと思われます。
ただし、Web3 を国家の成長戦略に置いて、日本から Web3 時代の GAFA を生み出そう、という考えは自己矛盾を起こしているのでやめた方が良いです。Web3 が目指しているのは、 巨大企業に支配されない世界なのだから!
Web3 の究極の形は、DAO ですらなく、ブロックチェーン上のスマートコントラクトがビジネスのトランザクションを自動でしてくれる Decentralized Autonomous Ecosystem。そこに企業や DAO は不要なのです。