CodeZine(コードジン)

特集ページ一覧

最近流行りのNFTとは? NFTからブロックチェーンの仕組みを理解する

開発者のためのブロックチェーン活用ガイド 第1回

  • LINEで送る
  • このエントリーをはてなブックマークに追加

目次

トークンとスマートコントラクトの実験方法

 ここまで、トークンとスマートコントラクトを一般論として解説しましたが、より理解を深めるためには、ぜひ実際に自分でトークンのコードを書いて、ブロックチェーン上で動かしてみてください。以下、やり方のひとつを手短にご紹介します。

 ブロックチェーンを実装したプロダクトはさまざまありますが、現在、スマートコントラクトの実行プラットフォームとして一般に広く使え、かつ主流なのはEthereumです。前述したようにトークンの機能は一般化(生成、所有、転送の機能といったように)できるので、Ethereumの開発コミュニティーではトークンの共通インターフェース仕様を策定しており、仕様に則ったトークンを開発するのが通常です。具体的には、FTの仕様としてERC20、NFTの仕様としてERC721、さらに最近では、FTとNFTのハイブリッド仕様としてERC1155があります(表2)。

表2 Ethereumでのトークン標準仕様の一覧
トークンタイプ 仕様 仕様書の参照先
FT ERC-20 EIP-20: Token Standard
NFT ERC-721 EIP-721: Non-Fungible Token Standard
ハイブリッド ERC-1155 EIP-1155: Multi Token Standard

 トークンの実装はゼロから行うこともできますが、実績のあるオープンソースライブラリのひな形から始めるのが早道です。そのようなライブラリのひとつにOpenZeppelinがあります。OpenZeppelin のドキュメントには、ライブラリを使ったトークンの作り方が解説されていますので、これを参考しながら自分のトークンを作ることができます。

 トークンのスマートコントラクトが作れたら、次はEthereumを動かしてテスト用のブロックチェーンを作り、トークンをそのブロックチェーンにデプロイして実験してみる番です。例えば、オープンソースのGO-Ethereumなどが利用できます。GO-Ethereumは公式サイトからインストーラーをダウンロードでき、公式ドキュメントをはじめとして、ちょっと動かしてみるときに参考となる情報がWeb上に多数あります。

 より本格的に実験するには、無料で自由に使えるEthereumのテスト用ブロックチェーンネットワークを利用することもできます。テストネットワークにはいくつか種類があり、それらはEthereumの公式サイトに記載があります。なお、テスト用途であれば、どのネットワークを選択しても問題ないはずです。

まとめ

 ここ最近、NFTとブロックチェーンが盛り上がっています。NFTはトークンと呼ばれるデジタル世界で何らかの価値を表現する仕組みの一種です。NFTはNon-Fungible Token(=NFT:代替不可能なトークン)の略称で、分類上、対となるトークンにFungible Token (=FT:代替可能なトークン)があります。FTとNFTの具体例として、お金やポイントカードのポイントなどの数量や単位で表されるようなものはFT、美術品や土地といった一点もので替わりがないものはNFTにそれぞれ対応します。

 トークンを使うと、ブロックチェーン上で価値交換のサービスを実現することができます。トークンをはじめとしたブロックチェーン上のサービスは、スマートコントラクトによって実現します。スマートコントラクトの実体は、サービスのロジックをプログラムコードとして書き記したものです。スマートコントラクトを実行するプラットフォームがブロックチェーンであり、スマートコントラクトが提供するサービスを従来型システムのサービスと差別化するポイントは、ブロックチェーンの特徴から生み出されます。

 現在主流のブロックチェーンプロダクトであるEthereumはスマートコントラクトの機能を持っており、オープンソースのライブラリなどを利用して、個人でもトークンのスマートコントラクトを作ることができます。Ethereumでは、トークンのスマートコントラクトの標準仕様が策定されており、FTの仕様はERC-20、NFTの仕様はERC-721、FTとNFTのハイブリッド仕様はERC-1155です。Ethereum上でのトークンは、これらの仕様に従って開発します。

 次回は、従来型システムと比較したときの差別化ポイントとなる、スマートコントラクトの実行プラットフォームとしてのブロックチェーンの特徴を解説する予定です。



  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 木下 学(NTTデータ先端技術株式会社)(キノシタ マナブ)

     ソフトウェアソリューション事業本部 AIソリューション事業部 ビッグデータ基盤担当  2014年入社。2017年からブロックチェーンを担当。  現在、NTTデータグループにおける全世界横断のブロックチェーンチームの一員として、ブロックチェーンを用いたシステム開発や技術検証を中心に、教育プログラ...

あなたにオススメ

All contents copyright © 2005-2022 Shoeisha Co., Ltd. All rights reserved. ver.1.5