JP7424490B2 - 登録者端末、検証者端末、管理システムおよびプログラム - Google Patents

登録者端末、検証者端末、管理システムおよびプログラム Download PDF

Info

Publication number
JP7424490B2
JP7424490B2 JP2022532921A JP2022532921A JP7424490B2 JP 7424490 B2 JP7424490 B2 JP 7424490B2 JP 2022532921 A JP2022532921 A JP 2022532921A JP 2022532921 A JP2022532921 A JP 2022532921A JP 7424490 B2 JP7424490 B2 JP 7424490B2
Authority
JP
Japan
Prior art keywords
distributed ledger
ledger network
network
file
signature
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022532921A
Other languages
English (en)
Other versions
JPWO2022003864A1 (ja
Inventor
盛徳 大橋
啓太 鈴木
達郎 石田
昌義 近田
滋 藤村
篤 中平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2022003864A1 publication Critical patent/JPWO2022003864A1/ja
Application granted granted Critical
Publication of JP7424490B2 publication Critical patent/JP7424490B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

この発明は、分散台帳技術を利用した登録者端末、検証者端末、管理システムおよびプログラムに関する。
ビットコイン(登録商標)に代表される暗号通貨の取引においては、非中央集権型の分散台帳技術の一種であるブロックチェーンが用いられている。ブロックチェーンは、改ざんに対して高い堅牢性を有するため、暗号通貨以外の取引を行うスマートコントラクトなど様々な用途への利用が検討されている。スマートコントラクトを扱うことができるプログラマブルなブロックチェーンとして、例えば、汎用的な分散アプリケーションが実行できるイーサリアム(Ethereum)がある。
様々なスマートコントラクトを実現可能な分散台帳技術は、トランザクションをブロックにまとめ、ブロック間をハッシュで連関させるデータ構造を持つため、データサイズが大きなファイルの管理には不向きである。
分散型のファイル管理の方法として、コンテンツハッシュなどから作られるユニークな識別子(ID)でファイルを管理するストレージがある(例えば、非特許文献1参照)。また、当該ストレージにファイルを登録し、ファイルのIDを分散台帳に記録して管理する方法もある(例えば、非特許文献2参照)。
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〉
分散台帳と分散ファイルストレージとのように、別々のシステムをユーザ側で連携して併用する場合、2つのシステムそれぞれがユーザに対して提供する機能やIDの体系が異なるため、それぞれの系で持つ情報が常に整合が取れていることを保証できない。
例えば、分散台帳のトークンとファイルのIDとを関連づけて管理することを想定すると、あるトークンコントラクトにファイルIDを登録、別のトークンコントラクトに同じファイルIDを登録した場合、どちらが正しいかを判断できない。
先に生成され、分散台帳で承認されたコントラクトを正規なものとみなすという判定を行なった場合、無数にあるコントラクトを検索し、その中に記述されるトークンを全て抽出する必要性があり現実的ではない。ファイルの紐付けの管理のために新たなコントラクトを立てると、そのコントラクトに依存する関係になってしまう。結果として、特定のアプリケーションに論理的に依存する構造は、当該特定のアプリケーションが単一障害点となり得る。
この発明は上記事情に着目してなされたもので、その目的とするところは、ロバストかつ柔軟な情報管理を実現できる登録者端末、検証者端末、管理システムおよびプログラムを提供することにある。
上記目的を達成するために、この発明の一つの観点に係る登録者端末は、第1分散台帳ネットワークと第2分散台帳ネットワークとに接続可能である。登録者端末は、登録部と、第1制御部と、第2制御部とを含む。登録部は、外部のストレージサービスにファイルを登録する。第1制御部は、前記ストレージサービスにより前記ファイルに付与されたファイル識別子と、検証鍵とを含む登録トランザクションを生成し、前記登録トランザクションを前記第1分散台帳ネットワークに送信する。第2制御部は、前記ファイル識別子を含む署名対象メッセージと、前記署名対象メッセージを署名鍵でデジタル署名することで得られる署名値とを含む、トークンの生成に関するトークントランザクションを生成し、前記トークントランザクションを前記第2分散台帳ネットワークに送信する。
また、この発明の一つの観点に係る検証者端末は、第1分散台帳ネットワークと第2分散台帳ネットワークとに接続可能である。検証者端末は、第1抽出部と、第2抽出部と、検証部とを含む。第1抽出部は、前記第2分散台帳ネットワークを参照して、生成されたトークンへのアクセス情報を用いて、検証対象となるファイル識別子を含む署名対象メッセージと前記署名対象メッセージの署名値とを抽出する。第2抽出部は、前記第1分散台帳ネットワークを参照して、前記ファイル識別子と同一のファイル識別子に紐付く検証鍵を抽出する。検証部は、前記検証鍵を用いて前記署名値を検証する。
また、この発明の一つの観点に係る管理システムは、第1分散台帳ネットワークと、第2分散台帳ネットワークと、ストレージサービスとのそれぞれにアクセス可能であり、登録者端末および検証者端末を含む。登録者端末は、登録部と、第1制御部と、第2制御部とを含む。登録部は、前記ストレージサービスにファイルを登録する。第1制御部は、前記ストレージサービスにより前記ファイルに付与されたファイル識別子と、検証鍵とを含む登録トランザクションを生成し、前記登録トランザクションを前記第1分散台帳ネットワークに送信する。第2制御部は、前記ファイル識別子を含む署名対象メッセージと、前記署名対象メッセージを署名鍵でデジタル署名することで得られる署名値とを含む、トークンの生成に関するトークントランザクションを生成し、前記トークントランザクションを前記第2分散台帳ネットワークに送信する。前記検証者端末は、第1抽出部と、第2抽出部と、検証部とを含む。第1抽出部は、前記第2分散台帳ネットワークを参照して、発行された前記トークンへのアクセス情報を用いて、検証対象となるファイル識別子を含む署名対象メッセージと前記署名対象メッセージの署名値とを抽出する。第2抽出部は、前記第1分散台帳ネットワークを参照して、抽出した前記ファイル識別子と同一のファイル識別子および検証鍵を抽出する。検証部は、前記検証鍵を用いて前記署名値を検証する。
すなわちこの発明によれば、ロバストかつ柔軟な情報管理を実現できる。
図1は、本実施形態に係る管理システムの概念図である。 図2は、本実施形態に係る登録者端末を示すブロック図である。 図3は、本実施形態に係る検証者端末を示すブロック図である。 図4は、本実施形態に係る管理システムの登録処理の一例を示すシーケンス図である。 図5は、本実施形態に係る管理システムの紐付け検証処理の一例を示すシーケンス図である。 図6は、本実施形態に係る署名対象メッセージの一例を示す図である。
以下、図面を参照しながら本開示の一実施形態に係る登録者端末、検証者端末、管理システムおよびプログラムについて詳細に説明する。なお、以下の実施形態では、同一の番号を付した部分については同様の動作を行うものとして、重ねての説明を省略する。
本実施形態に係る管理システムについて図1の概念図を参照して説明する。
本実施形態に係る管理システム10は、登録者端末1と、検証者端末2と、ストレージサービス3と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5とを含む。
登録者端末1は、ファイルをストレージサービス3に登録する端末であり、ストレージサービス3と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5とに接続可能である。また、登録者端末1は、ストレージサービス3と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5とにそれぞれ接続可能なアカウントおよびアカウントに紐付く署名鍵と対応する検証鍵とを管理する。なお、署名鍵は、ストレージサービス3と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5とで共通の値を用いてもよいし、それぞれ異なる値を用いてもよい。署名鍵は、登録者端末1に保存されてもよいし、クラウドサーバ、専用デバイス、紙などの登録者端末1とは異なる保存場所で管理されてもよい。
検証者端末2は、登録者端末1がストレージサービス3に登録したファイルと、第2分散台帳ネットワーク5上に生成したトークンとの紐付けを検証する端末であり、ストレージサービス3と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5とにアクセス可能である。検証者端末2も登録者端末1と同様に、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5に接続可能なアカウントに紐付く署名鍵を管理する。
ストレージサービス3は、登録者端末1がファイルを登録し、登録されたファイルを管理するサービスである。ストレージサービス3は、ファイルを登録した場合、当該ファイルのファイルIDを発行する。ファイルIDは、当該ファイルを一意に識別する識別子であり、ファイル識別子ともいう。ストレージサービス3は、サーバ(図示せず)がファイルを管理する中央集権型でもよいし、IPFS(InterPlanetary File System)やSwarmなどの、ストレージサービス3の維持に関与する各端末が分散してP2P(Peer to Peer)ネットワークでファイルを管理する非中央集権型でもよい。
第1分散台帳ネットワーク4は、特定の管理者を必要としない非中央集権型の分散台帳技術を用いたネットワークである。第1分散台帳ネットワーク4は、ここではkey-valueストア形式でデータを登録可能なNamecoinなどのブロックチェーンネットワークを想定するが、少なくとも2つの要素を関連づけて分散台帳で管理でき、トランザクションの検証、実行、台帳への登録の過程で、特定の管理者により後天的に登録された処理を含まない分散台帳技術であればよい。
第2分散台帳ネットワーク5は、特定の管理者が必要となる、論理的な中央集権型の分散台帳技術を用いたネットワークである。第2分散台帳ネットワーク5は、ここではスマートコントラクトなどのブロックチェーンの応用に関する分散型アプリケーション(DApps)を実現可能な、EOS、イーサリアムなどのブロックチェーンネットワークを想定するが、トランザクションにより実行されるプログラムの登録や管理が特定の管理者により後天的に行われる分散台帳技術を用いたネットワークであればよい。
なお、本実施形態では、第1分散台帳ネットワーク4と第2分散台帳ネットワーク5とは、異なる独立のネットワークを想定するが、基盤に先天的に備わった、特定の管理者を必要としないデータ処理の層と、後天的に特定の管理者により登録されたプログラムによるデータ処理の層とを区別して利用可能であれば、1つの分散台帳ネットワークで第1分散台帳ネットワーク4および第2分散台帳ネットワーク5を構成してもよい。
なお、登録者端末1および検証者端末2は、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5に属し、それぞれのネットワークを維持するためのノード機能を有してもよい。ノード機能は、トランザクションの検証処理や承認処理、台帳情報(ブロック情報、ステートデータベースなど)の更新および保持を行なう機能である。
なお、登録者端末1および検証者端末2以外にも、ノード機能を代替する端末(別ノードという)が第1分散台帳ネットワーク4および第2分散台帳ネットワーク5に存在してもよい。図1の例では、第1分散台帳ネットワーク4を維持する別ノード6が存在してもよいし、第2分散台帳ネットワーク5を維持する別ノード7が存在してもよい。登録者端末1および検証者端末2は、ノード機能を代替する別ノード6および別ノード7が存在する場合は、ノード機能を含まなくともよい。なお、本実施形態では、登録者端末1および検証者端末2もノード機能を実行する場合について説明する。
次に、本実施形態に係る登録者端末1について図2のブロック図を参照して説明する。
登録者端末1は、処理回路11と、格納部12と、通信インタフェース13とを含む。処理回路11は、取得部111と、鍵生成部112と、第1分散台帳制御部113と、第2分散台帳制御部114と、通信制御部115とを含む。
取得部111は、ストレージサービス3に登録するためのファイルを取得する。
鍵生成部112は、ストレージサービス3への登録用、つまりファイルとトークンとの紐付け確認用となる、登録者の署名鍵および署名鍵に対応する検証鍵の鍵ペアを生成する。なお、鍵生成部112は、トランザクション発行用に、トランザクションにデジタル署名をするための署名鍵と対応する検証鍵とのペアを、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5それぞれについて生成してもよい。
第1分散台帳制御部113は、ストレージサービス3によりファイルに付与されたファイルIDと、検証鍵とを含む、登録トランザクションを生成する。第1分散台帳制御部113は、登録トランザクションを第1分散台帳ネットワーク4に送信する。また、第1分散台帳制御部113は、第1分散台帳ネットワークを維持するためのノード機能を実行する。
第2分散台帳制御部114は、ファイルIDを含む署名対象メッセージと、当該署名対象メッセージに登録者の署名鍵でデジタル署名することで得られる署名値とを含む、トークンデータに関するトークントランザクションを生成する。トークンデータは、トークン発行に関するデータである。第2分散台帳制御部114は、トークントランザクションを第2分散台帳ネットワーク5に送信する。第2分散台帳制御部114は、第1分散台帳制御部113と同様にノード機能を実行する。
通信制御部115は、ストレージサービス3と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5との間のデータ通信を制御する。特に、通信制御部115が、ストレージサービス3にファイルを送信し、ファイルIDを受信する処理を行う場合は、登録部とも呼ぶ。
格納部12は、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5の台帳データ、トランザクション発行用の鍵ペア、紐付け証明用の鍵ペア、ファイル、自身が発行した登録トランザクションの識別子(登録トランザクションIDともいう)、トークンへのアクセス情報などを格納する。トークンへのアクセス情報は、トークンに格納された情報、またはトークン生成に使用されたトークントランザクションに格納された情報を参照するための情報であり、具体的には、例えば、トークントランザクションの識別子(トークントランザクションIDともいう)、コントラクトアドレス、アクセス用インターフェース情報、トークンに振るまたは振られるIDが挙げられる。
通信インタフェース13は、ストレージサービス3と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5との間で、それぞれデータ通信するためのインタフェースである。通信インタフェース13は、一般的に用いられている通信インタフェースを用いればよいため、ここでの説明は省略する。
次に、本実施形態に係る検証者端末2について図3のブロック図を参照して説明する。
検証者端末2は、処理回路21と、格納部22と、通信インタフェース23とを含む。処理回路21は、取得部211と、第1抽出部212と、第2抽出部213と、検証部214と、第1分散台帳制御部215と、第2分散台帳制御部216と、通信制御部217とを含む。
取得部211は、後述の検証部214における検証処理により、トークンに格納された情報、またはトークン生成に使用されたトークントランザクションに格納された情報を検証し、格納情報の真正性が確認できた場合、ストレージサービス3から、ファイルIDに対応するファイルを取得する。
第1抽出部212は、第2分散台帳ネットワーク5を参照して、トークンへのアクセス情報を用いて、検証対象となるファイルIDを含む署名対象メッセージと署名値とを抽出する。
第2抽出部213は、第1分散台帳ネットワーク4を参照して、ファイルIDと同一のファイルIDに紐付く検証鍵を抽出する。
検証部214は、検証鍵を用いて署名値を検証する。
第1分散台帳制御部215と第2分散台帳制御部216とはそれぞれ、登録者端末1の第1分散台帳制御部113と第2分散台帳制御部114と同様のノード機能を実現する。
通信制御部217は、ストレージサービス3と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5との間のデータ通信を制御する。
格納部22は、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5の台帳データ、トランザクション発行用の鍵ペア、トークンへのアクセス情報、または、必要に応じて登録トランザクションIDなどを格納する。
通信インタフェース23は、登録者端末1の通信インタフェース13とほぼ同様の処理を行う。
なお、登録者端末1の処理回路11および検証者端末2の処理回路21はそれぞれ、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)などのプロセッサ、または、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)などの集積回路で構成される。上述した処理回路11および処理回路21の各部は、プロセッサまたは集積回路が処理プログラムを実行することで、プロセッサまたは集積回路の一機能として実現されてもよい。
また、登録者端末1の格納部12および検証者端末2の格納部22はそれぞれ、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フラッシュメモリなどの一般的に用いられる記憶媒体で構成される。
次に、本実施形態に係る管理システム10のファイル登録処理について図4のシーケンス図を参照して説明する。
図4は、登録者端末1と、検証者端末2と、ストレージサービス3と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5との間のデータ送受信に関する時系列を示すシーケンスである。なお、図示しないが、検証者端末2も分散台帳ネットワーク維持のためにノードとして参加してもよい。
ステップS401では、登録者端末1の取得部111が、格納部12または外部からファイルを取得し、通信制御部115が、ファイルをストレージサービス3に送信する。
ステップS402では、ストレージサービス3が、登録者端末1から受信したファイルを登録および管理を開始する。
ステップS403では、ストレージサービス3が、ファイルに対するファイルIDを発行し、当該ファイルIDを登録者端末1に送信する。ファイルIDは、例えば、フィンガープリントのようなファイルのハッシュ値から作られる文字列でもよいし、ハッシュ値から作られる文字列に加えて、サービス提供者を示すフレーズを含めたIDでもよい。または、URI(Uniform Resource Identifier)のような識別子であってもよい。すなわち、ファイルを一意に識別可能な識別子が発行されればよい。
登録者端末1の通信制御部115が、ファイルIDを受信することで、ストレージサービス3へのファイルの登録処理が完了する。
ステップS404では、登録者端末1の鍵生成部112が、ファイルIDとトークンとの紐付けを検証するための署名鍵および対応する検証鍵を生成する。なお、鍵生成部112は、署名鍵は、最初のファイルをストレージサービス3に登録する際に生成し、登録者がその後にファイルを登録する際には、署名鍵に基づいて検証鍵のみを生成するようにしてもよい。また、複数のファイルを登録する場合に、ファイルごとに、署名鍵と対応する検証鍵との鍵ペアを新しく生成するのではなく、同じ鍵対を使い回してもよい。
ステップS405では、登録者端末1の第1分散台帳制御部113が、ファイルIDと検証鍵とを含む登録トランザクションを生成する。第1分散台帳制御部113は、登録トランザクションを有効なトランザクションとするため、登録トランザクションに対して第1分散台帳ネットワーク4を利用するために生成された署名鍵でデジタル署名を行ない、デジタル署名された登録トランザクションを第1分散台帳ネットワーク4にブロードキャストする。
ステップS406では、第1分散台帳ネットワーク4においてノード機能を有する複数の端末が、コンセンサスアルゴリズムにより、登録トランザクションを検証する。当該登録トランザクションが所定の要件を満たしていれば、登録トランザクションがブロックに取り込まれる。ここでは登録トランザクションが所定の要件を満たすとして、第1分散台帳ネットワーク4により登録トランザクションが承認(confirm)される。
ステップS407では、登録者端末1の第1分散台帳制御部113が、第1分散台帳ネットワーク4から登録トランザクションの登録結果を受信する。登録結果は、例えば、登録トランザクションと承認結果(True or Falseまたはステータスコード)、登録トランザクションがブロックに登録された場合、そのブロック番号である。
ステップS408では、ファイルIDを含むトークン発行に関する署名対象メッセージと、署名対象メッセージを署名鍵でデジタル署名した署名値とを含むトークントランザクションを生成する。第2分散台帳制御部114は、トークントランザクションを有効なトランザクションとするため、トークントランザクションに対して第2分散台帳ネットワーク5を利用するために生成された署名鍵によりデジタル署名を行ない、デジタル署名されたトークントランザクションを第2分散台帳ネットワーク5にブロードキャストする。
ステップS409では、第2分散台帳ネットワーク5が、コンセンサスアルゴリズムにより、トークントランザクションを検証する。当該トークントランザクションが所定の要件を満たしていれば、トークントランザクションがブロックに取り込まれる。ここではトークントランザクションが所定の要件を満たすとして、第2分散台帳ネットワーク5によりトークントランザクションが承認される。
ステップS410では、登録者端末1が、第2分散台帳ネットワーク5からトークントランザクションの登録結果を受信する。登録結果は、例えばトークントランザクションと承認結果(True or Falseまたはステータスコード)、トークントランザクションがブロックに登録された場合、そのブロック番号である。
次に、本実施形態に係る管理システム10のファイルとトークンとの紐付け検証処理について図5のシーケンス図を参照して説明する。
図5は、検証者端末2と、ストレージサービス3と、第1分散台帳ネットワーク4と、第2分散台帳ネットワーク5とに関する、データのやりとりの時系列を示すシーケンスである。なお、図示しないが、登録者端末1も分散台帳ネットワーク維持のためにノードとして参加してもよい。
また、図5では、説明の便宜上、シーケンスにおける「要求」および「返却」は、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5にアクセスしているように図示するが、第1分散台帳ネットワーク4および第2分散台帳ネットワーク5に直接アクセスせずに、検証者端末2の内部処理で実現することもできる。これは、検証者端末2がノードとして第1分散台帳ネットワーク4および第2分散台帳ネットワーク5に参加している場合は、検証者端末2自身が分散台帳ネットワークの一部を担うからである。つまり、検証者端末2が保持する分散台帳を参照することで、検証者の要求に合致するトランザクションおよび各種データなどを抽出すればよい。
ステップS501では、検証者端末2の第1抽出部212が、検証したいトークンへのアクセス情報を指定して、第2分散台帳ネットワーク5に対し、対応するトークンのAPIまたはトークントランザクションを用いて、ファイルIDを含む署名対象メッセージと署名値とを要求する。
ステップS502では、第2分散台帳ネットワーク5から、検証者端末2からの要求に応じて、ファイルIDを含む署名対象メッセージと署名値とが返却される。なお、ステップ501およびステップS502の処理は、検証者端末2の第1抽出部212が、第2分散台帳ネットワーク5を参照してファイルIDおよび署名値を抽出する処理として実行されてもよい。
ステップS503では、検証者端末2の第2抽出部213が、第1分散台帳ネットワーク4に対し、抽出したファイルIDと同一のファイルIDに登録トランザクションにより紐付けられた検証鍵を要求する。
ステップS504では、第1分散台帳ネットワーク4が、検証者端末2からの要求に応じて、ファイルIDに対応する検証鍵を返却する。なお、ステップ503およびステップS504の処理は、検証者端末2の第2抽出部213が、第1分散台帳ネットワーク4を参照してファイルIDおよび署名値を抽出する処理として実行されてもよい。また、例えばBitcoin Coreで第1分散台帳ネットワーク4を実現する場合、台帳から登録トランザクションIDと一致する登録トランザクションを検索して、ファイルIDに紐付く検証鍵を取得すればよい。
ステップS505では、検証者端末2の検証部214が、検証鍵で署名値を検証する。
なお、署名値の検証に成功した場合、例えば検証者端末2が、トークンに基づきファイルを取得してもよい。
具体的には、ステップS506では、検証者端末2の取得部211が、ファイルIDを指定してストレージサービス3に対してファイルを要求する。
ステップS507では、ストレージサービス3が、ファイルIDに対応するファイルをデータベースから検索し、検証者端末2に送信すればよい。
なお、検証者端末2は、第1分散台帳ネットワーク4において、登録者端末1から直接または間接的に登録トランザクションIDの共有を受け、共有された登録トランザクションIDを格納部22に保存してもよい。第2抽出部213は、ステップS503において格納部22に保存される、共有された登録トランザクションIDを参照することで効率的に検証鍵の抽出が実行できる。例えば、ビットコインの分散台帳ネットワークを第1分散台帳ネットワーク4として活用する場合、登録トランザクションIDが共有されていれば、検証鍵を抽出する際に有益である。
次に、署名鍵によりデジタル署名される署名対象メッセージの一例について図6を参照して説明する。
図6に示す署名対象メッセージ60は、例えばトークントランザクションのデータフィールドに記載されるメッセージである。署名対象メッセージ60は、ここでは、ファイルIDを示す「fileId」、ストレージサービス3の種類を示す「storageservice」、日付を示す「date」、およびファイルの元の所有者(例えば、著作者)を示す「originalowner」の項目を含む。「storageservice」として、サーバ・ドメインやプロトコルなどアクセス先を示してもよい。なお、これに限らず、他の項目を含んでもよい。例えば、「date」の他に、署名対象メッセージをユニークとするため、乱数の項目を追加してもよい。乱数の項目を追加することで、内容としては同じ署名対象メッセージが複数存在しても、容易に署名対象メッセージを識別できる。
登録者端末1の第2分散台帳制御部114は、署名対象メッセージ60に対して署名鍵でデジタル署名し、署名値をトークントランザクションに含める。検証者端末2の検証部214は、ファイルIDと紐付く検証鍵により署名値を検証することで、ファイルIDに対応するファイルが登録者端末により登録されたことの真正性を検証できる。
以上に示した実施形態によれば、データサイズの大きいファイルをストレージサービスで管理する場合に、ファイルIDと検証鍵とを、特定の管理者を必要としない非中央集権型の分散台帳ネットワークで管理し、ファイルIDを含むトークン発行に関する署名対象メッセージと署名鍵による署名値とを、DAppsが実現される、特定の管理者が必要となる、論理的な中央集権型の分散台帳ネットワークで管理する。
当該ファイルを利用する様々なポリシーを有するDAppsが増加したり、DAppsのポリシーに変更がある場合でも、検証のための基本的な仕組みを非中央集権型の分散台帳ネットワークで管理することで、1つのDAppsによるサービス(コントラクト)にプログラムバグや管理者による意図的なまたは偶発的な破壊などの障害が発生しても、単一障害点とならずに、他のサービスの真正性の検証に影響を及ぼさない。結果として、ロバストかつ柔軟な情報管理を実現できる。
上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいてコンピュータで実行されることが可能である。
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
10…管理システム
1…登録者端末
2…検証者端末
3…ストレージサービス
4…第1分散台帳ネットワーク
5…第2分散台帳ネットワーク
6,7…別ノード
11,21…処理回路
12,22…格納部
13,23…通信インタフェース
60…署名対象メッセージ
111,211…取得部
112…鍵生成部
113,215…第1分散台帳制御部
114,216…第2分散台帳制御部
115,217…通信制御部
115…分散台帳制御部
212…第1抽出部
213…第2抽出部
214…検証部

