JP2020071791A - 通信方法、通信プログラムおよび通信装置 - Google Patents
通信方法、通信プログラムおよび通信装置 Download PDFInfo
- Publication number
- JP2020071791A JP2020071791A JP2018206979A JP2018206979A JP2020071791A JP 2020071791 A JP2020071791 A JP 2020071791A JP 2018206979 A JP2018206979 A JP 2018206979A JP 2018206979 A JP2018206979 A JP 2018206979A JP 2020071791 A JP2020071791 A JP 2020071791A
- Authority
- JP
- Japan
- Prior art keywords
- transaction
- data
- metadata
- access
- setting
- 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.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims description 61
- 238000000034 method Methods 0.000 title claims description 29
- 238000012545 processing Methods 0.000 claims description 37
- 238000012795 verification Methods 0.000 claims description 36
- 238000012546 transfer Methods 0.000 claims description 23
- 238000010586 diagram Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 14
- 230000015654 memory Effects 0.000 description 14
- 230000003287 optical effect Effects 0.000 description 7
- 230000004044 response Effects 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/26—Government or public services
- G06Q50/265—Personal security, identity or safety
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
- G06F21/6263—Protecting personal data, e.g. for financial or medical purposes during internet communication, e.g. revealing personal data from cookies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1824—Distributed file systems implemented using Network-attached Storage [NAS] architecture
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0815—Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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 using cryptographic hash functions
- H04L9/3239—Cryptographic 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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Bioethics (AREA)
- Tourism & Hospitality (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Power Engineering (AREA)
- Data Mining & Analysis (AREA)
- Development Economics (AREA)
- Educational Administration (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】データの保有装置とは異なる装置からデータの公開ポリシの設定を行う。【解決手段】制御部1a1は、装置e1からデータの公開ポリシの設定権限を装置e2に移譲させるためのメタデータの登録要求を受け付ける。制御部1a2は、装置e2からメタデータの取得要求を受け付け、公開ポリシの設定を受け付ける。制御部1a3は、装置e3からデータのアクセス要求を受け付けたときに装置e3が公開ポリシに設定されている場合はデータへアクセスする。また、ネットワークN0に含まれる制御部1a1、1a2、1a3は互いに連携して、装置e1、e2、e3との取引で生じたトランザクションを検証して、トランザクションを実行し履歴を共有する。【選択図】図1
Description
本発明は、通信方法、通信プログラムおよび通信装置に関する。
近年、企業(組織)が保有しているデータを相互に活用して企業間でデータを流通させるデータ流通ネットワークが注目されており、データ流通の促進によって新しいサービスやビジネスの創出が期待されている。
データ流通ネットワークの一形態に分散型のデータ流通ネットワークがある。これは、データを一括して管理する集中型とは異なり、各企業でデータを分散して管理し、データを保有する企業が、データを利用する企業に対して、ネットワークを介してデータを提供するものである。
データ流通ネットワークとして、例えば、ブロックチェーンによる分散台帳技術を利用してデータを安全に流通させるネットワークが提案されている。
従前のデータ流通ネットワークが対象とするデータは、企業が保有する産業データであり、企業間で産業データの授受が行われている。また、産業データを公開するためには、産業データの公開先を示した公開ポリシが設定され、この場合、産業データを保有している企業によって公開ポリシの設定が行われている。
一方、近年では、個人情報であるパーソナルデータのデータ流通の議論が盛んである。パーソナルデータも産業データと同様に、パーソナルデータの公開先を示した公開ポリシを設定することが求められる。
しかし、パーソナルデータの公開ポリシの設定を、産業データの公開ポリシの設定と同様にパーソナルデータを保有する企業が行ってパーソナルデータが提供されると、個人の同意を得ずにパーソナルデータが流通することになってしまう。
このため、パーソナルデータの流通においては、パーソナルデータを保有する企業が提供する場合であっても、パーソナルデータの公開ポリシは、オーナ(所有者)である個人によって設定されることが好ましく、そのような設定を可能とする通信技術の実現が要望されている。
1つの側面では、本発明は、データを保有している装置とは異なる装置から該データの公開ポリシの設定を可能にした通信方法、通信プログラムおよび通信装置を提供することを目的とする。
上記課題を解決するために、ネットワークに含まれる複数の通信装置による通信方法が提供される。通信方法は、データを保有する第1の装置に接続される第1の通信装置は、第1の装置からデータの属性情報を含むメタデータを受け付ける場合、データの公開ポリシの設定権限を第2の装置に移譲させる移譲属性が含まれるメタデータの登録要求を受け付け、第2の装置に接続される第2の通信装置は、登録されたメタデータの取得要求を第2の装置から受け付け、第2の装置によって取得されたメタデータに対して公開ポリシの設定を受け付け、データを利用する第3の装置に接続される第3の通信装置は、第3の装置からデータのアクセス要求を受け付けたときに第3の装置が公開ポリシに設定されている場合はデータへアクセスし、第1、第2、第3の通信装置は連携して、登録要求に応じた一連の登録処理である登録トランザクション、取得要求に応じた一連の取得処理である取得トランザクション、公開ポリシの設定に応じた一連の設定処理である設定トランザクションおよびアクセス要求に応じた一連のアクセス処理であるアクセストランザクションの正当性を検証して実行し履歴を共有する。
また、上記課題を解決するために、コンピュータに上記通信方法と同様の制御を実行させる通信プログラムが提供される。
さらに、上記課題を解決するために、上記通信方法と同様の制御を実行する通信装置が提供される。
さらに、上記課題を解決するために、上記通信方法と同様の制御を実行する通信装置が提供される。
1側面によれば、データを保有している装置とは異なる装置から該データの公開ポリシの設定が可能になる。
以下、本実施の形態について図面を参照して説明する。
[第1の実施の形態]
第1の実施の形態について図1を用いて説明する。図1は通信装置の構成および動作の一例を説明するための図である。通信装置1は、ネットワークに含まれ、制御部1aと記憶部1bを備える。
[第1の実施の形態]
第1の実施の形態について図1を用いて説明する。図1は通信装置の構成および動作の一例を説明するための図である。通信装置1は、ネットワークに含まれ、制御部1aと記憶部1bを備える。
制御部1aは、ネットワークを介して他装置に接続して通信制御を行う。記憶部1bは、ブロックチェーンによる分散台帳の記憶領域を有し、通信制御に要する各種データを記憶する。
ここで、制御部1aは、データ(サービスデータ)を保有する第1の装置に接続される場合、第1の装置からデータの属性情報を含むメタデータを受け付けるとき、データの公開ポリシの設定権限を第2の装置に移譲させる移譲属性が含まれるメタデータの登録要求を受け付ける。
また、制御部1aは、第2の装置に接続される場合、第2の装置からメタデータの取得要求を受け付けて、第2の装置から公開ポリシの設定を受け付ける。
さらに、制御部1aは、データを利用する第3の装置に接続される場合、第3の装置からデータのアクセス要求を受け付けたときに第3の装置が公開ポリシに設定されている場合は、第1の装置が保有しているデータへアクセスする。
さらに、制御部1aは、データを利用する第3の装置に接続される場合、第3の装置からデータのアクセス要求を受け付けたときに第3の装置が公開ポリシに設定されている場合は、第1の装置が保有しているデータへアクセスする。
図1に示す例を用いて動作について説明する。ネットワークN0は、通信装置1−1、1−2、1−3を含み、互いに接続されている。また、ネットワークN0には、通信装置1−1、1−2、1−3によってブロックチェーンのプラットフォームが構築されている。
通信装置1−1は、制御部1a1と記憶部1b1を含み、通信装置1−2は、制御部1a2と記憶部1b2を含む。通信装置1−3は、制御部1a3と記憶部1b3を含む。
通信装置1−1には装置e1が接続され、通信装置1−2には装置e2が接続され、通信装置1−3には装置e3が接続される。
通信装置1−1には装置e1が接続され、通信装置1−2には装置e2が接続され、通信装置1−3には装置e3が接続される。
装置e1は、例えば、データを保有してデータを他者へ提供する企業のサーバに相当し、装置e3は、データを利用する企業のサーバに相当する。また、装置e2は、個人のユーザ端末に相当する。
図1に示す例にもとづいて動作について説明する。
〔ステップS1〕制御部1a1は、装置e1からデータの属性情報を含むメタデータを受け付ける。この場合、制御部1a1は、データの公開ポリシの設定権限を装置e2に移譲させるための移譲属性が含まれるメタデータの登録要求を受け付ける。
〔ステップS1〕制御部1a1は、装置e1からデータの属性情報を含むメタデータを受け付ける。この場合、制御部1a1は、データの公開ポリシの設定権限を装置e2に移譲させるための移譲属性が含まれるメタデータの登録要求を受け付ける。
〔ステップS2〕制御部1a1は、メタデータの登録要求を受け付けるとメタデータの登録トランザクション(メタデータの登録要求に応じた一連の登録処理のセット)を発行し、制御部1a2、1a3に転送する。制御部1a1、1a2、1a3は、この登録トランザクションの検証を行い、正当性を検出した場合、登録トランザクションを実行する。
そして、制御部1a1は、登録トランザクションの実行履歴のハッシュ値を算出し、実行履歴とハッシュ値を記憶部1b1の分散台帳DL1に格納する。また、制御部1a1は、分散台帳DL1に格納されている前回実行した直前のトランザクションの実行履歴に対して、ハッシュ値を介して今回実行した登録トランザクションの実行履歴を連結(チェーン連結)する。
同様に、制御部1a2は、登録トランザクションの実行履歴のハッシュ値を算出し、実行履歴とハッシュ値を記憶部1b2の分散台帳DL2に格納する。また、制御部1a2は、分散台帳DL2に格納されている前回実行した直前のトランザクションの実行履歴に対して、ハッシュ値を介して今回実行した登録トランザクションの実行履歴をチェーン連結する。
さらに、制御部1a3は、登録トランザクションの実行履歴のハッシュ値を算出し、実行履歴とハッシュ値を記憶部1b3の分散台帳DL3に格納する。また、制御部1a3は、分散台帳DL3に格納されている前回実行した直前のトランザクションの実行履歴に対して、ハッシュ値を介して今回実行した登録トランザクションの実行履歴をチェーン連結する。
このように、通信装置1−1、1−2、1−3において、メタデータの登録トランザクションが検証されて実行され、実行履歴が各々において保存されるブロックチェーンによる分散台帳管理が行われる。
〔ステップS3〕制御部1a2は、装置e2からメタデータの取得要求を受け付ける。
〔ステップS4〕制御部1a2は、メタデータの取得要求を受け付けるとメタデータの取得トランザクション(メタデータの取得要求に応じた一連の取得処理のセット)を発行し、制御部1a1、1a3に転送する。制御部1a1、1a2、1a3は、この取得トランザクションの検証を行い、正当性を検出した場合、取得トランザクションを実行する。
〔ステップS4〕制御部1a2は、メタデータの取得要求を受け付けるとメタデータの取得トランザクション(メタデータの取得要求に応じた一連の取得処理のセット)を発行し、制御部1a1、1a3に転送する。制御部1a1、1a2、1a3は、この取得トランザクションの検証を行い、正当性を検出した場合、取得トランザクションを実行する。
そして、制御部1a2は、取得トランザクションの実行履歴のハッシュ値を算出し、実行履歴とハッシュ値を記憶部1b2の分散台帳DL2に格納する。また、制御部1a2は、分散台帳DL2に格納されている前回実行した直前のトランザクションの実行履歴に対して、ハッシュ値を介して今回実行した取得トランザクションの実行履歴をチェーン連結する。
同様に、制御部1a1は、取得トランザクションの実行履歴のハッシュ値を算出し、実行履歴とハッシュ値を記憶部1b1の分散台帳DL1に格納する。また、制御部1a1は、分散台帳DL1に格納されている前回実行した直前のトランザクションの実行履歴に対して、ハッシュ値を介して今回実行した取得トランザクションの実行履歴をチェーン連結する。
さらに、制御部1a3は、取得トランザクションの実行履歴のハッシュ値を算出し、実行履歴とハッシュ値を記憶部1b3の分散台帳DL3に格納する。また、制御部1a3は、分散台帳DL3に格納されている前回実行した直前のトランザクションの実行履歴に対して、ハッシュ値を介して今回実行した取得トランザクションの実行履歴をチェーン連結する。
このように、通信装置1−1、1−2、1−3において、メタデータの取得トランザクションが検証されて実行され、実行履歴が各々において保存されるブロックチェーンによる分散台帳管理が行われる。
〔ステップS5〕制御部1a2は、装置e2から公開ポリシの設定を受け付ける。
〔ステップS6〕制御部1a2は、公開ポリシの設定を受け付けると公開ポリシの設定トランザクション(公開ポリシの設定に応じた一連の設定処理のセット)を発行し、制御部1a1、1a3に転送する。制御部1a1、1a2、1a3は、この設定トランザクションの検証を行い、正当性を検出した場合、設定トランザクションを実行する。
〔ステップS6〕制御部1a2は、公開ポリシの設定を受け付けると公開ポリシの設定トランザクション(公開ポリシの設定に応じた一連の設定処理のセット)を発行し、制御部1a1、1a3に転送する。制御部1a1、1a2、1a3は、この設定トランザクションの検証を行い、正当性を検出した場合、設定トランザクションを実行する。
そして、制御部1a2は、設定トランザクションの実行履歴のハッシュ値を算出し、実行履歴とハッシュ値を記憶部1b2の分散台帳DL2に格納する。また、制御部1a2は、分散台帳DL2に格納されている前回実行した直前のトランザクションの実行履歴に対して、ハッシュ値を介して今回実行した設定トランザクションの実行履歴をチェーン連結する。
同様に、制御部1a1は、設定トランザクションの実行履歴のハッシュ値を算出し、実行履歴とハッシュ値を記憶部1b1の分散台帳DL1に格納する。また、制御部1a1は、分散台帳DL1に格納されている前回実行した直前のトランザクションの実行履歴に対して、ハッシュ値を介して今回実行した設定トランザクションの実行履歴をチェーン連結する。
さらに、制御部1a3は、設定トランザクションの実行履歴のハッシュ値を算出し、実行履歴とハッシュ値を記憶部1b3の分散台帳DL3に格納する。また、制御部1a3は、分散台帳DL3に格納されている前回実行した直前のトランザクションの実行履歴に対して、ハッシュ値を介して今回実行した設定トランザクションの実行履歴をチェーン連結する。
このように、通信装置1−1、1−2、1−3において、公開ポリシの設定トランザクションが検証されて実行され、実行履歴が各々において保存されるブロックチェーンによる分散台帳管理が行われる。
〔ステップS7〕制御部1a3は、装置e3からメタデータの参照要求を受け付ける。
〔ステップS8〕制御部1a3は、参照要求を受け付けると参照トランザクション(参照要求に応じた一連の参照処理のセット)を発行し、制御部1a2、1a3に転送する。制御部1a1、1a2、1a3は、この参照トランザクションの検証を行い、正当性を検出した場合、アクセストランザクションを実行する。
〔ステップS8〕制御部1a3は、参照要求を受け付けると参照トランザクション(参照要求に応じた一連の参照処理のセット)を発行し、制御部1a2、1a3に転送する。制御部1a1、1a2、1a3は、この参照トランザクションの検証を行い、正当性を検出した場合、アクセストランザクションを実行する。
そして、制御部1a3は、参照トランザクションの実行履歴のハッシュ値を算出し、実行履歴とハッシュ値を記憶部1b3の分散台帳DL3に格納する。また、制御部1a3は、分散台帳DL3に格納されている前回実行した直前のトランザクションの実行履歴に対して、ハッシュ値を介して今回実行した参照トランザクションの実行履歴をチェーン連結する。
同様に、制御部1a1は、参照トランザクションの実行履歴のハッシュ値を算出し、実行履歴とハッシュ値を記憶部1b1の分散台帳DL1に格納する。また、制御部1a1は、分散台帳DL1に格納されている前回実行した直前のトランザクションの実行履歴に対して、ハッシュ値を介して今回実行した参照トランザクションの実行履歴をチェーン連結する。
さらに、制御部1a2は、参照トランザクションの実行履歴のハッシュ値を算出し、実行履歴とハッシュ値を記憶部1b2の分散台帳DL2に格納する。また、制御部1a2は、分散台帳DL2に格納されている前回実行した直前のトランザクションの実行履歴に対して、ハッシュ値を介して今回実行した参照トランザクションの実行履歴をチェーン連結する。
このように、通信装置1−1、1−2、1−3において、参照トランザクションが検証されて実行され、実行履歴が各々において保存されるブロックチェーンによる分散台帳管理が行われる。
〔ステップS9〕制御部1a3は、装置e3からデータのアクセス要求を受け付ける。
〔ステップS10〕制御部1a3は、アクセス要求を受け付けるとアクセストランザクション(アクセス要求に応じた一連のアクセス処理のセット)を発行し、制御部1a1、1a2に転送する。制御部1a1、1a2、1a3は、このアクセストランザクションの検証を行い、正当性を検出した場合、アクセストランザクションを実行する。
〔ステップS10〕制御部1a3は、アクセス要求を受け付けるとアクセストランザクション(アクセス要求に応じた一連のアクセス処理のセット)を発行し、制御部1a1、1a2に転送する。制御部1a1、1a2、1a3は、このアクセストランザクションの検証を行い、正当性を検出した場合、アクセストランザクションを実行する。
そして、制御部1a3は、アクセストランザクションの実行履歴のハッシュ値を算出し、実行履歴とハッシュ値を記憶部1b3の分散台帳DL3に格納する。また、制御部1a3は、分散台帳DL3に格納されている前回実行した直前のトランザクションの実行履歴に対して、ハッシュ値を介して今回実行したアクセストランザクションの実行履歴をチェーン連結する。
同様に、制御部1a1は、アクセストランザクションの実行履歴のハッシュ値を算出し、実行履歴とハッシュ値を記憶部1b1の分散台帳DL1に格納する。また、制御部1a1は、分散台帳DL1に格納されている前回実行した直前のトランザクションの実行履歴に対して、ハッシュ値を介して今回実行したアクセストランザクションの実行履歴をチェーン連結する。
さらに、制御部1a2は、アクセストランザクションの実行履歴のハッシュ値を算出し、実行履歴とハッシュ値を記憶部1b2の分散台帳DL2に格納する。また、制御部1a2は、分散台帳DL2に格納されている前回実行した直前のトランザクションの実行履歴に対して、ハッシュ値を介して今回実行したアクセストランザクションの実行履歴をチェーン連結する。
このように、通信装置1−1、1−2、1−3において、アクセストランザクションが検証されて実行され、実行履歴が各々において保存されるブロックチェーンによる分散台帳管理が行われる。
〔ステップS11〕制御部1a3は、装置e1のデータリソースe11に保有されているデータにアクセスする。
このように、通信装置1によれば、データを保有する装置とは異なる装置に公開ポリシを設定させるトランザクションをブロックチェーンによる分散台帳管理にもとづいて検証および実行する。これにより、安全性を維持したまま、データを保有する装置とは異なる装置が公開ポリシを設定することが可能になる。
このように、通信装置1によれば、データを保有する装置とは異なる装置に公開ポリシを設定させるトランザクションをブロックチェーンによる分散台帳管理にもとづいて検証および実行する。これにより、安全性を維持したまま、データを保有する装置とは異なる装置が公開ポリシを設定することが可能になる。
例えば、サービスデータとしてパーソナルデータを流通させる場合、パーソナルデータを保有する企業ではなく、パーソナルデータのデータオーナによって安全性を維持したまま公開ポリシを設定することができる。
[第2の実施の形態]
次に本発明の機能を分散型データ流通ネットワークに適用した場合の第2の実施の形態について説明する。図2はデータ流通システムの構成の一例を示す図である。データ流通システム1Aは、各拠点で分散して管理されるデータの取引が行われるネットワークシステムであって、ネットワークN1、N2、データ保有エンティティ20、ユーザ端末30およびデータ利用エンティティ40を備える。なお、エンティティとは、個人や企業等の活動の主体である。
次に本発明の機能を分散型データ流通ネットワークに適用した場合の第2の実施の形態について説明する。図2はデータ流通システムの構成の一例を示す図である。データ流通システム1Aは、各拠点で分散して管理されるデータの取引が行われるネットワークシステムであって、ネットワークN1、N2、データ保有エンティティ20、ユーザ端末30およびデータ利用エンティティ40を備える。なお、エンティティとは、個人や企業等の活動の主体である。
データ保有エンティティ20は、サーバ21および記憶装置22を含む。データ保有エンティティ20は、例えば、データを保有する企業等に該当する。データ利用エンティティ40は、サーバ41および記憶装置42を含む。データ利用エンティティ40は、例えば、データを利用する企業等に該当する。ユーザ端末30は、企業とは異なる個人のエンティティである。
ネットワークN1は、例えば、インターネットである。ネットワークN2は、互いに接続されたノード(またはゲートウェイ)10a、10b、10cを含む(総称する場合はノード10と呼ぶ)。ノード10a、10b、10cは、図1に示した通信装置1の機能を有している。
ノード10aはサーバ21に接続され、ノード10bはネットワークN1を介してユーザ端末30に接続され、ノード10cはサーバ41に接続される。
また、ノード10a、10b、10cは、ブロックチェーンによる分散台帳管理でデータ転送およびデータ保存を行う機能を有しており、ネットワークN2にはブロックチェーンのプラットフォームが構築されている。
また、ノード10a、10b、10cは、ブロックチェーンによる分散台帳管理でデータ転送およびデータ保存を行う機能を有しており、ネットワークN2にはブロックチェーンのプラットフォームが構築されている。
<ハードウェア構成>
図3はノードのハードウェア構成の一例を示す図である。ノード10は、プロセッサ(コンピュータ)100によって装置全体が制御されている。
図3はノードのハードウェア構成の一例を示す図である。ノード10は、プロセッサ(コンピュータ)100によって装置全体が制御されている。
プロセッサ100には、バス103を介して、メモリ101および複数の周辺機器が接続されている。プロセッサ100は、マルチプロセッサであってもよい。プロセッサ100は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、またはPLD(Programmable Logic Device)である。またプロセッサ100は、CPU、MPU、DSP、ASIC、PLDのうちの2以上の要素の組み合わせであってもよい。
メモリ101は、ノード10の主記憶装置として使用される。メモリ101には、プロセッサ100に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ101には、プロセッサ100による処理に要する各種データが格納される。
また、メモリ101は、ノード10の補助記憶装置としても使用され、OSのプログラム、アプリケーションプログラム、および各種データが格納される。メモリ101は、補助記憶装置として、フラッシュメモリやSSD(Solid State Drive)等の半導体記憶装置やHDD(Hard Disk Drive)等の磁気記録媒体を含んでもよい。また、メモリ101は、分散台帳の記憶領域を有している。
バス103に接続されている周辺機器としては、入出力インタフェース102およびネットワークインタフェース104がある。入出力インタフェース102は、プロセッサ100からの命令にしたがってノード10の状態を表示する表示装置として機能するモニタ(例えば、LED(Light Emitting Diode)やLCD(Liquid Crystal Display)等)が接続されている。
また、入出力インタフェース102は、キーボードやマウス等の情報入力装置を接続可能であって、情報入力装置から送られてくる信号をプロセッサ100に送信する。
さらにまた、入出力インタフェース102は、周辺機器を接続するための通信インタフェースとしても機能する。例えば、入出力インタフェース102は、レーザ光等を利用して、光ディスクに記録されたデータの読み取りを行う光学ドライブ装置を接続することができる。光ディスクには、Blu−rayDisc(登録商標)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(Rewritable)等がある。
さらにまた、入出力インタフェース102は、周辺機器を接続するための通信インタフェースとしても機能する。例えば、入出力インタフェース102は、レーザ光等を利用して、光ディスクに記録されたデータの読み取りを行う光学ドライブ装置を接続することができる。光ディスクには、Blu−rayDisc(登録商標)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(Rewritable)等がある。
また、入出力インタフェース102は、メモリ装置やメモリリーダライタを接続することができる。メモリ装置は、入出力インタフェース102との通信機能を搭載した記録媒体である。メモリリーダライタは、メモリカードへのデータの書き込み、またはメモリカードからのデータの読み出しを行う装置である。メモリカードは、カード型の記録媒体である。
ネットワークインタフェース104は、隣接ノード、エンティティ内の装置および他ネットワーク(ネットワークN1等)のインタフェース制御を行い、例えば、NIC(Network Interface Card)、無線LAN(Local Area Network)カード等を使用することができる。ネットワークインタフェース104で受信されたデータは、メモリ101やプロセッサ100に出力される。
以上のようなハードウェア構成によって、ノード10の処理機能を実現することができる。例えば、ノード10は、プロセッサ100がそれぞれ所定のプログラムを実行することで本発明の制御を行うことができる。
ノード10は、例えば、コンピュータで読み取り可能な記録媒体に記録されたプログラムを実行することにより、本発明の処理機能を実現する。ノード10に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。
例えば、ノード10に実行させるプログラムを補助記憶装置に格納しておくことができる。プロセッサ100は、補助記憶装置内のプログラムの少なくとも一部を主記憶装置にロードし、プログラムを実行する。
また、光ディスク、メモリ装置、メモリカード等の可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えば、プロセッサ100からの制御により、補助記憶装置にインストールされた後、実行可能となる。またプロセッサ100が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
<機能ブロック>
図4はノードの機能ブロックの一例を示す図である。ノード10は、制御部11、記憶部12およびインタフェース部13を備える。制御部11は、要求受付部11−1およびトランザクション処理部11−2を含む。
図4はノードの機能ブロックの一例を示す図である。ノード10は、制御部11、記憶部12およびインタフェース部13を備える。制御部11は、要求受付部11−1およびトランザクション処理部11−2を含む。
インタフェース部13は、隣接ノード、接続しているエンティティ内の装置および他ネットワークとのインタフェース制御を行う。要求受付部11−1は、エンティティからのトランザクションの要求受付処理を行う。トランザクション処理部11−2は、受け付けられたトランザクションの転送、検証、実行および実行履歴の格納を行う。
記憶部12は、分散台帳DL0の記憶領域を有し、分散台帳DL0にトランザクションの実行履歴を格納する。この場合、記憶部12は、実行履歴のハッシュ値を介して直前に格納された実行履歴に対してチェーン連結させて格納する。記憶部12は、ノード全体の運用制御に関する情報や、サービスデータ等の格納も行う。
なお、制御部11は図3のプロセッサ100によって実現され、記憶部12は図3のメモリ101によって実現される。また、インタフェース部13は図3のネットワークインタフェース104(または入出力インタフェース102)によって実現される。
<全体動作シーケンス>
以降では、データ流通システム1Aにおいてパーソナルデータが流通する場合の本発明の動作について詳しく説明する。
以降では、データ流通システム1Aにおいてパーソナルデータが流通する場合の本発明の動作について詳しく説明する。
図5はパーソナルデータの流通の全体動作シーケンスを示す図である。パーソナルデータは、産業データとは異なる個人データであって、例えば、個人の移動、行動、購買履歴等に関する様々な情報が含まれる。
なお、図5では、例えば、データ保有エンティティ20は、個人(以下、ユーザXと呼ぶ場合がある)のパーソナルデータの利用目的をユーザXに伝え、ユーザXの承諾を得て該パーソナルデータを予め保有しているとする。
〔ステップS10a〕サーバ21は、データ保有エンティティ20が保有しているパーソナルデータ(記憶装置22に格納されている)に関するメタデータの登録要求をノード10aに送信する。
ここで、サーバ21が産業データに関するメタデータを登録する場合、サーバ21は産業データの公開ポリシの設定を行えるが、パーソナルデータに関するメタデータを登録する場合は、パーソナルデータの公開ポリシの設定は行わず、公開ポリシの設定権限の移譲を行う。すなわち、公開ポリシの設定を行うことができる権限者の設定を行うことになる。
具体的には、パーソナルデータに関するメタデータには、パーソナルデータの公開ポリシの設定を該パーソナルデータのオーナであるユーザXに移譲するための移譲属性(公開ポリシ設定の権限者および公開ポリシ)が含まれる(メタデータに含まれる属性情報は後述)。
〔ステップS10b〕ノード10a、10b、10cは、メタデータを分散台帳に登録するためのトランザクションの検証を行い、メタデータを登録するエンティティの正当性が確認できた場合、メタデータ登録トランザクションを実行して実行履歴を各々の分散台帳に記憶する。
〔ステップS20a〕ユーザ端末30は、ノード10bにメタデータの取得要求を送信する。
〔ステップS20b〕ノード10a、10b、10cは、メタデータをユーザ端末30が取得するためのトランザクションの検証を行い、メタデータの取得を行うエンティティの正当性が確認できた場合、メタデータ取得トランザクションを実行して実行履歴を各々の分散台帳に記憶する。また、ノード10bは、メタデータをユーザ端末30に提供する。
〔ステップS20b〕ノード10a、10b、10cは、メタデータをユーザ端末30が取得するためのトランザクションの検証を行い、メタデータの取得を行うエンティティの正当性が確認できた場合、メタデータ取得トランザクションを実行して実行履歴を各々の分散台帳に記憶する。また、ノード10bは、メタデータをユーザ端末30に提供する。
〔ステップS30a〕ユーザ端末30は、取得したメタデータに公開ポリシの設定を行ってノード10bに送信する。
〔ステップS30b〕ノード10a、10b、10cは、メタデータに公開ポリシを設定するためのトランザクションの検証を行い、公開ポリシの設定を行うエンティティの正当性が確認できた場合、公開ポリシ設定トランザクションを実行して実行履歴を各々の分散台帳に記憶する。
〔ステップS30b〕ノード10a、10b、10cは、メタデータに公開ポリシを設定するためのトランザクションの検証を行い、公開ポリシの設定を行うエンティティの正当性が確認できた場合、公開ポリシ設定トランザクションを実行して実行履歴を各々の分散台帳に記憶する。
〔ステップS40a〕サーバ41は、ノード10cにメタデータの参照要求を送信する。
〔ステップS40b〕ノード10a、10b、10cは、メタデータをサーバ41に参照させるためのトランザクションの検証を行い、メタデータの参照を行うエンティティの正当性が確認できた場合、メタデータ参照トランザクションを実行して実行履歴を各々の分散台帳に記憶する。そして、ノード10cは、サーバ41にメタデータを参照させる。
〔ステップS40b〕ノード10a、10b、10cは、メタデータをサーバ41に参照させるためのトランザクションの検証を行い、メタデータの参照を行うエンティティの正当性が確認できた場合、メタデータ参照トランザクションを実行して実行履歴を各々の分散台帳に記憶する。そして、ノード10cは、サーバ41にメタデータを参照させる。
〔ステップS50a〕サーバ41は、ノード10cを通じてパーソナルデータにアクセスする。
〔ステップS50b〕ノード10a、10b、10cは、パーソナルデータをサーバ41にアクセスさせるためのトランザクションの検証を行い、データのアクセスを行うエンティティの正当性が確認できた場合、データアクセストランザクションを実行して実行履歴を各々の分散台帳に記憶する。そして、ノード10cは、データ保有エンティティ20で管理されているパーソナルデータにアクセスする。
〔ステップS50b〕ノード10a、10b、10cは、パーソナルデータをサーバ41にアクセスさせるためのトランザクションの検証を行い、データのアクセスを行うエンティティの正当性が確認できた場合、データアクセストランザクションを実行して実行履歴を各々の分散台帳に記憶する。そして、ノード10cは、データ保有エンティティ20で管理されているパーソナルデータにアクセスする。
<パーソナルデータのメタデータの構成>
図6はパーソナルデータのメタデータの構成の一例を示す図である。メタデータ5は、属性として、パーソナルデータの概要5a、パーソナルデータのID5b、公開ポリシ設定権限者5cおよび公開ポリシ5dを有する。
図6はパーソナルデータのメタデータの構成の一例を示す図である。メタデータ5は、属性として、パーソナルデータの概要5a、パーソナルデータのID5b、公開ポリシ設定権限者5cおよび公開ポリシ5dを有する。
メタデータ登録時におけるメタデータ5は、データ保有エンティティ20によってメタデータの登録が行われる場合の属性であり、公開ポリシ設定時におけるメタデータ5は、ユーザ端末30によって公開ポリシの設定が行われる場合の属性である。
ここで、移譲属性には、公開ポリシ設定権限者5cおよび公開ポリシ5dが含まれる。公開ポリシ設定権限者5cは、パーソナルデータの公開ポリシの設定を行うことができる権限者の情報(ユーザID)である。上記の例でいえば、ユーザXが権限者であるからユーザIDとして例えば、ユーザ端末30のIDが登録される。
公開ポリシ5dは、パーソナルデータの公開先を示す情報である。公開ポリシ5dは、上記のステップS10aのメタデータの登録時(初期状態)において空きである(何も設定されない)。また、上記のステップS30aでの公開ポリシ設定時、公開ポリシ5dには、公開先(企業A、B、C等)がユーザ端末30から登録される。図2の例でいえば、データ利用エンティティ40である企業(のID)が登録される。
<トランザクション情報>
図7はトランザクション情報の一例を示す図である。トランザクション情報とは、ネットワークN2に接続されるエンティティがネットワークN2のブロックチェーンのプラットフォームへのアクセス時にノードで発行される情報である。
図7はトランザクション情報の一例を示す図である。トランザクション情報とは、ネットワークN2に接続されるエンティティがネットワークN2のブロックチェーンのプラットフォームへのアクセス時にノードで発行される情報である。
メタデータ登録におけるトランザクション情報6aには、発行元IDとメタデータが含まれる。この発行元IDは、データ保有エンティティ20のIDに該当する。
メタデータ取得におけるトランザクション情報6bには、発行元IDが含まれる。この発行元IDは、データオーナ(ユーザX)のIDに該当する。ユーザ端末30からノード10bへ発行元IDを通知することによって、ノード10bで管理されている分散台帳からユーザXのIDが登録されているメタデータが抽出され、ユーザXがこのメタデータを取得することができる。
メタデータ取得におけるトランザクション情報6bには、発行元IDが含まれる。この発行元IDは、データオーナ(ユーザX)のIDに該当する。ユーザ端末30からノード10bへ発行元IDを通知することによって、ノード10bで管理されている分散台帳からユーザXのIDが登録されているメタデータが抽出され、ユーザXがこのメタデータを取得することができる。
公開ポリシ設定におけるトランザクション情報6cには、発行元IDおよびメタデータが含まれる。この発行元IDは、データオーナ(ユーザX)のIDに該当する。また、トランザクション情報6cのメタデータ内には公開ポリシが設定されている。
メタデータ参照におけるトランザクション情報6dには、発行元IDと検索条件が含まれる。この発行元IDは、データ利用エンティティ40のIDに該当する。また、検索条件とは、メタデータを検索するためのキー情報であって、メタデータの概要と検索条件のキー情報とが一致する場合に、所望のメタデータを参照できるようになっている。
データアクセスにおけるトランザクション情報6eには、発行元IDとデータIDが含まれる。この発行元IDは、データ利用エンティティ40のIDに該当する。データIDは、パーソナルデータ本体のIDであり、ノード10cがデータIDを設定したトランザクション情報6eをノード10aに送信することにより、該データIDに対応するパーソナルデータにアクセスすることができる。
<トランザクションの検証および実行>
図8はトランザクションの検証および実行の一例を示す図である。図中、エンティティe0はノード10−1に接続され、ノード10−1、10−2、10−3は互いに接続される。エンティティe0は、例えば、サーバまたはユーザ端末である。
図8はトランザクションの検証および実行の一例を示す図である。図中、エンティティe0はノード10−1に接続され、ノード10−1、10−2、10−3は互いに接続される。エンティティe0は、例えば、サーバまたはユーザ端末である。
〔ステップS61〕エンティティe0は、トランザクションを発行し、エンティティe0に接続されるノード10−1にトランザクション情報を送信する。
〔ステップS62〕ノード10−1は、トランザクション情報を受信してトランザクションを受け付けると、該トランザクション情報をノード10―2、10−3へ送信する。
〔ステップS62〕ノード10−1は、トランザクション情報を受信してトランザクションを受け付けると、該トランザクション情報をノード10―2、10−3へ送信する。
〔ステップS63〕ノード10−2、10−3は、トランザクション情報を受信する。ノード10−2は、トランザクション情報の受信結果をノード10−1、10−3へ通知し、ノード10−3は、トランザクション情報の受信結果をノード10−1、10−2へ通知する。
〔ステップS64a〕ノード10−1は、ノード10−2、10−3のトランザクション情報の受信結果にもとづいて正常受信されていることを認識した後、トランザクションの正当性を検証する。
〔ステップS64b〕ノード10−2は、ノード10−3のトランザクション情報の受信結果にもとづいて正常受信されていることを認識した後、トランザクションの正当性を検証する。
〔ステップS64c〕ノード10−3は、ノード10−2のトランザクション情報の受信結果にもとづいて正常受信されていることを認識した後、トランザクションの正当性を検証する。
〔ステップS65a〕ノード10−1は、トランザクションの検証結果をノード10−2、10−3に送信する。
〔ステップS65b〕ノード10−2は、トランザクションの検証結果をノード10−1、10−3に送信する。
〔ステップS65b〕ノード10−2は、トランザクションの検証結果をノード10−1、10−3に送信する。
〔ステップS65c〕ノード10−3は、トランザクションの検証結果をノード10−1、10−2に送信する。
〔ステップS66a〕ノード10−1は、ノード10−2、10−3から送信された検証結果を受信し、各ノードで正当性が検出されている場合はトランザクションを実行する。
〔ステップS66a〕ノード10−1は、ノード10−2、10−3から送信された検証結果を受信し、各ノードで正当性が検出されている場合はトランザクションを実行する。
〔ステップS66b〕ノード10−2は、ノード10−1、10−3から送信された検証結果を受信し、各ノードで正当性が検出されている場合はトランザクションを実行する。
〔ステップS66c〕ノード10−3は、ノード10−1、10−2から送信された検証結果を受信し、各ノードで正当性が検出されている場合はトランザクションを実行する。
〔ステップS67〕ノード10−1、10−2、10−3は、実行したトランザクションの履歴をチェーン連結して記憶する。例えば、ノード10−1は、実行した最新のトランザクションの履歴をハッシュ化してハッシュ値を求め、前回実行した直前のトランザクションの履歴に対してハッシュ値を介して連結して記憶する。ノード10−2、10−3も同様な連結処理を行う。
このような処理が各ノードで行われることで、各ノードは、特定の管理者が存在しなくても、トランザクションの正当性を検証することができる。また、各ノードは、トランザクションを実行した履歴を上記のようなチェーン連結により記憶するために、履歴の改ざんを防止することができる。
図9は各トランザクションにおける検証内容の一例を示す図である。メタデータ登録トランザクションの検証7aには、発行元ID(データ保有エンティティ)の検証と、公開ポリシが空になっているか否かの検証が行われる。
メタデータ取得トランザクションの検証7bでは、発行元ID(データオーナ(ユーザX))と、メタデータの取得権を有するエンティティであるか否かの検証が行われる。公開ポリシ設定トランザクションの検証7cでは、発行元ID(データオーナ(ユーザX))と、公開ポリシの設定権を有するエンティティであるか否かの検証が行われる。
メタデータ参照トランザクションの検証7eでは、発行元ID(データ利用エンティティ)と、メタデータの参照権を有するエンティティであるか否かの検証が行われる。データアクセストランザクションの検証7fでは、発行元ID(データ利用エンティティ)と、データアクセス権を有するエンティティであるか否かの検証が行われる。
<動作シーケンス>
次に各トランザクションにおける動作シーケンスについて図10から図14を用いて説明する。なお、以降に示すシーケンス図中の点線部分では、図8に示したトランザクションの検証および実行等の処理が行われるとする。
次に各トランザクションにおける動作シーケンスについて図10から図14を用いて説明する。なお、以降に示すシーケンス図中の点線部分では、図8に示したトランザクションの検証および実行等の処理が行われるとする。
図10はメタデータ登録における動作シーケンスの一例を示す図である。図5に示したステップS10a、S10bに関する詳細シーケンスである。
〔ステップS11〕データ保有エンティティ20のサーバ21は、ノード10aの制御部11aにメタデータの登録要求を行う。
〔ステップS11〕データ保有エンティティ20のサーバ21は、ノード10aの制御部11aにメタデータの登録要求を行う。
〔ステップS12〕制御部11aは、メタデータ登録要求に応じたトランザクションの検証処理として、発行元IDの検証および公開ポリシ(空き)の検証を行う。
〔ステップS13〕制御部11aは、メタデータをその他ノードの制御部110へ送信する。
〔ステップS13〕制御部11aは、メタデータをその他ノードの制御部110へ送信する。
〔ステップS14〕制御部11aは、ノード10aの記憶部12aにメタデータを記憶させ、制御部110は、その他ノードの記憶部120にメタデータを記憶させる。
図11はメタデータ取得における動作シーケンスの一例を示す図である。図5に示したステップS20a、S20bに関する詳細シーケンスである。
図11はメタデータ取得における動作シーケンスの一例を示す図である。図5に示したステップS20a、S20bに関する詳細シーケンスである。
〔ステップS21〕ユーザ端末30は、ノード10bの制御部11bにメタデータの取得要求を行う。
〔ステップS22〕制御部11bは、メタデータ取得要求に応じたトランザクションの検証処理として、発行元IDの検証およびメタデータの取得権の検証を行う。
〔ステップS22〕制御部11bは、メタデータ取得要求に応じたトランザクションの検証処理として、発行元IDの検証およびメタデータの取得権の検証を行う。
〔ステップS23〕制御部11bは、記憶部12bにメタデータを要求する。
〔ステップS24〕制御部11bは、記憶部12bからメタデータを読み出す。
〔ステップS25〕制御部11bは、読み出したメタデータをユーザ端末30へ送信する。
〔ステップS24〕制御部11bは、記憶部12bからメタデータを読み出す。
〔ステップS25〕制御部11bは、読み出したメタデータをユーザ端末30へ送信する。
図12は公開ポリシ設定における動作シーケンスの一例を示す図である。図5に示したステップS30a、S30bに関する詳細シーケンスである。
〔ステップS31〕ユーザ端末30は、ノード10bの制御部11bに対して、メタデータの公開ポリシの設定を行う。
〔ステップS31〕ユーザ端末30は、ノード10bの制御部11bに対して、メタデータの公開ポリシの設定を行う。
〔ステップS32〕制御部11bは、公開ポリシ設定に応じたトランザクションの検証処理として、発行元IDの検証および公開ポリシ設定権の検証を行う。
〔ステップS33〕制御部11bは、その他ノードの制御部110に対して、公開ポリシが設定されたメタデータを送信する。
〔ステップS33〕制御部11bは、その他ノードの制御部110に対して、公開ポリシが設定されたメタデータを送信する。
〔ステップS34〕制御部11bは、ノード10bの記憶部12bに格納されているメタデータの更新を行い、制御部110は、記憶部120に格納されているメタデータの更新を行う。
図13はメタデータ参照における動作シーケンスの一例を示す図である。図5に示したステップS40a、S40bに関する詳細シーケンスである。
〔ステップS41〕データ利用エンティティ40のサーバ41は、ノード10cの制御部11cにメタデータの参照要求を行う。
〔ステップS41〕データ利用エンティティ40のサーバ41は、ノード10cの制御部11cにメタデータの参照要求を行う。
〔ステップS42〕制御部11cは、メタデータ参照要求に応じたトランザクションの検証処理として、発行元IDの検証およびメタデータ参照権の検証を行う。
〔ステップS43〕制御部11cは、記憶部12cからメタデータを検索する。
〔ステップS43〕制御部11cは、記憶部12cからメタデータを検索する。
〔ステップS44〕制御部11cは、記憶部12cからキー情報に一致するメタデータを抽出する。
〔ステップS45〕制御部11cは、抽出したメタデータをサーバ41へ送信する。
〔ステップS45〕制御部11cは、抽出したメタデータをサーバ41へ送信する。
図14はデータアクセスにおける動作シーケンスの一例を示す図である。図5に示したステップS50a、S50bに関する詳細シーケンスである。
〔ステップS51〕データ利用エンティティ40のサーバ41は、ノード10cの制御部11cにデータアクセス(パーソナルデータアクセス)要求を行う。
〔ステップS51〕データ利用エンティティ40のサーバ41は、ノード10cの制御部11cにデータアクセス(パーソナルデータアクセス)要求を行う。
〔ステップS52〕制御部11cは、データアクセス要求に応じたトランザクションの検証処理として、発行元IDの検証およびデータアクセス権の検証を行う。
〔ステップS53〕制御部11cは、ノード10aの制御部11aにデータアクセスを行う。
〔ステップS53〕制御部11cは、ノード10aの制御部11aにデータアクセスを行う。
〔ステップS54〕制御部11aは、データ保有エンティティ20のデータリソースである記憶装置22にデータアクセスする。
〔ステップS55〕制御部11aは、記憶装置22からデータを読み出す。
〔ステップS55〕制御部11aは、記憶装置22からデータを読み出す。
〔ステップS56〕制御部11aは、制御部11cにデータを送信する。
〔ステップS57〕制御部11cは、受信したデータをサーバ41へ送信する。
なお、上記では、パーソナルデータの公開ポリシの設定を行うものとして説明したが、パーソナルデータのAPI(Application Programming Interface)に対して公開ポリシの設定を行うようにすることもできる。
〔ステップS57〕制御部11cは、受信したデータをサーバ41へ送信する。
なお、上記では、パーソナルデータの公開ポリシの設定を行うものとして説明したが、パーソナルデータのAPI(Application Programming Interface)に対して公開ポリシの設定を行うようにすることもできる。
すなわち、ノード10aは、サーバ21からパーソナルデータのAPIに関する公開ポリシの設定をユーザ端末30に移譲させる移譲属性を受け付ける。
そして、ノード10bは、ユーザ端末30から公開ポリシとしてAPIの設定を受け付け、ノード10cは、ユーザ端末30によって設定されたAPIの公開ポリシにもとづいて、サーバ41からパーソナルデータにアクセスするというような制御を行うこともできる。
そして、ノード10bは、ユーザ端末30から公開ポリシとしてAPIの設定を受け付け、ノード10cは、ユーザ端末30によって設定されたAPIの公開ポリシにもとづいて、サーバ41からパーソナルデータにアクセスするというような制御を行うこともできる。
上記で説明した本発明の通信装置1およびノード10の処理機能は、コンピュータによって実現することができる。この場合、通信装置1およびノード10が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記憶装置、光ディスク、光磁気記録媒体、半導体メモリ等がある。磁気記憶装置には、ハードディスク装置(HDD)、フレキシブルディスク(FD)、磁気テープ等がある。光ディスクには、DVD、DVD−RAM、CD−ROM/RW等がある。光磁気記録媒体には、MO(Magneto Optical disk)等がある。
プログラムを流通させる場合、例えば、そのプログラムが記録されたDVD、CD−ROM等の可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。
プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。
また、コンピュータは、ネットワークを介して接続されたサーバコンピュータからプログラムが転送される毎に、逐次、受け取ったプログラムに従った処理を実行することもできる。また、上記の処理機能の少なくとも一部を、DSP、ASIC、PLD等の電子回路で実現することもできる。
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の2以上の構成(特徴)を組み合わせたものであってもよい。
1、1−1、1−2、1−3 通信装置
1a、1a1、1a2、1a3 制御部
1b、1b1、1b2、1b3 記憶部
DL1、DL2、DL3 分散台帳
N0 ネットワーク
e1、e2、e3 装置
e11 データリソース
1a、1a1、1a2、1a3 制御部
1b、1b1、1b2、1b3 記憶部
DL1、DL2、DL3 分散台帳
N0 ネットワーク
e1、e2、e3 装置
e11 データリソース
Claims (12)
- ネットワークに含まれる複数の通信装置による通信方法であって、
データを保有する第1の装置に接続される第1の通信装置は、前記第1の装置から前記データの属性情報を含むメタデータを受け付ける場合、前記データの公開ポリシの設定権限を第2の装置に移譲させる移譲属性が含まれる前記メタデータの登録要求を受け付け、
前記第2の装置に接続される第2の通信装置は、登録された前記メタデータの取得要求を前記第2の装置から受け付け、前記第2の装置によって取得された前記メタデータに対して前記公開ポリシの設定を受け付け、
前記データを利用する第3の装置に接続される第3の通信装置は、前記第3の装置から前記データのアクセス要求を受け付けたときに前記第3の装置が前記公開ポリシに設定されている場合は前記データへアクセスし、
前記第1、第2、第3の通信装置は連携して、前記登録要求に応じた一連の登録処理である登録トランザクション、前記取得要求に応じた一連の取得処理である取得トランザクション、前記公開ポリシの設定に応じた一連の設定処理である設定トランザクションおよび前記アクセス要求に応じた一連のアクセス処理であるアクセストランザクションの正当性を検証して実行し履歴を共有する、
処理を実行する通信方法。 - ネットワークに含まれる複数の通信装置に実行させる通信プログラムであって、
データを保有する第1の装置に接続される第1の通信装置の第1のコンピュータに、前記第1の装置から前記データの属性情報を含むメタデータを受け付ける場合に前記データの公開ポリシの設定権限を第2の装置に移譲させる移譲属性が含まれる前記メタデータの登録要求を受け付ける処理を実行させ、
前記第2の装置に接続される第2の通信装置の第2のコンピュータに、登録された前記メタデータの取得要求を前記第2の装置から受け付け、前記第2の装置によって取得された前記メタデータに対して前記公開ポリシの設定を受け付ける処理を実行させ、
前記データを利用する第3の装置に接続される第3の通信装置の第3のコンピュータに、前記第3の装置から前記データのアクセス要求を受け付けたときに前記第3の装置が前記公開ポリシに設定されている場合は前記データへアクセスする処理を実行させ、
前記第1、第2、第3のコンピュータを連携させて前記第1、第2、第3のコンピュータに、前記登録要求に応じた一連の登録処理である登録トランザクション、前記取得要求に応じた一連の取得処理である取得トランザクション、前記公開ポリシの設定に応じた一連の設定処理である設定トランザクションおよび前記アクセス要求に応じた一連のアクセス処理であるアクセストランザクションの正当性を検証して実行し履歴を共有する処理を実行させる、
通信プログラム。 - 前記第1のコンピュータが前記移譲属性を含む前記メタデータの前記登録要求を受け付けた場合、前記第1、第2、第3のコンピュータに、前記登録トランザクションの検証を行わせ、
前記第1、第2、第3のコンピュータが前記登録トランザクションの正当性を検出した場合、前記第1のコンピュータに、前記登録トランザクションを実行させ、前記登録トランザクションの実行履歴を前記第1、第2、第3の通信装置が有する分散台帳に共有させる処理を実行させる請求項2記載の通信プログラム。 - 前記登録トランザクションの検証は、登録要求元である前記第1の装置の識別情報の検証と、前記移譲属性のうちの前記公開ポリシの設定欄が空き状態になっていることの検証とが含まれる請求項3記載の通信プログラム。
- 前記第2のコンピュータが前記メタデータの前記取得要求を受け付けた場合、前記第1、第2、第3のコンピュータに、前記取得トランザクションの検証を行わせ、
前記第1、第2、第3のコンピュータが前記取得トランザクションの正当性を検出した場合、前記第2のコンピュータに、前記取得トランザクションを実行させ、前記取得トランザクションの実行履歴を前記第1、第2、第3の通信装置が有する分散台帳に共有させる処理を実行させる請求項2記載の通信プログラム。 - 前記取得トランザクションの検証は、前記メタデータの取得要求元である前記第2の装置の識別情報の検証と、前記メタデータの取得権の検証とを含む請求項5記載の通信プログラム。
- 前記第2のコンピュータが前記公開ポリシの設定を受け付けた場合、前記第1、第2、第3のコンピュータに、前記設定トランザクションの検証を行わせ、
前記第1、第2、第3のコンピュータが前記設定トランザクションの正当性を検出した場合、前記第2のコンピュータに、前記設定トランザクションを実行させ、前記設定トランザクションの実行履歴を前記第1、第2、第3の通信装置が有する分散台帳に共有させる処理を実行させる請求項2記載の通信プログラム。 - 前記設定トランザクションの検証は、前記公開ポリシの設定元である前記第2の装置の識別情報の検証と、前記公開ポリシの設定権限者の検証とを含む請求項7記載の通信プログラム。
- 前記第3のコンピュータが前記データの前記アクセス要求を受け付けた場合、前記第1、第2、第3のコンピュータに、前記アクセストランザクションの検証を行わせ、
前記第1、第2、第3のコンピュータが前記アクセストランザクションの正当性を検出した場合、前記第3のコンピュータに、前記アクセストランザクションを実行させ、前記アクセストランザクションの実行履歴を前記第1、第2、第3の通信装置が有する分散台帳に共有させる処理を実行させる請求項2記載の通信プログラム。 - 前記アクセストランザクションの検証は、前記データのアクセス要求元である前記第3の装置の識別情報の検証と、前記データのアクセス権の検証とを含む請求項9記載の通信プログラム。
- 前記第1のコンピュータに、前記第1の装置から前記データのAPI(Application Programming Interface)に関する前記公開ポリシの設定権限を前記第2の装置に移譲させる前記移譲属性を受け付けさせ、
前記第2のコンピュータに、前記第2の装置から前記公開ポリシとして前記APIの設定を受け付けさせ、
前記第3のコンピュータに、前記第2の装置によって設定された前記APIの前記公開ポリシにもとづいて、前記第3の装置から前記データにアクセスさせる処理を実行させる請求項2記載の通信プログラム。 - ネットワークに含まれる通信装置であって、
前記ネットワークを介して他装置に接続して通信制御を行う制御部と、
分散台帳の記憶領域を有する記憶部と、
を備え、
前記制御部は、
データを保有する第1の装置に接続される場合、前記第1の装置から前記データの属性情報を含むメタデータを受け付ける場合に前記データの公開ポリシの設定権限を第2の装置に移譲させる移譲属性が含まれる前記メタデータの登録要求を受け付け、
前記第2の装置に接続される場合、登録された前記メタデータの取得要求を前記第2の装置から受け付けて、前記第2の装置によって取得された前記メタデータに対して前記公開ポリシの設定を受け付け、
前記データを利用する第3の装置に接続される場合、前記第3の装置から前記データのアクセス要求を受け付けたときに前記第3の装置が前記公開ポリシに設定されている場合は前記データへアクセスし、
前記登録要求に応じた一連の登録処理である登録トランザクション、前記取得要求に応じた一連の取得処理である取得トランザクション、前記公開ポリシの設定に応じた一連の設定処理である設定トランザクションおよび前記アクセス要求に応じた一連のアクセス処理であるアクセス要求トランザクションを検証して実行し履歴を前記分散台帳に記憶させる、
通信装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018206979A JP2020071791A (ja) | 2018-11-02 | 2018-11-02 | 通信方法、通信プログラムおよび通信装置 |
EP19202693.8A EP3648049A1 (en) | 2018-11-02 | 2019-10-11 | Communication method, communication program, and communication apparatus |
US16/601,930 US20200143086A1 (en) | 2018-11-02 | 2019-10-15 | Communication method, non-transitory computer-readable storage medium for storing communication program, and communication apparatus |
CN201911030954.6A CN111147438A (zh) | 2018-11-02 | 2019-10-28 | 通信方法、通信程序及通信设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018206979A JP2020071791A (ja) | 2018-11-02 | 2018-11-02 | 通信方法、通信プログラムおよび通信装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2020071791A true JP2020071791A (ja) | 2020-05-07 |
Family
ID=68280820
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018206979A Pending JP2020071791A (ja) | 2018-11-02 | 2018-11-02 | 通信方法、通信プログラムおよび通信装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20200143086A1 (ja) |
EP (1) | EP3648049A1 (ja) |
JP (1) | JP2020071791A (ja) |
CN (1) | CN111147438A (ja) |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6452156B2 (ja) | 2015-09-03 | 2019-01-16 | 日本電信電話株式会社 | 許諾情報管理システム、利用者端末、権利者端末、許諾情報管理方法、および、許諾情報管理プログラム |
CN106911641A (zh) * | 2015-12-23 | 2017-06-30 | 索尼公司 | 用于授权访问的客户端装置、服务器装置和访问控制系统 |
US10789597B2 (en) * | 2016-09-21 | 2020-09-29 | R-Stor Inc. | Systems and methods for using a distributed ledger for data handling |
JP6971019B2 (ja) * | 2016-09-26 | 2021-11-24 | Gmoインターネット株式会社 | データ管理システム、情報処理装置、プログラム、及び、データ管理方法 |
CN106600405B (zh) * | 2016-11-17 | 2021-06-22 | 复旦大学 | 基于区块链的数据权益保护方法 |
JP6296630B1 (ja) | 2016-12-09 | 2018-03-20 | 株式会社大和総研 | 分散型台帳システムおよびプログラム |
EP3934203A1 (en) * | 2016-12-30 | 2022-01-05 | INTEL Corporation | Decentralized data storage and processing for iot devices |
CN108573381B (zh) * | 2017-03-09 | 2020-06-05 | 北京京东尚科信息技术有限公司 | 数据处理方法以及装置 |
CN113111388A (zh) * | 2017-03-31 | 2021-07-13 | 唐晓领 | 基于区块链的投融资多方共享交易元数据信息的方法、装置及系统 |
CN107507091A (zh) * | 2017-09-07 | 2017-12-22 | 复旦大学 | 基于区块链和智能合约的增强型数据权益保护方法 |
-
2018
- 2018-11-02 JP JP2018206979A patent/JP2020071791A/ja active Pending
-
2019
- 2019-10-11 EP EP19202693.8A patent/EP3648049A1/en not_active Ceased
- 2019-10-15 US US16/601,930 patent/US20200143086A1/en not_active Abandoned
- 2019-10-28 CN CN201911030954.6A patent/CN111147438A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP3648049A1 (en) | 2020-05-06 |
US20200143086A1 (en) | 2020-05-07 |
CN111147438A (zh) | 2020-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220198410A1 (en) | Providing data provenance, permissioning, compliance, and access control for data storage systems using an immutable ledger overlay network | |
US11055442B2 (en) | Secure decentralized system utilizing smart contracts, a blockchain, and/or a distributed file system | |
US10790965B1 (en) | Tiered distributed ledger technology (DLT) in a network function virtualization (NFV) core network | |
CN110046998B (zh) | 跨链用权系统及方法、装置、电子设备、存储介质 | |
RU2463652C2 (ru) | Структура расширяемой и программируемой службы с несколькими арендаторами | |
TWI387284B (zh) | 用於以積點為基礎之對等式儲存之方法、系統、及記錄相關指令的電腦儲存媒體 | |
JP2009503737A (ja) | 階層的ライセンスサーバのための方法及びシステム | |
CN108027828A (zh) | 与无状态同步节点的托管文件同步 | |
US20230104103A1 (en) | Custodial systems for non-fungible tokens | |
WO2019184775A1 (zh) | 管理数据的存储方法、设备及存储介质 | |
EP3434028B1 (en) | Device provisioning | |
US11693824B2 (en) | Computer-readable recording medium recording communication program, communication method, and communication device | |
JP6760904B2 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
JP2024501401A (ja) | 非集中型のブロードキャスト暗号化および鍵生成ファシリティ | |
US20230334344A1 (en) | Distributed ledger based machine-learning model management | |
JP2019204279A (ja) | 情報処理装置およびプログラム | |
US20180157795A1 (en) | Multilevel object file storage | |
JP2020071791A (ja) | 通信方法、通信プログラムおよび通信装置 | |
KR20190068886A (ko) | 블록체인 기반 오픈 소스 소프트웨어 라이선스 컴플라이언스 지원 시스템 및 그 방법 | |
JP2020187497A (ja) | プログラム、サーバ装置および実行順序決定方法 | |
US20240127332A1 (en) | Secure Decentralized System and Method | |
JP6798737B1 (ja) | 個人情報管理システム及び個人情報管理方法 | |
US12032987B2 (en) | System and method for proxy-based communications for a plurality of mobile computing devices | |
JP2024127056A (ja) | システム、方法、及び、情報処理装置 | |
Hammoud et al. | DecStore: a Blockchain-based File Storage System With Autoscaling |