今日は、NFTの仕組みについて、実際にNFTの中身を追いかけながら解説していきたいと思います。
実際に操作してもらうことで、理解が深まると思うので、ぜひ一緒に操作してみてくださいね
NFTのメタデータを取得してみよう!
今回説明で使用するNFTは、こちらの「eggdragon#1039」になります。
まずは、OpenSeaで表示してみてください。
次に、このNFTのメタデータを追いかけて行きましょう!
『Details』をクリックすると折りたたまれたメニューが展開します。
その中にある『Contract Address』をクリックします。
すると、PolygonScan上で、このNFTの発行を行ったコントラクトの情報が表示されます。
次に、『TokenTracker:FashionableEggDragons(FED)』をクリックしてください。
すると、このトークンの情報を見ることが出来ます。
例えば、いつこのトークンが発行されたかやどのような取引がされているかなど全て見ることが出来ます。
次に『Contract』をクリックしてください。
この『Contract』のページでは、様々な操作をすることが出来ます。
『Read Contract』では、このトークンの情報を調べることが出来ます。例えば、トークンの発行数量や誰(どのアドレス)が保有しているのかなどを調べることが出来ます。
一方の『Write Contract』では、NFTの発行やTransfer、burnなどの操作をすることが出来ます。
今回は、『Read Contract』のページで操作して行きます。
『Read Contract』のページを下にスクロールしてください。
14番目のところにTokenURIの項目があるので、そこにtokenIdを入力してみましょう!
今回は『39』を入力し、Queryを押してみてください。
そうすると、tokenURIが表示されるかと思います。
このtokenURIをコピーして、検索してみましょう!
すると、上図のようなメタデータが表示されるかと思います。
これがNFTの正体です。私たちは、画像や動画などのメディアデータではなく、このメタデータを取引しています。
あれ?表示されている画像は???
NFTのメディアデータを取得してみよう!
今度は、NFTとして表示されている画像を追いかけて行きましょう!
先ほど表示したメタデータの中にあるimage_urlに書かれているurlをコピーして検索してみましょう
すると、NFTとして表示されていた画像(ここではgif)が表示されるかと思います。
ここまで来たらわかるかと思うのですが、NFTはメタデータであり、そのメタデータの中に表示させたいメディアのURL情報が含まれています。(※フルオンチェーンのNFTなど多少異なる性質のものもあります)
おまけ:OpenSeaとメタデータの関係について
OpenSeaとメタデータの関係について、見ていきましょう。
『tokenId』は、その名の通りこのトークンのIDが表記されています。
OpenSeaでは、URLの構成がチェーン+コントラクトID+トークンIDになっています。
今回使用したNFTのアドレスは、https://opensea.io/assets/matic/0xb405f48f67a06916a366c77bcf42992903ef0619/39です。
0xb405f48f67a06916a366c77bcf42992903ef0619がコントラクトIDとなっており、39がトークンIDになっています。
『name』はこのNFTの名前、『description』はこのNFTの説明文(OpenSeaではDescriptionに表記されます)になります。
『image_url』は、先ほど説明した通り、メディアデータのURLが記載されており、OpenSeaではURL表示ではなくメディアデータそのものが表示されています。
image_urlの下に記載されている『attributes』は、OpenSeaのPropertie情報として表示されます。
なお、%については、OpenSea側で自動的に計算された値が表示されています。
※プラットフォームによってメタデータの書き方が異なります。そのため、OpenSeaと異なるプラットフォームでは見え方が異なります。
なお、NFTradeでは、このNFTはメディアデータすら表示されません。