Claims (6)

  1. 第1分散台帳ネットワークと第2分散台帳ネットワークとに接続可能な登録者端末であって、
    外部のストレージサービスにファイルを登録する登録部と、
    前記ストレージサービスにより前記ファイルに付与されたファイル識別子と、検証鍵とを含む登録トランザクションを生成し、前記登録トランザクションを前記第1分散台帳ネットワークに送信する第1制御部と、
    前記ファイル識別子を含む署名対象メッセージと、前記署名対象メッセージを署名鍵でデジタル署名することで得られる署名値とを含む、トークンの生成に関するトークントランザクションを生成し、前記トークントランザクションを前記第2分散台帳ネットワークに送信する第2制御部と、
    を具備する登録者端末。
  2. 第1分散台帳ネットワークと第2分散台帳ネットワークとに接続可能な検証者端末であって、
    前記第2分散台帳ネットワークを参照して、発行されたトークンへのアクセス情報を用いて、検証対象となるファイル識別子を含む署名対象メッセージと前記署名対象メッセージの署名値とを抽出する第1抽出部と、
    前記第1分散台帳ネットワークを参照して、前記ファイル識別子と同一のファイル識別子に紐付く検証鍵を抽出する第2抽出部と、
    前記検証鍵を用いて前記署名値を検証する検証部と、
    を具備する検証者端末。
  3. 前記第1分散台帳ネットワークは、特定の管理者を必要としない非中央集権型のブロックチェーンネットワークであり、前記第2分散台帳ネットワークは、特定の管理者が必要となる、論理的な中央集権型のブロックチェーンネットワークである、請求項1に記載の登録者端末または請求項2に記載の検証者端末。
  4. 第1分散台帳ネットワークと、第2分散台帳ネットワークと、ストレージサービスとのそれぞれにアクセス可能な、登録者端末および検証者端末を含む管理システムであって、
    前記登録者端末は、
    前記ストレージサービスにファイルを登録する登録部と、
    前記ストレージサービスにより前記ファイルに付与されたファイル識別子と、検証鍵とを含む、登録トランザクションを生成し、前記登録トランザクションを前記第1分散台帳ネットワークに送信する第1制御部と、
    前記ファイル識別子を含む署名対象メッセージと、前記署名対象メッセージを署名鍵でデジタル署名することで得られる署名値とを含む、トークンの生成に関するトークントランザクションを生成し、前記トークントランザクションを前記第2分散台帳ネットワークに送信する第2制御部と、を具備し、
    前記検証者端末は、
    前記第2分散台帳ネットワークを参照して、前記トークンへのアクセス情報を用いて、検証対象となるファイル識別子を含む署名対象メッセージと前記署名対象メッセージの署名値とを抽出する第1抽出部と、
    前記第1分散台帳ネットワークを参照して、前記ファイル識別子と同一のファイル識別子に紐付く検証鍵を抽出する第2抽出部と、
    前記検証鍵を用いて前記署名値を検証する検証部と、
    を具備する管理システム。
  5. コンピュータを、請求項1に記載の登録者端末の各部として実行させるためのプログラム。
  6. コンピュータを、請求項2に記載の検証者端末の各部として実行させるためのプログラム。
