2021年から2022年にかけ、NFT(非代替性トークン)をめぐる話題が一般メディアで相次ぎ取り上げられている。2021年3月には米国人アーティストのデジタルアート作品にひもづいたNFTが競売にかけられ、約75億円(当時の為替換算)という高額で落札されて世間を驚かせた。
NFT(Non-Fungible Token)とは、ブロックチェーン上で扱われる、一意であり代替不可能なトークンを実現する技術である。
元来、Bitcoin(ビットコイン)をはじめとした従来の暗号資産トークンの実装では、 それぞれのトークンは同一のものだった。例えば、Bitcoinは1BTC(Bitcoinの通貨単位)であれば、どのトークンであっても1BTCという同一のものとみなされる。
一方NFTは、それぞれのトークンをそれぞれ別のものとして識別可能にする。
こうしたNFTの特性を活用することで、デジタルアートやゲームのアイテムといったデジタル空間のオブジェクトのみならず、現実世界の様々な権利などを表現できると期待されている。
近年では、NFTを売買するためのマーケットプレイスや、NFTにひもづけられた画像データをTwitterアカウントのアイコンとして表示するなど、様々なアプリケーションが注目を浴びている。
ただ、デジタルデータなどの「権利」を表現する手段として、今のNFTは本当に適切な技術なのか、議論が尽くされているとは言い難い。
本稿では、NFTとはどのような技術なのかを解説するとともに、NFTを実社会に適用するうえでの課題を明らかにしたい。
NFTとは何か、その起源を知る
ブロックチェーン上で扱われるトークンを識別可能にする初期の提案としては、「Colored Coins」と呼ばれるBitcoinの拡張の提案がある。
この提案は2012年に公表したもので、著者にはEthereum(イーサリアム)の提案者であるVitalik Buterin(ビタリック・ブテリン)氏も含まれる。
Colored Coinsの手法を使えば、特定のブロックチェーン上で、プロトコルに定義されているトークンではない独自の識別可能なトークンを発行することが可能になる。実際、トークンにひもづけたデジタル画像の保有を主張する事例も現れた。
続いて2018年には、Ethereum上でのNFTの標準規格として「EIP-721」が作成された。
さらに、EIP-721やEIP-20(代替可能なトークンの標準規格)といった異なる種類のトークンを同時に扱うための「EIP-1155」も登場した。現在流通するNFTの多くはこのEIP-721あるいはEIP-1155に準拠したものが用いられている。
EIP-721で定義されるNFTは`tokenId`と呼ばれる識別子を持つ。この`tokenId`は、EIP-721で定義される1つのスマートコントラクトの中では一意である。当該トークンの譲渡は、原則として当該NFTの保有者でなければ実行できない。
EIP-721は、NFTに付加的なデータ(`Metadata`)を付け加えるための拡張であるMetadata Extensionも定義している。Metadata Extensionでは、`tokenURI`と呼ばれるMetadataのURI(Uniform Resource Identifier)がMetadataの識別子となる。
Metadataを識別するための`tokenURI`の仕様は、EIP-721などの標準では定義されていない。広く参照されているOpenZeppelinの実装では、スマートコントラクト内に定義される`BaseURI`と`tokenId`を結合した値が`tokenURI`とされる。
Metadata自身はJSON(JavaScript Object Notation)ファイルであり、そのMetadataのスキーマの中にはNFTが指し示すデジタル画像などのURIが含まれる。
ここまでの説明をまとめると、`tokenURI`などの識別子によって外部のデジタルデータを参照でき、特定のスマートコントラクト下では代替不可能なトークン、というのがNFTの実体である。
EIP-721ではここで述べた識別子による識別の他に、トークン譲渡のためのインターフェースが定義されている。
NFTの1つの利点として、標準に沿った形で様々なルールをスマートコントラクトのコード中に定義できることが挙げられる。
例えば、アーティストが自身の作品とひもづけたNFTを発行してマーケットプレイス上で流通させる際、売買が行われる度に発行者(アーティスト)に対して一定の報酬を与える、といったルールを定義できる。
実際のユースケースに応じて流通時のルールをスマートコントラクトとして定義し、ルールをブロックチェーン上に改ざん困難な形で記録し、その定義に従って実行されることは、技術としてのNFTを特徴づける利点の1つである。