本当にデジタル権利の表明に使えるのか?ー『Web3の未解決問題』から学ぶ
NFT(非代替性トークン)は、デジタルアートやコレクタブルアイテムなど、一意性が要求されるデジタル資産に対して所有権の証明として使用されるブロックチェーン技術です。
この記事では、『Web3の未解決問題』という書籍を読んでみたので、複数回に分けてそれぞれのテーマについて触れていきたいと思います。今回は、第1章: 「Web3とは何だったのか」の中のNFTについて触れている「本当にデジタル権利の表明に使えるのか?」の題目について、読書メモ的な形で書いていこうと思います。
by Project LUCK 飯野
↓↓↓目次↓↓↓
NFTとは何か、その起源を知る
2012年: Colored Coins
ブロックチェーン上で扱われるトークンを識別可能にする初期の提案としては2012年に公表された「Colored Coines」と呼ばれるBitcoinの拡張の提案があったそうです。
この中身はビットコインの拡張をするための、提案されたシステムのプログラムになります。中身は主に2つの内容に分かれていて
カラーリングスキーム:
カラーコインデータをビットコイントランザクションにエンコード/デコードする方法を説明。
データはOP_RETURN演算子の後に保存され、最大80バイトのサイズ制約内で最適化。
アセットメタデータとルールエンジン:
デジタル資産のメタデータ処理の仕様。
メタデータはハッシュ化され、トレントに保存されて分散アクセスが可能。
これにより、ブロックチェーン外部にある情報へのアクセスと検証が可能になり、基本的なスマートコントラクト機能を持つルールエンジンを作成。
のような内容になっています。
2018年:EIP-721
EIPとはEthereum Improvement Proposalsのことです。日本語訳するとイーサリアムをさらに改善していくための提案になります。
ERCとはEIPが正式にEthereum Request for Commentsとして採用されたことを示します。
(当時はEIP-721でしたが、現状はERC-721となっています。)
2018年、ERC-721[1]というNFTの標準規格がイーサリアム上で作成されました。
ERC-721で定義されているNFTでは、識別可能にするための"tokenId"と呼ばれる識別子を持ちます。この識別子を持つことによって、NFTを渡す時などには原則として、NFTの所有者のみが実行できるようになっています。
これに加えて、ERC-1155(EIP-721やEIP-20といった異なる種類のトークンを同時に扱得るようにした規格)[2]も登場しました。
tokenURIについて
tokenIdとBaseURIから生成されるもの
Metadataの拡張機能では、tokenURIというものが出てきます。これは、NFTの中心的な概念の一つになります。
前述で書いたtokenIdに加え、スマートコントラクトの中で定義されているBaseURIから生成されるものがtokenURIになります。
tokenId × BaseURI → tokenURI
NFTが参照するメタデータの位置を指定するUniform Resource Identifier(情報やサービス、機器等のリソースを、一意的に識別するための記述方法(書式*4))です。メタデータ自体は通常JSON形式で保存され、NFTが指し示すデジタル画像やその他のデジタルアセットのURIが含まれています。
このtokenURIは、ブロックチェーン上のスマートコントラクトによってアクセスされ、トークンの所有者だけがその内容を更新または変更できるようになっています。これにより、NFTの透明性と追跡可能性が保たれ、デジタルアセットの信頼性が高まります。
NFTの利点
標準に沿った形で様々なルールをスマートコントラクトのコード中に定義できることが挙げられるそうです。売買が行われるたびに発行者に対して一定の報酬を与える!といった少し印税的な考え方のルールも定義できます。
このようなルールをスケールに応じて流通時のルールをスマートコントラクトとして定義できる。
NFTとデジタルデータは一意に結びつくか
NFTとデジタルデータが一意に結びつくかについての議論は、いくつかの技術的な複雑さに触れています。NFTの各トークンはユニークな識別子である tokenId を持っていますが、この識別子が指すデジタルデータが必ずしも一意ではないという問題が指摘されています。
すなわち、一つのデジタルデータに対して複数のNFTが存在する可能性があります。さらに、tokenURI というメタデータの識別子も、基本的にはNFTのスマートコントラクト内でのみ一意であり、異なるスマートコントラクトやブロックチェーン間で同一の tokenId が存在することは十分にあり得ます。
したがって、あるNFTが特定のデジタルデータを指し示しているとしても、そのNFTがそのデジタルデータに対する権利を唯一表明しているとは限らないという問題が出てきます。
このような状況では、デジタルデータの権利を一意に証明するためには、さらなる技術的な工夫が必要とされています。それに対して、デジタルデータおよびMetadataの識別子に対して、それぞれの暗号学的ハッシュ値[5]を含めるなどの方法が提案されていますが、これも完全な解決策にはなっていないとされています。
権利の表明手段としての運用上の問題
NFTを権利の表明手段として使用する際には、いくつかの運用上の問題が存在します。
権利者以外の人物が不正にNFTを発行することが可能
NFTマーケットプレイスに依存しており、完全な保護を提供するものではない
権利者以外の人物が不正にNFTを発行することが可能
NFTの発行過程において、デジタルデータの正当な権利者が発行しているかどうかの検証が含まれていないため、権利者以外の人物が不正にNFTを発行することが可能です。これにより、権利の侵害や市場での不正が生じるリスクがあります。
NFTマーケットプレイスに依存しており、完全な保護を提供するものではない
NFTマーケットプレイスは、正当な権利者からの申し立てに基づいて特定のNFTの取り扱いを停止する措置を取ることがありますが、このプロセスの検証はマーケットプレイスに依存しており、完全な保護を提供するものではありません。さらに、マーケットプレイス間での売買は阻止できないため、権利の表明としてNFTを使用する際には、その信頼性に疑問が生じます。
上記のように、
NFTを権利の表明手段として使用する場合には、その運用における様々な問題が存在し、これらの問題を解決するためには、より厳格な規制や検証プロセスの導入
が必要とされています。
NFTは何を実現しているか?
NFTで実現できているのは「特定ブロックチェーン上の特定コントラクト上でのみNon-Fungible」なトークンの発行となります。そのため、完全なるNon-Fungibleとは言えないようですね。
ブロックチェーン上のスマートコントラクトを用いることでNFT自体の保有の表明が可能とはなりますが、NFTが内包している識別子が指し示すデジタルデータについては、何かしらの権利を保有するとトークン保有者が表明するために、
デジタルデータ・保有者として記載される識別子
トークン保有者との関係
を明らかにする必要があるようです。
今回読んだ書籍
『Web3の未解決問題』
参考文献
1: ERC-721: Non-Fungible Token Standard
2: ERC-1155: Multi Token Standard
3: Uniform Resource Identifier (URI)
4: ERC721をEIPやIERCの違いなどから丁寧に学んでみよう!
5:【EIP/ERC Vol.1】〜Ethereumの標準規格について〜
6:暗号学的ハッシュ関数