(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-29
(45)【発行日】2024-04-08
(54)【発明の名称】利用者端末、認証者端末、登録者端末、管理システムおよびプログラム
(51)【国際特許分類】
H04L 9/08 20060101AFI20240401BHJP
H04L 9/32 20060101ALI20240401BHJP
G06F 21/64 20130101ALI20240401BHJP
G06F 21/31 20130101ALI20240401BHJP
【FI】
H04L9/08 D
H04L9/08 F
H04L9/32 200B
G06F21/64
G06F21/31
(21)【出願番号】P 2020113934
(22)【出願日】2020-07-01
【審査請求日】2022-09-30
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(73)【特許権者】
【識別番号】504193837
【氏名又は名称】国立大学法人室蘭工業大学
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(72)【発明者】
【氏名】大橋 盛徳
(72)【発明者】
【氏名】石田 達郎
(72)【発明者】
【氏名】近田 昌義
(72)【発明者】
【氏名】藤村 滋
(72)【発明者】
【氏名】中平 篤
(72)【発明者】
【氏名】岸上 順一
【審査官】吉田 歩
(56)【参考文献】
【文献】国際公開第2020/085378(WO,A1)
【文献】米国特許出願公開第2020/0153639(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/08
H04L 9/32
G06F 21/64
G06F 21/31
(57)【特許請求の範囲】
【請求項1】
非中央集権型の第1分散台帳ネットワーク
と中央集権型の第2分散台帳ネットワークとに接続可能な利用者端末であって、
検証鍵を用いて、利用者に関する分散型識別子を生成する生成部と、
前記検証鍵と前記分散型識別子を含む登録トランザクションを生成し、前記登録トランザクションを前記第1分散台帳ネットワークに送信する第1制御部と、
前記利用者のデータと前記分散型識別子とを含む、トークンの発行に関するトークントランザクションを生成し、前記トークントランザクションを前記第2分散台帳ネットワークに送信する第2制御部と、
を具備する利用者端末。
【請求項2】
前記データをストレージサービスに登録し、前記ストレージサービスから前記データを管理するために発行された登録識別子を受信する登録部をさらに具備し、
前記第1制御部は、前記登録識別子をさらに含む登録トランザクションを生成する、請求項1に記載の利用者端末。
【請求項3】
利用者に関する分散型識別子と前記分散型識別子に紐付く検証鍵とが分散台帳で保持される非中央集権型の第1分散台帳ネットワークと、前記利用者に関する暗号化されたデータを含むトークンが分散台帳で保持され
る中央集権型の第2分散台帳ネットワークとに接続可能な認証者端末であって、
前記分散型識別子と前記利用者に関する本人確認情報と復号鍵とを取得する取得部と、
前記第1分散台帳ネットワークを参照し、前記分散型識別子に紐付けられる前記検証鍵を抽出する第1制御部と、
前記第2分散台帳ネットワークを参照し、前記トークンへのアクセス情報を用いて、認証対象となる前記暗号化されたデータを抽出する第2制御部と、
前記復号鍵を用いて前記暗号化されたデータを復号する復号部と、
前記検証鍵を用いて前記トークンに付与された署名を検証し、前記本人確認情報を用いて復号されたデータを検証する検証部と、
を具備する認証者端末。
【請求項4】
前記第2制御部は、認証者の識別子と前記検証部の検証結果とを含む登録トランザクションを生成し、前記登録トランザクションを前記第2分散台帳ネットワークに送信する、請求項3に記載の認証者端末。
【請求項5】
利用者に関する分散型識別子と前記分散型識別子に紐付く検証鍵とが分散台帳で保持される非中央集権型の第1分散台帳ネットワークと、前記利用者に関する暗号化されたデータを含むトークンが分散台帳で保持され
る中央集権型の第2分散台帳ネットワークとに接続可能な登録者端末であって、
前記分散型識別子に新たに紐付く追加情報を生成する生成部と、
前記追加情報を暗号化する暗号化部と、
前記トークンに暗号化した追加情報を紐付けるための登録トランザクションを生成し、前記登録トランザクションを前記第2分散台帳ネットワークに送信する制御部と、
前記追加情報が紐付くトークンへのアクセス情報と、前記暗号化された追加情報を復号するための復号鍵とを送信する送信部と、
を具備する登録者端末。
【請求項6】
前記第1分散台帳ネットワークは、特定の管理者を必要としない非中央集権型のブロックチェーンネットワークであり、
前記第2分散台帳ネットワークは、特定の管理者が必要となる、論理的な中央集権型のブロックチェーンネットワークである、請求項1に記載の利用者端末、または請求項3に記載の認証者端末、または請求項5に記載の登録者端末。
【請求項7】
非中央集権型の第1分散台帳ネットワーク
と中央集権型の第2分散台帳ネットワークとにアクセス可能な、利用者端末および認証者端末を含む管理システムであって、
前記利用者端末は、
検証鍵を用いて、利用者に関する分散型識別子を生成する生成部と、
前記利用者のデータを暗号化する暗号化部と、
前記検証鍵と前記分散型識別子を含む登録トランザクションを生成し、前記登録トランザクションを前記第1分散台帳ネットワークに送信する第1制御部と、
前記利用者の暗号化されたデータと前記分散型識別子とを含む、トークンの発行に関するトークントランザクションを生成し、前記トークントランザクションを前記第2分散台帳ネットワークに送信する第2制御部と、を具備し、
前記認証者端末は、
前記利用者端末から、前記分散型識別子と前記利用者に関する本人確認情報と復号鍵とを取得する取得部と、
前記第1分散台帳ネットワークを参照し、前記分散型識別子に紐付けられる前記検証鍵を抽出する第1制御部と、
前記第2分散台帳ネットワークを参照し、前記トークンへのアクセス情報を用いて、認証対象となる前記暗号化されたデータを抽出する第2制御部と、
前記復号鍵を用いて前記暗号化されたデータを復号する復号部と、
前記検証鍵を用いて前記トークンに付与された署名を検証し、前記本人確認情報を用いて復号されたデータを検証する検証部と、
を具備する、管理システム。
【請求項8】
コンピュータを、請求項1または請求項2に記載の利用者端末の各部として実行させるためのプログラム。
【請求項9】
コンピュータを、請求項3または請求項4に記載の認証者端末の各部として実行させるためのプログラム。
【請求項10】
コンピュータを、請求項5に記載の登録者端末の各部として実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、分散台帳技術を利用した利用者端末、認証者端末、登録者端末、管理システムおよびプログラムに関する。
【背景技術】
【0002】
ビットコイン(登録商標)に代表される暗号通貨の取引においては、非中央集権型の分散台帳技術の一種であるブロックチェーンが用いられている。ブロックチェーンは、改ざんに対して高い堅牢性を有するため、暗号通貨以外にも、種々の契約、取引を実行できるスマートコントラクトなど様々な用途への利用が検討されている。スマートコントラクトを扱うことができるプログラマブルなブロックチェーンとして、例えば、汎用的な分散型アプリケーションが実行できるイーサリアム(Ethereum)がある。
様々なスマートコントラクトを実現可能な分散台帳技術は、トランザクションをブロックにまとめ、ブロック間をハッシュで連関させるデータ構造を持つため、データサイズが大きなファイルの管理には不向きである。
【0003】
分散型のファイル管理の方法として、コンテンツハッシュなどから作られるユニークな識別子(ID)でファイルを管理するストレージがある(例えば、非特許文献1参照)。また、当該ストレージにファイルを登録し、ファイルのIDを分散台帳に記録して管理する方法もある(例えば、非特許文献2参照)。
また、ファイルのIDに加え、個人が作成した分散型識別子(DID:Decentralized ID)をイーサリアム上で管理する方法も検討されている。
【先行技術文献】
【非特許文献】
【0004】
【文献】Juan Banet、“IPFS - Content Addressed, Versioned, P2P File System (DRAFT 3)”、[online]、[令和2年2月27日検索]、インターネット〈URL:https://ipfs.io/ipfs/QmR7GSQM93Cx5eAg6a6yRzNde1FQv7uL6X1o4k7zrJa3LX/ipfs.draft3.pdf〉
【文献】Mathis Steichen, 他、“Blockchain-Based, Decentralized Access Control for IPFS”、[online]、[令和2年2月27日検索]、インターネット〈URL:https://www.researchgate.net/publication/327034734_Blockchain-Based_Decentralized_Access_Control_for_IPFS〉
【発明の概要】
【発明が解決しようとする課題】
【0005】
DIDやファイル管理を分散台帳で行う場合、イーサリアムなどのプログラマブルなブロックチェーンに登録されるコントラクトによりDIDとファイルメタデータとを管理し、外部ストレージや外部の分散ファイルストレージでファイルを管理することが想定される。つまり、DIDを管理するためのコントラクトには管理者が必要となる。
しかし、管理者が必要となる管理構造は、単一障害点となり得る。特に、ファイルメタデータの管理とは異なり、DIDは共通性の高い情報であるため、特定の管理者に依存する管理構造は、DIDを管理する上では適切とはいえない。
【0006】
この発明は上記事情に着目してなされたもので、その目的とするところは、ロバストかつ柔軟な情報管理を実現できる利用者端末、認証者端末、登録者端末、管理システムおよびプログラムを提供することにある。
【課題を解決するための手段】
【0007】
上記目的を達成するために、この発明の一つの観点に係る利用者端末は、第1分散台帳ネットワークと第2分散台帳ネットワークとに接続可能な利用者端末であって、生成部と、第1制御部と、第2制御部とを含む。生成部は、検証鍵を用いて、利用者に関する分散型識別子を生成する。第1制御部は、前記検証鍵と前記分散型識別子を含む登録トランザクションを生成し、前記登録トランザクションを前記第1分散台帳ネットワークに送信する。第2制御部は、前記利用者のデータと前記分散型識別子とを含む、トークンの発行に関するトークントランザクションを生成し、前記トークントランザクションを前記第2分散台帳ネットワークに送信する。
【0008】
また、この発明の一つの観点に係る認証者端末は、利用者に関する分散型識別子と前記分散型識別子に紐付く検証鍵とが分散台帳で保持される第1分散台帳ネットワークと、前記利用者に関する暗号化されたデータを含むトークンが分散台帳で保持される第2分散台帳ネットワークとに接続可能な認証者端末であって、取得部と、第1制御部と、第2制御部と、復号部と、検証部とを含む。取得部は、前記分散型識別子と前記利用者に関する本人確認情報と復号鍵とを取得する。第1制御部は、前記第1分散台帳ネットワークを参照し、前記分散型識別子に紐付けられる前記検証鍵を抽出する。第2制御部は、前記第2分散台帳ネットワークを参照し、前記トークンへのアクセス情報を用いて、認証対象となる前記暗号化されたデータを抽出する。復号部は、前記復号鍵を用いて前記暗号化されたデータを復号する。検証部は、前記検証鍵を用いて前記トークンに付与された署名を検証し、前記本人確認情報を用いて復号されたデータを検証する。
【0009】
また、この発明の一つの観点に係る登録者端末は、利用者に関する分散型識別子と前記分散型識別子に紐付く検証鍵とが分散台帳で保持される第1分散台帳ネットワークと、前記利用者に関する暗号化されたデータを含むトークンが分散台帳で保持される第2分散台帳ネットワークとに接続可能な登録者端末であって、生成部と、暗号化部と、制御部と、送信部とを含む。生成部は、前記分散型識別子に新たに紐付く追加情報を生成する。暗号化部は、前記追加情報を暗号化する。制御部は、前記トークンに暗号化した追加情報を紐付けるための登録トランザクションを生成し、前記登録トランザクションを前記第2分散台帳ネットワークに送信する。送信部は、前記追加情報が紐付くトークンへのアクセス情報と、前記暗号化された追加情報を復号するための復号鍵とを送信する。
【0010】
また、この発明の一つの観点に係る管理システムは、第1分散台帳ネットワークと第2分散台帳ネットワークとにアクセス可能な、利用者端末および認証者端末を含む管理システムである。前記利用者端末は、生成部と、暗号化部と、第1制御部と、第2制御部とを含む。生成部は、検証鍵を用いて、利用者に関する分散型識別子を生成する。暗号化部は、前記利用者のデータを暗号化する。第1制御部は、前記検証鍵と前記分散型識別子を含む登録トランザクションを生成し、前記登録トランザクションを前記第1分散台帳ネットワークに送信する。第2制御部は、前記利用者の暗号化されたデータと前記分散型識別子とを含む、トークンの発行に関するトークントランザクションを生成し、前記トークントランザクションを前記第2分散台帳ネットワークに送信する。前記認証者端末は、取得部と、第1制御部と、第2制御部と、復号部と、検証部とを含む。取得部は、前記利用者端末から、前記分散型識別子と前記利用者に関する本人確認情報と復号鍵とを取得する。第1制御部は、前記第1分散台帳ネットワークを参照し、前記分散型識別子に紐付けられる前記検証鍵を抽出する。第2制御部は、前記第2分散台帳ネットワークを参照し、前記トークンへのアクセス情報を用いて、認証対象となる前記暗号化されたデータを抽出する。復号部は、前記復号鍵を用いて前記暗号化されたデータを復号する。検証部は、前記検証鍵を用いて前記トークンに付与された署名を検証し、前記本人確認情報を用いて復号されたデータを検証する。
【発明の効果】
【0011】
すなわちこの発明によれば、ロバストかつ柔軟な情報管理を実現できる。
【図面の簡単な説明】
【0012】
【
図1】
図1は、本実施形態に係る管理システムの概念図である。
【
図2】
図2は、本実施形態に係る利用者端末を示すブロック図である。
【
図3】
図3は、本実施形態に係る認証者端末を示すブロック図である。
【
図4】
図4は、本実施形態に係る登録者端末を示すブロック図である。
【
図5】
図5は、本実施形態に係る管理システムのDIDの登録処理の一例を示すシーケンス図である。
【
図6】
図6は、本実施形態に係る管理システムのDIDの登録処理の一例を示すシーケンス図である。
【
図7】
図7は、本実施形態に係る管理システムのDIDの認証処理の一例を示すシーケンス図である。
【
図8】
図8は、本実施形態に係る管理システムのDIDの認証結果の記録処理の一例を示すシーケンス図である。
【
図9】
図9は、DIDに追加情報を登録する場合の管理システムでのDIDの登録処理の一例を示すシーケンス図である。
【
図10】
図10は、DIDに追加情報を登録する場合の管理システムでのDIDの登録処理の一例を示すシーケンス図である。
【
図11】
図11は、本実施形態に係る管理システムの追加情報の確認処理の一例を示すシーケンス図である。
【発明を実施するための形態】
【0013】
以下、図面を参照しながら本開示の一実施形態に係る利用者端末、認証者端末、登録者端末、管理システムおよびプログラムについて詳細に説明する。なお、以下の実施形態では、同一の番号を付した部分については同様の動作を行うものとして、重ねての説明を省略する。
【0014】
本実施形態に係る管理システムについて
図1の概念図を参照して説明する。
本実施形態に係る管理システム10は、利用者端末1と、認証者端末2と、ストレージサービス8と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5と、登録者端末3とを含む。
【0015】
利用者端末1は、分散型識別子(DID)を生成し、DIDと紐付けるデータ(紐付け用データともいう)を生成する端末である。紐付け用データは、本実施形態では、例えば本人を含む個人、組織または物に関するデータ、または当該データに付帯するメタデータを想定するが、DIDと紐付けて管理することに意味があるデータであればどのようなものでもよい。
利用者端末1は、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5と、ストレージサービス8とに接続可能である。また、利用者端末1は、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5と、ストレージサービス8とにそれぞれ接続可能なアカウントおよびアカウントに紐付く署名鍵と対応する検証鍵とを管理する。なお、署名鍵は、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5と、ストレージサービス8とで共通の値を用いてもよいし、それぞれ異なる値を用いてもよい。署名鍵は、利用者端末1の格納部12またはSIM(Subscriber Identity Module)などに保存されてもよいし、クラウドサーバ、専用デバイス、紙などの利用者端末1とは異なる保存場所で管理されてもよい。
【0016】
認証者端末2は、利用者端末1が生成したDIDと、第2分散台帳ネットワーク5上に生成されたトークンとの紐付けを認証する端末である。本実施形態では、認証者端末2は、社会的立場を有する認証機関を想定するが、これに限らず、真正な認証を行う機関、組織または個人でもよい。認証者端末2は、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5と、ストレージサービス8とにアクセス可能である。認証者端末2も利用者端末1と同様に、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5に接続可能なアカウントに紐付く署名鍵を管理する。
【0017】
登録者端末3は、利用者端末1が生成したDIDと紐付けるための新たな情報(以下、追加情報という)を生成する端末である。登録者端末3も利用者端末1または認証者端末2と同様に、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5と、ストレージサービス8とにアクセス可能である。さらに、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5に接続可能なアカウントに紐付く署名鍵を管理する。
【0018】
第1分散台帳ネットワーク4は、特定の管理者を必要としない非中央集権型の分散台帳技術を用いたネットワークである。第1分散台帳ネットワーク4は、ここではkey-valueストア形式でデータを登録可能なNamecoinなどのブロックチェーンネットワークを想定するが、少なくとも2つの要素を関連づけて分散台帳で管理でき、トランザクションの検証、実行、台帳への登録の過程で、特定の管理者により後天的に登録された処理を含まない分散台帳技術であればよい。
【0019】
第2分散台帳ネットワーク5は、特定の管理者が必要となる、論理的な中央集権型の分散台帳技術を用いたネットワークである。第2分散台帳ネットワーク5は、ここではスマートコントラクトなどのブロックチェーンの応用に関する分散型アプリケーション(DApps)を実現可能な、EOS、イーサリアムなどのブロックチェーンネットワークを想定するが、トランザクションにより実行されるプログラムの登録や管理が特定の管理者により後天的に行われる分散台帳技術を用いたネットワークであればよい。
【0020】
ストレージサービス8は、利用者端末1から取得した本人情報などをファイルとして、データベースなどで管理するサービスである。ストレージサービス8は、ファイルを登録した場合、当該ファイルの登録識別子(登録ID)を発行する。登録IDは、当該ファイルを一意に識別する識別子であり、ファイル識別子ともいう。ストレージサービス8は、サーバ(図示せず)がファイルを管理する中央集権型でもよいし、IPFS(InterPlanetary File System)やSwarmなどの、ストレージサービス8の維持に関与する各端末が分散してP2P(Peer to Peer)ネットワークでファイルを管理する非中央集権型でもよい。
【0021】
なお、本実施形態では、第1分散台帳ネットワーク4と第2分散台帳ネットワーク5とは、異なる独立のネットワークを想定するが、基盤に先天的に備わった、特定の管理者を必要としないデータ処理の層と、後天的に特定の管理者により登録されたプログラムによるデータ処理の層とを区別して利用可能であれば、1つの分散台帳ネットワークで第1分散台帳ネットワーク4および第2分散台帳ネットワーク5を構成してもよい。
【0022】
なお、利用者端末1、認証者端末2および登録者端末3は、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5に属し、それぞれのネットワークを維持するためのノード機能を有してもよい。ノード機能は、トランザクションの検証処理や承認処理、台帳情報(ブロック情報、ステートデータベースなど)の更新および保持を行なう機能である。
【0023】
なお、利用者端末1、認証者端末2および登録者端末3以外にも、ノード機能を代替する端末(別ノードという)が第1分散台帳ネットワーク4および第2分散台帳ネットワーク5に存在してもよい。
図1の例では、第1分散台帳ネットワーク4を維持する別ノード6が存在してもよいし、第2分散台帳ネットワーク5を維持する別ノード7が存在してもよい。利用者端末1、認証者端末2および登録者端末3は、ノード機能を代替する別ノード6および別ノード7が存在する場合は、ノード機能を含まなくともよい。なお、本実施形態では、利用者端末1、認証者端末2および登録者端末3もノード機能を実行する場合について説明する。
【0024】
次に、本実施形態に係る利用者端末1について
図2のブロック図を参照して説明する。
利用者端末1は、処理回路11と、格納部12と、通信インタフェース13とを含む。処理回路11は、取得部111と、生成部112と、暗号化部113と、第1分散台帳制御部114と、第2分散台帳制御部115と、通信制御部116とを含む。
【0025】
取得部111は、DIDに紐付けるための本人情報およびストレージサービス8に登録するためのファイルを取得する。また、取得部111は、ストレージサービス8から登録IDを取得する。
【0026】
生成部112は、DID用の署名鍵と署名鍵に対応する検証鍵とを生成する。生成部112は、検証鍵を用いて利用者に関するDIDを生成する。また、生成部112は、DIDに紐付けるための、紐付け用データを生成してもよい。
【0027】
暗号化部113は、紐付け用データを暗号化する。暗号化の方式は、例えば、共通鍵を用いた共通鍵暗号方式を想定するが、セキュリティ強度が担保された暗号化方式であれば、どのような方式を用いてもよい。
【0028】
第1分散台帳制御部114は、DIDと検証鍵とを含む登録トランザクションを生成する。第1分散台帳制御部114は、登録トランザクションを第1分散台帳ネットワーク4に送信する。また、第1分散台帳制御部114は、第1分散台帳ネットワークを維持するためのノード機能を実行する。なお、ストレージサービス8に本人情報が登録される場合、第1分散台帳制御部114は、ストレージサービス8から発行された登録IDを登録トランザクションに含める。
【0029】
第2分散台帳制御部115は、利用者のデータとDIDとを含む署名対象メッセージと、当該署名対象メッセージに利用者の署名鍵でデジタル署名することで得られる署名値とを含む、トークンデータに関するトークントランザクションを生成する。トークンデータは、トークンの発行に関するデータである。第2分散台帳制御部115は、トークントランザクションを第2分散台帳ネットワーク5に送信する。第2分散台帳制御部115は、第1分散台帳制御部114と同様にノード機能を実行する。
【0030】
通信制御部116は、ストレージサービス8と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5との間のデータ通信を制御する。特に、通信制御部116が、ストレージサービス8にデータを送信し、データに関する登録IDを受信する処理を行う場合は、登録部とも呼ぶ。
【0031】
格納部12は、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5の台帳データ、トランザクション発行用の鍵ペア、紐付け証明用の鍵ペア、ファイル、自身が発行した登録トランザクションの識別子(登録トランザクションIDともいう)、トークンへのアクセス情報などを格納する。トークンへのアクセス情報は、トークンに格納された情報、またはトークン生成に使用されたトークントランザクションに格納された情報を参照するための情報であり、具体的には、例えば、トークントランザクションの識別子(トークントランザクションIDともいう)、コントラクトアドレス、アクセス用インターフェース情報、トークンに振るまたは振られるIDが挙げられる。
【0032】
通信インタフェース13は、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5と、ストレージサービス8との間で、それぞれデータ通信するためのインタフェースである。通信インタフェース13は、一般的に用いられている通信インタフェースを用いればよいため、ここでの説明は省略する。
【0033】
次に、本実施形態に係る認証者端末2について
図3のブロック図を参照して説明する。
認証者端末2は、処理回路21と、格納部22と、通信インタフェース23とを含む。処理回路21は、取得部211と、復号部212と、検証部213と、第1分散台帳制御部214と、第2分散台帳制御部215と、通信制御部216とを含む。
【0034】
取得部211は、利用者端末1からの認証依頼として、例えばDIDと本人確認情報と復号鍵とを取得する。本人確認情報は、運転免許証、保険証、パスポートなどDIDを利用するサービスから要求される、本人を証明するための書類から得られる情報であればよい。復号鍵は、暗号化された紐付け用データを復号するための鍵である。
【0035】
復号部212は、復号鍵を用いて暗号化された紐付け用データを復号する。
検証部213は、検証鍵を用いてトークンに付与された署名を検証し、本人確認情報を用いて復号された紐付け用データを検証する。
【0036】
第1分散台帳制御部214は、第1分散台帳ネットワーク4を参照し、検証鍵を抽出する。
第2分散台帳制御部215は、第2分散台帳ネットワーク5を参照し、トークンへのアクセス情報を用いて、認証対象となる暗号化された紐付け用データを抽出する。
なお、第1分散台帳制御部214と第2分散台帳制御部215とはそれぞれ、登録者端末の第1分散台帳制御部114と第2分散台帳制御部115と同様のノード機能を実現する。
通信制御部217は、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5と、ストレージサービス8との間のデータ通信を制御する。
【0037】
格納部22は、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5の台帳データ、トランザクション発行用の鍵ペア、トークンへのアクセス情報、または必要に応じて登録トランザクションIDなどを格納する。
通信インタフェース23は、利用者端末1の通信インタフェース13とほぼ同様の処理を行う。
【0038】
次に、本実施形態に係る登録者端末3について
図4のブロック図を参照して説明する。
登録者端末3は、処理回路31と、格納部32と、通信インタフェース33とを含む。処理回路31は、取得部311と、復号部312と、情報生成部313と、暗号化部314と、検証部315と、第1分散台帳制御部316と、第2分散台帳制御部317と、通信制御部318とを含む。
【0039】
取得部311は、利用者端末1から、DID、復号鍵、本人確認情報およびトークンへのアクセス情報などを受け取る。
復号部312は、復号部212と同様に、復号鍵を用いて暗号化された紐付け用データを復号する。
情報生成部313は、紐付け用データとは別にDIDに新たに紐づける、追加情報を生成する。
暗号化部314は、追加情報を暗号化する。暗号化方式は、暗号化部113と同様の方式を用いればよい。
検証部315は、検証部213と同様に、検証鍵を用いてトークンに付与された署名を検証し、本人確認情報を用いて復号された紐付け用データを検証する。
【0040】
第1分散台帳制御部316は、第1分散台帳ネットワーク4を参照し、DIDに紐付けられた検証鍵とを抽出する。
第2分散台帳制御部317は、第2分散台帳ネットワーク5を参照し、トークンへのアクセス情報を用いて、認証対象となる暗号化された紐付け用データを抽出する。
なお、第1分散台帳制御部316と第2分散台帳制御部317とはそれぞれ、登録者端末の第1分散台帳制御部114と第2分散台帳制御部115と同様のノード機能を実現する。
通信制御部318は、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5と、ストレージサービス8との間のデータ通信を制御する。
【0041】
格納部32は、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5の台帳データ、トランザクション発行用の鍵ペア、トークンへのアクセス情報などを格納する。
通信インタフェース33は、利用者端末1の通信インタフェース13とほぼ同様の処理を行う。
【0042】
なお、利用者端末1の処理回路11、認証者端末2の処理回路21および登録者端末3の処理回路31はそれぞれ、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)などのプロセッサ、または、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)などの集積回路で構成される。上述した処理回路11および処理回路21の各部は、プロセッサまたは集積回路が処理プログラムを実行することで、プロセッサまたは集積回路の一機能として実現されてもよい。
【0043】
また、利用者端末1の格納部12、認証者端末2の格納部22および登録者端末3の格納部32はそれぞれ、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリなどの一般的に用いられる記憶媒体で構成される。
【0044】
次に、本実施形態に係る管理システム10でのDIDの登録処理について
図5および
図6のシーケンス図を参照して説明する。
図5は、利用者端末1と、第1分散台帳ネットワーク4との間のデータ送受信に関する時系列を示すシーケンスである。なお、以下の
図5から
図11までのシーケンス図でも同様であるが、図示されない端末(利用者端末1、認証者端末2および登録者端末3)も、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5の維持のためにノードとして参加してもよい。
図5の例では、認証者端末2および登録者端末3がノードとして第1分散台帳ネットワーク4におけるトランザクションの検証および承認を実行してもよい。
【0045】
ステップS501では、利用者端末1の生成部112が、DID用の署名鍵と署名鍵に対応する検証鍵を生成する。
ステップS502では、利用者端末1の生成部112が、検証鍵を用いてDIDを作成する。例えば、検証鍵のハッシュ値をDIDとすればよい。なお、検証鍵のハッシュ値のハッシュ値、つまりダブルハッシュをDIDとしてもよく、値の衝突が発生しないような一意に識別可能な値であれば、どのような値をDIDとしてもよい。
【0046】
ステップS503では、利用者端末1の第1分散台帳制御部114が、DIDと検証鍵とを含む登録トランザクションを生成する。第1分散台帳制御部114は、登録トランザクションを有効なトランザクションとするため、登録トランザクションに対して第1分散台帳ネットワーク4を利用するために生成された署名鍵でデジタル署名を行ない、デジタル署名された登録トランザクションを第1分散台帳ネットワーク4にブロードキャストする。
ステップS504では、第1分散台帳ネットワーク4においてノード機能を有する複数の端末が、コンセンサスアルゴリズムにより、登録トランザクションを検証する。当該登録トランザクションが所定の要件を満たしていれば、登録トランザクションがブロックに取り込まれる。ここでは登録トランザクションが所定の要件を満たすとして、第1分散台帳ネットワーク4により登録トランザクションが承認(confirm)される。
【0047】
ステップS505では、利用者端末1の第1分散台帳制御部114が、第1分散台帳ネットワーク4から登録トランザクションの登録結果を受信する。登録結果は、例えば、登録トランザクションと承認結果(True or Falseまたはステータスコード)、登録トランザクションがブロックに登録された場合、そのブロック番号である。
ステップS506では、例えば利用者端末1の通信制御部116が、利用者端末1の利用者に対してDIDの作成の完了通知を行う。通知方法としては、画面に作成完了の旨を表示する、音声や音で通知するなどどのような方法でもよい。
【0048】
次に
図6は、利用者端末1と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5と、ストレージサービス8との間のデータ送受信に関する時系列を示すシーケンスである。
なお、以下に示す
図6から
図9までの例では、紐付け用データとして、例えば利用者の個人情報などの本人情報を想定する。また、暗号化された本人情報のメタデータがトークンに含まれ、暗号化された本人情報自体(またはトークンに含まれる本人情報の残りのデータ)がファイルとしてストレージサービス8に登録される場合を想定する。
【0049】
ステップS601では、利用者端末1の生成部112が、本人情報を作成する。ここでは、本人情報と本人情報のメタデータとを作成する。
ステップS602では、利用者端末1の暗号化部113が、ステップS601で作成した本人情報と本人情報のメタデータとを共通鍵で暗号化する。
ステップS603では、利用者端末1の通信制御部116が、通信インタフェース13を介して暗号化された本人情報をストレージサービス8に送信する。
【0050】
ステップS604では、ストレージサービス8が、暗号化された本人情報を登録し、管理が開始される。
ステップS605では、ストレージサービス8が、登録した本人情報に対するID(以下、登録IDという)を発行する。登録IDは、例えば、フィンガープリントのようなファイルのハッシュ値から作られる文字列でもよいし、ハッシュ値から作られる文字列に加えて、サービス提供者を示すフレーズを含めたIDでもよい。または、URI(Uniform Resource Identifier)のような識別子であってもよい。すなわち、登録した本人情報を一意に識別可能な識別子が発行されればよい。利用者端末1の通信制御部116が、登録IDを受信することで、ストレージサービス8への本人情報の登録処理が完了する。
【0051】
ステップS606では、DID(またはDIDのハッシュ値)、暗号化された本人情報のメタデータおよび登録IDを含むトークン発行に関する署名対象メッセージと、署名対象メッセージを署名鍵でデジタル署名した署名値とを含むトークントランザクションを生成する。利用者端末1の第2分散台帳制御部115は、トークントランザクションを有効なトランザクションとするため、トークントランザクションに対して第2分散台帳ネットワーク5を利用するために生成された署名鍵によりデジタル署名を行ない、デジタル署名されたトークントランザクションを第2分散台帳ネットワーク5にブロードキャストする。
ステップS607では、第2分散台帳ネットワーク5が、コンセンサスアルゴリズムにより、トークントランザクションを検証する。当該トークントランザクションが所定の要件を満たしていれば、トークントランザクションがブロックに取り込まれる。ここではトークントランザクションが所定の要件を満たすと仮定して、第2分散台帳ネットワーク5によりトークントランザクションが承認される。
【0052】
ステップS608では、例えば利用者端末1の第2分散台帳制御部115が、第2分散台帳ネットワーク5からトークントランザクションの登録結果を受信する。登録結果は、例えばトークントランザクションと承認結果(True or Falseまたはステータスコード)、トークントランザクションがブロックに登録された場合、そのブロック番号である。
ステップS609では、すでに第1分散台帳ネットワーク4上で承認されているDIDに対して、第2分散台帳ネットワーク5上で承認されたトークンの情報を紐付ける。具体的には、利用者端末1の第1分散台帳制御部114が、DIDとトークンの識別情報とを含む登録トランザクションを生成する。トークンの識別情報は、言い換えればトークンへのアクセス情報であり、トークントランザクションに付与されたトランザクションIDやトークントランザクションが取り込まれたブロック番号があげられる。また、トークンの識別情報として、ユニークなIDを新たに生成してもよい。例えば、「Token:コントラクトID:トークン識別子」のように、コロン「:」でコントラクトIDおよびトークン識別子を区切って接続することで生成されたユニークなIDをトークンへの識別情報として用いればよい。第1分散台帳制御部114は、登録トランザクションを有効なトランザクションとするため、登録トランザクションに対して第1分散台帳ネットワーク4を利用するために生成された署名鍵でデジタル署名を行ない、デジタル署名された登録トランザクションを第1分散台帳ネットワーク4にブロードキャストする。
【0053】
ステップS610では、第1分散台帳ネットワーク4においてノード機能を有する複数の端末が、コンセンサスアルゴリズムにより、登録トランザクションを検証する。当該登録トランザクションが所定の要件を満たしていれば、登録トランザクションがブロックに取り込まれる。ここでは登録トランザクションが所定の要件を満たすとして、第1分散台帳ネットワーク4により登録トランザクションが承認(confirm)される。
【0054】
ステップS611では、利用者端末1の第1分散台帳制御部114が、第1分散台帳ネットワーク4から登録トランザクションの登録結果を受信する。登録結果は、例えば、登録トランザクションと承認結果(True or Falseまたはステータスコード)、登録トランザクションがブロックに登録された場合、そのブロック番号である。
ステップS612では、例えば利用者端末1の通信制御部116が、利用者に対して、暗号化された本人情報とDIDとの紐付けの完了通知を行う。
【0055】
なお、
図6の例では、ストレージサービス8に暗号化された本人情報を登録する例を示すが、ストレージサービス8に暗号化された本人情報を登録しなくともよい。この場合は、トークントランザクションに、DIDと暗号化された本人情報とを含む署名対象メッセージと署名値とを含めばよいため、
図6に示すステップS603からステップS605までの処理は省略される。
また、ストレージサービス8に暗号化された本人情報を登録し、トークントランザクションには暗号化された本人情報のメタデータを含まずに登録IDを含む場合であってもよい。この場合は、ステップS606において、DIDと登録IDとを含む署名対象メッセージと署名値とを含むトークントランザクションが生成される。
【0056】
次に、本実施形態に係る管理システム10のDIDの認証処理について
図7を参照して説明する。
図7は、利用者端末1と、認証者端末2と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5と、ストレージサービス8との間のデータ送受信に関する時系列を示すシーケンスである。
【0057】
図7では、説明の便宜上、シーケンスにおける「要求」および「返却」は、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5にアクセスしているように図示するが、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5に直接アクセスせずに、認証者端末2の内部処理で実現することもできる。これは、各端末(利用者端末1、認証者端末2および登録者端末3)がノードとして第1分散台帳ネットワーク4および第2分散台帳ネットワーク5に参加している場合は、端末自身が分散台帳ネットワークの一部を担うからである。つまり、各端末が保持する分散台帳を参照することで、検証者の要求に合致するトランザクションおよび各種データなどを抽出すればよい。
【0058】
ステップS701では、利用者端末1から、認証者端末2に対して認証依頼を通知する。認証依頼は、例えば、利用者のDIDと、復号鍵と、本人確認情報と、トークンへのアクセス情報とを、例えばメールやメッセージアプリケーションで通知すればよい。復号鍵は、暗号化された本人情報のメタデータと、ストレージサービス8に登録された暗号化された本人情報とを復号するための鍵である。なお、第2分散台帳ネットワーク5で保持されるトークンにDIDが含まれている場合は、認証依頼として通知すべき情報に、利用者のDIDを含めなくてもよい。
【0059】
ステップS702では、認証者端末2の第2分散台帳制御部215が、トークンのアクセス情報を検索キーとするなどにより認証対象のトークンを指定して、第2分散台帳ネットワーク5に対し、DID、暗号化された本人情報のメタデータおよび登録IDを含む署名対象メッセージとその署名値とを要求する。なお、具体的には、例えば対応するトークンのAPIまたはトークントランザクションを用いて、必要な情報を要求すればよい。
【0060】
ステップS703では、第2分散台帳ネットワーク5から、認証者端末2からの要求に応じて、DID、暗号化された本人情報のメタデータおよび登録IDを含む署名対象メッセージと、その署名値とが返却される。なお、ステップ702およびステップS703の処理は、認証者端末2の第2分散台帳制御部215が、第2分散台帳ネットワーク5を参照して、DIDと、暗号化された本人情報のメタデータと、登録IDと、署名値とを抽出する処理として実行されてもよい。
【0061】
ステップS704では、認証者端末2の第1分散台帳制御部214が、第1分散台帳ネットワーク4に対し、抽出したDIDと同一のDIDに紐付けられる検証鍵を要求する。
【0062】
ステップS705では、第1分散台帳ネットワーク4が、認証者端末2からの要求に応じて、DIDに対応する検証鍵を返却する。なお、ステップ704およびステップS705の処理は、認証者端末2の第1分散台帳制御部214が、第1分散台帳ネットワーク4を参照してDIDおよび署名値を抽出する処理として実行されてもよい。また、例えばBitcoin Coreで第1分散台帳ネットワーク4を実現する場合、台帳から登録トランザクションIDと一致する登録トランザクションを検索して、登録トランザクションからDIDに紐付く検証鍵を取得すればよい。
【0063】
ステップS706では、認証者端末2の検証部213が、検証鍵で署名値を検証する。検証鍵による署名値の検証は、一般的なデジタル署名における検証方法を用いればよい。検証によって署名値が真正であると判定された場合は、利用者が第2分散台帳ネットワーク5に送信した真正なトークンであると判定でき、署名値が真正でないと判定された場合は、不正なトークンであると判定できる。
ステップS707では、認証者端末2の通信制御部216が、登録IDを指定してストレージサービス8に対して暗号化された本人情報を要求する。
【0064】
ステップS708では、ストレージサービス8が、登録IDに対応する暗号化された本人情報をデータベースから検索し、認証者端末2に送信する。
【0065】
ステップS709では、認証者端末2の復号部212が、暗号化された本人情報のメタデータおよび暗号化された本人情報を、ステップS701で取得した復号鍵により復号する。
ステップS710では、認証者端末2の検証部214が、復号された本人情報と本人確認書類との整合性を検証する。復号された本人情報と本人確認書類に開示される内容とが同一であれば、本人情報が真正であると判定できる。一方、復号された本人情報と本人確認書類に開示される内容とが同一でなければ、本人情報または本人確認書類のどちらかが不正な可能性があると判定できる。
【0066】
なお、ストレージサービス8に暗号化された本人情報を登録しない場合は、トークントランザクションに暗号化された本人情報が含まれ、ステップS703において暗号化された本人情報が返却されるため、ステップS707およびステップS708を省略し、ステップS709において当該暗号化された本人情報を復号すればよい。
一方、ストレージサービス8に暗号化された本人情報を登録し、トークントランザクションには登録IDのみを含む場合は、ステップS703において抽出した登録IDに基づき、ステップS708においてストレージサービス8から暗号化された本人情報が認証者端末2に返却されるので、ステップS709において当該暗号化された本人情報を復号すればよい。
【0067】
また、認証者端末2は、第1分散台帳ネットワーク4において、利用者端末1から直接または間接的に登録トランザクションIDの共有を受け、共有された登録トランザクションIDを格納部22に保存してもよい。第2分散台帳制御部215は、ステップS704において、格納部22に保存された共有された登録トランザクションIDを参照することで、効率的に検証鍵の抽出が実行できる。例えば、ビットコインの分散台帳ネットワークを第1分散台帳ネットワーク4として活用する場合、登録トランザクションIDが共有されていれば、検証鍵を抽出する際に有益である。
【0068】
次に、本実施形態に係る管理システム10のDIDの認証結果の記録処理について
図8のシーケンス図を参照して説明する。
図8は、利用者端末1と、認証者端末2と、第2分散台帳ネットワーク5との間のデータ送受信に関する時系列を示すシーケンスである。
【0069】
ステップS801では、認証者端末2の第2分散台帳制御部215が、検証結果を記録するための登録トランザクションを生成する。生成される登録トランザクションは、認証者のID、認証した日付、どのような方法で本人情報を確認したかを示す確認手段などを含むトランザクションを想定するが、確認した本人情報の種類などその他の情報を含めたトランザクションとしてもよい。
【0070】
認証者端末2の第2分散台帳制御部215は、生成した登録トランザクションに対して第2分散台帳ネットワーク5を利用するために生成された署名鍵でデジタル署名を行い、デジタル署名された登録トランザクションを第2分散台帳ネットワーク5にブロードキャストする。
【0071】
ステップS802では、第2分散台帳ネットワーク5が、コンセンサスアルゴリズムにより、登録トランザクションを検証する。当該登録トランザクションが所定の要件を満たしていれば、登録トランザクションがブロックに取り込まれる。ここでは登録トランザクションが所定の要件を満たすと仮定して、第2分散台帳ネットワーク5により登録トランザクションが承認される。
【0072】
ステップS803では、認証者端末2の第2分散台帳制御部215が、第2分散台帳ネットワーク5から登録トランザクションの登録結果を受信する。登録結果は、例えば登録トランザクションと承認結果(True or Falseまたはステータスコード)、登録トランザクションがブロックに登録された場合、そのブロック番号である。
【0073】
ステップS804では、例えば利用者端末1の取得部111が、認証者端末2から登録結果を受信する。これにより、利用者端末1の利用者は、自身がDIDに紐づけた情報が正しい情報であるとして認証され、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5に登録されたことを確認できる。
【0074】
次に、DIDに追加情報を登録する場合の管理システム10でのDIDの登録処理について
図9および
図10を参照して説明する。
図9は、利用者端末1と、登録者端末3と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5と、ストレージサービス8との間のデータ送受信に関する時系列を示すシーケンスである。
【0075】
ステップS901では、利用者端末1が登録者端末3に情報を通知する。具体的には、登録者端末3の取得部311が、DID、復号鍵、本人確認情報およびトークンへのアクセス情報を取得する。
ステップS702からステップS709までの処理は、登録者端末3が、
図7に示す認証者端末2の処理を同様に実行すればよいため、ここでの説明は省略する。
ステップS902では、復号された本人情報が認証者端末2により認証済みであるか否かを確認する。ステップS706において、検証鍵によりトークンから取得した署名が真正であることを検証でき、さらに、当該ステップS901においてトークンがDIDの認証者により認証を受けていること、および、本人情報を復号して、登録する情報を紐づけようとしている本人情報が正しいことを確認できればよい。
【0076】
なお、ステップS901において、利用者端末1からDIDの持ち主であることを証明する署名を登録者端末3に通知してもよい。例えば、利用者端末1から通知されるDID、復号鍵およびトークンへのアクセス情報に対してデジタル署名を付与してもよい。この場合ステップS902において、登録者端末3が、通知されたデジタル署名を例えばステップS706と同様の方法で検証し、利用者端末1がDIDの持ち主であることを確認してもよい。
【0077】
次に
図10は、利用者端末1と、登録者端末3と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5と、ストレージサービス8との間のデータ送受信に関する時系列を示すシーケンスである。
なお、
図10および
図11では、暗号化された追加情報のメタデータがトークンに含まれ、暗号化された追加情報自体(またはトークンに含まれる追加情報の残りのデータ)がファイルとしてストレージサービス8に登録される場合を想定する。
【0078】
ステップS1001では、登録者端末3の情報生成部313が、DIDに紐づける追加情報を生成する。
ステップS1002では、登録者端末3の暗号化部314が、追加情報を暗号化する。暗号化方式については、ステップS602と同様であればよい。
ステップS1003では、登録者端末3の通信制御部318が、通信インタフェース33を介して暗号化された追加情報をストレージサービス8に送信する。
【0079】
ステップS1004では、ストレージサービス8が、暗号化された追加情報を登録する。
ステップS1005では、ストレージサービス8が、登録した追加情報に対するID(以下、追加登録IDという)を発行する。追加登録IDは、登録IDと同様な形式を想定する。
【0080】
ステップS1006では、登録者端末3が、暗号化した追加情報と、追加登録IDとを、第2分散台帳ネットワーク5上のトークンに登録する。例えば、登録者端末3は、暗号化された追加情報または追加登録IDを含む追加情報メタデータを、利用者端末1から提示されたトークンに登録する。
または、新規にトークンを作成するため、暗号化した追加情報と追加登録IDとを含む新規のトークントランザクションを生成し、当該トークントランザクションをブロードキャストする。ここでは、新規のトークントランザクションを生成した場合を想定する。
【0081】
ステップS1007では、新規のトークントランザクションが生成された場合、第2分散台帳ネットワーク5が、コンセンサスアルゴリズムにより、トークントランザクションを検証する。ここでは、第2分散台帳ネットワーク5によりトランザクションが承認される場合を想定する。
【0082】
ステップS1008では、登録者端末3の第2分散台帳制御部317が、第2分散台帳ネットワーク5からトークントランザクションの登録結果を受信する。
ステップS1009では、例えば登録者端末3の通信制御部318が、登録者端末3から登録結果と暗号化した追加情報を復号するための復号鍵とを送信する。
【0083】
ステップS1010では、例えば利用者端末1の取得部111が、登録者端末3から登録結果と復号鍵とを受信する。
【0084】
次に、管理システム10による追加情報の確認処理について、
図11のシーケンス図を参照して説明する。
図11は、利用者端末1と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5およびストレージサービス8との間のデータ送受信に関する時系列を示すシーケンスである。
【0085】
ステップS1101では、利用者端末1の第2分散台帳制御部115は、追加情報を取得するべく、登録者端末3により登録されたトークンを指定して、第2分散台帳ネットワーク5に対し、暗号化された追加情報とストレージサービス8に登録されたファイルの追加登録IDとを要求する。
【0086】
ステップS1102では、第2分散台帳ネットワーク5から、利用者端末1からの要求に応じて、暗号化された追加情報のメタデータと追加登録IDとが返却される。
【0087】
ステップS1103では、例えば利用者端末1の通信制御部116が、追加登録IDを用いて、ストレージサービス8に追加登録IDに対応する暗号化された追加情報の取得依頼を要求する。
【0088】
ステップS1104では、ストレージサービス8が、登録IDに対応する暗号化された追加情報をデータベースから検索し、利用者端末1に送信する。
ステップS1105では、利用者端末1が、暗号化された追加情報のメタデータおよび暗号化された追加情報を、
図10に示すステップS1010で取得した復号鍵により復号する。その後利用者端末1が、復号された追加情報の内容を確認する。追加内容の確認は、利用者が登録者端末3により追加された追加情報が問題があるか否かを確認すればよい。
【0089】
ステップS1106では、利用者端末1の第2分散台帳制御部115が、ステップS1105における確認結果を登録するため、確認結果を含む登録トランザクションを生成し、第2分散台帳ネットワーク5にブロードキャストする。
ステップS1107では、第2分散台帳ネットワーク5が、コンセンサスアルゴリズムにより、登録トランザクションを検証する。当該登録トランザクションが所定の要件を満たしていれば、登録トランザクションがブロックに取り込まれる。ここでは登録トランザクションが所定の要件を満たすと仮定して、第2分散台帳ネットワーク5により登録トランザクションが承認される。
ステップS1108では、利用者端末1の第2分散台帳制御部115が、第2分散台帳ネットワーク5から登録トランザクションの登録結果を受信する。
【0090】
なお、追加情報についても、上述した本人情報の場合と同様に、ストレージサービス8に暗号化された追加情報を登録しなくてもよい。または、ストレージサービス8に暗号化された追加情報を登録し、トークントランザクションには、暗号化された追加情報のメタデータを含まず追加登録IDを含む場合であってもよい。
また、ステップS1108で受信した登録結果を、第1分散台帳ネットワーク4に登録したDIDと検証鍵との登録トランザクションに紐付けてもよい。
DIDに紐付く本人情報および追加情報に関して、第1分散台帳ネットワーク4で管理するか、第2分散台帳ネットワーク5で管理するかを利用者の選択に委ねてもよい。
【0091】
以上に示した実施形態によれば、共通性の高いDIDなどの情報を、特定の管理者を必要としない非中央集権型の分散台帳ネットワークで管理し、DIDに紐付ける紐付け用データまたは新たな情報である追加情報を、DAppsが実現される特定の管理者が必要となる論理的な中央集権型の分散台帳ネットワークで管理する。
これにより、共通性の高い情報と、特定用途の情報とを適切に扱うことができる。また、利用者の選択により、オープンな情報とクローズな情報とを区別して管理することできる。利用者は、どの情報を誰に開示するかという情報のコントロールが実現できる。
【0092】
また、DIDを利用する様々なポリシーを有するDAppsが増加したり、DAppsのポリシーに変更がある場合でも、検証のための基本的な仕組みを非中央集権型の分散台帳ネットワークで管理することで、1つのDAppsによるサービス(コントラクト)にプログラムバグや管理者による意図的なまたは偶発的な破壊などの障害が発生しても、単一障害点とならずに、他のサービスの真正性の検証に影響を及ぼさない。結果として、ロバストかつ柔軟な情報管理を実現できる。
【0093】
上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいてコンピュータで実行されることが可能である。
【0094】
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【0095】
10…管理システム
1…利用者端末
2…認証者端末
3…登録者端末
4…第1分散台帳ネットワーク
5…第2分散台帳ネットワーク
6,7…別ノード
8…ストレージサービス
11,21,31…処理回路
12,22,32…格納部
13,23,33…通信インタフェース
111,211,311…取得部
112…生成部
113,314…暗号化部
114,214,316…第1分散台帳制御部
115,215,317…第2分散台帳制御部
116,216,318…通信制御部
212,312…復号部
213,315…検証部
313…情報生成部