(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023007937
(43)【公開日】2023-01-19
(54)【発明の名称】管理システム及びノンファンジブルトークンの管理方法
(51)【国際特許分類】
G06Q 20/36 20120101AFI20230112BHJP
【FI】
G06Q20/36 310
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2021111094
(22)【出願日】2021-07-02
(71)【出願人】
【識別番号】518003096
【氏名又は名称】Bacoor dApps株式会社
(71)【出願人】
【識別番号】320003367
【氏名又は名称】株式会社AI商事
(74)【代理人】
【識別番号】100111567
【弁理士】
【氏名又は名称】坂本 寛
(72)【発明者】
【氏名】春名 幸雄
(72)【発明者】
【氏名】竹内 仁
【テーマコード(参考)】
5L055
【Fターム(参考)】
5L055AA00
(57)【要約】
【課題】ブロックチェーンに記録されるNFTのための有効期限を実現する。
【解決手段】開示の管理システムは、ブロックチェーンにおいて所有者が記録されるノンファンジブルトークンのための有効期限が経過したかどうかを判定する動作と、前記有効期限が経過したと判定すると、前記ブロックチェーンにおいて記録された前記所有者による前記ノンファンジブルトークンの利用を制限する動作と、を実行するよう構成されている。
【選択図】
図1
【特許請求の範囲】
【請求項1】
管理システムであって、
ブロックチェーンにおいて所有者が記録されるノンファンジブルトークンのための有効期限が経過したかどうかを判定する動作と、
前記有効期限が経過したと判定すると、前記ブロックチェーンにおいて記録された前記所有者による前記ノンファンジブルトークンの利用を制限する動作と、
を実行するよう構成されている、
管理システム。
【請求項2】
前記ノンファンジブルトークンの利用を制限する動作は、前記ノンファンジブルトークンの前記所有者の変更を前記ブロックチェーンに記録させることを含む
請求項1に記載の管理システム。
【請求項3】
前記ノンファンジブルトークンの利用を制限する動作は、前記ノンファンジブルトークンの前記所有者が他者に変更されるのを制限することを含む
請求項1に記載の管理システム。
【請求項4】
前記ノンファンジブルトークンの利用を制限する動作は、前記有効期限が経過する前においては前記ノンファンジブルトークンの前記所有者の端末に表示可能なデータが、前記端末に表示されるのを制限することを含む
請求項1から請求項3のいずれか1項に記載の管理システム。
【請求項5】
前記ブロックチェーンに実装されたスマートコントラクトを備え、
前記スマートコントラクトは、前記動作を、前記ブロックチェーンを構成する1又は複数のコンピュータに実行させるよう構成されている
請求項1から請求項4のいずれか1項に記載の管理システム。
【請求項6】
前記有効期限が経過したかどうかを判定する動作は、前記ノンファンジブルトークンが備える第1データに基づいて行われ、
前記第1データは、前記有効期限又は前記有効期限の起算日を示すデータを含む
請求項1から請求項5のいずれか1項に記載の管理システム。
【請求項7】
前記有効期限が経過したかどうかを判定する動作は、前記ノンファンジブルトークンに対応付けられた第2データに基づいて行われ、
前記第2データは、前記有効期限又は前記有効期限の起算日を示すデータを含む
請求項1から請求項6のいずれか1項に記載の管理システム。
【請求項8】
コンピュータによって実行される方法であって、
ブロックチェーンにおいて所有者が記録されるノンファンジブルトークンのための有効期限が経過したかどうかを判定し、
前記有効期限が経過したと判定すると、前記ブロックチェーンにおいて記録された前記所有者による前記ノンファンジブルトークンの利用を制限する
ことを備えるノンファンジブルトークンの管理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、管理システム及びノンファンジブルトークンの管理方法に関する。
【0002】
特許文献1は、対象物の管理のためにノンファンジブルトークンを操作する方法を開示している。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【0004】
ノンファンジブルトークン(非代替性トークン;Non-Fungible Token:NFT)は、ブロックチェーンに記録されるトークンの一種である。NFT化されたデータは、改ざんが困難であるため、証明書等のように記録の確実性が要求される場合に有利である。
【0005】
また、NFTは、ブロックチェーンにおいて、永久的に記録されることも、記録の保存性の観点から有利である。
【0006】
一方、本発明者らは、NFTに有効期限を設けるという着想を得た。例えば、一般的な電気製品の保証書、パスポートなどの証明書、又は商品引換券には、有効期限が存在することがある。したがって、電気製品の保証書、パスポートなどの証明書、又は商品引換券などのデジタルデータをNFTにした場合、そのNFTのための有効期限が存在するほうが好ましい。
【0007】
しかし、前述のように、NFTは、ブロックチェーンにおいて、永久的に記録される。したがって、ブロックチェーンに記録されるNFTのための有効期限を実現するための技術が望まれる。
【0008】
本開示のある側面は、管理システムである。開示の管理システムは、ブロックチェーンにおいて所有者が記録されるノンファンジブルトークンのための有効期限が経過したかどうかを判定する動作と、前記有効期限が経過したと判定すると、前記ブロックチェーンにおいて記録された前記所有者による前記ノンファンジブルトークンの利用を制限する動作と、を実行するよう構成されている。
【0009】
本開示の他の側面は、ノンファンジブルトークンを管理するためにコンピュータによって実行される方法である。開示の方法は、ブロックチェーンにおいて所有者が記録されるノンファンジブルトークンのための有効期限が経過したかどうかを判定し、前記有効期限が経過したと判定すると、前記ブロックチェーンにおいて記録された前記所有者による前記ノンファンジブルトークンの利用を制限することを備える。
【0010】
更なる詳細は、後述の実施形態として説明される。
【図面の簡単な説明】
【0011】
【
図2】
図2は、NFT用データの保存の仕方を示す図である。
【
図3】
図3は、NFT用データの表示の仕方を示す図である。
【
図4】
図4は、NFT管理処理のフローチャートである。
【
図5】
図5は、NFT利用制限処理の一例を示す図である。
【
図6】
図6は、NFTの利用のための送信を示す図である。
【
図7】
図7は、NFT利用制限処理の一例を示す図である。
【
図8】
図8は、NFT利用制限の前処理を示すフローチャートである。
【発明を実施するための形態】
【0012】
<1.管理システム及びノンファンジブルトークンの管理方法の概要>
【0013】
(1)実施形態に係る管理システムは、ブロックチェーンにおいて所有者が記録されるノンファンジブルトークンのための有効期限が経過したかどうかを判定する動作と、前記有効期限が経過したと判定すると、前記ブロックチェーンにおいて記録された前記所有者による前記ノンファンジブルトークンの利用を制限する動作と、を実行するよう構成されている。この場合、ノンファンジブルトークンのための有効期限が経過すると、ノンファンジブルトークンの利用が制限される。
【0014】
(2)前記ノンファンジブルトークンの利用を制限する動作は、前記ノンファンジブルトークンの前記所有者の変更を前記ブロックチェーンに記録させることを含むことができる。
【0015】
(3)前記ノンファンジブルトークンの利用を制限する動作は、前記ノンファンジブルトークンの前記所有者が他者に変更されるのを制限することを含むことができる。
【0016】
(4)前記ノンファンジブルトークンの利用を制限する動作は、前記有効期限が経過する前においては前記ノンファンジブルトークンの前記所有者の端末に表示可能なデータが、前記端末に表示されるのを制限することを含むことができる。
【0017】
(5)管理システムは、前記ブロックチェーンに実装されたスマートコントラクトを備えることができる。前記スマートコントラクトは、前記動作を、前記ブロックチェーンを構成する1又は複数のコンピュータに実行させるよう構成されているのが好ましい。
【0018】
(6)前記有効期限が経過したかどうかを判定する動作は、前記ノンファンジブルトークンが備える第1データに基づいて行われ、前記第1データは、前記有効期限又は前記有効期限の起算日を示すデータを含むのが好ましい。
【0019】
(7)前記有効期限が経過したかどうかを判定する動作は、前記ノンファンジブルトークンに対応付けられた第2データに基づいて行われ、前記第2データは、前記有効期限又は前記有効期限の起算日を示すデータを含むのが好ましい。
【0020】
(8)実施形態に係る方法は、コンピュータによって実行される。実施形態に係る方法は、ブロックチェーンにおいて所有者が記録されるノンファンジブルトークンのための有効期限が経過したかどうかを判定し、前記有効期限が経過したと判定すると、前記ブロックチェーンにおいて記録された前記所有者による前記ノンファンジブルトークンの利用を制限することを備える。
【0021】
<2.管理システム及びノンファンジブルトークンの管理方法の例>
【0022】
図1は、実施形態に係る管理システム10(以下、「システム10」という)の一例を示している。システム10は、ブロックチェーン11を用いてノンファンジブルトークン101(NFT101)等の管理をする。実施形態に係る管理システム10は、一例として、NFT101と、NFT101に対応付けられたNFT用データ13Aと、を管理する。
【0023】
NFT用データ13Aは、デジタルデータである。NFT用データ13Aとしてのデジタルデータは、画像データ、テキストデータ、音声データ、その他のデータ、又はそれらのデータの2以上の組み合わせである。NFT用データ13Aは、NFT101をディスプレイに表示させたときに、画面に現れるデータ(表示データ)を含む。NFT用データ13Aは、NFT101をディスプレイに表示させたときに、画面に現れないデータを含んでも良い。画面に現れないデータは、例えば、NFT用データ13Aの管理用のデータ(管理データ)である。実施形態に係るNFT用データ13Aは、後述の有効期限管理データ13Bを備えることができる。
【0024】
NFT用データ13Aは、例えば、様々な種類の証明書のデジタルデータである。証明書は、例えば、パスポート、運転免許証、卒業証書、資格証明書、保険者証、ワクチン接種記録証明書(ワクチンパスポート)、その他の公的証明書、工業製品その他の製品の保証書、農林水産物・食品その他の商品の産地・生産者・生産時期・生産方法その他の情報の証明書、美術品・宝石等の鑑定書、会員証、学生証、又は社員証である。
【0025】
NFT用データ13Aは、例えば、様々な種類の有価証券のデジタルデータであってもよい。有価証券は、例えば、チケットである。チケットは、例えば、イベントへの入場チケット、施設への入場チケット、乗物のチケット、その他のサービスの享受のためのチケット、商品との引き換えチケット、商品券、地域通貨、及び割引クーポンのいずれかである。イベントは、例えば、コンサート、映画、劇、展示会、博覧会、スポーツイベント、及びフェスティバルのいずれかである。施設は、例えば、遊園地、動物園、植物園、美術館、博物館、映画館、店舗、及び観光施設のいずれかである。乗物は、例えば、飛行機、船、列車、バス、及びタクシーのいずれかである。
【0026】
NFT用データ13Aは、データベース13に格納されている。データベース13は、一例として、インターネットなどのネットワーク15に接続されたファイルシステムによって構成されている。ファイルシステムは、ネットワーク15に接続された1つのコンピュータ又は複数のコンピュータを備える。データベース13は、一例として、IPFS(InterPlanetary File System)によって構成されている。IPFSは、P2P(Peer to Peer)分散ファイルシステムの一例である。なお、NFT用データ13Aは、NFT101自体が有していても良い。
【0027】
ファイルシステムを構成するデータベース13は、格納されたデータへの外部からのアクセスをコントロールする。例えば、データベース13は、NFT用データ13Aに対応付けられたNFT101の所有者からのアクセスである場合、その者が所有するNFT101に対応付けられたNFT用データ13Aへのアクセスを許可することができる。また、NFT用データ13Aに対応付けられたNFT101の所有者以外の者からのアクセスである場合、そのアクセスを拒否してもよい。すなわち、NFT用データ13Aは、NFT用データ13Aに対応する(1又は複数の)NFTの所有者の端末において表示されるが、NFT用データ13Aに対応するNFTの所有者以外の端末においては表示されない。なお、データベース13は、NFT用データ13Aに対応付けられたNFT101の所有者以外の第三者からのアクセスを許可してもよい。第三者からのアクセスを許可する場合、その許可は、限定的なものであってもよく、例えば、NFT用データを構成するデータに含まれる一部のデータへのアクセスは許可するが、他のデータへのアクセスは禁止してもよい。
【0028】
実施形態において、データベース13に保存されたNFT用データ13Aの表示データは、ユーザの端末30において表示され得る。NFT用データ13Aの表示データは、例えば、証明書又は有価証券の内容を示す画像データ又はテキストデータである。
【0029】
実施形態においては、NFT用データ13Aの管理のため、ブロックチェーン11が利用される。ブロックチェーン11は、複数のコンピュータが相互に接続されたP2P(Peer to Peer)のコンピュータネットワークシステムによって構成されている。
【0030】
ブロックチェーン11においては、ブロックチェーンアドレス間で、トークンの取引が可能であり、トークンの取引記録が、ブロックチェーン11の分散台帳に記録される。ブロックチェーンアドレスは、例えば、ブロックチェーン11のユーザアカウントを示す。例えば、あるユーザが、ブロックチェーン11にアカウント110を有している場合、そのアカウント110は、所定のブロックチェーンアドレス(ユーザアドレス;第1ブロックチェーンアドレス)を有する。
【0031】
ブロックチェーンアドレスは、例えば、0xZZZZZZZのように表記される。なお、Zは、それぞれ独立して、任意の数字又は記号であり、Zの桁数は、ブロックチェーンにおいて予め決められた数である。任意の数字又は記号は、例えば、16進数を示す0からFの文字である。
【0032】
ブロックチェーン11において取引可能なトークンとしては、ファンジブルトークン(代替性トークン;Fungible Token)と、ノンファンジブルトークン(非代替性トークン;Non-Fungible Token:NFT)と、がある。ファンジブルトークンは、例えば、イーサ(Ether)である。
【0033】
NFTは、そのようなファンジブルトークンとは異なり、代替性を有さないトークンである。非代替性の確保のため、NFTは、ブロックチェーン11において、他のNFTとの区別を可能にするための固有の識別子を有する。以下では、この識別子をNFT識別子という。NFT識別子は、「NFT_ID」と表記されることもある。
【0034】
実施形態においては、NFT用データ13Aは、ノンファンジブルトークン101に対応付けられている。すなわち、NFT用データ13Aは、NFT化されている。以下において、NFT101のNFT識別子(NFT_ID)は、「A」で表されるものとする。
【0035】
実施形態において、NFT用データ13AとNFT101との対応付けは、例えば、NFT用データ13Aを、対応するNFT101のNFT_ID:Aと対応付けて、データベース13に保存することによって実現されている。一つのNFT用データ13Aが、一つの対応するNFT101のNFT_ID:Aにだけ対応付けられている場合、NFT101とNFT用データ13Aとの1対1対応が実現される。実施形態においては、NFT101自体は、NFT用データ13Aに含まれるデータを有している必要がないため、ブロックチェーン11に記録されるNFT101のデータ量を少なくできる。この結果、ブロックチェーン11を利用するコストを低減できる。なお、NFT101は、NFT用データ13Aに含まれるデータの一部を有していても良い。
【0036】
なお、一つのNFT用データ13Aが、複数のNFT101のNFT_IDに対応付けられていてもよい。NFT用データ13Aが、座席指定のないイベント又は施設の入場チケットのデジタルデータである場合のように、複数のNFT用データ13Aそれぞれのデータが同一で良い場合には、一つのNFT用データ13Aが、複数のNFT101のNFT_IDに対応付けられていてもよい。
【0037】
NFT101は、その所有者(及び所有者履歴)が、ブロックチェーン11に記録される。したがって、NFT101の所有者は、集中管理の必要がなく、NFT101の所有者の管理及び確認が容易である。NFT101の所有者であることは、ブロックチェーン11の記録によって容易に証明可能である。
【0038】
NFT101の所有者であることの証明は、NFT用データ13Aの所有者であることの証明にもなっている。これは、NFT用データ13Aが、ブロックチェーン11において所有者が記録されるNFT101に対応付けられているためである、また、NFT用データ13AとNFT101とが1対1で対応付けられている場合、NFT101の所有者が変更されると、それに伴って、NFT用データ13Aの所有者も変更されることになる。つまり、実施形態においては、NFT用データ13Aは、NFT101の所有者変更に伴って、所有者変更が生じるようにNFT101に対応付けられていることになる。
【0039】
実施形態においては、ブロックチェーン11において記録されるNFT101の所有者の記録を、NFT用データ13Aの所有者の記録として用いることができるため、NFT用データ13A自体の所有者の管理(所有者の変更の管理を含む)を集中的に行う必要がなく、管理が容易である。また、NFT用データ13Aの取引のため、必要に応じて、NFT101を取引(第三者に販売・譲渡)することも可能である。
【0040】
実施形態においては、コンピュータネットワークシステムであるブロックチェーン11は、スマートコントラクト130を備える。スマートコントラクト130は、ブロックチェーンにおいて実行可能に実装されたソフトウェア(コンピュータプログラム)であり、所定のプロトコルを自動的に実行する。スマートコントラクト130は、ブロックチェーンアドレスであるコントラクトアドレス140を有する。スマートコントラクト130は、コントラクトアドレス140に格納されている。
【0041】
ブロックチェーン11には、ユーザ毎にユーザアカウント110が設けられる。ユーザアカウント110は、ブロックチェーンアドレス(第1ブロックチェーンアドレス)を有する。ブロックチェーン11においては、ユーザが所有するノンファンジブルトークン又はファンジブルトークンは、ユーザアカウントに対応付けて記録される。
【0042】
トークンがユーザアカウント(ブロックチェーンアドレス)に対応付けて記録されていることを、「トークンがユーザアカウント(ブロックチェーンアドレス)に格納されている」ということもできる。また、あるアカウント(ブロックチェーンアドレス)にトークンが格納されていることを、「アカウント(ブロックチェーンアドレス)がトークンを所有している」ということもできる。なお、コントラクトアドレスは、ブロックチェーンアドレスの1種である。
【0043】
図1においては、ユーザアカウント110には、NFT用データ13Aに対応付けられたNFT101が格納されている。つまり、
図1に示すNFT101の所有者は、ユーザアカウント110を持つユーザである。したがって、NFT101に対応付けられたNFT用データ13Aの所有者は、ユーザアカウント110を持つユーザである。
【0044】
実施形態において、ブロックチェーン11には、NFT101の回収用アカウント120が設けられる。回収用アカウント120は、利用が制限されたNFT101を受信するためのアカウントである。ここでは、利用が制限されたNFT101を「無効NFT」ともいう。回収用アカウント120は、ブロックチェーンアドレス(第2ブロックチェーンアドレス)を有する。ブロックチェーン11においては、回収用アカウント120は、例えば、システム10の管理者のためのアカウントとして設けられる。回収用アカウント120に送信されたNFTは、回収用アカウント120から取り出されることはない。したがって、回収用アカウント120に送信されたNFT(無効NFT)は、ブロックチェーン11において、事実上、取引不可となる。なお、回収用アカウント120は、回収専用である必要はない。例えば、回収用アカウント120は、スマートコントラクト130が格納されたコントラクトアドレス140であってもよい。
【0045】
実施形態に係るシステム10は、ブロックチェーン11外にある処理サーバ12を備え得る。処理サーバ12は、前述のスマートコントラクト130とともに、実施形態のシステム10を構成し得る。処理サーバ12は、インターネット等のネットワーク15に接続されている。処理サーバ12は、例えば、システム10の管理者によって運用される。
【0046】
処理サーバ12は、プロセッサ12A及びメモリ12Bを備えるコンピュータによって構成されている。処理サーバ12は、1つのコンピュータによって構成されてもよいし、ネットワーク15を介して接続された複数のコンピュータによって構成されてもよい。メモリ12Bは、プロセッサ12Aに接続されている。メモリ12Bは、例えば、一次記憶装置及び二次記憶装置を備える。一次記憶装置は、例えば、RAMである。二次記憶装置は、例えば、ハードディスクドライブ(HDD)又はソリッドステートドライブ(SSD)である。メモリ12Bは、プロセッサ12Aによって実行されるコンピュータプログラム12Cを備える。プロセッサ12Aは、メモリ12Bに格納されたコンピュータプログラム12Cを読み出して実行する。コンピュータプログラム12Cは、処理サーバ12として機能するコンピュータによって実行される命令を示すプログラムコードを有する。
【0047】
NFT101の所有者であるユーザは、ユーザ端末30を有する。ユーザ端末30は、例えば、スマートフォン又はタブレットなどのモバイルデバイスである。ユーザ端末30は、ネットワーク15に接続可能である。ユーザ端末30は、プロセッサ30A及びメモリ30Bを備えるコンピュータによって構成されている。メモリ30Bは、プロセッサ30Aに接続されている。メモリ30Bは、例えば、一次記憶装置及び二次記憶装置を備える。一次記憶装置は、例えば、RAMである。二次記憶装置は、例えば、ハードディスクドライブ(HDD)又はソリッドステートドライブ(SSD)である。メモリ30Bは、プロセッサ30Aによって実行されるコンピュータプログラム30Cを備える。プロセッサ30Aは、メモリ30Bに格納されたコンピュータプログラム30Cを読み出して実行する。コンピュータプログラム30Cは、ユーザ端末30として機能するコンピュータによって実行される命令を示すプログラムコードを有する。
【0048】
コンピュータプログラム30Cは、例えば、ブロックチェーン11のユーザアカウント110に格納されたトークンをユーザ端末30に表示させるためのウォレットアプリケーションプログラムである。ウォレットアプリケーションプログラムは、トークンの保管、トークンの送信、及びトークンの受信のためのユーザ操作を可能とする機能を提供する。
【0049】
コンピュータプログラム30Cは、ブロックチェーン11におけるユーザアカウント110に対応付けられたトークン(NFT又はファンジブルトークン)をユーザ端末30のディスプレイに表示させるためのプログラムコードを有する。コンピュータプログラム30Cは、NFT101を表示させる際には、NFT101に対応付けられたNFT用データ13Aを表示させる。
【0050】
ユーザの端末30には、そのユーザが所有者であるNFT101に対応付けられたデータ13Aは表示されるが、そのユーザが所有者ではないNFTに対応付けられたデータ13Bは表示されない。データベース13においてデータに対応付けられたNFTの所有者以外の端末におけるデータの表示を防止するため、データベース13は、データ13Aに対応付けられたNFT101の所有者からのデータ13Aへのアクセスは許可し、所有者以外からのデータ13Aへのアクセスは許可しないようにアクセスコントロールをするよう構成されている。なお、データベース13は、データ13Aに対応付けられたNFT101,102の所有者を、ブロックチェーン11を参照することで把握できる。
【0051】
図2は、NFT101に対応付けられたNFT用データ13Aを、NFT101の所有者であるユーザの端末30に表示させる方法の一例を示している。ユーザは、端末30を介して、処理サーバ12におけるユーザのアカウントへサインインする(ステップS201)。サインインは、例えば、端末30にインストールされたアプリケーションプログラムによって行われる。このサインインの際に、処理サーバ12は、ユーザ端末30から、ユーザのブロックチェーンアドレス(ブロックチェーンにおけるユーザアカウント)を取得することができる。
【0052】
ユーザのブロックチェーンアドレスを有している処理サーバ12は、ブロックチェーン11にアクセスし(ステップS202)、ブロックチェーン11において、ユーザが所有する1又は複数のNFTの記録11Bを参照し、ユーザが所有する1又は複数のNFTの情報120A(例えば、NFT_ID)を取得することができる(ステップS203)。
【0053】
処理サーバ12は、ユーザが所有するNFTを、そのユーザの端末30に表示させる場合、データベース13に格納されたNFT用データ13Aの参照のため、データベース13へアクセスする。すなわち、処理サーバ12は、NFT用データ13A参照のため、データベース13を呼び出す(ステップS204)。
【0054】
処理サーバ12は、ユーザが所有するNFT101に対応付けられたNFT用データ13Aを参照するため、ユーザのブロックチェーンアドレスをデータベース13へ送信する。ユーザのブロックチェーンアドレスを受信したデータベース13は、そのブロックチェーンアドレスで示されるユーザが所有するNFTを参照するため、ブロックチェーン11にアクセスする(ステップS205)。このアクセスにより、データベース13は、ユーザが所有するNFTのNFT_IDを取得する(ステップS206)。
【0055】
データベース13は、ユーザのブロックチェーンアドレスを用いた呼び出しを受けた場合、その呼び出しに対する応答として、そのユーザが所有するNFT101に対応付けられたNFT用データ13Aへのアクセスを許可する。すなわち、データベース13は、ブロックチェーン11において、そのユーザが所有するNFTのNFT_IDを参照し(ステップS205)、データベース13に格納されているNFT用データのうち、そのユーザが所有するNFT101のNFT_IDに対応付けられたNFT用データ13Aへのアクセスを許可する。
【0056】
以上の処理によって、処理サーバ12は、ユーザが所有する、NFT_ID:AであるNFT101に対応付けられたNFT用データ13Aを取得することができる。取得されたNFT用データ13Aは、ユーザ端末30における表示のため、ユーザ端末30へ送信される(ステップS207)。
【0057】
なお、NFT101とNFT用データ13Aとの対応付けは、例えば、NFT101が、NFT用データ13Aを示すURI(Uniform Resource Identifier)を有することで実現されてもよい。
【0058】
図3は、ユーザが所有するNFT101に対応付けられたNFT用データ13Aが、ユーザ端末30に表示された状態を示している。なお、ここでは、NFT用データ13Aは、デジタル証明書であるものとする。
【0059】
図3に示すように、ユーザのユーザアカウント110には、NFT101が格納されている。すなわち、NFT101は、ユーザアカウント(第1ブロックチェーンアドレス)において所有されている。
図3に示すように、そのユーザが有するユーザ端末30のディスプレイ31には、そのユーザのアカウント110に格納されたNFT101に関する画面33が表示される。
図3の画面33をNFT表示画面33という。
【0060】
NFT表示画面33は、NFT用データ13Aを表示するための画面である。NFT表示画面33には、NFT101とは別のNFT用データ13Aが有するデータのほか、NFT101自体が有するデータが表示されてもよい。NFT表示画面33には、ユーザ端末30が生成したデータも表示されてもよい。
【0061】
NFT用データ13Aは、そのNFT用データ13Aに対応付けられたNFT101(NFT_ID:AであるNFT101)の所有者としてブロックチェーン11に記録されているユーザによる参照が許可されるように、データベース13に保存されている。また、ユーザの端末30は、そのユーザが所有者であるNFT101(NFT_ID:AであるNFT101)のNFT用データ13Aを表示するよう構成されている。したがって、
図3に示すように、ユーザがNFT101を所有している場合、ユーザの端末30は、データベース13に保存されたNFT用データ13Aを参照することが可能であり、NFT用データ13Aが有するデータを、ディスプレイ31に表示できる。NFT用データ13Aがディスプレイ31に表示されることで、ユーザ、又は、端末30を見せられた者は、デジタル証明書などのNFT用データ13Aの存在及びその内容(証明事項、有効期限など)を確認できる。
【0062】
実施形態において、システム10は、NFT101のための有効期限を管理する動作(operation)を実行する。有効期限を管理することは、有効期限の判定と、NFT101の利用制限と、を含む。システム10は、有効期限が経過したことを判定すると、そのNFT101の利用を制限する。システム10において、NFT101のための有効期限が経過したかどうかの判定(以下、「有効期限判定」という)に用いられるデータは、NFT101自体に設定されていてもよいし、NFT101を操作するスマートコントラクト130に設定されていてもよいし、NFT用データ13Aに設定されていてもよい。また、NFT101のための有効期限は、処理サーバ12において設定されていてもよい。有効期限判定に用いられるデータは、ブロックチェーン11に記録されていてもよいし、ブロックチェーン11外に設定されていてもよい。有効期限判定に用いられるデータは、2以上の装置又はデータに分散して記録されていてもよい。このように、有効期限判定に用いられるデータが記録される場所は、特に限定されず、システム10のいずれかの場所でよい。
【0063】
有効期限判定に用いられるデータは、有効期限自体を示すデータであってもよいし、有効期限の計算に用いられるデータであってもよい。例えば、有効期限が2026年8月25日である場合、有効期限自体を示すデータは、「2026年8月25日」という日付を示すデータとして構成され得る。また、例えば、有効期限が、2021年8月25日から5年後までである場合、有効期限の計算に用いられるデータは、有効期限の起算日である「2021年8月25日」という日付を示すデータとして構成され得る。
【0064】
有効期限の起算日(例えば、2021年8月25日)と、有効期間(例えば、5年間)とは、同一の場所に設定されていてもよいし、分散して設定されていてもよい。例えば、有効期限の起算日(例えば、2021年8月25日)はNFT101に設定され、有効期間(例えば、5年間)は、スマートコントラクト130又は有効期限を計算する装置に設定されていてもよい。有効期限判定に用いられるデータは、有効期限判定をする装置によって参照可能に存在していればよい。
【0065】
図1では、一例として、NFT101は、有効期限判定に用いられるデータとして、有効期限管理データ101A(第1データ)を備える。有効期限管理データ101Aは、NFT101は、NFT_ID:Aとともに、NFT101を構成するデータとしてブロックチェーン11に記録されている。有効期限管理データ101Aが、ブロックチェーンに記録されていることで、有効期限管理データ101Aの真正が確実に担保される。
【0066】
図1に示す有効期限管理データ101Aは、発行日及び有効期限を備える。発行日は、例えば、NFT101がブロックチェーンにおいて発行された日である。発行日は、有効期限の起算日として用いられ得る。
図1に示す有効期限管理データ101Aでは、一例として、有効期限は、発行日である2021年8月25日の5年後である2026年8月25日に設定されている。
【0067】
なお、有効期限管理データ101Aに代えて又は加えて、NFT用データ13Aが、有効期限判定に用いられるデータとして、有効期限管理データ13B(第2データ)を備えてもよい。さらに、有効期限管理データ101A,13Bに代えて又は加えて、スマートコントラクト130が、有効期限判定に用いられるデータとして、有効期限管理データ130A(第3データ)を備えてもよい。
【0068】
以下では、有効期限を管理する動作を管理処理という。
図4は、NFT101の管理処理のフローチャートを示している。NFT101の管理処理は、一例として、スマートコントラクト130によって実行される。すなわち、スマートコントラクト130は、NFT101の管理処理のための命令を備える。なお、管理処理においては、1つのNFT101だけでなく、複数のNFT101が管理されてもよい。また、管理処理は、処理サーバ12によって行われても良いし、データベース13によって行われても良い。
【0069】
NFT101の管理処理は、NFT101の有効期限管理を含む。
図4に示す管理処理では、NFT101の有効期限判定がなされる(ステップS401)。有効期限判定では、NFT101の有効期限が経過したかどうかが判定される。有効期限判定では、一例として、スマートコントラクト130によって、NFT101の有効期限管理データ101Aが参照される。スマートコントラクト130は、有効期限管理データ101Aに基づいて、NFT101の有効期限が経過したかどうかを判定する。有効期限判定は、例えば、現在の日付を、有効期限と比較することで行われる。また、有効期限判定は、有効期限の起算日から有効期限を計算し、現在の日付を、計算された有効期限と比較することで行われても良い。
【0070】
有効期限が経過していると判定された場合、利用制限処理が実行される(ステップS402)。ステップS402の利用制限処理によって、有効期限が経過していると判定されたNFT101の利用が制限される。NFT101の利用を制限することは、例えば、NFT101の所有者を有しているユーザが、Xである場合に、そのNFT101の所有者を強制的に変更して、XをNFT101の非所有者とすることである。これにより、XはNFT101を所有していないことになる。この結果、Xは、NFT101の利用ができなくなる。
【0071】
また、NFT101の利用を制限することは、NFT101の所有者をXのまま変更せず、NFT101の所有者が他者に変更されるのを制限することであってもよい。NFT101の利用が、NFT101が他者のブロックチェーンアカウントに送信されることを前提とする場合、NFT101の所有者が他者に変更されるのが制限されると、NFT101の利用が制限されることになる。例えば、NFT101が取引可能であることにNFT101の価値が存在する場合、NFT101を取引不能にすることは、NFT101の利用の制限になり得る。
【0072】
また、NFT101の利用を制限することは、上記に限られず、NFT101の利用を他の方式で制限するものであってもよい。また、NFT101の利用を制限することは、有効期限が経過する前においてはNFT101の所有者であるユーザの端末30に表示可能なデータ(例えば、NFT用データ13A)が、端末30に表示されるのを制限することを含んでも良い。
【0073】
図5は、利用制限処理(ステップS402)の一例として、NFT101の所有者を強制的に変更する処理を示している。NFT101の所有者を変更する処理は、例えば、スマートコントラクト130を実行するコンピュータによって行われる。
図5では、有効期限が経過したNFT101の所有者は、NFT101の所有者であったユーザのアカウント111(第1ブロックチェーンアドレス)から、回収用アカウント(第2ブロックチェーンアドレス)に変更される(ステップS501)。すなわち、NFT101は、NFT101の所有者であったユーザのアカウント111(第1ブロックチェーンアドレス)から、回収用アカウント(第2ブロックチェーンアドレス)へ送信される(ステップS501)。NFT101の所有者変更はブロックチェーン11に記録される。
【0074】
NFT101の所有者が変更されることで、
図5に示すように、ユーザアカウント110には、NFT101が存在しなくなる。つまり、NFT101を所有していたユーザは、NFT101の所有者ではなくなる。この結果、
図5に示すように、そのユーザが有する端末30のディスプレイ31に表示されるNFT表示画面33においては、NFT用データ13A(デジタル証明書)が表示されなくなる。これは、NFT用データ13Aが格納されたデータベース13は、NFT用データ13Aに対応付けられたNFT101の所有者以外の者からの参照を許可しないからである。
【0075】
NFT101の所有者が変更されることで、例えば、ディスプレイ31には、デジタル証明書を所有していないことを示す「証明書なし」の文字が表示される。また、NFT101を所有していたユーザは、NFT101の所有者ではなくなることで、デジタル証明書であるNFT用データ13Aの所有者でもなくなる。このように、NFT101の有効期限が経過すると、ユーザは、その端末30にデジタル証明書(NFT用データ13A)を表示させることができなくなる。
【0076】
NFT101の所有者の変更の有無にかかわらず、データベース13には、NFT101に対応付けられたNFT用データ13Aが存在する。しかし、データベース13は、NFT101の所有者以外からのNFT用データ13Aへのアクセスを許可しないため、ユーザが、NFT101の所有者でなくなることで、ユーザ端末30には、NFT用データ13A(デジタル証明書)が表示されなくなる。
【0077】
ここで、データベース13においては、NFT用データ13Aの所有者の変更は記録される必要はない。例えば、データベース13において、NFT用データ13Aは、所有者の変更の前後において、そのデータ内容に変化がなくてもよい。実施形態に係るシステム10において、NFT用データ13Aの所有者であることは、NFT用データ13Aに対応付けられたNFT101を所有していることによって示されるため、ユーザは、NFT101の所有者でなくなることに連動して、NFT用データ13Aの所有者でなくなる。
【0078】
実施形態においては、一例として、NFT101の有効期限前においては、ユーザ端末30にNFT用データが表示されるが、有効期限が経過すると、ユーザ端末30にはNFT用データ13Aが表示されなくなる。したがって、デジタル証明書などのNFT用データ13Aのユーザによる利用が、不可能になる。
【0079】
しかも、実施形態に係るシステム10では、NFT用データ13Aに対応付けられたNFT101を用いることで、デジタル証明書などのNFT用データ13Aの所有者の変更及び記録をブロックチェーン11に委ねることができる。
【0080】
図6は、NFT101の利用の一態様として、NFT101の送信を示す図である。
【0081】
図6では、一例として、ユーザが所有するNFT101に対応付けられたNFT用データ13Aは、デジタル商品券である。有効期限前において、ユーザのユーザアカウント110には、NFT101が格納されている。したがって、有効期限前において、デジタル商品券としてのNFT用データ13Aは、ユーザ端末30に表示される。
【0082】
デジタル商品券を商品に交換したり、あるいは他者へ譲渡したりする場合、NFT101が、ユーザアカウント110から他のアカウント150へ送信される。例えば、デジタル商品券を商品に交換する場合、ユーザ操作によって、NFT101は、ユーザアカウント110から、その商品の販売者のアカウント150へ送信される(ステップS601)。また、ユーザがデジタル商品券を他者へ譲渡する場合、NFT101は、ユーザアカウント110から、デジタル商品券の譲受人のアカウント150へ送信される(ステップS601)。このように、ユーザの意思に基づいて、NFT101を送信することで、デジタル商品券の使用又は譲渡等が可能である。すなわち、NFT101のユーザによる利用が可能である。このようなNFT101の所有者変更は、ユーザが端末30に表示された送信ボタン33Aを押すなどの操作することに基づいて行われ、ブロックチェーン11に記録される。
【0083】
図7は、
図6に示すようなNFT101の送信を禁止することで、NFT101の利用を制限する例を示している。すなわち、
図7は、利用制限処理(ステップS402)の一例として、NFT101の送信を制限することを示している。NFT101の送信の制限は、例えば、ブロックチェーン11に記録される。NFT101の送信の制限がブロックチェーン11に記録されることで、NFT101の送信(NFT101の所有者の変更)がブロックチェーン11に記録されることが防止される。したがって、NFT101の送信ができなくなる。なお、
図7では、NFT101が送信できなくなることは、NFT101に記録されるが、NFT101が送信禁止であることは、NFT101に対応付けてブロックチェーン11に記録されていれば足りる。
【0084】
NFT101の送信を制限する処理は、例えば、スマートコントラクト130を実行するコンピュータによって行われる(ステップS701)。NFT101の送信を制限する処理は、例えば、処理サーバ12によって行われても良い(ステップS702)。NFT101の送信が制限されることで、NFT101の送信を伴うNFT101の利用が制限される。
【0085】
図8は、NFT101の利用制限処理(ステップS402)の前処理を示している。NFT101の利用制限処理は、NFT101の機能を実質的に失わせることがあるため、利用制限処理の実行に、NFT101の所有者又はNFT101の取得予定者による事前許諾を必要とするように、システム10が構成されているのが好ましい。例えば、利用制限がされる可能性があるNFT101について、利用制限がなされることの許諾が、ブロックチェーンに記録されている場合に、利用制限処理が実行可能となるのが好ましい。利用制限がなされることの許諾が、ブロックチェーン11に記録されていない場合、利用制限処理が実行されず、無許諾の利用制限を防止できる。利用制限の許諾の記録は、利用制限の対象となるNFT101の識別子(NFT_ID)を含むことができる。また、利用制限の許諾は、NFT101自体に含まれるように記録されてもよい。
【0086】
利用制限処理の前処理は、例えば、スマートコントラクト130によって実行される。前処理は、処理サーバ12によって行われても良い。
【0087】
利用制限の許諾は、例えば、ユーザがNFT101を取得する際に、その取得の条件として、利用制限の許諾をユーザが行うようにすればよい。例えば、システム10が、
図3に示すデジタル証明書に対応付けられたNFT101をユーザへ送信する前に、利用制限の許諾をユーザに対して求める(ステップS801)。利用制限の内容は、例えば、NFT101の強制送信である。
【0088】
ユーザが許諾する操作を行った場合(ステップS802)に限り、システム10は、デジタル証明書に対応付けられたNFT101をユーザに送信することができる。システム10は、ユーザによる許諾をブロックチェーン11に記録する(ステップS802)。許諾の記録は、強制送信などの利用制限を行うことができる権限を有するアカウントを含むことができる。強制送信を行うことができる権限を有するアカウントは、例えば、利用制限としてNFT101の送信を行うスマートコントラクト130のコントラクトアドレスである。
【0089】
許諾をすることで、ユーザは、NFT101を受信し、NFT101を受信したユーザは、NFT101及びNFT101に対応付けられたデジタル証明書の所有者になる。NFT101の有効期限が経過すると、利用制限許諾に基づき、利用制限としてNFT101が回収用アカウント120へ送信される。
【0090】
例えば、利用制限処理を実行するスマートコントラクト130は、利用制限処理を実行する前に、ブロックチェーン11に記録された許諾の有無を確認し、ユーザによる利用制限の許諾がブロックチェーン11に記録されている場合に、利用制限処理を実行することできる。許諾の記録が、利用制限を行うことができる権限を有するアカウント(コントラクトアドレス140)を含む場合、許諾の記録に含まれるアカウント(コントラクトアドレス140)に限り、利用制限処理を実行できる。例えば、許諾の記録が、利用制限を行うことができる権限を有するアカウントが、スマートコントラクト130のコントラクトアドレス140である場合、スマートコントラクト130だけが利用制限処理を実行できる。これにより、不適切な利用制限処理の実行を防止できる。
【0091】
利用制限の許諾は、例えば、ユーザがNFT101を取得する際に、その取得の条件としてなされるのが好ましい。例えば、システム10が、
図3に示すデジタル証明書に対応付けられたNFT101をユーザへ送信する前に、利用制限の許諾をユーザに対して求める(ステップS801)。ユーザが許諾する操作を行った場合(ステップS802)に限り、システム10は、デジタル証明書に対応付けられたNFT101をユーザに送信することができる。システム10は、ユーザによる許諾をブロックチェーン11に記録する(ステップS802)。この場合、NFT101を受信したユーザは、NFT101に対応付けられたデジタル証明書の所有者になるが、有効期限が経過すると、利用制限許諾に基づき、利用制限としてNFT101が回収用アカウント120へ送信される。
【0092】
また、システム10が、
図6に示すデジタル商品券に対応付けられたNFT101をユーザへ送信する前に、利用制限の許諾をユーザに対して求める(ステップS801)。ユーザが許諾する操作を行った場合(ステップS802)に限り、システム10は、デジタル商品券に対応付けられたNFT101をユーザに送信することができる。この場合、NFT101を受信したユーザは、NFT101に対応付けられたデジタル商品券の所有者になるが、有効期限が経過すると、利用制限許諾に基づき、利用制限としてNFT101の送信が禁止される。
【0093】
本発明は、上記実施形態に限定されるものではなく、様々な変形が可能である。
【符号の説明】
【0094】
10 :管理システム
11 :ブロックチェーン
11B :記録
12 :処理サーバ
12A :プロセッサ
12B :メモリ
12C :コンピュータプログラム
13 :データベース
13A :NFT用データ
13B :有効期限管理データ
15 :ネットワーク
30 :ユーザ端末
30A :プロセッサ
30B :メモリ
30C :コンピュータプログラム
31 :ディスプレイ
33 :NFT表示画面
33A :送信ボタン
101 :ノンファンジブルトークン
101A :有効期限管理データ
110 :ユーザアカウント
120 :回収用アカウント
120A :情報
130 :スマートコントラクト
140 :コントラクトアドレス
150 :アカウント