IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社NTTデータの特許一覧

特開2024-86295情報処理装置、情報処理方法およびプログラム
<>
  • 特開-情報処理装置、情報処理方法およびプログラム 図1
  • 特開-情報処理装置、情報処理方法およびプログラム 図2
  • 特開-情報処理装置、情報処理方法およびプログラム 図3
  • 特開-情報処理装置、情報処理方法およびプログラム 図4
  • 特開-情報処理装置、情報処理方法およびプログラム 図5
  • 特開-情報処理装置、情報処理方法およびプログラム 図6
  • 特開-情報処理装置、情報処理方法およびプログラム 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024086295
(43)【公開日】2024-06-27
(54)【発明の名称】情報処理装置、情報処理方法およびプログラム
(51)【国際特許分類】
   G06Q 20/38 20120101AFI20240620BHJP
【FI】
G06Q20/38 310
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2022201352
(22)【出願日】2022-12-16
(71)【出願人】
【識別番号】523286071
【氏名又は名称】株式会社NTTデータ
(74)【代理人】
【識別番号】100095407
【弁理士】
【氏名又は名称】木村 満
(72)【発明者】
【氏名】ウェイ ウェイ
(72)【発明者】
【氏名】世取山 進二
(72)【発明者】
【氏名】清水 俊平
(72)【発明者】
【氏名】コウ セツ
【テーマコード(参考)】
5L020
5L055
【Fターム(参考)】
5L020AA75
5L055AA75
(57)【要約】
【課題】秘密鍵をユーザが管理すること、複数の異なるブロックチェーン間で取引を行うこと、取引を自動実行すること、といった3つの要件を同時に満たすことが可能な情報処理装置、情報処理方法およびプログラムを提供する。
【解決手段】情報処理装置は、第1のユーザからの要求に応じて、第1のブロックチェーン上の取引を示すトランザクションを生成し、第1のユーザによる電子署名を受け付ける。また、第2のユーザからの要求に応じて、生成したトランザクションに第1のブロックチェーンとは異なる第2のブロックチェーン上の取引を追加することでトランザクションの内容を更新し、第2のユーザによる電子署名を受け付ける。そして、第1のユーザによる電子署名および第2のユーザによる電子署名を受け付けた場合に、トランザクションにより示される第1のブロックチェーン上の取引と第2のブロックチェーン上の取引とを行う。
【選択図】図4
【特許請求の範囲】
【請求項1】
第1のユーザからの要求に応じて、第1のブロックチェーン上の取引を示すトランザクションを生成するトランザクション生成手段と、
前記第1のユーザによる電子署名を受け付ける第1電子署名受付手段と、
第2のユーザからの要求に応じて、前記トランザクション生成手段で生成したトランザクションに、前記第1のブロックチェーンとは異なる第2のブロックチェーン上の取引を追加することで前記トランザクションの内容を更新するトランザクション更新手段と、
前記第2のユーザによる電子署名を受け付ける第2電子署名受付手段と、
前記第1電子署名受付手段と前記第2電子署名受付手段により、前記第1のユーザによる電子署名および前記第2のユーザによる電子署名を受け付けた場合に、前記トランザクションにより示される前記第1のブロックチェーン上の取引と前記第2のブロックチェーン上の取引と、を行う取引実行手段と、
を備える情報処理装置。
【請求項2】
前記トランザクション生成手段および前記トランザクション更新手段により生成または更新されたトランザクションの内容から、ユーザの所望する予約状況情報を取得する取得手段と、
前記取得手段で取得した前記予約状況情報を表示する予約状況表示手段と、
をさらに備えることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記第2のブロックチェーンには、前記第1のユーザのウォレットおよび前記第2のユーザのウォレットが登録されており、
前記第1のユーザのウォレットおよび前記第2のユーザのウォレットは、それぞれ複数のユーザの秘密鍵により管理され、
前記複数のユーザのうちの一のユーザの秘密鍵を紛失した場合、該一のユーザの秘密鍵を新たに生成する鍵生成手段と、
前記一のユーザの秘密鍵に対応するウォレットを新たに生成し、該新たに生成する前の前記ウォレットの資金を該新たに生成したウォレットへ送金する送金手段と、
をさらに備える、
請求項1または2に記載の情報処理装置。
【請求項4】
情報処理装置による情報処理方法であって、
第1のユーザからの要求に応じて、第1のブロックチェーン上の取引を示すトランザクションを生成するトランザクション生成ステップと、
前記第1のユーザによる電子署名を受け付ける第1電子署名受付ステップと、
第2のユーザからの要求に応じて、前記トランザクション生成ステップで生成したトランザクションに、前記第1のブロックチェーンとは異なる第2のブロックチェーン上の取引を追加することで前記トランザクションの内容を更新するトランザクション更新ステップと、
前記第2のユーザによる電子署名を受け付ける第2電子署名受付ステップと、
前記第1電子署名受付ステップと前記第2電子署名受付ステップにより、前記第1のユーザによる電子署名および前記第2のユーザによる電子署名を受け付けた場合に、前記トランザクションにより示される前記第1のブロックチェーン上の取引と前記第2のブロックチェーン上の取引と、を行う取引実行ステップと、
を備える情報処理方法。
【請求項5】
コンピュータを、
第1のユーザからの要求に応じて、第1のブロックチェーン上の取引を示すトランザクションを生成するトランザクション生成手段、
前記第1のユーザによる電子署名を受け付ける第1電子署名受付手段、
第2のユーザからの要求に応じて、前記トランザクション生成手段で生成したトランザクションに、前記第1のブロックチェーンとは異なる第2のブロックチェーン上の取引を追加することで前記トランザクションの内容を更新するトランザクション更新手段、
前記第2のユーザによる電子署名を受け付ける第2電子署名受付手段、
前記第1電子署名受付手段と前記第2電子署名受付手段により、前記第1のユーザによる電子署名および前記第2のユーザによる電子署名を受け付けた場合に、前記トランザクションにより示される前記第1のブロックチェーン上の取引と前記第2のブロックチェーン上の取引と、を行う取引実行手段、
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【0002】
従来から、異なるブロックチェーン間において情報や価値を交換するための様々な工夫がなされている。例えば、特許文献1には、複数のブロックチェーン上の取引に関わるスマートコントラクトの分散トランザクションにおいてトランザクションの処理を高速化することが可能なシステムが開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2020-119078号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1のようなブロックチェーン間を連携する技術では、例えば、権利の移転と資金の移転とを実現する際に、秘密鍵をユーザが管理すること、複数の異なるブロックチェーン間で取引を行うこと、取引を自動実行すること、といった3つの要件を同時に2つしか満たすことができず、所謂トリレンマの問題が生じる。
【0005】
本発明は、上述のような事情に鑑みてなされたものであり、秘密鍵をユーザが管理すること、複数の異なるブロックチェーン間で取引を行うこと、取引を自動実行すること、といった3つの要件を同時に満たすことが可能な情報処理装置、情報処理方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するため、本発明の第1の観点に係る情報処理装置は、
第1のユーザからの要求に応じて、第1のブロックチェーン上の取引を示すトランザクションを生成するトランザクション生成手段と、
前記第1のユーザによる電子署名を受け付ける第1電子署名受付手段と、
第2のユーザからの要求に応じて、前記トランザクション生成手段で生成したトランザクションに、前記第1のブロックチェーンとは異なる第2のブロックチェーン上の取引を追加することで前記トランザクションの内容を更新するトランザクション更新手段と、
前記第2のユーザによる電子署名を受け付ける第2電子署名受付手段と、
前記第1電子署名受付手段と前記第2電子署名受付手段により、前記第1のユーザによる電子署名および前記第2のユーザによる電子署名を受け付けた場合に、前記トランザクションにより示される前記第1のブロックチェーン上の取引と前記第2のブロックチェーン上の取引と、を行う取引実行手段と、
を備える。
【0007】
前記トランザクション生成手段および前記トランザクション更新手段により生成または更新されたトランザクションの内容から、ユーザの所望する予約状況情報を取得する取得手段と、
前記取得手段で取得した前記予約状況情報を表示する予約状況表示手段と、
をさらに備えるようにしてもよい。
【0008】
前記第2のブロックチェーンには、前記第1のユーザのウォレットおよび前記第2のユーザのウォレットが登録されており、
前記第1のユーザのウォレットおよび前記第2のユーザのウォレットは、それぞれ複数のユーザの秘密鍵により管理され、
前記複数のユーザのうちの一のユーザの秘密鍵を紛失した場合、該一のユーザの秘密鍵を新たに生成する鍵生成手段と、
前記一のユーザの秘密鍵に対応するウォレットを新たに生成し、該新たに生成する前の前記ウォレットの資金を該新たに生成したウォレットへ送金する送金手段と、
をさらに備える、
ようにしてもよい。
【0009】
上記目的を達成するため、本発明の第2の観点に係る情報処理方法は、
情報処理装置による情報処理方法であって、
第1のユーザからの要求に応じて、第1のブロックチェーン上の取引を示すトランザクションを生成するトランザクション生成ステップと、
前記第1のユーザによる電子署名を受け付ける第1電子署名受付ステップと、
第2のユーザからの要求に応じて、前記トランザクション生成ステップで生成したトランザクションに、前記第1のブロックチェーンとは異なる第2のブロックチェーン上の取引を追加することで前記トランザクションの内容を更新するトランザクション更新ステップと、
前記第2のユーザによる電子署名を受け付ける第2電子署名受付ステップと、
前記第1電子署名受付ステップと前記第2電子署名受付ステップにより、前記第1のユーザによる電子署名および前記第2のユーザによる電子署名を受け付けた場合に、前記トランザクションにより示される前記第1のブロックチェーン上の取引と前記第2のブロックチェーン上の取引と、を行う取引実行ステップと、
を備える。
【0010】
上記目的を達成するため、本発明の第3の観点に係るプログラムは、
一旦行われた初期決済を異なる決済へと振分けるプログラムであって、
コンピュータを、
第1のユーザからの要求に応じて、第1のブロックチェーン上の取引を示すトランザクションを生成するトランザクション生成手段、
前記第1のユーザによる電子署名を受け付ける第1電子署名受付手段、
第2のユーザからの要求に応じて、前記トランザクション生成手段で生成したトランザクションに、前記第1のブロックチェーンとは異なる第2のブロックチェーン上の取引を追加することで前記トランザクションの内容を更新するトランザクション更新手段、
前記第2のユーザによる電子署名を受け付ける第2電子署名受付手段、
前記第1電子署名受付手段と前記第2電子署名受付手段により、前記第1のユーザによる電子署名および前記第2のユーザによる電子署名を受け付けた場合に、前記トランザクションにより示される前記第1のブロックチェーン上の取引と前記第2のブロックチェーン上の取引と、を行う取引実行手段、
として機能させる。
【発明の効果】
【0011】
本発明によれば、秘密鍵をユーザが管理すること、複数の異なるブロックチェーン間で取引を行うこと、取引を自動実行すること、といった3つの要件を同時に満たすことができる。
【図面の簡単な説明】
【0012】
図1】情報処理システムの一例を示すブロック図である。
図2】情報処理装置の一例を示すブロック図である。
図3】署名情報の一例を示す説明図である。
図4】情報処理システムの動作の一例を示すフローチャートである。
図5】情報処理システムの動作の一例を示すフローチャートである。
図6】マルチシグウォレットアドレスの一例を示す説明図である。
図7】変形例におけるマルチシグウォレットアドレスの一例を示す説明図である。
【発明を実施するための形態】
【0013】
(実施の形態)
本発明を実施するための形態に係る情報処理装置、情報処理方法およびプログラムについて、図面を参照して詳細に説明する。なお、図中同一または相当する部分には同一符号を付す。以下では、本発明における情報処理装置を、図1に示す情報処理システム1に適用した例を用いて説明する。また、この実施の形態では、理解を容易にするため、輸出者と輸入者とが取引を行う場合を例に説明する。
【0014】
情報処理システム1は、図1に示すように、輸出者端末200、輸入者端末300、情報処理装置100、により構成され、それぞれがネットワーク210を介して相互に通信可能に接続されている。また、情報処理装置100は、当該ネットワーク210を介してブロックチェーンA250およびブロックチェーンB260とも通信可能に接続されている。
【0015】
輸出者端末200は、輸出者のスマートフォン、タブレットやPC(Personal Computer)などの情報端末(所謂コンピュータ)であり、ネットワーク210を介して情報処理装置100と各種データを送受信可能である。輸出者端末200は、情報処理装置100にトランザクションの生成や更新を依頼する機能や、当該トランザクションに署名を行う機能、トランザクションの署名状況を示す署名情報を確認する機能などを有している。
【0016】
輸入者端末300は、輸出者のスマートフォン、タブレットやPCなどの情報端末(所謂コンピュータ)であり、ネットワーク210を介して情報処理装置100と各種データを送受信可能である。輸入者端末300は、輸出者端末200と同様に、情報処理装置100にトランザクションの生成や更新を依頼する機能や、当該トランザクションに署名を行う機能、トランザクションの署名状況を示す署名情報を確認する機能、などを有している。
【0017】
情報処理装置100は、スマートフォン、タブレットやPCなどの情報端末であり、ネットワーク210を介して輸出者端末200、輸入者端末300、ブロックチェーンA250、ブロックチェーンB260と各種データを送受信可能である。情報処理装置100は、輸出者端末200や輸入者端末300からの要求に応じてトランザクションを生成する機能や、当該トランザクションの内容を更新する機能、輸出者や輸入者による署名を受け付ける機能、当該トランザクションにおける輸出者と輸入者の署名状況を表示する機能、当該トランザクションにおける両者の署名が揃った際に取引を実行する機能、ユーザが秘密鍵を紛失した場合などにおける処理を可能とする機能、などを有している。
【0018】
ブロックチェーンA250は、複数のノード8により構成されている、分散型台帳技術または分散型ネットワークである。ブロックチェーンA250は、ブロックと呼ばれるデータの単位を一定時間ごとに生成し、鎖のように連結していくことでデータを保管する。ブロックチェーンA250は、P2P(Peer to Peer)ネットワークと分散型タイムスタンプサーバにより自律的に管理され、ブロック内にデータを一度記憶した場合、当該データを遡及的に変更することができない(ブロックチェーンB260も同様)。具体的に、この実施の形態におけるブロックチェーンA250は、売り手側のブロックチェーンであり、この例では輸出側から輸入側へと権利の移転が行われるブロックチェーンである。この実施の形態におけるブロックチェーンA250は、例えばHyperledger Fabricブロックチェーンである。
【0019】
ブロックチェーンB260は、ブロックチェーンA250と同様、複数のノード7により構成されている、分散型台帳技術または分散型ネットワークである。具体的に、この実施の形態におけるブロックチェーンB260は、買い手側のブロックチェーンであり、この例では輸入側から輸出側へと資金の移転が行われるブロックチェーンである。この実施の形態におけるブロックチェーンB260は、例えばEthereumブロックチェーンである。なお、この実施の形態では、当該ブロックチェーンB260のネットワーク上に輸出者および輸入者のそれぞれのウォレットが登録されているものとし、取引における資金が当該ウォレットに入金されているものとする。
【0020】
次に、図2を参照し、情報処理装置100の構成について説明する。
【0021】
図2に示すように、情報処理装置100は、記憶部110と、制御部120と、入出力部130と、通信部140と、これらを相互に接続するシステムバス(図示省略)と、を備えている。
【0022】
記憶部110は、ROM(Read Only Memory)やRAM(Random Access Memory)などを備える。記憶部110は、制御部120のCPU(Central Processing Unit)が実行するプログラム111と、プログラム111を実行する上で予め必要な各種データ(図示省略)と、署名情報112を記憶する。
【0023】
プログラム111は、後述する情報処理装置の処理を実行するプログラムであり、予め記憶部110に記憶されている。
【0024】
署名情報112は、トランザクションにおける署名状況を示す情報(図3参照)であり、後述する情報処理装置の処理が実行されることにより、記憶部110に記憶される。
【0025】
図3に示すように、署名情報112には、生成されたトランザクションを識別するトランザクション識別情報と、未署名のユーザを識別する未署名のユーザ識別情報とが対応付けられている。
【0026】
図2に戻り、制御部120は、CPUやASIC(Application Specific Integrated Circuit)等から構成される。制御部120は、記憶部110に記憶されたプログラム111に従って動作し、当該プログラム111に従った処理を実行する。制御部120は、記憶部110に記憶されたプログラム111により提供される主要な機能部としてトランザクション生成部121と、取得部122と、取引実行部123と、鍵登録部124を備える。
【0027】
トランザクション生成部121は、輸出者端末200や輸入者端末300からの要求に基づいて、トランザクションを生成する機能部である。具体的に、トランザクション生成部121は、輸出者端末200や輸入者端末300から送信されたリクエスト情報に基づいて、トランザクションを生成したり、トランザクションの内容を更新したりする機能を有する。当該トランザクション生成部121にて生成または更新されるトランザクションには、例えばトランザクションを識別するトランザクション識別情報、取引の当事者(輸出者および輸入者)を示すユーザ識別情報、移転する権利(輸出対象物)の情報や金額などの取引内容を示す取引情報などが含まれる。
【0028】
取得部122は、輸出者端末200や輸入者端末300からの要求に応じて、権利移転の予約状況を示す権利移転予約状況を取得する機能部である。具体的に、取得部122は、輸出者端末200や輸入者端末300から送信された権利移転予約状況表示要求に基づいて、対応するトランザクションの内容から、権利移転の予約状況を示す権利移転予約状況を取得する。また、取得部122は、取得した権利移転予約状況を輸出者端末200や輸入者端末300へ表示させるため、権利移転予約状況を輸出者端末200や輸入者端末300へ送信する機能を有する。
【0029】
取引実行部123は、トランザクションにおける当事者の署名が行われたことに基づいて、当該トランザクションにより示される内容の取引を実行する機能部である。この実施の形態における取引実行部123は、トランザクションにおける輸出者および輸入者双方の署名が行われたか否かを確認する機能や、双方の署名が行われた場合に、当該トランザクションに含まれる取引情報により示される内容の取引を実行する機能を有している。具体的に、この実施の形態における取引実行部123は、ブロックチェーンA250に登録されている輸出者の権利を輸入者へ移転する処理と、ブロックチェーンB260に登録されている輸入者のウォレットから、当該取引情報により示される金額を、輸出者のウォレットへ移転する処理とを、Relay方式により同時に実行する。これにより、輸出者と輸入者の権利の移転と資金の移転とが同時に行われることとなる。
【0030】
鍵登録部124は、新たな秘密鍵を登録する機能部である。この実施の形態における鍵登録部124は、ユーザからの要求に応じて新たな秘密鍵を登録する機能や、他のユーザの秘密鍵を用いて新たなウォレット(後述するマルチシグウォレット)を登録する機能、当該他のユーザの秘密鍵を用いて以前のウォレットから新たなウォレットに送金する機能などを有している。
【0031】
入出力部130は、キーボード、マウス、カメラ、マイク、液晶ディスプレイ、有機EL(Electro-Luminescence)ディスプレイ等から構成され、各種データの入出力を行うための装置である。
【0032】
通信部140は、情報処理装置100が、ネットワーク210を介して、輸出者端末200、輸入者端末300、ブロックチェーンA250およびブロックチェーンB260などといった他の情報端末や分散型ネットワークと通信を行うためのデバイスである。以上が、情報処理装置100の構成である。
【0033】
続いて情報処理システム1の動作について、図4および5を参照して説明する。まず、図4を参照して輸出者端末から処理が開始される場合における情報処理システム1の動作について説明する。
【0034】
まず、ユーザによる輸出者端末200に対する操作により、輸出者端末の処理が開始される。具体的には、ユーザが輸出者端末200を操作し、ブラウザ経由で当該サービスにアクセスすることで、輸出者端末の処理が開始される。なお、輸出者は第1のユーザに対応する。
【0035】
輸出者端末の処理を開始すると、輸出者端末200は、現在輸出者の権利となっている輸出対象物を輸入者へと権利移転するための処理を予約する権利移転予約を行う(ステップS11)。具体的に、ステップS11の処理において、輸出者端末200は、現在輸出者の権利となっている輸出対象物を輸入者へと権利移転することを示すデータを、ブロックチェーンA250上に登録するため、当該内容を示すトランザクションを生成するリクエスト情報を、ユーザによる操作に基づいて情報処理装置100へ送信する。なお、当該トランザクションには、輸出者と輸入者とで決定された契約内容、すなわち、トランザクションを識別するトランザクション識別情報、取引の当事者(輸出者および輸入者)を示すユーザ識別情報、移転する権利(輸出対象物)の情報や金額などの取引内容を示す取引情報が含まれることとなるため、当該リクエスト情報についても取引情報が含まれる。なお、ブロックチェーンA250は、第1のブロックチェーンに対応する。
【0036】
リクエスト情報を受信すると、情報処理装置100の側では、情報処理装置の処理が開始される。情報処理装置の処理を開始すると、情報処理装置100の制御部120は、トランザクション生成部121の機能により、トランザクションを生成する(ステップS12)。ステップS12の処理において、トランザクション生成部121は、輸出者端末200から受信したリクエスト情報に含まれる内容に基づいて、トランザクションを生成する。具体的に、ステップS12の処理では、今回の取引内容に応じた輸出者の権利を輸入者へと移転することを示すデータをブロックチェーンA250上に登録する内容のトランザクションを生成する。なお、当該ステップS12にて生成されるトランザクションには、トランザクションを識別するトランザクション識別情報、取引の当事者(輸出者および輸入者)を示すユーザ識別情報、移転する権利(輸出対象物)の情報や金額などの取引内容を示す取引情報が含まれる。ステップS12にて生成されたトランザクションは、ブラウザ経由で輸出者端末200に送信されることとなる。なお、ステップS12の処理を実行するトランザクション生成部121およびステップS12は、トランザクション生成手段およびトランザクション生成ステップに対応する。
【0037】
輸出者端末200の側では、当該送信されたトランザクションにより示される内容を承認するための署名を、ユーザの操作により行い(ステップS13)、輸出者端末の処理を終了する。具体的に、ステップS13の処理では、ブロックチェーンA250上における輸出者から輸入者への権利移転の処理を承認するため、ユーザによるブラウザ経由の操作に基づき、当該トランザクションについて、秘密鍵を用いて電子署名を付加する。これにより、情報処理装置100は、輸出者による署名を受け付けることとなる。
【0038】
続いて情報処理装置100の側において、情報処理装置100の制御部120は、トランザクション生成部121の機能により、当該電子署名が付加されたトランザクションを登録する(ステップS14)。具体的に、ステップS14の処理において、トランザクション生成部121は、記憶部110に当該トランザクションを記憶するとともに、署名情報112を記憶する。例えば、輸出者側が署名をしており、輸入者側が署名をしていない状態の場合、トランザクション生成部121は、当該トランザクションのトランザクション識別情報と、未署名である輸入者を識別するユーザ識別情報と、を対応づけて記憶部110に、署名情報112として記憶する。なお、ステップS14の処理を実行するトランザクション生成部121およびステップS14は、第1電子署名受付手段および第1電子署名受付ステップに対応する。
【0039】
また、輸入者端末300の側において、ユーザによる輸入者端末300に対する操作が行われると、輸入者端末の処理が開始される。具体的には、ユーザが輸入者端末300を操作し、ブラウザ経由で当該サービスにアクセスすることで、輸入者端末の処理が開始される。なお、輸入者は第2のユーザに対応する。
【0040】
輸入者端末の処理を開始すると、輸入者端末300は、現在の権利移転の予約状況である権利移転予約状況の表示依頼を行う(ステップS15)。具体的に、ステップS15の処理において、輸入者端末300は、当該トランザクションについての権利移転予約状況を表示するため、情報処理装置100に対して権利移転予約状況表示依頼を、ユーザのブラウザ経由の操作により行う。なお、当該ステップS15の処理は、いずれのタイミングで行ってもよく、また、輸入者端末300に限られず、輸出者端末200においても実行可能である。
【0041】
権利移転予約状況表示依頼を受信した情報処理装置100の制御部120は、取得部122の機能により、権利移転予約状況情報を取得する(ステップS16)。具体的に、ステップS16の処理において、取得部122は、権利移転予約状況表示依頼に含まれるトランザクション識別情報に対応するトランザクションの内容を確認するとともに、ブラウザ経由で輸入者端末300へ権利移転予約状況を表示させる。これにより、輸入者端末300の側では、トランザクションについての権利移転予約状況を確認することができる。なお、ステップS16の処理を実行する取得部122は、予約状況表示手段に対応する。
【0042】
続いて輸入者端末300は、取引に応じた輸入者の資金を輸入者へと移転するための処理を予約する送金予約を行う(ステップS17)。具体的に、ステップS17の処理において、輸入者端末300は、今回の取引内容に応じた輸入者の資金を輸出者へと移転することを示すデータを、ブロックチェーンB260上に登録するため、登録されたトランザクションを更新するリクエスト情報を、ユーザによる操作に基づいて情報処理装置100へ送信する。なお、当該トランザクションには、トランザクションを識別するトランザクション識別情報、取引の当事者(輸出者および輸入者)を示すユーザ識別情報、移転する権利(輸出対象物)の情報や金額などの取引内容を示す取引情報が含まれることとなるため、当該リクエスト情報についても取引情報が含まれる。なお、ブロックチェーンB260は、第2のブロックチェーンに対応する。
【0043】
リクエスト情報を受信すると、情報処理装置100の制御部120は、トランザクション生成部121の機能により、トランザクションを更新する(ステップS18)。ステップS18の処理において、トランザクション生成部121は、輸入者端末300から受信したリクエスト情報に含まれる内容に基づいて、トランザクションを更新する。具体的に、ステップS18の処理では、今回の取引内容に応じた輸入者の資金を輸出者へと移転することを示すデータをブロックチェーンB260上に登録する旨を、ステップS14の処理で登録したトランザクションに追加することで、トランザクションを更新する。なお、ステップS18にて生成されたトランザクションは、ブラウザ経由で輸入者端末300に送信されることとなる。ステップS18およびステップS18の処理は、トランザクション更新手段およびトランザクション更新ステップに対応する。
【0044】
そして、輸入者端末300の側では、送信されたトランザクションにより示される内容を承認するための署名を、ユーザの操作により行い(ステップS19)、輸入者端末の処理を終了する。具体的に、ステップS19の処理では、ブロックチェーンB260上における輸入者から輸出者への資金移転の処理を承認するため、ユーザによるブラウザ経由の操作に基づき、当該トランザクションについて、秘密鍵を用いて電子署名を付加する。
【0045】
続いて、情報処理装置100の制御部120は、取引実行部123の機能により、当事者全員の署名が行われたか否かを判定する(ステップS20)。具体的に、ステップS20の処理において、取引実行部123は、例えば記憶部110に記憶された署名情報112において未署名のユーザ識別情報が登録されていないことを確認することで、当事者である輸出者および輸入者の署名が行われたか否かを判定する。なお、当該ステップS20の処理は、当該情報処理装置の処理が開始された後、予め定められた周期毎に繰り返し行われればよい。当事者全員の署名が行われていないと判定した場合(ステップS20;No)、取引実行部123は、当事者全員の署名が行われるまで待機する。
【0046】
一方、当事者全員の署名が行われたと判定した場合(ステップS20;Yes)、情報処理装置100の制御部120は、トランザクション生成部121の機能により、当該電子署名が付加されたトランザクションを登録する(ステップS21)。具体的に、ステップS21の処理において、トランザクション生成部121は、記憶部110に当該トランザクションを記憶するとともに、署名情報112を更新する。例えば、輸出者側が署名をしており、輸入者側も署名をしている状態の場合、トランザクション生成部121は、当該トランザクションに対応するユーザ識別情報を削除し、署名情報112を更新する。なお、ステップS21の処理を実行するトランザクション生成部121、およびステップS21は、第2電子署名受付手段および第2電子署名受付ステップに対応する。
【0047】
続いて情報処理装置100の制御部120は、取引実行部123の機能により、取引を実行し(ステップS22)、情報処理装置の処理を終了する。具体的に、ステップS22の処理において、取引実行部123は、トランザクションにより示される内容の取引を実行する。より具体的には、トランザクションに含まれる取引情報により示される内容の取引として、ブロックチェーンA250に登録されている輸出者の権利を輸入者へ移転する処理と、ブロックチェーンB260に登録されている輸入者のウォレットから、当該取引情報により示される金額を、輸出者のウォレットへ移転する処理とを、Relay方式により同時に実行する。ステップS22の処理を実行する取引実行部123およびステップS22の処理は、取引実行手段および取引実行ステップに対応する。
【0048】
以上が輸出者端末から処理が開始される場合における情報処理システム1の動作である。続いて輸入者端末から処理が開始される場合における情報処理システム1の動作について、図5を参照して説明する。なお、情報処理装置100の処理については、図4に示す輸出者端末から処理が開始される場合と同様である。
【0049】
まず、ユーザによる輸入者端末300に対する操作により、輸入者端末の処理が開始される。具体的には、ユーザが輸入者端末300を操作し、ブラウザ経由で当該サービスにアクセスすることで、輸入者端末の処理が開始される。
【0050】
輸入者端末の処理を開始すると、輸入者端末300は、取引に応じた輸入者の資金を輸入者へと移転するための処理を予約する送金予約を行う(ステップS31)。具体的に、ステップS31の処理において、輸入者端末300は、図4のステップS17の処理と同様にして、今回の取引内容に応じた輸入者の資金を輸出者へと移転することを示すデータを、ブロックチェーンB260上に登録するため、登録されたトランザクションを生成するリクエスト情報を、ユーザによる操作に基づいて情報処理装置100へ送信する。なお、当該トランザクションには、トランザクションを識別するトランザクション識別情報、取引の当事者(輸出者および輸入者)を示すユーザ識別情報、移転する権利(輸出対象物)の情報や金額などの取引内容を示す取引情報が含まれることとなるため、当該リクエスト情報についても取引情報が含まれる。
【0051】
リクエスト情報を受信すると、情報処理装置100の側では、情報処理装置の処理が開始される。情報処理装置の処理を開始すると、情報処理装置100の制御部120は、トランザクション生成部121の機能により、トランザクションを生成する(ステップS32)。ステップS32の処理において、トランザクション生成部121は、輸入者端末300から受信したリクエスト情報に含まれる内容に基づいて、トランザクションを生成する。具体的に、ステップS32の処理では、今回の取引内容に応じた輸入者の資金を輸出者へと移転することを示すデータをブロックチェーンB260上に登録する内容のトランザクションを生成する。なお、当該ステップS32にて生成されるトランザクションには、トランザクションを識別するトランザクション識別情報、取引の当事者(輸出者および輸入者)を示すユーザ識別情報、移転する権利(輸出対象物)の情報や金額などの取引内容を示す取引情報が含まれる。ステップS32にて生成されたトランザクションは、ブラウザ経由で輸入者端末300に送信されることとなる。
【0052】
輸入者端末300の側では、図4に示すステップS19の処理と同様に、当該送信されたトランザクションにより示される内容を承認するための署名を、ユーザの操作により行い(ステップS33)、輸入者端末の処理を終了する。
【0053】
続いて情報処理装置100の側において、情報処理装置100の制御部120は、トランザクション生成部121の機能により、当該電子署名が付加されたトランザクションを登録する(ステップS34)。具体的に、ステップS34の処理において、トランザクション生成部121は、図4のステップS14の処理と同様に、記憶部110に当該トランザクションを記憶するとともに、署名情報112を記憶する。例えば、輸入者側が署名をしており、輸出者側が署名をしていない状態の場合、トランザクション生成部121は、当該トランザクションのトランザクション識別情報と、未署名である輸出者を識別するユーザ識別情報と、を対応づけて記憶部110に、署名情報112として記憶する。
【0054】
また、輸出者端末200の側において、ユーザによる輸出者端末200に対する操作が行われると、輸出者端末の処理が開始される。具体的には、ユーザが輸出者端末200を操作し、ブラウザ経由で当該サービスにアクセスすることで、輸出者端末の処理が開始される。
【0055】
輸出者端末の処理を開始すると、輸出者端末200は、現在の送金の予約状況である送金予約状況の表示依頼を行う(ステップS35)。具体的に、ステップS35の処理において、輸出者端末200は、当該トランザクションについての送金予約状況を表示するため、情報処理装置100に対して送金予約状況表示依頼を、ユーザのブラウザ経由の操作により行う。なお、当該ステップS35の処理は、いずれのタイミングで行ってもよく、また、輸出者端末200に限られず、輸入者端末300においても実行可能である。
【0056】
送金予約状況表示依頼を受信した情報処理装置100の制御部120は、取得部122の機能により、送金予約状況情報を取得する(ステップS36)。具体的に、ステップS36の処理において、取得部122は、送金予約状況表示依頼に含まれるトランザクション識別情報に対応するトランザクションの内容を確認するとともに、ブラウザ経由で輸出者端末200へ送金予約状況を表示する。これにより、輸入者端末300の側では、トランザクションについての送金予約状況を確認することができる。なお、ステップS36の処理を実行する取得部122は、予約状況表示手段に対応する。
【0057】
続いて輸出者端末200は、現在輸出者の権利となっている輸出対象物を輸入者へと権利移転するための処理を予約する権利移転予約を行う(ステップS37)。具体的に、ステップS37の処理において、輸出者端末200は、現在輸出者の権利となっている輸出対象物を輸入者へと権利移転することを示すデータを、ブロックチェーンA250上に登録するため、当該内容を示すトランザクションを更新するリクエスト情報を、ユーザによる操作に基づいて情報処理装置100へ送信する。なお、当該トランザクションには、輸出者と輸入者とで決定された契約内容、すなわち、トランザクションを識別するトランザクション識別情報、取引の当事者(輸出者および輸入者)を示すユーザ識別情報、移転する権利(輸出対象物)の情報や金額などの取引内容を示す取引情報が含まれることとなるため、当該リクエスト情報についても取引情報が含まれる。
【0058】
リクエスト情報を受信すると、情報処理装置100の制御部120は、トランザクション生成部121の機能により、トランザクションを更新する(ステップS38)。ステップS38の処理において、トランザクション生成部121は、輸出者端末200から受信したリクエスト情報に含まれる内容に基づいて、トランザクションを更新する。具体的に、ステップS38の処理では、今回の取引内容に応じた輸出者の権利を輸入者へと移転することを示すデータをブロックチェーンA250上に登録する旨を、ステップS34の処理で登録したトランザクションに追加することで、トランザクションを更新する。なお、ステップS38にて生成されたトランザクションは、ブラウザ経由で輸出者端末200に送信されることとなる。
【0059】
そして、輸出者端末200の側では、送信されたトランザクションにより示される内容を承認するための署名を、ユーザの操作により行い(ステップS39)、輸出者端末の処理を終了する。
【0060】
続いて情報処理装置100の側において、取引実行部123の機能により、当事者全員の署名が行われたか否かを判定する(ステップS40)。そして当事者全員の署名が行われていないと判定した場合(ステップS40;No)、取引実行部123は、当事者全員の署名が行われるまで待機する。
【0061】
一方、当事者全員の署名が行われたと判定した場合(ステップS40;Yes)、情報処理装置100の制御部120は、トランザクション生成部121の機能により、当該電子署名が付加されたトランザクションを登録し(ステップS41)、その後、取引を実行し(ステップS42)、情報処理装置の処理を終了する。なお、ステップS40~ステップS42の処理は、図4のステップS20~ステップS22の処理と同様である。
【0062】
以上が情報処理システム1の動作である。このように、この実施の形態における情報処理装置によれば、秘密鍵をユーザが管理すること、複数の異なるブロックチェーン間で取引を行うこと、取引を自動実行すること、といった3つの要件を同時に満たすことが可能となり、所謂トリレンマの問題を解消することができる。
【0063】
続いて、マルチシグウォレットについて図6を用いて説明する。上述したように、この実施の形態では、ブロックチェーンB260のネットワーク上に輸出者および輸入者のそれぞれのウォレットが登録されている。具体的に、この実施の形態におけるウォレットは、図6に示すように、ユーザA~ユーザCといった3者によって管理されている。
【0064】
そして、例えば輸出者であるユーザAが図6に示す秘密鍵「0X77…」を紛失してしまった場合を例に説明する。この場合、情報処理装置100の鍵登録部124は、当該輸出者端末200からの要求に応じて、図6に示すように、ユーザAの新たな秘密鍵「0X99…」を登録する。また、情報処理装置100の鍵登録部124は、ユーザBおよびユーザCの秘密鍵を用いて新たなマルチシグウォレット「0X93…」を登録するとともに、当該新たなマルチシグウォレットにユーザAの新たな秘密鍵と、ユーザBおよびユーザCの秘密鍵をそれぞれ登録する。そして、鍵登録部124は、以前のマルチシグウォレット「0X87…」の資金の送金を承認する。これによれば、1人のユーザが秘密鍵を紛失した場合であっても、他のユーザの秘密鍵を用いて新たなウォレットを登録することができ、取引を継続することができる。なお、ユーザAの新たな秘密鍵「0X99…」を登録する鍵登録部124は、鍵生成手段に対応する。また、ユーザBおよびユーザCの秘密鍵を用いて新たなマルチシグウォレット「0X93…」を登録する鍵登録部124および以前のマルチシグウォレット「0X87…」の資金の送金を承認する鍵登録部124は、送金手段に対応する。
【0065】
(変形例)
なお、この発明は、上記実施の形態に限定されず、様々な変形及び応用が可能である。例えば、上記実施の形態に係る情報処理装置100は、上記で示した全ての技術的特徴を備えるものでなくてもよく、従来技術における少なくとも1つの課題を解決できるように、上記実施の形態で説明した一部の構成を備えたものであってもよい。また、下記の変形例それぞれについて、少なくとも一部を組み合わせてもよい。
【0066】
上記実施の形態では、ユーザAが秘密鍵「0X77…」を紛失してしまった場合、鍵登録部124がユーザBおよびユーザCの秘密鍵を用いて新たなマルチシグウォレット「0X93…」を登録する例を示したが、これは一例である。例えば、図7に示すように、鍵登録部124は、ユーザAの新たな秘密鍵を元のマルチシグウォレットに登録してもよい。なお、マルチシグウォレットにおけるマルチシグ(MultiSig)は、MultiSignatureの略称である。この場合、ユーザBおよびユーザCの秘密鍵で承認することで、新たに生成したユーザAの秘密鍵が登録されればよい。
【0067】
また、上記実施の形態では、図4および図5において、輸出者または輸入者のうち、一方の署名が行われてから、すなわちステップS13またはステップS19の処理が行われてから、もう一方の予約処理(ステップS15の送金予約またはステップS11Aの権利移転予約)が行われる例を示したが、これは一例である。一方の署名が行われる前であっても、もう一方の予約処理は実行可能である。すなわち、輸出者端末の処理と輸入者端末の処理とは、互いに独立した処理である。
【0068】
また、上記実施の形態では、輸出者と輸入者とが取引を行う場合を例に説明したが、輸出入に限られず、複数のブロックチェーンを跨いだ2者間の取引であればよい。この場合、輸出者が売り手側、輸入者が買い手側、にそれぞれ対応すればよい。すなわち、当該情報処理装置100は、あらゆるブロックチェーン間のトークン交換(DeliveryVSPayment、PaymentVSPayment)に利用でき、具体的に、メタバース空間における仮想資産の交換、デジタルアーツ、ゲーム資産、証券トークンなどのNFT(Non-Fungible Token)と暗号通貨の交換、中銀デジタル通貨であるCBDC(Central Bank Digital Currency)と暗号通貨の交換、サプライチェーンファイナンスやGreenエネルギートークンと価値の交換などに利用可能である。また、2者間に限られず、3者以上の取引についても応用可能である。例えば3者による取引の場合、当該情報処理装置100は、3者それぞれの署名を受け付けた場合に、当該トランザクションにより示される取引を実行すればよい。
【0069】
また、上記実施の形態では、輸出者側(または輸入者側)で生成されたトランザクションを、輸入者側(または輸出者側)で更新するため、トランザクション識別情報が共通である例、すなわち共通のトランザクションを用いる例を示したが、これは一例である。輸出者側(または輸入者側)で生成されたトランザクションとは別のトランザクションを輸入者側(または輸出者側)で生成してもよい。この場合、署名情報112において対応関係が示されていればよい。また、上記実施の形態における署名情報112では、未署名者のユーザ識別情報が記憶される例を示したが、これは一例であり、署名済みのユーザ識別情報が記憶されてもよいし、それぞれのユーザ識別情報に対応して未署名であるか署名済みであるかの状態を記憶してもよい。
【0070】
なお、上記実施の形態に係る情報処理装置100は、専用の装置によらず、通常のコンピュータを用いて実現可能である。例えば、コンピュータに上述のいずれかを実行するためのプログラムを格納した記録媒体から該プログラムをコンピュータにインストールすることにより、上述の処理を実行する情報処理装置100を構成してもよい。また、複数のコンピュータが協働して動作することによって、1つの情報処理装置100を構成してもよい。
【0071】
また、上述の機能を、OS(Operating System)とアプリケーションとの分担、またはOSとアプリケーションとの協働により実現する場合等には、OS以外の部分のみを媒体に格納してもよい。
【0072】
また、搬送波にプログラムを重畳し、通信ネットワークを介して配信することも可能である。例えば、通信ネットワーク上の掲示板(BBS、Bulletin Board System)に当該プログラムを掲示し、ネットワークを介して当該プログラムを配信してもよい。そして、これらのプログラムを起動し、オペレーティングシステムの制御下で、他のアプリケーションプログラムと同様に実行することにより、上述の処理を実行できるように構成してもよい。
【符号の説明】
【0073】
1 情報処理システム、7、8 ノード 100 情報処理装置、110 記憶部、111 プログラム、112 署名情報、120 制御部、121 トランザクション生成部、122 取得部、123 取引実行部、124 鍵登録部、130 入出力部、140、 通信部、200 輸出者端末、210 ネットワーク、250 ブロックチェーンA、260 ブロックチェーンB、300 輸入者端末
図1
図2
図3
図4
図5
図6
図7