JP2022532921A 2020-07-01 2020-07-01 登録者端末、検証者端末、管理システムおよびプログラム Active JP7424490B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/025823 WO2022003864A1 (ja) 2020-07-01 2020-07-01 登録者端末、検証者端末、管理システムおよびプログラム

Publications (2)

Publication Number Publication Date
JPWO2022003864A1 JPWO2022003864A1 (ja) 2022-01-06
JP7424490B2 true JP7424490B2 (ja) 2024-01-30

Family

ID=79314954

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022532921A Active JP7424490B2 (ja) 2020-07-01 2020-07-01 登録者端末、検証者端末、管理システムおよびプログラム

Country Status (3)

Country Link
US (1) US20230254155A1 (ja)
JP (1) JP7424490B2 (ja)
WO (1) WO2022003864A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017204704A (ja) 2016-05-10 2017-11-16 日本電信電話株式会社 正当性保証方法、正当性保証システム及び正当性保証プログラム
JP2019185658A (ja) 2018-04-17 2019-10-24 株式会社電通 Id利用システム及びid利用方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017204704A (ja) 2016-05-10 2017-11-16 日本電信電話株式会社 正当性保証方法、正当性保証システム及び正当性保証プログラム
JP2019185658A (ja) 2018-04-17 2019-10-24 株式会社電通 Id利用システム及びid利用方法

