(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024040523
(43)【公開日】2024-03-25
(54)【発明の名称】対象物を管理する方法、スマートコントラクト、及び管理装置
(51)【国際特許分類】
G06Q 20/12 20120101AFI20240315BHJP
G06Q 50/10 20120101ALI20240315BHJP
【FI】
G06Q20/12
G06Q50/10
【審査請求】有
【請求項の数】1
【出願形態】OL
(21)【出願番号】P 2024022441
(22)【出願日】2024-02-16
(62)【分割の表示】P 2023052991の分割
【原出願日】2020-04-09
(31)【優先権主張番号】P 2019220303
(32)【優先日】2019-12-05
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】518003096
【氏名又は名称】Bacoor dApps株式会社
(74)【代理人】
【識別番号】100111567
【弁理士】
【氏名又は名称】坂本 寛
(72)【発明者】
【氏名】春名 幸雄
(57)【要約】
【課題】ノンファンジブルトークン(非代替性トークン;Non-Fungible Token:NFT)と、ノンファンジブルトークン以外の対象物と、を対応付けて管理する。
【解決手段】開示の対象物を管理する方法は、ブロックチェーンに実装されたスマートコントラクトが、ノンファンジブルトークンに対する操作を実行することを備える。前記ノンファンジブルトークンは、前記対象物に付与されたコードに含まれる識別子によって識別される。
【選択図】
図1
【特許請求の範囲】
【請求項1】
対象物を管理する方法であって、
ブロックチェーンに実装されたスマートコントラクトが、前記対象物に付与されたコードに含まれる識別子によって識別されるノンファンジブルトークンに対する操作を実行することを備える、
対象物を管理する方法。
【請求項2】
前記ノンファンジブルトークンに対する前記操作は、前記ノンファンジブルトークンの所有者変更のための操作を含む
請求項1に記載の方法。
【請求項3】
前記ノンファンジブルトークンに対する前記操作は、前記スマートコントラクトが、前記ノンファンジブルトークンの所有者から、前記ノンファンジブルトークンを預かることを含む
請求項1又は請求項2に記載の方法。
【請求項4】
前記ノンファンジブルトークンに対する前記操作は、前記スマートコントラクトが預かった前記ノンファンジブルトークンのために設定されたパスワードを、前記スマートコントラクトが記憶することを更に含む
請求項3に記載の方法。
【請求項5】
前記ノンファンジブルトークンに対する前記操作は、前記スマートコントラクトが、前記パスワードを入力したユーザを、前記スマートコントラクトが預かった前記ノンファンジブルトークンの新たな所有者にすることを更に含む
請求項4に記載の方法。
【請求項6】
前記ノンファンジブルトークンに対する前記操作が実行された場合、前記スマートコントラクトは、前記ノンファンジブルトークンに対応付けられた権利者へ、前記ブロックチェーンにおける暗号資産を支払う操作を実行することを更に備える
請求項5に記載の方法。
【請求項7】
管理装置が、前記対象物に付与された前記コードに含まれる前記識別子を取得し、前記識別子によって識別される前記ノンファンジブルトークンに対する操作を実行させるために、ネットワークを介して、前記スマートコントラクトを呼び出すことを更に備える
請求項1から請求項6のいずれか1項に記載の方法。
【請求項8】
ブロックチェーンに実装されたスマートコントラクトであって、
管理の対象物に付与されたコードに含まれる識別子を取得し、前記識別子によって識別されるノンファンジブルトークンに対する操作を実行するよう構成されている
スマートコントラクト。
【請求項9】
前記ノンファンジブルトークンに対する前記操作は、前記ノンファンジブルトークンの所有者変更のための操作を含む
請求項8に記載のスマートコントラクト。
【請求項10】
前記ノンファンジブルトークンに対する前記操作は、前記ノンファンジブルトークンの所有者から、前記ノンファンジブルトークンを預かることを含む
請求項8又は請求項9に記載のスマートコントラクト。
【請求項11】
前記ノンファンジブルトークンに対する前記操作は、前記スマートコントラクトが預かった前記ノンファンジブルトークンのために設定されたパスワードを記憶することを更に含む
請求項10に記載のスマートコントラクト。
【請求項12】
前記ノンファンジブルトークンに対する前記操作は、前記スマートコントラクトが、前記パスワードを入力したユーザを、前記スマートコントラクトが預かった前記ノンファンジブルトークンの新たな所有者にすることを更に含む
請求項11に記載のスマートコントラクト。
【請求項13】
前記ノンファンジブルトークンに対する前記操作が実行された場合、前記ノンファンジブルトークンに対応付けられた権利者へ、前記ブロックチェーンにおける暗号資産を支払う操作を更に実行するよう構成されている
請求項12に記載のスマートコントラクト。
【請求項14】
対象物の管理装置であって、
前記対象物に付与されたコードに含まれる識別子を取得し、前記識別子によって識別されるノンファンジブルトークンに対する操作を実行させるために、ネットワークを介して、ブロックチェーンに実装されたスマートコントラクトを呼び出すことを含む処理を実行するよう構成されている
管理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、対象物を管理する方法、スマートコントラクト、及び管理装置に関する。
【背景技術】
【0002】
特許文献1は、2次元コードに含まれるURLによってチケット所有権登録サイトを呼び出すことを開示している。
【0003】
特許文献2は、コントラクト及びコントラクトアドレスの情報を含む2次元コードを開示している。特許文献2においては、端末装置220が、2次元コードに含まれるコントラクトアドレスを用いて、スマートコントラクトへアクセスすることを開示している。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2019-185510号公報
【特許文献2】特開2018-36893号公報
【特許文献3】特開2005-100235号公報
【特許文献4】特開2019-160316号公報
【発明の概要】
【0005】
本発明者は、ノンファンジブルトークン(非代替性トークン;Non-Fungible Token:NFT)と、ノンファンジブルトークン以外の対象物と、を対応付けて管理するという着想を得た。特許文献1及び特許文献2のいずれも、そのような着想を開示していない。本開示は、ノンファンジブルトークンとノンファンジブルトークン以外の対象物と、を対応付けて管理するための新たな技術的手法を提供する。
【0006】
本開示のある側面は、対象物を管理する方法である。開示の方法は、前記対象物に付与されたコードに含まれる識別子によって識別されるブロックチェーンに実装されたスマートコントラクトが、ノンファンジブルトークンに対する操作を実行することを備える。
【0007】
本開示の他の側面は、スマートコントラクトである。開示のスマートコントラクトは、前記対象物に付与されたコードに含まれる識別子を取得し、前記識別子によって識別されるノンファンジブルトークンに対する操作を実行するよう構成されている。
【0008】
本開示の他の側面は、対象物の管理装置である。開示の管理装置は、前記対象物に付与されたコードに含まれる識別子を取得し、前記識別子によって識別されるノンファンジブルトークンに対する操作を実行させるために、ネットワークを介して、ブロックチェーンに実装されたスマートコントラクトを呼び出すことを含む処理を実行するよう構成されている。
【0009】
更なる詳細は、後述の実施形態として説明される。
【図面の簡単な説明】
【0010】
【
図1】
図1は、管理サーバによるカードの売買管理の説明図である。
【
図3】
図3は、所有権の登録手順を示すフローチャートである。
【
図4】
図4は、所有権の二次販売手順を示すフローチャートである。
【
図5】
図5は、所有権の購入手順を示すフローチャートである。
【
図6】
図6は、所有者履歴の参照手順を示すフローチャートである。
【発明を実施するための形態】
【0011】
<1.対象物を管理する方法、スマートコントラクト、及び管理装置の概要>
【0012】
(1)実施形態に係る対象物を管理する方法は、ブロックチェーンに実装されたスマートコントラクトが、ノンファンジブルトークンに対する操作を実行することを備える。前記ノンファンジブルトークンは、前記対象物に付与されたコードに含まれる識別子によって識別される。対象物は、ノンファンジブルトークンとは別のものであれば足り、特に限定されない。対象物は、例えば、有体物又はデジタルデータなどの無体物である。
【0013】
ブロックチェーンは、P2Pのコンピュータネットワークによって構成され、例えば、Ethereum(イーサリアム)である。イーサリアムは、分散型アプリケーション及びスマートコントラクトを構築するためのプラットフォームとして機能する。
【0014】
イーサリアムで使用される暗号資産(仮想通貨)をイーサ(Ether)という。イーサは、代金の支払い等に使用でき、法定通貨と相互に交換できるなど、通貨としての性質を有する。イーサは、法定通貨と同様に代替性(fungible;ファンジブル)を有するため、イーサは、ファンジブルトークンとも呼ばれる。
【0015】
ブロックチェーンにおいて取引可能なトークンとしては、ファンジブルトークンの他に、前述のノンファンジブルトークン(NFT)がある。NFTは、ファンジブルトークンとは異なり、代替性を有さないトークンである。NFTは、他のトークンとは価値が異なることがある。NFTは、例えば、コンピュータゲームにおいて取引されるデジタルアセットとして発行される。NFTは、他のNFTと区別される独自の価値を有することがある。このため、NFTは、他のNFTとの区別を可能にするための固有の識別子(NFT-ID)を有する。なお、イーサのようなファンジブルトークンは、他のファンジブルトークンと価値が同じであり、区別されることを要しないため、NFT-IDのような識別子を有しない。
【0016】
NFTは、ファンジブルトークンと同様に、ブロックチェーン上において取引可能である。NFTの取引履歴は、ブロックチェーンにおいて記録される。ブロックチェーンにおいては、NFTの所有者及び所有者履歴も記録される。
【0017】
NFTは、例えば、Ethereum Request for Comments(ERC)721規格に従って発行されたトークンである。ERC721規格に準拠したNFTを、NFT-721トークンと呼ぶ。
【0018】
スマートコントラクトは、ブロックチェーンに実装されており、契約などのプロトコルを自動的に実行する。スマートコントラクトの履行履歴は、P2Pネットワークによって構成されたブロックチェーンに記録される。このため、スマートコントラクトを利用すると、契約の透明性を確保することができる。
【0019】
対象物の管理は、例えば、対象物の売買(取引)に伴うノンファンジブルトークンの所有者の変更の管理である。対象物の管理は、所有者変更の管理に限られず、スマートコントラクトによるノンファンジブルトークンの操作によって実現可能な様々な管理を含む。
【0020】
対象物の管理に際して、取引の主たる目的物(取引の客体)は、対象物であってもよいし、ノンファンジブルトークンであってもよい。例えば、取引の主たる目的物が対象物であり、取引の従たる目的物がノンファンジブルトークンであってもよい。この場合、対象物の取引の確実化のため、ノンファンジブルトークンが操作される。
【0021】
逆に、対象物の管理に際して、取引の主たる目的物がノンファンジブルトークンであり、取引の従たる目的物が対象物であってもよい。この場合、ノンファンジブルトークンの取引を円滑化するために、対象物が取引される。そして、対象物の取引に伴い、ノンファンジブルトークンが操作される。
【0022】
実施形態において、スマートコントラクトによって操作されるノンファンジブルトークンは、対象物に付与されたコードに含まれる識別子によって識別される。対象物に付与されたコードに識別子が含まれていることで、対象物とノンファンジブルトークンとの対応付けが実現される。識別子は、例えば、スマートコントラクトの呼び出しに用いられる。より具体的には、識別子は、スマートコントラクトの呼び出しの際に、スマートコントラクトに与えられる。コードは、機械が読み取り可能な形式であるのが好ましく、例えば、一次元コード又は二次元コードである。コードは、人間も読み取り可能な記号又図形によって構成されていてもよい。コードは、識別子以外の他のデータを含んでもよい。他のデータは、例えば、後述の管理サーバへアクセスするためのドメインである。
【0023】
対象物へのコードの付与は、例えば、対象物へコードを物理的に付けることである。物理的に付けることは、例えば、印刷、貼り付け、又は刻印である。対象物へのコードの付与は、コードが対象物に付与されていることが客観的に明らかであれば、コードが、対象物と物理的に一体になっている必要はない。例えば、コードが、対象物であるデジタル画像中に表示されていてもよい。
【0024】
(2)前記ノンファンジブルトークンに対する前記操作は、前記ノンファンジブルトークンの所有者変更のための操作を含むことができる。この場合、対象物の所有者の変更があった場合、スマートコントラクトは、対象物に対応付けられたノンファンジブルトークンの所有者を変更できる。
【0025】
(3)前記ノンファンジブルトークンに対する前記操作は、前記スマートコントラクトが、前記ノンファンジブルトークンの所有者から、前記ノンファンジブルトークンを預かることを含むことができる。この場合、ノンファンジブルトークンの所有者は、ノンファンジブルトークンをスマートコントラクトに預けることができる。
【0026】
(4)前記ノンファンジブルトークンに対する前記操作は、前記スマートコントラクトが預かった前記ノンファンジブルトークンのために設定されたパスワードを、前記スマートコントラクトが記憶することを更に含むことができる。この場合、スマートコントラクトが預かったノンファンジブルトークンのために、パスワードが設定される。
【0027】
(5)前記ノンファンジブルトークンに対する前記操作は、前記スマートコントラクトが、前記パスワードを入力したユーザを、前記スマートコントラクトが預かった前記ノンファンジブルトークンの新たな所有者にすることを更に含むことができる。この場合、パスワードを入力したユーザが、ノンファンジブルトークンの新たな所有者になれる。
【0028】
(6)前記ノンファンジブルトークンに対する前記操作が実行された場合、前記スマートコントラクトは、前記ノンファンジブルトークンに対応付けられた権利者へ、前記ブロックチェーンにおける暗号資産を支払う操作を実行することを更に備えることができる。この場合、権利者は、利益を受けることができる。権利者は、例えば、対象物又はノンファンジブルトークンに関する著作権者であり、利益は、例えば、著作権料である。
【0029】
(7)実施形態に係る方法は、管理装置が、前記対象物に付与された前記コードに含まれる前記識別子を取得し、前記識別子によって識別される前記ノンファンジブルトークンに対する操作を実行させるために、ネットワークを介して、前記スマートコントラクトを呼び出すことを更に備えることができる。
【0030】
(8)実施形態に係るスマートコントラクトは、ブロックチェーンに実装されている。スマートコントラクトは、前記対象物に付与されたコードに含まれる識別子を取得し、前記識別子によって識別されるノンファンジブルトークンに対する操作を実行するよう構成されている。
【0031】
(9)前記ノンファンジブルトークンに対する前記操作は、前記ノンファンジブルトークンの所有者変更のための操作を含むことができる。
【0032】
(10)前記ノンファンジブルトークンに対する前記操作は、前記ノンファンジブルトークンの所有者から、前記ノンファンジブルトークンを預かることを含むことができる。
【0033】
(11)前記ノンファンジブルトークンに対する前記操作は、前記スマートコントラクトが預かった前記ノンファンジブルトークンのために設定されたパスワードを記憶することを更に含むことができる。
【0034】
(12)前記ノンファンジブルトークンに対する前記操作は、前記スマートコントラクトが、前記パスワードを入力したユーザを、前記スマートコントラクトが預かった前記ノンファンジブルトークンの新たな所有者にすることを更に含むことができる。
【0035】
(13)前記スマートコントラクトは、前記ノンファンジブルトークンに対する前記操作が実行された場合、前記ノンファンジブルトークンに対応付けられた権利者へ、前記ブロックチェーンにおける暗号資産を支払う操作を実行するよう構成されていてもよい。
【0036】
(14)実施形態に係る対象物の管理装置は、前記対象物に付与されたコードに含まれる識別子を取得し、前記識別子によって識別されるノンファンジブルトークンに対する操作を実行させるために、ネットワークを介して、ブロックチェーンに実装された前記スマートコントラクトを呼び出すことを含む処理を実行するよう構成されている。
【0037】
<2.対象物を管理する方法、スマートコントラクト、及び管理装置の概要の例>
【0038】
図1は、対象物40の売買に伴う管理サーバ10の処理の概要を示している。管理サーバ10は、インターネット上に設けられている。管理サーバ10は、メモリとメモリに接続されたプロセッサとを備えるコンピュータによって構成される。管理サーバ10は、ネットワークアクセスのためのインターフェースを備える。メモリには、コンピュータを、実施形態の管理サーバ10として動作させるためのコンピュータプログラムが格納されている。プロセッサは、メモリに格納されたコンピュータプログラムを実行する。管理サーバ10は、ユーザの端末31,32における表示を制御し、端末31,32へのユーザ操作を受け付けることができる。端末31,32は、ネットワークを介して、管理サーバ10及び後述のスマートコントラクトにアクセス可能である。
【0039】
実施形態において、管理サーバ10は、対象物の管理に用いられる管理装置である。なお、端末31,32それぞれが、管理サーバ10としての機能(後述のスマートコントラクトの呼び出し機能など)を有する場合には、端末31,32それぞれが、管理装置としても機能することができる。端末31,32が管理サーバ10の機能をも有する場合には、管理サーバ10を省略してもよい。
【0040】
実施形態においては、対象物40は、一例として、有体物であるトレーディングカード(以下、「カード40」という)である。カード40は、現物であり、容易に取引可能である。例えば、カード40は、オンラインマーケット50で、取引される。オンラインマーケット50は、例えば、個人間(CtoC)取引のためのフリーマーケットである。オンラインマーケット50は、ユーザ端末31,32にインストールされたオンラインマーケットアプリケーションによって利用可能である。オンラインマーケット50では、売り手であるユーザが出品した商品であるカード40を、買い手である他のユーザが購入することができる。
【0041】
購入のための支払は、例えばクレジットカードなどを利用して、法定通貨によって行うことができる。オンラインマーケット50にて、カード40の売買が成立すると、カード40は、売り手であるユーザから、買い手であるユーザへ送られる。カード40は有体物であるため、買い手へのカード40の引き渡しは、現実世界におけるカード40の占有の移転として行われる。対象物40は、ブロックチェーンにおいて取引可能である必要がないため、ブロックチェーンに馴染みがない者であっても、取引が容易である。
【0042】
図2に示すように、実施形態のカード40には、コード41が付与されている。ここでのコード41は、一例として、2次元コード41である。実施形態において、2次元コード41は、管理サーバ10へのネットワークアクセスのためにURLを表すよう構成されている。2次元コード41は、ユーザの端末31,32が有する2次元コードスキャナー機能によってスキャンされる。端末31,32は、例えば、カメラを有するスマートフォンである。2次元コードスキャナー機能は、端末31,32にインストールされたアプリケーションが有している。
【0043】
実施形態においては、対象物であるカード40の管理のために、ノンファンジブルトークン70(NFT70)が用いられる。複数の対象物40が管理される場合、複数の対象物40それぞれに異なるNFT70が対応付けられる。NFT70は、固有の識別子(NFT_ID)を有している。NFT70は、例えば、NFT-721トークンである。以下では、NFT70は、NFT-721トークンであるものとして説明する。
【0044】
NFTは、イーサリアムネットワークにおいて取引される暗号資産であるイーサ(Ether)と同様に、イーサリアムネットワークにおいて取引可能である。イーサリアムは、Peer to Peer(P2P)ネットワーク上のブロックチェーンネットワークである。
【0045】
NFT70の取引などのNFT70に対する操作は、イーサリアムネットワークなどのブロックチェーン上に構築されたスマートコントラクト20によって実行される。スマートコントラクト20は、ブロックチェーン上に書き込まれたコンピュータプログラムである。スマートコントラクト20は、コンピュータプログラムが、ブロックチェーンを構成するコンピュータネットワークに実装されることで構成される。コンピュータプログラムがブロックチェーンを構成するコンピュータネットワークにおいて実行されることで、スマートコントラクトの動作が行われる。スマートコントラクト20は、ブロックチェーンにおけるアドレス(コントラクトアドレス)を有する。スマートコントラクト20は、コントラクトアドレスに格納されている。本実施形態では、スマートコントラクト20は、インターネット等のネットワークを介して、管理サーバ10によって呼び出され、実行される。スマートコントラクトの履行履歴は、イーサリアムなどのブロックチェーンに記録される。なお、スマートコントラクト20は、端末31,32によって呼び出されてもよい。
【0046】
実施形態においては、カード40にはNFT70が対応付けられている。カード40とNFT70とを一対一で対応付けるため、カード40に付与された2次元コード41が表すデータ(URL)には、NFT70の識別子(NFT_ID)が含まれている。NFT70の識別子(NFT_ID)は、NFT70に対応付けられたカード40に付与された2次元コード41によって表されるURLに含まれる。つまり、カード40に付与されたURLは、管理サーバ10のドメインと、NFT70の識別子(NFT_ID)と、を含む。つまり、URLは、管理サーバ10が、NFT70の操作のためのスマートコントラクト20を呼び出すために用いられるデータを含む。なお、管理サーバ10が省略される場合、2次元コード41によって表されるデータから管理サーバ10のドメインを省略してもよい。また、管理サーバ10が用いられる場合であっても、2次元コード41を読み取る端末31,32が、管理サーバ10のドメインを予め把握している場合には、2次元コード41によって表されるデータから管理サーバ10のドメインを省略してもよい。
【0047】
実施形態においては、URLは、NFT_IDのほか、NFT70のイーサリアム上でのアドレス、NFTのID、及び、スマートコントラクト20の呼び出しのための手数料(イーサリアムにおけるGas)の支払い元となるイーサリアムアドレスの秘密鍵を含むことができる。
【0048】
カード40に付与されたURLを用いたネットワークアクセスを管理サーバ10が受け付けると、管理サーバ10は、そのURLに含まれるNFT70の識別子(NFT_ID)から、ネットワークアクセスを生じさせたカード40に対応するNFT70を識別できる。URLは、NFT70の操作のためのスマートコントラクト20を呼び出すために必要なデータを有する。また、管理サーバ10は、URLに含まれるデータを用いて、カード40に対応付けられたNFT70を操作するスマートコントラクト20を呼び出すよう構成されている。このように、実施形態においては、カード40に付与されたURLを介して、カード40とNFT70とが対応付けられている。なお、URLには、NTF_IDそのものが含まれている必要はなく、管理サーバ10等が、カード40に対応付けられたNFT_IDを識別可能であるその他のデータが含まれていてもよい。
【0049】
NFT70の所有者は、カード40の売買などに起因するカード40の所有者(占有者)の変更に伴って、イーサリアム上で変更される。管理サーバ10は、カード40の所有者の変更に伴うNFT70の所有者変更を、イーサリアム上で行うために必要な処理を実行する。なお、上記とは逆に、NFT70の所有者を変更(売買)するために、カード40を売買してもよい。
【0050】
実施形態においては、カード40とNFT70とが対応付けられているため、デジタルアセットであるNFT70の所有者が、有体物であるカード40の所有者である。NFT70の所有者及び所有者履歴は、ブロックチェーン上に記録されるため、実質的に、有体物であるカード40の所有者及び所有者履歴が、ブロックチェーン上に記録されることになる。しかも、実施形態においては、カード40とNFT70とが対応付けられているため、実世界におけるカード40の取引と、ブロックチェーンにおけるNFT70の取引と、を連動させることができる。
【0051】
カード40の所有者の変更に伴う、NFT70の所有者変更の手順の概略は、次のとおりである。ここでは、ユーザAが、カード40及びそのカード40に対応付けられたNFT70の現時点の所有者である。まず、ユーザAは、カード40の販売に先立ち、端末31を介して管理サーバ10へアクセスし、NFT70の所有権を放棄する操作を行う。NFT70の所有権の放棄は、ユーザAがNFT70をスマートコントラクト20に預けることによって行われる(
図1のステップS1)。
【0052】
NFT70をスマートコントラクト20に預ける操作が行われると、NFT70が、ユーザAのアドレス(ユーザAのイーサリアムアドレス)からスマートコントラクト20のコントラクトアドレスへ送信される。スマートコントラクト20は、ユーザAによって放棄されたNFT70を受信する。これにより、スマートコントラクト20は、NFT70を預かった状態になる。なお、ユーザAの端末31には、予め、管理サーバ10へアクセスする機能及びNFT70などのイーサリアム上のトークンを保有及び取引する機能を有するアプリケーションがインストールされている。
【0053】
ユーザAは、NFT70の所有権を放棄した後、すなわち、NFT70の所有権をスマートコントラクト20に預けた後、カード40をオンラインマーケット50へ出品する(
図1のステップS2)。ユーザBは、出品されたカード40を購入する(
図1のステップS3)。ユーザBは、法定通貨によって、カード40の代金をユーザAに支払う。このように、実施形態においては、イーサリアムのようなブロックチェーンを利用して管理がなされるが、買い手の支払いは法定通貨によって行われるため、買い手は暗号資産を有していなくても、購入が可能である。
【0054】
カード40の売買の仕方は特に限定されないが、売買がオンラインマーケット50によって行われる場合、買い手であるユーザBは、オンラインマーケット50を利用するためのアプリケーションを有していれば足りる。ユーザBは、カード40の購入時点において、管理サーバ10へのアクセス機能及びNFT70などのイーサリアム上のトークンを取引する機能を有するアプリケーションを有している必要がない。つまり、ユーザBは、カード40の購入時点において、イーサリアムのユーザである必要はない。したがって、買い手となるユーザの候補は、オンラインマーケット50における多数のユーザであり、カード40の販売が容易である。
【0055】
ユーザAが販売したカード40は、宅配サービスなどを利用して、買い手であるユーザBへ送られる(
図1のステップS4)。これによって、ユーザBが、現物であるカード40を取得する。
【0056】
カード40を入手したユーザBは、端末32を使って、カード40に付与されている2次元コード41をスキャンし、端末32を介して管理サーバ10へアクセスする(
図1のステップS5)。ユーザBは、端末32を介して、NFT70の所有権を取得する操作を行う。これにより、ユーザAから預けられていたNFT70が、スマートコントラクト20からユーザBのアドレス(ユーザBのイーサリアムアドレス)へ送信される(
図1のステップS6)。ユーザBは、送信されたNFT70を端末32において参照できる。
【0057】
実施形態において、スマートコントラクト20は、NFT70の所有権移転がユーザ間で生じると、NFT70について予め設定された権利者へ、暗号資産(イーサ)の支払いをするトランザクションを実行する(
図1のステップS7)。予め設定された権利者は、例えば、カード40の著作権者(著作者)60である。支払いのトランザクションの実行のトリガは、NFT70の所有権の変更に関連したイベントであれば足り、例えば、
図1のステップS1であってよいし、
図1のステップS6であってもよい。権利者へ支払われるイーサは、例えば、売り手であるユーザA又は買い手であるユーザBの端末31,32から、スマートコントラクト20へ送金される。
【0058】
以下、
図1に示す手順を含む所有者変更手順の詳細を説明する。
【0059】
図3は、ユーザAがカード40を購入(すなわちカード40の販売業者によるカード40の一次販売)をした際の、所有権の登録手順を示している。
【0060】
カード40の販売時点において、スマートコントラクト20は、カード40に対応付けられたNFT70を所有している(ステップS101)。つまり、スマートコントラクト20は、NFT70を預かっている。なお、スマートコントラクト20の呼び出しとNFT70の送信には、イーサリアムにおける手数料(Gas)が発生するが、その手数料は、販売者負担で支払われるように設定される。つまり、カード40は、手数料(Gas)分のイーサ付きで販売される。したがって、ユーザAは、所有権登録の際に、手数料(Gas)を支払う必要がない。この結果、ユーザAが、所有権の登録時点においてイーサを有していなくても、登録作業の阻害にならない。手数料(Gas)に相当するイーサ(暗号資産)は、NFT70に対応付けて設けられたイーサリアムアドレスに保存されている。NFT70の操作に必要とされる手数料(Gas)は、NFT70に対応するイーサリアムアドレスに蓄積されたイーサから支払われる。
【0061】
ユーザAは、販売業者からカード40を法定通貨の支払いにより購入し、現物のカード40を入手する(ステップS102)。ユーザAは、端末31を使って、カード40に付与された2次元コード41をスキャンする(ステップS103)。2次元コード41のスキャニングにより、端末31は、カード40に付与されたURLを読み取る。
【0062】
URLを読み取った端末31は、そのURLに従ったネットワークアクセスを実行する(ステップS104)。これにより、端末31は、管理サーバ10へアクセスできる。端末31からのネットワークアクセスを受け付けた管理サーバ10は、アクセスに用いられたURLに含まれるNFT_IDによって、操作対象となるNFT70を決定する(ステップS105)。つまり、管理サーバ10は、ネットワークアクセスを受け付けることで、URLに含まれるNFT_IDを取得し、取得したNFT_IDによって、操作対象となるNFT70を識別する。
【0063】
管理サーバ10は、イーサリアムネットワークにアクセスし、操作対象として決定されたNFT70の所有者を参照する。操作対象として決定されたNFT70の所有者がスマートコントラクト20である場合、つまり、NFT70をスマートコントラクト20が預かっている場合、管理サーバ10は、管理サーバ10にアクセス(ステップS104)したユーザAに対して、NFT70の所有権の登録を促す。ユーザAが、端末31上で、NFT70の所有権の登録をすることを選択する操作を行うと(ステップS106)、端末31から登録リクエストが管理サーバ10へ送信される。
【0064】
登録リクエストを受信した管理サーバ10は、操作対象のNFT70の所有者を、スマートコントラクト20からユーザAに変更する操作を実行させるため、スマートコントラクト20を呼び出す(ステップS107)。管理サーバ10は、スマートコントラクト20を呼び出す際に、NFT_ID(NFT70の識別子)をスマートコントラクト20に与える。これにより、スマートコントラクト20は、NFT_ID(NFT70の識別子)を取得する。スマートコントラクト20は、NFT_IDの送信元(管理サーバ10など)から、ネットワークを介して、NFT_IDを取得する。スマートコントラクト20は、NFT_IDによって、操作対象となるNFT70を識別する。
【0065】
呼び出されたスマートコントラクト20は、操作対象となるNFT70の所有者を、スマートコントラクト20からユーザAに変更する。つまり、スマートコントラクト20は、保有するNFT70を、新たな所有者であるユーザAのアドレス(ユーザAのイーサリアムアドレス)へ送信する(ステップS108)。これにより、ユーザAが、カード40に対応付けられたNFT70を所有した状態になる。NFT70の所有者がユーザAに変更されたことは、イーサリアムネットワーク上に記録される。
【0066】
以上の手順により、カード40を法定通貨により購入したユーザAは、イーサリアム上のアセットであるNFT70を所有できる。ユーザAは、NFT70の所有権を有している場合、NFT70及びNFT70に対応付けられたネットワークサービス又はデジタルコンテンツを利用することができる。NFT70に対応付けられたネットワークサービスは、例えば、ゲームである。NFT70に対応付けられたコンテンツは、例えば、電子書籍、音楽、又は動画である。これらのネットワークサービス又はデジタルコンテンツは、NFT70を介して、カード40に対応付けられていることになる。したがって、カード40の所有権の移転に伴って、これらのネットワークサービス又はデジタルコンテンツの利用権も移転できる。
【0067】
図4は、ユーザAがカード40を転売(2次販売)する手順を示している。
【0068】
カード40を転売しようとする時点において、ユーザAは、カード40と、カード40に対応付けられたNFT70と、を所有している(ステップS201)。ユーザAは、端末31を使って、カード40に付与された2次元コード41をスキャンする(ステップS202)。2次元コード41のスキャニングにより、端末31は、カード40に付与されたURLを読み取る。
【0069】
URLを読み取った端末31は、そのURLに従って管理サーバ10へアクセスする(ステップS203)。管理サーバ10は、アクセスに用いられたURLに含まれるNFT_IDによって、操作対象となるNFT70を決定する(ステップS204)。
【0070】
管理サーバ10は、イーサリアムネットワークにアクセスし、操作対象として決定されたNFT70の所有者を参照する。操作対象として決定されたNFT70の所有者(ユーザA)が、管理サーバ10へのアクセス者(ユーザA)と同一である場合、管理サーバ10は、アクセス者であるユーザAの端末31に、NFT70の所有権を放棄するか否かを選択するための画面を表示させる。
【0071】
なお、ユーザAの端末31に、NFT70を参照及び取引するためのアプリケーション(例えば、ウォレットアプリケーション)がインストールされている場合、ユーザAは、カード40をスキャンすることなく、所有するNFT70を、端末31にインストールされたアプリケーションにおいて参照できる。また、端末31のアプリケーションは、NFT70の所有権を放棄するか否かを選択するための画面を表示させることができる。このように、ユーザAの端末31に、NFT70を参照及び取引するためのアプリケーションがインストールされている場合、
図4のステップS201からステップS203は省略可能である。
【0072】
ユーザAが、端末31上で、NFT70の所有権を放棄することを選択する操作を行うと(ステップS205)、端末31から放棄リクエストが管理サーバ10へ送信される。
【0073】
放棄リクエストを受信した管理サーバ10は、ユーザAに対して、パスワードの入力を要求する(ステップS206)。パスワードは、NFT70のために設定される。パスワードは、カード40の新たな所有者がNFT70の所有権を登録する際に、新たな所有者による入力を要求されるものであり、ユーザAによって決定される。ユーザAによるパスワードの入力が完了すると(ステップS207)、管理サーバ10は、操作対象のNFT70の所有者を、ユーザAからスマートコントラクト20に変更する操作(NFT70の放棄)を実行させるため、スマートコントラクト20を呼び出す(ステップS208)。この呼び出しの際に、ユーザAから、スマートコントラクト20へ、パスワード及びNFT70が送信される。これにより、NFT70がスマートコントラクト20へ預けられた状態になる(
図1のステップS1参照)。なお、スマートコントラクト20の呼び出しの際に、NFT_IDも、スマートコントラクト20へ送信されてもよい。
【0074】
また、ユーザAからは、NFT70等とともに、スマートコントラクト20の呼び出しとNFT70の送信のための手数料(Gas)が、スマートコントラクト20へ送信される。スマートコントラクト20は、受信した手数料(Gas)を、NFT70に対応付けられたイーサリアムアドレスに格納させる。したがって、NFT70の新たな所有者は、手数料(Gas)を支払う必要がない。なお、手数料(Gas)は、ユーザAから、直接、NFT70に対応付けられたイーサリアムアドレスに送信されてもよい。
【0075】
呼び出されたスマートコントラクト20は、NFT70の所有者を、ユーザAからスマートコントラクト20へ変更し、受信したパスワードを保存する(ステップS209)。つまり、スマートコントラクト20は、預かったNFT70のために設定されたパスワードを、記憶する。記憶したパスワードは、預かったNFT70の新たな所有者を認証するために用いられる。
【0076】
以上の処理が完了すると、ユーザAは、カード40をユーザBへ販売する(ステップS210,
図1のステップS2,S3参照)。NFT70に設定されたパスワードは、ユーザAから、ユーザBへ伝達される。ユーザBは、伝達されたパスワードを、NFT70の新たな所有者であることの認証に用いる。
【0077】
なお、ユーザAは、NFT70をスマートコントラクト20が預かっている間(NFT70の所有権がユーザBに移転される前まで)は、パスワードの変更・参照が可能である。また、ユーザAは、NFT70をスマートコントラクト20が預かっている間は、正しいパスワードの入力を条件として、スマートコントラクト20が預かっているNFT70を取り戻すことができる。
【0078】
図5は、ユーザBがカード40を購入した際の、所有権の登録(移転)手順を示している。
【0079】
ユーザBがカード40を購入する時点において、スマートコントラクト20は、カード40に対応付けられたNFT70と、そのNFT70のためのパスワードを有している(ステップS301)。
【0080】
ユーザBは、オンラインマーケット50にてカード40を法定通貨の支払いにより購入し、現物のカード40を入手する(ステップS302)。ユーザBは、端末32を使って、カード40に付与された2次元コード41をスキャンする(ステップS303)。2次元コード41のスキャニングにより、端末32は、カード40に付与されたURLを読み取る。
【0081】
URLを読み取った端末32は、そのURLに従ったネットワークアクセスを実行する(ステップS304)。これにより、端末32は、管理サーバ10へアクセスできる。端末32からのネットワークアクセスを受け付けた管理サーバ10は、アクセスに用いられたURLに含まれるNFT_IDによって、操作対象となるNFT70を決定する(ステップS305)。つまり、管理サーバ10は、ネットワークアクセスを受け付けることで、URLに含まれるNFT_IDを取得し、取得したNFT_IDによって、操作対象となるNFT70を識別する。
【0082】
管理サーバ10は、イーサリアムネットワークにアクセスし、操作対象として決定されたNFT70の所有者を参照する。操作対象として決定されたNFT70の所有者がスマートコントラクト20である場合、つまり、NFT70をスマートコントラクト20が預かっている場合、管理サーバ10は、管理サーバ10にアクセス(ステップS304)したユーザBに対して、パスワードの入力を要求する(ステップS306)。
【0083】
ユーザAが、端末32上で、ユーザAから伝達されたパスワードを入力すると(ステップS307)、パスワード認証が行われる。管理サーバ10は、パスワード認証に成功すると、操作対象のNFT70の所有者を、スマートコントラクト20からユーザBに変更する操作を実行させるため、スマートコントラクト20を呼び出す(ステップS309)。管理サーバ10は、スマートコントラクト20を呼び出す際に、NFT_ID(NFT70の識別子)をスマートコントラクト20に与える。これにより、スマートコントラクト20は、NFT_ID(NFT70の識別子)を取得する。スマートコントラクト20は、NFT_IDによって、操作対象のNFT70を識別する。
【0084】
なお、パスワード認証は、スマートコントラクト20が行ってもよい。すなわち、管理サーバ10は、ステップS305の後、(パスワード認証のために、)スマートコントラクト20を呼び出す。管理サーバ10は、呼び出しの際に、操作対象のNFT70のNFT_ID(NFT70の識別子)をスマートコントラクト20に与える。これにより、スマートコントラクト20は、NFT_ID(NFT70の識別子)を取得する。スマートコントラクト20は、NFT_IDによって、操作対象となるNFT70を識別する。
【0085】
スマートコントラクト20は、操作対象となるNFT70にパスワードが設定されている場合、パスワード認証処理を実行する。パスワード認証処理において、スマートコントラクト20は、ユーザBからパスワードを取得する。パスワードは、ユーザBから直接取得してもよいし、管理サーバ10を介してユーザBから取得してもよい。パスワード認証に成功した場合、つまり、ユーザBが正しいパスワードを入力した場合、スマートコントラクト20は、引き続き、操作対象のNFT70の所有者を変更する操作を実行する。
【0086】
パスワード認証が成功した場合、スマートコントラクト20は、NFT70の所有者を、スマートコントラクト20から、ユーザBに変更する。つまり、スマートコントラクト20は、保有するNFT70を、新たな所有者であるユーザBのアドレス(ユーザBのイーサリアムアドレス)へ送信する(ステップS310)。これにより、パスワードを入力したユーザBが、カード40に対応付けられたNFT70を所有した状態になる。
【0087】
NFT70の所有者がユーザBに変更されたことは、イーサリアムネットワーク上に記録される。また、パスワードは、リセットされる。リセットは、スマートコントラクト20によって行われる。
【0088】
なお、スマートコントラクト20の呼び出し及びNFT70の送信のための手数料(Gas)は、ユーザAが予め支払ったイーサにより賄われる。
【0089】
以上の手順により、ユーザBはNFT70を所有できる(ステップS311)。ユーザBは、NFT70に対応付けられたネットワークサービス又はコンテンツを利用することもできる。なお、NFT70の所有権を失ったユーザAは、NFT70に対応付けられたネットワークサービス又はコンテンツを利用できなくなる。
【0090】
また、スマートコントラクト20は、NFT70がユーザBへ移転されると、著作権者(著作者)60へ、所定額のイーサを送信する(ステップS312)。著作者60へ送信されるイーサは、予めユーザAによって支払われている。このように、ユーザAとユーザBとの取引により、第三者である著作権者60が利益を得ることができる。
【0091】
なお、
図5に示す手順は、ユーザAがカード40を購入した際の所有権登録(
図3)のために用いられてもよい。
図5に示す手順が、ユーザAがカード40を購入した際の所有権登録に用いられる場合、パスワードは、カード40の販売前に、管理サーバ10の管理者又は販売業者によって設定され、ユーザAに伝達される。パスワードは、印刷などにより、カード40に付与されていてもよい。
【0092】
図6は、所有権履歴の参照手順を示している。ここでは、カード40の非所有者であるユーザ(非所有ユーザ)が、2次元コードをスキャンできた場合における所有者履歴の参照を説明する。
【0093】
ここでは、カード40及びNFT70は、他のユーザによって所有されているものとする(ステップS401)。また、NFT70の所有者履歴は、イーサリアムネットワーク上に記録されている。
【0094】
非所有ユーザは、端末を使って、カード40に付与された2次元コード41をスキャンする(ステップS402)。2次元コード41のスキャニングにより、端末は、カード40に付与されたURLを読み取る。URLを読み取った端末は、そのURLに従ったネットワークアクセスを実行する(ステップS403)。これにより、端末は、管理サーバ10へアクセスできる。端末からのネットワークアクセスを受け付けた管理サーバ10は、アクセスに用いられたURLに含まれるNFT_IDによって、対象となるNFT70を決定する(ステップS404)。つまり、管理サーバ10は、ネットワークアクセスを受け付けることで、URLに含まれるNFT_IDを取得し、取得したNFT_IDによって、操作対象となるNFT70を識別する。
【0095】
管理サーバ10は、イーサリアムネットワークにアクセスし、対象として決定されたNFT70の所有者を参照する。操作対象として決定されたNFT70の所有者が他のユーザである場合、管理サーバ10は、対象であるNFT70の所有者履歴をイーサリアムネットワークから取得し、非所有ユーザの端末に表示させる(ステップS405)。なお、所有者履歴の表示は、
図5のステップS308において、パスワード認証が成功しなかったユーザBの端末32に対しても行われる。
【0096】
なお、管理サーバ10は、所有者履歴をスマートコントラクト20から取得してもよい。この場合、管理サーバ10は、NFT70の所有者履歴を取得するため、スマートコントラクト20を呼び出す。管理サーバ10は、スマートコントラクト20を呼び出す際に、NFT_ID(NFT70の識別子)をスマートコントラクト20に与える。これにより、スマートコントラクト20は、NFT_ID(NFT70の識別子)を取得する。スマートコントラクト20は、NFT_IDによって、所有者履歴が必要なNFT70を識別する。
【0097】
本発明は、上記実施形態に限定されるものではなく、様々な変形が可能である。
【0098】
<3.付記>
【0099】
本開示は、以下に示す態様を含む。
【0100】
(1)実施形態に係る方法は、対象物の管理のためにノンファンジブルトークン(NFT)を操作する方法である。ノンファンジブルトークンは、スマートコントラクトを実行可能であるブロックチェーンにより発行される。ノンファンジブルトークンは、対象物に対応付けられている。
【0101】
実施形態に係る方法は、データが付与された前記対象物を準備することを含む。前記データは、前記スマートコントラクトの呼び出しに用いられる。
【0102】
スマートコントラクトの呼び出しに用いられるデータは、例えば、スマートコントラクトによって操作されるノンファンジブルトークン(NFT)を識別するためのデータを含むことができる。NFTを識別するためのデータは、例えば、NFTのブロックチェーン上でのアドレス及びNFTのIDの少なくともいずれか一方である。スマートコントラクトの呼び出しに用いられるデータは、スマートコントラクトを呼び出す際に、スマートコントラクトに与えられる他のデータであってもよい。スマートコントラクトに与えられるデータは、例えば、スマートコントラクトの呼び出しのための手数料(例えば、イーサリアムにおけるGas)の支払い元となるイーサリアムアドレスの秘密鍵を含むことができる。
【0103】
実施形態に係る方法は、前記対象物に付与された前記データを用いたネットワークアクセスを、前記管理サーバが受け付けることを含む。
【0104】
実施形態に係る方法は、前記ネットワークアクセスを受け付けた前記管理サーバが、前記ノンファンジブルトークンに対する操作を実行させるために、前記データを用いて、前記スマートコントラクトを呼び出すことを含む。呼び出されたスマートコントラクトは、前記ノンファンジブルトークンに対する操作を実行する。
【0105】
以上の工程が行われることで、前記対象物に付与された前記データに基づいて、ノンファンジブルトークン(NFT)を操作するスマートコントラクトを実行できるため、NFTを対象物の管理に用いることができる。
【0106】
(2)前記データは、前記対象物に付与されたユニフォームリソースロケータ(Uniform Resource Locator:URL)に含まれているのが好ましい。前記ユニフォームリソースロケータは、前記管理サーバへのネットワークアクセスのためのドメインを含むことができる。この場合、対象物に付与されたURLは、前記管理サーバへのネットワークアクセスに用いられ、前記URLに含まれるデータは、前記スマートコントラクトの呼び出しに用いられる。前記ネットワークアクセスは、インターネットアクセスでよい。
【0107】
(3)前記対象物に付与された前記ユニフォームリソースロケータ(URL)は、2次元コードによって表されているのが好ましい。2次元コードは、2次元コードスキャナーによってスキャニング可能であり、機械的なURL読み取りに有利である。
【0108】
(4)前記対象物は、有体物であるのが好ましい。
【0109】
(5)前記管理サーバが前記ノンファンジブルトークンの所有者である第1ユーザの端末から前記ネットワークアクセスを受け付けた場合、前記スマートコントラクトによる前記ノンファンジブルトークンの操作は、前記ノンファンジブルトークンを、前記第1ユーザから前記スマートコントラクトへ送信することを含むのが好ましい。この場合、第1ユーザは、ノンファンジブルトークンをスマートコントラクトへ預けることができる(
図1のステップS1参照)。
【0110】
(6)前記ノンファンジブルトークンを前記スマートコントラクトが有しているときに、前記管理サーバが前記ノンファンジブルトークンの非所有者である第2ユーザの端末から前記ネットワークアクセスを受け付けた場合、前記スマートコントラクトによる前記ノンファンジブルトークンの操作は、前記ノンファンジブルトークンを、前記スマートコントラクトから前記第2ユーザへ送信することを含むのが好ましい。この場合、第2ユーザは、ノンファンジブルトークンをスマートコントラクトから取得することができる(
図1のステップS6参照)。
【0111】
(7)前記ノンファンジブルトークンを前記スマートコントラクトが有しているときに、前記管理サーバが前記ノンファンジブルトークンの非所有者である第2ユーザの端末から前記ネットワークアクセスを受け付けた場合、前記管理サーバは、前記第2ユーザの前記端末へパスワードの入力を要求することを更に含むのが好ましい。この場合、ノンファンジブルトークンの取得にパスワードが必要になり、パスワードを知らないユーザがノンファンジブルトークンを取得するのを防止できる。
【0112】
(8)前記スマートコントラクトは、前記ノンファンジブルトークンに対する操作を実行した場合、前記ノンファンジブルトークンに対応付けられた権利者へ、前記ブロックチェーンにおける暗号資産を支払う操作を実行するよう構成されているのが好ましい。この場合、権利者は、ノンファンジブルトークンへの操作が行われると利益を得ることができる。
【0113】
(9)前記管理サーバが前記ノンファンジブルトークンの非所有者である第2ユーザの端末から前記ネットワークアクセスを受け付けた場合、前記管理サーバは、前記ノンファンジブルトークンの所有者履歴データを、前記第2ユーザの端末に表示させることを更に含むのが好ましい。この場合、ノンファンジブルトークンの所有者履歴、すなわち、対象物の所有者履歴を把握することができる。過去の所有者が誰であったかによって、対象物又はノンファンジブルトークンの価値が変動することがある。所有者履歴が参照可能であると、過去の所有者を容易に確認できる。
【0114】
(10)実施形態に係る管理サーバは、スマートコントラクトを実行可能であるブロックチェーンにより発行されたノンファンジブルトークンに対応付けられた対象物の管理サーバである。前記管理サーバは、前記対象物に付与されたデータであって、スマートコントラクトの呼び出しに用いられる前記データを用いたネットワークアクセスを受け付け、前記アクセスを受け付けると、前記ノンファンジブルトークンに対する操作を実行させるために、前記データを用いて、前記スマートコントラクトを呼び出すことを含む処理を実行するよう構成されたプロセッサを備える。前記処理のためのコンピュータプログラムは、コンピュータ読み取り可能な、非一時的記憶媒体に格納される。
【符号の説明】
【0115】
10 :管理サーバ(管理装置)
20 :スマートコントラクト
31 :端末
32 :端末
40 :カード(対象物)
41 :2次元コード
50 :オンラインマーケット
60 :著作権者(著作者)
70 :ノンファンジブルトークン
A :ユーザ
B :ユーザ
【手続補正書】
【提出日】2024-02-19
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
対象物を管理する方法であって、
ブロックチェーンに実装されたスマートコントラクトが、前記対象物に付与されたコードに含まれる識別子によって識別されるノンファンジブルトークンに対する操作を実行することを備える、
対象物を管理する方法。