(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023064966
(43)【公開日】2023-05-12
(54)【発明の名称】ノンファンジブルトークンの判定システム及び判定データの生成方法
(51)【国際特許分類】
G06F 21/10 20130101AFI20230502BHJP
G06Q 30/0601 20230101ALI20230502BHJP
H04L 9/32 20060101ALI20230502BHJP
G06F 21/64 20130101ALI20230502BHJP
【FI】
G06F21/10
G06Q30/06 322
H04L9/32 200Z
G06F21/64
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2021175452
(22)【出願日】2021-10-27
(71)【出願人】
【識別番号】518003096
【氏名又は名称】Bacoor dApps株式会社
(71)【出願人】
【識別番号】320003367
【氏名又は名称】株式会社AI商事
(74)【代理人】
【識別番号】100111567
【弁理士】
【氏名又は名称】坂本 寛
(72)【発明者】
【氏名】春名 幸雄
(72)【発明者】
【氏名】竹内 仁
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049BB02
5L049BB26
(57)【要約】 (修正有)
【課題】ノンファンジブルトークン(非代替性トークン;NFT)の取引の安全の向上を図るノンファンジブルトークンの判定システム及び判定データの生成方法を提供する。
【解決手段】システム10は、ブロックチェーンにおけるノンファンジブルトークンの判定システムであって、判定対象である第1ノンファンジブルトークンに関する第1データを取得する取得器510と、第1データに基づいて、第1ノンファンジブルトークンの真贋に関して判定するNFT判定器520と、NFT判定器による判定結果を示す第2データを生成する判定データ生成器530と、を備える。
【選択図】
図4
【特許請求の範囲】
【請求項1】
ブロックチェーンにおけるノンファンジブルトークンの判定システムであって、
判定対象である第1ノンファンジブルトークンに関する第1データを取得する取得器と、
前記第1データに基づいて、前記第1ノンファンジブルトークンの真贋に関して判定する判定器と、
前記判定器による判定結果を示す第2データを生成する生成器と、
を備える判定システム。
【請求項2】
前記判定器は、正規ノンファンジブルトークンに関する第1リスト、及び、非正規ノンファンジブルトークンに関する第2リストの少なくともいずれか一方のリストを用いて、前記第1ノンファンジブルトークンの真贋に関して判定するよう構成されている
請求項1に記載の判定システム。
【請求項3】
前記判定器は、ノンファンジブルトークンを分類するよう構成された分類モデルに対して前記第1データを与えることで、前記第1ノンファンジブルトークンの真贋に関して判定するよう構成されている
請求項1又は請求項2に記載の判定システム。
【請求項4】
前記取得器は、ネットワークを介して接続されたユーザ端末から、前記第1データを取得するよう構成されている
請求項1から請求項3のいずれか1項に記載の判定システム。
【請求項5】
前記取得器は、前記第1ノンファンジブルトークンが記録されたブロックチェーンから、前記第1データを取得するよう構成されている
請求項1から請求項4のいずれか1項に記載の判定システム。
【請求項6】
前記第2データは、前記ブロックチェーンに記録される第2ノンファンジブルトークンを含み、前記第2ノンファンジブルトークンは、前記判定結果を有する
請求項1から請求項5のいずれか1項に記載の判定システム。
【請求項7】
前記第2ノンファンジブルトークンは、前記第1ノンファンジブルトークンの取引記録を更に有する
請求項6に記載の判定システム。
【請求項8】
前記第1ノンファンジブルトークンが正規ノンファンジブルトークンであると前記判定器によって判定された場合、前記生成器は、前記第1ノンファンジブルトークンが正規ノンファンジブルトークンであることの証明データを含む前記第2データを生成するよう構成されている
請求項1から請求項7のいずれか1項に記載の判定システム。
【請求項9】
ブロックチェーンにおけるノンファンジブルトークンの判定データの生成方法であって、
判定対象である第1ノンファンジブルトークンに関する第1データを、生成システムによって、取得し、
前記生成システムによって、前記第1データに基づいて前記第1ノンファンジブルトークンの真贋に関して判定し、
前記生成システムによって、前記第1ノンファンジブルトークンの真贋に関する判定結果を示す判定データを生成する
ことを備える生成方法。
【請求項10】
前記判定データは、前記ブロックチェーンに記録される第2ノンファンジブルトークンを含み、前記第2ノンファンジブルトークンは、前記判定結果を有する
請求項9に記載の生成方法。
【請求項11】
前記第2ノンファンジブルトークンは、前記第1ノンファンジブルトークンに対応付けられている
請求項10に記載の生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、ノンファンジブルトークンの判定システム及び判定データの生成方法に関する。
【背景技術】
【0002】
特許文献1は、ブロックチェーンにおけるノンファンジブルトークン(非代替性トークン;Non-Fungible Token:NFT)を開示している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【0004】
NFTは、デジタルアート又はデジタルコンテンツなどのデジタルデータに、唯一無二の価値を持たせることを可能とする技術として注目されている。また、特許文献1のように、NFTを、現実世界の物体に対応付けることも行われている。
【0005】
デジタルデータは、複製が容易であり、オリジナルのデジタルデータと複製されたデジタルデータとの区別がつかないことが多い。しかし、NFTは、唯一性を有するため、NFT化されたデジタルデータは、複製された他のデジタルデータとの区別が容易であり、唯一無二のものとなる。また、NFTは、書き換え・改ざんが行えないブロックチェーンに記録されるため、NFTの唯一性は、ブロックチェーンによって証明される。また、NFTは、デジタルデータの所有権を証明するために利用することもできる。
【0006】
このように、NFTは、デジタルデータに対する一種の証明書として機能し得る。近年、このようなNFTの特性を利用して、NFTの売買取引が盛んになっている。希少なデジタルデータをトークン化したNFTは、非常に高額な金額で取引されることもある。
【0007】
しかし、ブロックチェーンに記録されたNFTが、常に、オリジナルのデジタルデータをトークン化した真正のNFTであるとは限らない。例えば、オリジナルのデータを違法に複製したデータをトークン化した偽物NFTが作成されることがあり得る。つまり、不正の利益を得ることなどを目的として、本物のNFTに見た目がそっくりの偽物NFTが、作成されることがあり得る。
【0008】
例えば、同じ画像データを有する複数の正規NFTが数量限定で適法に作成されることがある。この場合、NFTが取引されるマーケットプレイスには、見た目が同じ複数の正規NFTが出品され得る。そのマーケットプレイスに、正規NFTが有する画像データを違法に複製して作成された偽物NFTが出品されても、正規NFTと偽物NFTとを見分けるのは、NFTの取引者にとって困難なことがある。しかも、NFTは、市場において、転々流通するため、一旦、偽物NFTが正規NFTと信じられて市場に流通すると、一般の取引者が、偽物NFTを見分けるのは非常に困難になる。
【0009】
また、正規NFTが有するデジタルデータとは異なるデジタルデータをトークン化した偽物NFTが、あたかも正規NFTの一種であると詐称されるおそれもある。例えば、あるキャラクターについて、本物が存在しない画像データが、第三者によって違法に作成され、その画像がNFT化されるおそれもある。
【0010】
このように、NFT自体が証明書としての機能を有するとしても、偽物NFTなどの非正規NFTが存在すると、NFTの取引の安全が損なわれるおそれがある。
【0011】
したがって、NFTの取引の安全の向上を図ることが望まれる。
【0012】
本開示のある側面は、ブロックチェーンにおけるノンファンジブルトークンの判定システムである。開示のシステムは、判定対象である第1ノンファンジブルトークンに関する第1データを取得する取得器と、前記第1データに基づいて、前記第1ノンファンジブルトークンの真贋に関して判定する判定器と、前記判定器による判定結果を示す第2データを生成する生成器と、を備える。
【0013】
本開示の他の側面は、ブロックチェーンにおけるノンファンジブルトークンの判定データの生成方法である。開示の方法は、判定対象である第1ノンファンジブルトークンに関する第1データを、生成システムによって、取得し、前記生成システムによって、前記第1データに基づいて前記第2ノンファンジブルトークンの真贋に関して判定し、前記生成システムによって、前記第1ノンファンジブルトークンの真贋に関する判定結果を示す判定データを生成することを備える。
【0014】
更なる詳細は、後述の実施形態として説明される。
【図面の簡単な説明】
【0015】
【
図1】
図1は、システムの構成を示す概要図である。
【
図2】
図2は、正規NFT及び偽物NFTを示す概略図である。
【
図3】
図3は、ブロックチェーンにおける正規NFT及び偽物NFTの記録を示す概略図である。
【
図4】
図4は、システムの第1例を示す構成図である。
【
図5】
図5は、NFT判定の手順を示すフローチャートである。
【
図6】
図6は、システムの第2例を示す構成図である。
【
図7】
図7は、NFT判定の手順を示すフローチャートである。
【
図9】
図9は、システムの利用手順を示すフローチャートである。
【発明を実施するための形態】
【0016】
<1.ノンファンジブルトークンの判定システム及び判定データの生成方法の概要>
【0017】
(1)実施形態に係るシステムは、ブロックチェーンにおけるノンファンジブルトークンの判定システムであって、判定対象である第1ノンファンジブルトークンに関する第1データを取得する取得器と、前記第1データに基づいて、前記第1ノンファンジブルトークンの真贋に関して判定する判定器と、前記判定器による判定結果を示す第2データを生成する生成器と、を備える。
【0018】
(2)前記判定器は、正規ノンファンジブルトークンに関する第1リスト、及び、非正規ノンファンジブルトークンに関する第2リストの少なくともいずれか一方のリストを用いて、前記第1ノンファンジブルトークンの真贋に関して判定するよう構成されているのが好ましい。
【0019】
(3)前記判定器は、ノンファンジブルトークンを分類するよう構成された分類モデルに対して前記第1データを与えることで、前記第1ノンファンジブルトークンの真贋に関して判定するよう構成されているのが好ましい。
【0020】
(4)前記取得器は、ネットワークを介して接続されたユーザ端末から、前記第1データを取得するよう構成されているのが好ましい。
【0021】
(5)前記取得器は、前記第1ノンファンジブルトークンが記録されたブロックチェーンから、前記第1データを取得するよう構成されているのが好ましい。
【0022】
(6)前記第2データは、前記ブロックチェーンに記録される第2ノンファンジブルトークンを含み、前記第2ノンファンジブルトークンは、前記判定結果を有するのが好ましい。
【0023】
(7)前記第2ノンファンジブルトークンは、前記第1ノンファンジブルトークンの取引記録を更に有するのが好ましい。
【0024】
(8)前記第1ノンファンジブルトークンが正規ノンファンジブルトークンであると前記判定機によって判定された場合、前記生成器は、前記第1ノンファンジブルトークンが正規ノンファンジブルトークンであることの証明データを含む前記第2データを生成するよう構成されているのが好ましい。
【0025】
(9)実施形態に係る方法は、ブロックチェーンにおけるノンファンジブルトークンの判定データの生成方法であって、判定対象である第1ノンファンジブルトークンに関する第1データを、生成システムによって、取得し、前記生成システムによって、前記第1データに基づいて前記第2ノンファンジブルトークンの真贋に関して判定し、前記生成システムによって、前記第1ノンファンジブルトークンの真贋に関する判定結果を示す判定データを生成することを備える。
【0026】
(10)前記判定データは、前記ブロックチェーンに記録される第2ノンファンジブルトークンを含み、前記第2ノンファンジブルトークンは、前記判定結果を有するのが好ましい。
【0027】
(11)前記第2ノンファンジブルトークンは、前記第1ノンファンジブルトークンに対応付けられているのが好ましい。
【0028】
<2.ノンファンジブルトークンの判定システム及び判定データの生成方法の例>
【0029】
図1は、実施形態に係るシステム10を示している。システム10は、例えば、ノンファンジブルトークン(NFT)の認証局80によって運用される。認証局80は、NFTが正規NFTであることを認証するための組織である。認証局80は、NFTの認証のため、NFTの真贋を判定することができる。認証局80によって認証された正規のNFTを「認証NFT」ともいう。認証NFTは、非正規NFT又は認証されていないNFTに比べて、信頼性が高い。したがって、認証局80による認証を利用することで、NFTの取引の安全を図ることができる。
【0030】
実施形態に係るシステム10は、NFTの判定システムとして動作し得る。また、システム10は、NFTの判定データ生成システムとして動作し得る。
【0031】
実施形態に係るシステム10は、インターネット等のネットワーク15に接続されたサーバ51を備え得る。サーバ51は、例えば、NFTの真贋に関する処理を実行する。サーバ51は、複数のコンピュータによって構成されてもよい。サーバ51は、例えば、正規NFTを認証するため、NFTの真贋に関する判定を実行する。サーバ51は、判定結果を示すデータを生成し得る。サーバ51は、例えば、認証局80によって管理される。
【0032】
サーバ51は、プロセッサ51A及び記憶装置51Bを備えるコンピュータによって構成され得る。記憶装置51Bは、プロセッサ51Aに接続されている。記憶装置51Bは、例えば、一次記憶装置及び二次記憶装置を備える。一次記憶装置は、例えば、RAMである。二次記憶装置は、例えば、ハードディスクドライブ(HDD)又はソリッドステートドライブ(SSD)である。記憶装置51Bは、プロセッサ51Aによって実行されるコンピュータプログラム51Cを備える。プロセッサ51Aは、記憶装置51Bに格納されたコンピュータプログラム51Cを読み出して実行する。コンピュータプログラム51Cは、サーバ51が担うべき処理をコンピュータに実行させる命令を示すプログラムコードを有する。
【0033】
実施形態に係るシステム10は、ブロックチェーン20を利用する。サーバ51は、ネットワーク15を介して、ブロックチェーン20へアクセスし得る。ブロックチェーン20は、複数のコンピュータが相互に接続されたP2P(Peer to Peer)のコンピュータネットワークシステムによって構成されている。
【0034】
ブロックチェーン20においては、ブロックチェーンアドレス間で取引が可能である。取引のトランザクションは、ブロックチェーン20の分散台帳に記録される。ブロックチェーンアドレスは、例えば、ブロックチェーン20におけるユーザアカウントを示す。
【0035】
ブロックチェーン20おいては、例えば、NFTなどのトークンの取引が可能である。
NFTは非代替性の確保のため、NFTは、ブロックチェーン20において、他のNFTとの区別を可能にするための固有のトークン識別子を有する。このトークン識別子は、NFT識別子(NFT_ID)とも呼ばれる。トークン識別子は、例えば、生成されたNFTが格納されるブロックチェーンアドレス(コントラクトアドレス)に記録される。
【0036】
NFTの取引履歴は、ブロックチェーン20において記録される。ブロックチェーン20に記録される取引履歴は、NFTの過去及び現在の所有者の一覧及び取引日時を含み得る。NFTの取引記録は、例えば、NFTが格納されたブロックチェーンアドレス(コントラクトアドレス)に記録される。ブロックチェーン20の取引記録を参照することで、NFTの現在の所有者のブロックチェーンアドレスを把握することができる。したがって、NFTは、トークン化されたデジタルデータの所有権の証明書として機能し得る。
【0037】
任意の第三者は、ブロックチェーン20にアクセスすることで、ブロックチェーン20に記録されたNFTを参照し得る。サーバ51及び後述の端末31,32は、いずれもブロックチェーン20にアクセスし得る。
【0038】
NFTの取引は、NFTの所有者の変更をブロックチェーン20に記録される。ブロックチェーン20において行われるNFTの所有者変更の操作は、NFTの送信とも呼ばれる。すなわち、NFTの所有者を第1ブロックチェーンアドレスから第2ブロックチェーンアドレスに変更することは、第1ブロックチェーンアドレスから第2ブロックチェーンアドレスへ、トークンを送信することもでもある。NFTの送信などのNFTの操作は、サーバ51又は後述の端末31,32によって実行され得る。
【0039】
システム10を利用するユーザは、そのユーザの端末31,32を用いて、システム10にアクセスし得る。すなわち、端末31,32は、ネットワーク15を介して、サーバ51にアクセスし得る。また、端末31,32は、ネットワーク15を介してブロックチェーン20にアクセスし得る。
【0040】
端末31は、例えば、スマートフォン又はタブレットなどのモバイルデバイスである。以下では、端末31の構成に関して説明するが、端末32も同様の構成であり得る。
【0041】
端末31は、インターネットなどのネットワーク15に接続可能である。端末31は、プロセッサ31A及び記憶装置31Bを備えるコンピュータによって構成され得る。記憶装置31Bは、プロセッサ31Aに接続されている。記憶装置31Bは、例えば、一次記憶装置及び二次記憶装置を備える。一次記憶装置は、例えば、RAMである。二次記憶装置は、例えば、ハードディスクドライブ(HDD)又はソリッドステートドライブ(SSD)である。記憶装置31Bは、プロセッサ31Aによって実行されるコンピュータプログラム31Cを備える。プロセッサ31Aは、記憶装置31Bに格納されたコンピュータプログラム31Cを読み出して実行する。コンピュータプログラム31Cは、端末31として機能するコンピュータによって実行される命令を示すプログラムコードを有する。
【0042】
また、コンピュータプログラム31Cは、例えば、ブロックチェーン20のユーザアカウントに格納されたNFTなどのトークンを端末31に表示させるためのウォレットアプリケーションプログラムであり得る。そのようなプログラムは、トークンの保管、トークンの送信、及びトークンの受信のためのユーザ操作のための機能を提供し得る。
【0043】
図2は、正規NFT62、及び、非正規NFTである偽物NFT72の例を示している。正規NFT62は、いわゆる本物である。正規NFT62は、例えば、デジタル画像データなどのデジタルコンテンツを作成したアーティスト又はクリエータC1によって作成される。アーティスト又はクリエータC1が作成したデジタルコンテンツ61は、正規コンテンツである。アーティスト又はクリエータC1は、正規コンテンツ61をトークン化する。なお、トークン化は、NFT化ともいう。正規コンテンツ61のNFT化によって、正規NFT62が生成される。NFT化されるデジタルコンテンツは、例えば、静止画像又は動画像の画像データ、音データ、テキストデータ、及びユニフォームリソースアイデンティファイア(Uniform Resource Identifier)の少なくともいずれか一つである。
【0044】
偽物NFT72は、正規NFT62以外のNFTであり、例えば、違法に複製又は作成された違法コンテンツ71をNFT化することによって生成される。偽物NFT72は、例えば、違法複製者C2によって作成される。違法コンテンツ71は、正規コンテンツ61と、一見した見かけにおいて同じ、又は全く同じであり得る。したがって、偽物NFT72は、一見しただけでは、正規NFT62と区別が困難なことがあり得る。
【0045】
偽物NFT72の見た目が正規NFT62とほぼ同じである場合、NFTを端末31,32に表示させても、端末31,32に表示される内容がほぼ同じである。このため、その表示をみた者は、そのNFTが、正規NFT62であるのか偽物NFT72であるのか区別がつかない。
【0046】
図3は、ブロックチェーン20におけるNFT62,64,72,74の記録の例を示している。ブロックチェーン20において生成されたNFTは、例えば、ブロックチェーン20のコントラクトアドレスに記録される。NFTがコントラクトアドレスに記録されていることを、NFTがコントラクトアドレスに格納されている、ともいう。コントラクトアドレスは、ブロックチェーン20におけるコントラクトに付与されたアドレスである。一つのコントラクトアドレスには、複数のNFTが格納され得る。
【0047】
NFTの生成は、例えば、そのNFTの生成に利用されるコントラクトアドレスに、個々のNFTを識別するためのトークン識別子(NFT_ID)を記録することによって行われ得る。すなわち、NFTは、トークン識別子を有する。NFTのトークン識別子は、個々のNFTをユニークに示すため、トークン識別子は、後述の、NFTの真贋に関する判定に用いられ得る。
【0048】
また、NFTは、コントラクトアドレスに格納されているため、NFTは、コントラクトアドレスを有しているとみなされる。NFTが取引されて所有者が変更されても、NFTが有するコントラクトアドレスは変わらない。また、NFTが有するコントラクトアドレスは、NFTの生成者によって利用されるため、NFTが有するコントラクトアドレスが何であるかは、NFTの生成者を示し得る。これを利用して、本実施形態では、NFTが有するコントラクトアドレスは、後述の、NFTの真贋に関する判定に用いられ得る。なお、NFTが取引されて、NFTの所有者が変更されると、例えば、NFTが格納されているコントラクトアドレスに、NFTの最新の所有者を示すブロックチェーンアドレスの記録が追加される。
【0049】
コントラクトアドレスには、1又は複数のNFTのための名称が記録され得る。したがって、NFTは、ブロックチェーン20に記録された名称を有し得る。NFTが有する名称は、後述の、NFTの真贋に関する判定に用いられ得る。
【0050】
図3では、正規NFT62,64は、第1コントラクトアドレス22Aに格納されている。
図3において、第1コントラクトアドレス22Aは、一例として、0x123456である。第1コントラクトアドレス22Aは、例えば、正規NFT62,64の作成者に対して、NFT作成のためのWEBサイトを提供するプロバイダが有するブロックチェーンアドレスである。正規NFT62,64の作成者は、端末31を用いて、NFT作成のためのWEBサイトにアクセスする。その作成者は、端末31を用いて、デジタルコンテンツ61,63をNFT化するための操作を行うことで、正規NFT62,64が、第1コントラクトアドレス22Aに記録され、NFT62,64が生成される。なお、
図3に示すように、NFT化されたデジタルコンテンツ61,63をNFT構成データ61,63ともいう。
【0051】
図3において、一例として、正規NFT62は、トークン識別子(NFT_ID)として「nft_id01」を有する。また、正規NFT64は、トークン識別子(NFT_ID)として「nft_id02」を有する。また、第1コントラクトアドレス22Aは、記録されたNFTのための名称として「AAA」を有する。つまり、
図3においては、複数の正規NFT62,64は、共通の名称として「AAA」を有する。
【0052】
また、
図3では、偽物NFT72,74は、第2コントラクトアドレス22Bに格納されている。
図3において、第2コントラクトアドレス22Bは、第1コントラクトアドレス22Aとは異なるアドレスであり、一例として、0x778899である。第2コントラクトアドレス22Bは、例えば、違法複製者C2が、偽物NFT72,74を生成するために利用したブロックチェーンアドレスである。
図3では、一例として、違法複製者C2がデジタルコンテンツ61,63を違法に複製して作成したデジタルコンテンツ71,73がNFT化されることで、偽物NFT72,74が、生成され、第2コントラクトアドレス22Bに記録される
【0053】
図3において、一例として、偽物NFT72は、正規NFT62の偽物であり、トークン識別子(NFT_ID)として「nft_idxx01」を有する。偽物NFT72は、正規NFT62が有するNFT構成データ61と同じNFT構成データ71を有する。また、偽物NFT74は、正規NFT64の偽物であり、トークン識別子(NFT_ID)として「nft_idxx02」を有する。偽物NFT74は、正規NFT64が有するNFT構成データ63と同じNFT構成データ73を有する。
【0054】
第2コントラクトアドレス22Bは、一例として、記録されたNFT72,74のための名称として、正規NFT62,64を詐称するため、正規NFT62,64と似た名称「aaaa」を有する。
【0055】
なお、NFT62,63,71,73が有するデータの一部(例えば、画像データ)は、ブロックチェーン20外に記録されていてもよい。ブロックチェーン20外のデータをNFT化する場合、NFT構成データ61,63,71,73として、ブロックチェーン20外のデータを示すためのリンク(URIなど)が、ブロックチェーン20に記録される。
【0056】
図3に示すように、偽物NFT72,74は、正規NFT62,64が有するNFT構成データ61,63と同じNFT構成データ71,73を有し得る。しかし、その場合であっても、偽物NFT72,74のコントラクトアドレス22Bは、正規NFT62,64のコントラクトアドレス22Aとは相違し得る。また、偽物NFT72,74のトークン識別子は、正規NFT62,64のトークン識別子とは相違し得る。さらに、偽物NFT72,74の名称は、正規NFT62,64の名称とは相違し得る。また、偽物NFT72,74は、正規NFT62,64が有するNFT構成データ61,63とは相違するNFT構成データ71,73を有することもあり得る。本実施形態では、NFT662,64,72,74に関するデータにおける、これらの相違を利用して、NFTの真贋に関する判定が行われる。
【0057】
図4は、実施形態に係るシステム10の構成の第1例を示している。
図4に示すシステム10は、NFTに関する判定処理を実行する判定器520を備える。判定器520は、判定対象のNFTの真贋に関して判定する。判定器520は、例えば、サーバ51のプロセッサ51Aが、判定処理のためのプログラムコードを有するコンピュータプログラム51Cを実行することによって実現されるソフトウェアモジュールであり得る。なお、判定器520は、論理回路及びメモリなどを有するハードウェアによって構成されたハードウェアモジュールであってもよい。
【0058】
NFTの真贋に関して判定することは、例えば、判定対象のNFTが正規NFTであるかどうかを判定すること、判定対象のNFTが非正規NFTであるかどうかを判定すること、及び、判定対象のNFTが正規NFTであるか非正規NFTであるかを判定すること、の少なくともいずれか一つを含み得る。
【0059】
また、NFTの真贋に関して判定することは、例えば、判定対象のNFTが正規NFTである第1確率を求めること、判定対象のNFTが非正規NFTである第2確率を求めること、判定対象のNFTが正規NFTである第1確率及び判定対象のNFTが非正規NFTである第2確率を求めること、の少なくともいずれか一つを含み得る。NFTの真贋に関して判定することは、これらの第1確率及び第2確率の少なくもいずれか一方又は両方を、閾値と比較することを含んでもよい。閾値との比較結果に基づいて、判定対象のNFTが正規NFTであるかどうか、判定対象のNFTが非正規NFTであるかどうか、及び、判定対象のNFTが正規NFTであるか非正規NFTであるかどうか、の少なくともいずれか一つの判定結果が求められてもよい。
【0060】
判定器520は、判定対象のNFTに関する第1データ101に基づいて、NFTの真贋に関して判定し得る。以下では、判定対象のNFTを、単に「対象NFT」という。対象NFTに関する第1データ101は、例えば、対象NFTのコントラクトアドレス22A,22B、対象NFTの名称、対象NFTのトークン識別子(NFT_ID)、及びNFT構成データ61,63,71,73の少なくとも1つ以上のデータである。
図4では、一例として、第1データ101として、対象NFTのコントラクトアドレス22A,22B、対象NFTの名称、及び対象NFTのトークン識別子(NFT_ID)が用いられる。
【0061】
判定器520に与えられる第1データ101は、取得器510によって、取得され得る。取得器510は、例えば、サーバ51のプロセッサ51Aが、第1データの取得処理のためのプログラムコードを有するコンピュータプログラム51Cを実行することによって実現されるソフトウェアモジュールであり得る。取得器510は、取得器510の外部と通信するための通信装置を備え得る。取得器510は、例えば、ネットワーク15を介した端末31,32との通信によって、第1データ101を、端末31,32から取得し得る。また、取得器510は、ネットワーク15を介して、ブロックチェーン20を参照することで、第1データを、ブロックチェーン20から取得し得る。取得器510は、取得した第1データ101を、判定器520に与え得る。判定器520は、取得した第1データ101を用いて、対象NFTに関する判定処理を実行し得る。
【0062】
図4に示す判定器520は、NFTに関するリスト523A,523Bを用いて、対象NFTに関する判定をする。リスト523A,523Bは、例えば、サーバ51の記憶装置51B、又は、サーバ51とは別のコンピュータの記憶装置に記憶され得る。
図4に示すリスト523A,523Bは、正規NFTに関する第1リスト523A、及び、非正規NFTに関する第2リスト523Bの両方を含む。判定器520が判定に用いるリストは、第1リスト523A、及び、第2リスト523Bのいずれか一方であってもよい。
【0063】
第1リスト523Aは、正規NFTに関するデータの一覧として構成され得る。第1リスト523Aは、正規NFTを定義した、いわゆるホワイトリスト(ポジティブリスト)であり得る。第1リスト523Aに含まれる正規NFTに関するデータは、正規NFTであることが判明しているNFTに関するデータであってもよいし、正規NFTである可能性が高いNFTに関するデータであってもよい。第1リスト523Aに含まれる正規NFTに関するデータは、正規NFTのコントラクトアドレス22A、正規NFTの名称、正規NFTのトークン識別子(NFT_ID)、及び正規NFTのNFT構成データ61,63の少なくとも1つ以上のデータであり得る。
【0064】
ここでは、一例として、正規NFTは、正規NFTとして認証局80に登録されたNFTである。NFTは、第1リスト523Aに登録されることで、正規NFTとして取り扱われ得る。例えば、正規NFTとして認証局に登録を希望する者(申請者)が、認証局80に対して、NFTの登録の申請手続を行うと、認証局80は、そのNFTを審査し、審査に合格すれば、そのNFTが正規NFTとして、第1リスト523Aに登録される。NFTの登録の申請手続においては、申請者から認証局80に対して、NFTに関するデータが提供され得る。申請者は、例えば、正規コンテンツ61,63を作成したアーティスト・クリエータC1である。なお、認証局80は、申請者による申請手続を待つことなく、独自に、NFTに関するデータを、ブロックチェーン20などから取得して、正規NFTに関する審査を行ってもよい。認証局80が、独自に審査し認定した正規NFTも、第1リスト523Aに登録され得る。
【0065】
第2リスト523Bは、非正規NFTに関するデータの一覧として構成され得る。第2リスト523Bは、非正規NFTを定義した、いわゆるブラックリスト(ネガティブリスト)であり得る。第2リスト523Bに含まれる非正規NFTに関するデータは、非正規NFTであることが判明しているNFTに関するデータであってもよいし、非正規NFTである可能性が高いNFTに関するデータであってもよい。第2リスト523Bに含まれる非正規NFTに関するデータは、非正規NFTのコントラクトアドレス22B、非正規NFTの名称、非正規NFTのトークン識別子(NFT_ID)、及び非正規NFTのNFT構成データ71,73の少なくとも1つ以上のデータであり得る。
【0066】
ここでは、一例として、非正規NFTは、非正規NFTとして認証局80に登録されたNFTである。NFTは、第2リスト523Bに登録されることで、非正規NFTとして取り扱われ得る。例えば、認証局80は、非正規NFTを購入してしまった者からの申告により、そのNFTを審査する。審査の結果、非正規NFTであると判明した場合、そのNFTが非正規NFTとして、第2リスト523Bに登録される。非正規NFTの申告においては、申告者から認証局80に対して、NFTに関するデータが提供され得る。なお、認証局80は、NFTに関するデータを、ブロックチェーン20などから取得して、非正規NFTに関する審査を行ってもよい。認証局80が、独自に審査した非正規NFTも、第2リスト523Bに登録され得る。
【0067】
判定器520は、第1データ101をリスト523A,523Bと照合するための照合器521を備え得る。照合器521は、リスト523A,523Bを参照し、リスト523A,523Bにおいて、第1データ101に合致するデータを探索する。
【0068】
照合器521による照合結果は、判定器520の判定結果として、生成器530に与えられ得る。生成器530は、判定器520による判定結果を示す第2データを生成する。第2データを、判定データともいう。第2データは、例えば、判定結果を参照したいユーザへの判定結果の提示に用いられる。生成器530は、例えば、サーバ51のプロセッサ51Aが、第2データの生成処理のためのプログラムコードを有するコンピュータプログラム51Cを実行することによって実現されるソフトウェアモジュールであり得る。生成器530は、サーバ51とは別のコンピュータによって構成されてもよい。なお、判定器520は、ブロックチェーン20を利用して、第2データを生成してもよい。生成された第2データは、サーバ51に保存されてもよいし、端末31,32に送信されてもよいし、ブロックチェーン20に保存されてもよい。
【0069】
第2データは、例えば、対象NFTが正規NFTであることを示すデータ、対象NFTが正規NFTであるかどうか不明であることを示すデータ、対象NFTが非正規NFTであることを示すデータ、対象NFTが非正規NFTであるかどうか不明であることを示すデータ、対象NFTが正規NFTである確率を示すデータ、及び対象NFTが非正規NFTである確率を示すデータのうちの少なくとも一つ以上のデータであり得る。
【0070】
対象NFTが正規NFTであることを示すデータは、対象NFTが正規NFTであることの証明データとして機能する。対象NFTについての証明データが存在することで、証明データを参照した者は、安心して対象NFTを取引できる。
【0071】
図5は、
図4に示すシステム10によって実行される対象NFTの判定に関する手順の一例を示している。システム10は、まず、対象NFTの第1データ101を、ユーザ端末31から取得する(ステップS51)。ユーザ端末31は、例えば、NFTマーケットプレイスに出品された対象NFTを購入することを検討しており、対象NFTの真贋に関心があるユーザが使用する端末である。ユーザは、例えば、端末31を用いて、ブロックチェーン20又はオンラインマーケットプレイスから、対象NFTに関する第1データ101を取得し、その第1データ101をシステム10へ送信する。送信された第1データ101は、取得器510によって受信され得る。受信された第1データ101は、判定器520に与えられ得る。
【0072】
判定器520は、第1データ101を、正規NFTを定義したホワイトリストである第1リスト523Aと照合する(ステップS52)。照合は、照合器521によって実行され得る。第1データ101に合致するデータが、ホワイトリスト523Aに存在する場合、対象NFTが正規NFTであることを示す判定データ(第2データ)が生成される(ステップS53;正規NFT証明データ生成)。判定データの生成は、生成器530によって実行され得る。
【0073】
第1データ101に合致するデータが、ホワイトリスト523Aに存在しない場合、判定器520は、第1データ101を、非正規NFTを定義したブラックリストである第2リスト523Bと照合する(ステップS54)。第1データ101に合致するデータが、ブラックリスト523Bに存在する場合、対象NFTが非正規NFTであることを示す判定データ(第2データ)が生成される(ステップS55)。
【0074】
第1データ101に合致するデータが、ブラックリスト523Bにも存在しない場合、対象NFTは判定不能であることを示す判定データ(第2データ)が生成される(ステップS56)。
【0075】
なお、ステップS52とステップS54の実行順序は逆でもよいし、ステップS52とステップS54とが並列的に実行されてもよい。また、
図5に示す判定は、ホワイトリスト523A及びブラックリスト523Bを併用した方式であるが、ホワイトリスト523Aを単独で利用した方式であってもよく、この場合、ステップS54,S55を省略し得る。また、判定は、ブラックリスト523Bを単独で利用した方式であってもよく、この場合、ステップS52,S53を省略し得る。また、判定では、グレーリストが用いられてもよい。グレーリストは、例えば、正規又は非正規である可能性があるが確実ではないNFTの一覧であり得る。
【0076】
図6は、実施形態に係るシステム10の構成の第2例を示している。
図6に示すシステム10では、判定器520の構成と、取得される第1データ101の内容が、
図4に示すシステムと異なる。
図6では、第1データ101として、NFT構成データも取得される。第1データ101にNFT構成データが含まれることで、より多くのデータを用いて精度よく判定をすることができる。なお、
図6に関して、特に説明しない点は、
図4に示すシステム10と同様である。
【0077】
図6に示す判定器520は、分類モデル525を用いて、判定対象のNFTの真贋に関して判定する。分類モデル525は、対象NFTの第1データ101が入力されると、対象NFTを分類した結果を出力するよう構成されている。分類モデル525は、真贋の観点からNFTを分類し得る。分類モデル525は、例えば、対象NFTが、正規NFTであるか、又は非正規NFTであるか、を分類し得る。また、分類モデル525は、対象NFTが、正規NFTであるか、非正規NFTであるか、又は不明であるか、を分類してもよい。
【0078】
分類モデル525は、例えば、ロジスティック回帰(logistic regression)、k最近傍法(k-nearest neighbor)、決定木(decision tree)、サポートベクターマシン(support vector machine)、及びニューラルネットワーク(neural network)のいずれかであり得る。
【0079】
分類モデル525は、例えば、正規及び/又は非正規であることが判明しているNFTに関するデータを、モデル構築のための学習データとして用いることで、構築され得る。分類モデル525を用いると、リスト523A,523Bに登録されていない未知のNFTの判定が可能となる。なお、分類モデル525を、リスト523A,523Bと併用して、NFTの判定がなされてもよい。
【0080】
分類モデル525の出力は、第2データ(判定データ)の生成のため、生成器530に与えられ得る。
【0081】
図7は、
図6に示すシステム10によって実行される対象NFTの判定に関する手順の一例を示している。システム10は、まず、対象NFTの第1データ101を、ユーザ端末31から取得する(ステップS71)。ユーザ端末31は、例えば、NFTマーケットプレイスに出品された対象NFTを購入することを検討しており、対象NFTの真贋に関心があるユーザが使用する端末である。ユーザは、例えば、端末31を用いて、ブロックチェーン20又はオンラインマーケットプレイスから、対象NFTに関する第1データ101を取得し、その第1データ101をシステム10へ送信する。送信された第1データ101は、取得器510によって受信され得る。ステップS71において取得される第1データは、対象NFTを識別し得る最小限のデータでよい。例えば、ステップS71において取得される第1データは、対象NFTのトークン識別子であってもよく、対象NFTのコントラクトアドレスであってもよい。
【0082】
取得器510は、ステップS71で取得された第1データ(トークン識別子など)を用いて、ブロックチェーン20に記録された対象NFTを参照し、対象NFTに関する第1データ101を追加取得する(ステップS72)。追加取得される第1データ101は、例えば、対象NFTの名称及び対象NFTのNFT構成データである。このように、システム10が、ブロックチェーン20から対象NFTに関する第1データ101を取得するよう構成されていることで、端末31から送信すべき第1データ101を少なくすることができ、端末31及びユーザの負荷軽減が図られる。
【0083】
取得器510は、追加取得したデータを含む第1データ101を、分類モデル525の入力に与える(ステップS73)。分類モデル525は、第1データ101の入力を受けると、分類結果(判定結果)を出力する。生成器530は、分類モデル525の出力から、分類結果(判定結果)を示す判定データを生成する(ステップS74)。
【0084】
図8は、
図4又は
図6の生成器530によって生成される第2データを含むNFT211,212の一例を示している。生成器530は、第2データを含むNFT211,212を生成し得る。対象NFTの判定結果を示す第2データを含むNFT211,212は、通常のNFT62,66と同様に取引可能であるため、例えば、対象NFTとその対象NFTの判定結果を示すNFT(対象NFTの証明書)とをセットで、販売することが可能となる。つまり、対象NFTを、対象NFTの真正を証明する証明書付きで販売することができる。
【0085】
図8において、NFT211,212は、第3コントラクトアドレス22Dにおいて作成され、格納されている。したがって、NFT211,212は、コントラクトアドレス22Dを有する。コントラクトアドレス22Dは、一例として、0x223344である。コントラクトアドレス22Dは、例えば、システム10の生成器530が、NFT211,212を生成するために用いられる。
【0086】
NFT211,212は、システム10によってのみ生成され第三者(認証局以外の者)によっては生成されないのが好ましい。これを実現するため、コントラクトアドレス22Dは、システム10(認証局)が有するプライベートキーに対応したブロックチェーンアドレスからのみ、NFT生成又はデータ追加等のためのデータ書き込みができるように設定されているのが好ましい。この場合、コントラクトアドレス22Dに格納されたNFT211,212は、認証局80によって生成されたものであることが保証され、証明書としての信頼性が向上する。
【0087】
以下では、コントラクトアドレス22Cに格納されたNFT211,212を証明NFT211,212という。ここでの証明NFT211,212は、一例として、対象NFTが正規NFTであることを証明するNFTである。
図8において、一例として、証明NFT211は、NFT62を証明するNFTであり、トークン識別子(NFT_ID)として、「nft_idcert01」を有する。また、証明NFT212は、NFT66を証明するNFTであり、トークン識別子(NFT_ID)として、「nftidcert02」を有する。また、コントラクトアドレス22Cは、記録されたNFT211,212のための名称として「CERT」を有する。つまり、
図8においては、複数の証明NFT211,212は、共通の名称として「CERT」を有する。
【0088】
なお、証明NFT212によって証明されるNFT66は、コントラクトアドレス22Cに格納されており、正規NFTである。コントラクトアドレス22Cは、一例として、0x554433であり、記録されたNFT66のための名称として「BBB」を有する。
【0089】
証明NFT211,212は、NFT構成データとして、証明データ220を備え得る。証明データ220は、判定器520による判定結果を示す第2データを含み得る。証明データ220は、証明の対象NFT62を識別するための証明対象NFTデータ221を含み得る。証明対象NFTデータ221は、例えば、対象NFT62,66のトークン識別子を含み得る。証明対象NFTデータ221は、対象NFT62,66のコントラクトアドレス22A,22Cを含み得る。
【0090】
証明データ220は、「このNFTは、正規であることを証明します。」といった証明のための文章を表すテキストデータを含み得る。証明データ220は、認証局80の名称を含んでもよい。
【0091】
例えば、生成器530は、
図5のステップS52において対象NFT62が正規NFTであると判定されたことを受けて、
図5のステップS53において、NFT211を生成することができる。この場合、対象NFT62の第1データ101が証明対象NFTデータ221として用いられ得る。生成器530は、例えば、証明対象NFTデータ221と、判定結果に対応したテキストデータである「このNFTは、真正であることを証明します。」と、をNFT化されるデジタルデータとして採用する。生成器530が、NFT化されるデジタルデータ(NFT構成データ)を、コントラクトアドレス22Dに書き込むことで、NFT211が生成される。NFT212も同様に生成され得る。
【0092】
以上のようにして生成された証明NFT211,212は、判定器520による対象NFT62,66の判定結果を有するため、対象NFT62,66の真正を示す証明書として機能することができる。なお、NFTの生成には、コントラクトアドレス22Dに格納されたスマートコントラクト(図示省略)が利用されてもよい。スマートコントラクトは、例えば、サーバ51から呼び出されるとともに、サーバ51からNFT構成データを取得し、取得したNFT構成データを、コントラクトアドレス22Dに書き込むことで、NFT211,212を生成することができる。
【0093】
また、以上のようにして生成された証明NFT211,212は、証明対象NFTデータ221を有するため、証明NFT211,212は、証明対象NFT62,66に対応付けられたものとなる。この対応付けは、ブロックチェーン20に記録されるため、両者の対応関係は、信頼性の高いものとなる。証明NFT211,212と証明対象NFT62,66との対応は、例えば、証明対象NFT62,66に記録されてもよい。また、証明NFT211,212と証明対象NFT62,66との対応は、ブロックチェーン20に記録されている必要はなく、サーバ51などブロックチェーン20外のコンピュータに記録されていてもよい。
【0094】
証明NFT211,212は、NFT構成データとして、証明対象NFT62,66の取引記録230を有し得る。取引記録230は、例えば、証明対象NFT62,66の過去及び現在の所有者の一覧及び取引日時を含み得る。取引記録230は、証明NFT211,212が生成された時点における証明対象NFT62,66の過去の取引記録を含むだけでもよいが、証明NFT211,212が生成された後における証明対象NFT62,66の取引記録を含んでもよい。証明NFT211,212が生成後の取引記録も有するには、サーバ51又はコントラクトアドレス22Dのスマートコントラクトは、証明対象NFT62,66が取引されるたびに、証明対象NFT62,66の取引記録を、取引記録230に書き込めばよい。
【0095】
証明対象NFT62,66の取引記録230は、証明NFT211,212に取引記録230として記録されるまでもなく、ブロックチェーン20において記録されているが、証明NFT211,212が取引記録230を有していることで、証明NFT211,212の所有者等は、証明NFT211,212を参照するという簡易な操作で、容易に、証明対象NFT62,66の取引記録を把握できる。
【0096】
また、証明対象NFT62,66の取引記録230は、ブロックチェーン20において記録されている取引記録230に限られる必要はない。例えば、取引記録230は、ブロックチェーン20において記録されていない取引記録を含んでもよい。ブロックチェーン20において記録されていない取引記録は、例えば、証明対象NFT62,66の取引価格、又は所有者の氏名である。ブロックチェーン20において記録されていない取引記録は、例えば、NFTのマーケットプレイスにおける取引記録である。マーケットプレイスの取引記録は、例えば、マーケットプレイスのサーバから、実施形態のシステム10のサーバ51によって取得される。
【0097】
なお、一つの証明対象NFT62のために、複数の証明NFT211が生成されてもよい。また、一つの証明対象NFT62の取引記録を示す証明NFT211は、取引毎に生成されてもよく、この場合、取引された回数に応じた数の証明NFT211が生成され得る。
【0098】
図9は、実施形態に係るシステム10の利用のシナリオの一例を示している。
図9では、システム10は、証明NFTの発行を有償サービスとして提供しており、対象NFTが真正であることの確認をしたいユーザによって利用される。ユーザは、例えば、対象NFTを購入しようとする者、又は、対象NFTを販売しようとする者である。
【0099】
まず、ユーザは、端末31を利用して、ブロックチェーン20における対象NFTの記録を参照する(ステップS91)。端末31から、認証局のサーバ51へ、対象NFTのデータ(第1データ)が送信される(ステップS92)。サーバ51は、対象NFTのデータを受信すると(ステップS93)、その対象NFTのデータを用いて、対象NFTの真贋を判定する(ステップS94)。また、サーバ51は、証明書である証明NFTの発行手数料の支払いをユーザから受けるため、決済処理を実行する(ステップS95)。決済処理S95は、例えば、外部の決済システムの呼び出しである。決済は、例えば、クレジットカード決済、電子マネー支払い、ポイント支払い、又は仮想通貨支払いである。ステップS95の決済処理を実行するタイミングは、特に限定されず、ステップS94の前に行ってもよいし、ステップS93の前に行ってもよいし、ステップS96の後に行ってもよい。
【0100】
サーバ51は、一例として、対象NFTが正規NFTであると判定され、かつ、証明NFT発行のための決済処理が完了したら、証明NFTを生成する(ステップS96)。証明NFTは、対象NFTが正規NFTであることを証明する。
【0101】
生成された証明NFTは、ユーザのブロックチェーンアドレスへ送信される(ステップS97)。ユーザは、端末31のディスプレイを、受信した証明NFTを表示させて、証明NFTによる証明内容を確認することができる(ステップS98)。証明NFTによる証明内容は、第三者の参照可能とすることで、証明NFTによる証明内容を第三者に提示することもできる。
【0102】
ユーザが対象NFTを購入しようとしている者である場合、費用はかかるが、証明NFTを入手することで、安心して対象NFTを購入することができる。また、ユーザが対象NFTを販売しようとしている者である場合、証明NFTを付けて対象NFTを販売することで、対象NFTの信頼性が増し、高額での販売を期待することができる。
【0103】
なお、システム10は、認証局以外に、NFTの真贋を判定する企業又は個人、又は、他者のためにNFTの真贋を判定するサービスを提供する企業又は個人によって運用されてもよい。システム10は、例えば、オンラインのNFTマーケットプレイスにおいて利用されてもよい。マーケットプレイスシステムは、実施形態のシステム10を利用し、マーケットプレイスに出品されたNFTの真贋を判定し、出品されたNFTとともにその判定結果を、マーケットプレイスにおいて表示させることができる。これにより、マーケットプレイスの利用者は、判定結果を参考にして、NFTを安心して購入することができる。
【0104】
なお、NFTは、単にデジタルデータをNFT化したものに限られず、現実世界の物体に対応付けられていてもよい。現実世界の物体と、NFTとの対応付けは、例えば、システム10が、NFTと、現物世界の物体が有する識別子と、の対応を示すデータを有していることによって実現され得る。NFTと、現物世界の物体が有する識別子と、の対応付けは、例えば、NFTが、現物世界の物体が有する識別子を有することによって実現され得る。対象NFTが、現実世界の物体に対応付けられている場合、対象NFTの証明NFTは、対象NFTの真正の証明を通じて、現実世界の物体の真正の証明を実現する。
【0105】
本発明は、上記実施形態に限定されるものではなく、様々な変形が可能である。
【符号の説明】
【0106】
10 :システム
15 :ネットワーク
20 :ブロックチェーン
22A :第1コントラクトアドレス
22B :第2コントラクトアドレス
22C :コントラクトアドレス
22D :第3コントラクトアドレス
31 :端末
31A :プロセッサ
31B :記憶装置
31C :コンピュータプログラム
32 :端末
51 :サーバ
51A :プロセッサ
51B :記憶装置
51C :コンピュータプログラム
61 :正規デジタルコンテンツ(NFT構成データ)
62 :正規NFT
63 :正規デジタルコンテンツ(NFT構成データ)
64 :正規NFT
66 :正規NFT
71 :違法デジタルコンテンツ(NFT構成データ)
72 :偽物NFT(非正規NFT)
73 :違法デジタルコンテンツ(NFT構成データ)
74 :偽物NFT(非正規NFT)
80 :認証局
101 :第1データ
211 :証明NFT
212 :証明NFT
220 :証明データ
221 :証明対象NFTデータ
230 :取引記録
510 :取得器
520 :判定器
521 :照合器
523A :第1リスト(ホワイトリスト)
523B :第2リスト(ブラックリスト)
525 :分類モデル
530 :生成器
C1 :アーティスト・クリエータ
C2 :違法複製者