Also Published As

Publication number Publication date
JPWO2022003864A1 (ja) 2022-01-06
US20230254155A1 (en) 2023-08-10
WO2022003864A1 (ja) 2022-01-06

Similar Documents

Publication Publication Date Title
US11038771B2 (en) Systems, methods, and apparatuses for implementing a metadata driven rules engine on blockchain using distributed ledger technology (DLT)
US11349674B2 (en) Digital certificate management method and apparatus, computer device, and storage medium
EP3438903B1 (en) Hierarchical network system, and node and program used in same
CN111108478B (zh) 一种用于通信和共享区块链数据的方法、系统、和装置
CN111144881B (zh) 对资产转移数据的选择性访问
US20200371995A1 (en) System or method to implement right to be forgotten on metadata driven blockchain using shared secrets and consensus on read
US20200252404A1 (en) Systems, methods, and apparatuses for implementing a declarative, metadata driven, cryptographically verifiable multi-network (multi-tenant) shared ledger
US20200252406A1 (en) Systems, methods, and apparatuses for implementing a declarative and metadata driven blockchain platform using distributed ledger technology (dlt)
KR102062896B1 (ko) 네트워크 내의 분산 데이터베이스를 위한 방법 및 장치
EP3543853A1 (en) Providing microservice information
US20200145373A1 (en) System for blockchain based domain name and ip number register
JP2022028010A (ja) ブロックチェーンネットワークにおいて大規模分散メモリプールを管理するためのコンピュータ実装されたシステム及び方法
KR20200106000A (ko) 블록체인-기반 디지털 인증서를 구현하기 위한 시스템 및 방법
WO2022121538A1 (zh) 基于区块链的数据同步方法、系统及相关设备
US20110161289A1 (en) Data Replication Across Enterprise Boundaries
JP2022504348A (ja) ブロックチェーン・リソースを格納するブロックチェーン通知ボード
EP4002786B1 (en) Distributed ledger system
KR20200105999A (ko) 디지털 마크를 생성하기 위한 시스템 및 방법
Ali et al. Blockstack: Design and implementation of a global naming system with blockchains
US20230232222A1 (en) User terminal, authentication terminal, registration terminal, management system and program
JP6951649B2 (ja) ブロック検証装置、ブロック検証方法、及びプログラム
JP2020204898A (ja) 分散台帳システムの運用管理方法、分散台帳システムの運用管理システム、および分散台帳システムの運用管理プログラム
JP2023544518A (ja) オペレーティングシステムを公開するためのブロックチェーンベースのシステムおよび方法
Ali et al. Blockstack technical whitepaper
JP7424490B2 (ja) 登録者端末、検証者端末、管理システムおよびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221031

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20230104

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20230208

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231219

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240101

R150 Certificate of patent or registration of utility model

Ref document number: 7424490

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150