JP2019046262A - Information processing apparatus, information processing method, and information processing program - Google Patents

Information processing apparatus, information processing method, and information processing program Download PDF

Info

Publication number
JP2019046262A
JP2019046262A JP2017169802A JP2017169802A JP2019046262A JP 2019046262 A JP2019046262 A JP 2019046262A JP 2017169802 A JP2017169802 A JP 2017169802A JP 2017169802 A JP2017169802 A JP 2017169802A JP 2019046262 A JP2019046262 A JP 2019046262A
Authority
JP
Japan
Prior art keywords
data
information processing
encrypted data
processing apparatus
encrypted
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.)
Granted
Application number
JP2017169802A
Other languages
Japanese (ja)
Other versions
JP6429962B1 (en
Inventor
禎士 遠藤
Tadashi Endo
禎士 遠藤
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.)
Yahoo Japan Corp
Original Assignee
Yahoo Japan 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 Yahoo Japan Corp filed Critical Yahoo Japan Corp
Priority to JP2017169802A priority Critical patent/JP6429962B1/en
Application granted granted Critical
Publication of JP6429962B1 publication Critical patent/JP6429962B1/en
Publication of JP2019046262A publication Critical patent/JP2019046262A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

To provide an information processing apparatus allowing data owned by another service providing entity to be easily used, an information processing method, and an information processing program.SOLUTION: An information processing apparatus includes: an acquisition unit which acquires encrypted data from another device; and an interface unit which generates data in accordance with a condition allowed by a provider of the encrypted data, on the basis of the encrypted data, to be output. The acquisition unit acquires multiple pieces of encrypted data encrypted by multiple providers. The interface unit generates data satisfying conditions of providers of multiple pieces of encrypted data, on the basis of at least two pieces of encrypted data, out of the multiple pieces of encrypted data, to be output.SELECTED DRAWING: Figure 1

Description

本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。   The present invention relates to an information processing apparatus, an information processing method, and an information processing program.

ネットワークを使用したサービスの提供が活発になっている。近年では様々なサービス提供主体が様々なサービスを提供している。   Provision of services using networks is becoming active. In recent years, various service providers have provided various services.

特開2013−257793号公報JP, 2013-257793, A

ユーザによりよいサービスを提供するためには、複数のサービス提供主体間でデータ(例えば、ユーザデータ)を共有することが望ましい。しかし、この場合、他のサービス提供主体間に提供したデータが不正利用される恐れは否定できない。この恐れは、他のサービス提供主体にとっても同じことである。結果として、他のサービス提供主体にデータを提供してもらうことは容易ではない。   In order to provide better service to users, it is desirable to share data (e.g., user data) between multiple service providers. However, in this case, there is no denying that the data provided between other service providers may be illegally used. This fear is the same for other service providers. As a result, it is not easy to get other service providers to provide data.

本願は、上記に鑑みてなされたものであって、他のサービス提供主体が保有するデータを容易に利用できるようにすることを目的とする。   The present application has been made in view of the above, and it is an object of the present invention to make it easy to use data held by other service providers.

本願に係る情報処理装置は、他の装置から暗号データを取得する取得部と、暗号データの提供者により認められた条件に従ったデータを暗号データに基づいて生成して出力するインタフェース部と、を備える。   The information processing apparatus according to the present application includes an acquisition unit that acquires encrypted data from another apparatus, and an interface unit that generates data based on the encrypted data according to the condition accepted by the provider of the encrypted data and outputs the data. Equipped with

実施形態の一態様によれば、他者が保有するデータを容易に利用できるようにすることができる。   According to one aspect of the embodiment, it is possible to easily use data held by others.

図1は、実施形態に係る情報処理システムの動作を示す図である。FIG. 1 is a diagram illustrating an operation of the information processing system according to the embodiment. 図2は、記憶部に格納される暗号情報の一例を示す図である。FIG. 2 is a diagram showing an example of encryption information stored in the storage unit. 図3は、実施形態に係る端末装置の構成例を示す図である。FIG. 3 is a diagram illustrating an exemplary configuration of a terminal device according to the embodiment. 図4は、実施形態に係る情報処理装置の構成例を示す図である。FIG. 4 is a diagram illustrating an exemplary configuration of the information processing apparatus according to the embodiment. 図5は、取得情報データベースに格納される情報の一例を示す図である。FIG. 5 is a diagram showing an example of information stored in the acquired information database. 図6は、ユーザ情報の一例を示す図である。FIG. 6 is a diagram showing an example of user information. 図7は、暗号情報データベースの一例を示す図である。FIG. 7 is a diagram showing an example of the encryption information database. 図8は、登録処理の一例を示すフローチャートである。FIG. 8 is a flowchart showing an example of the registration process. 図9は、出力処理の一例を示すフローチャートである。FIG. 9 is a flowchart showing an example of the output process. 図10は、課金処理の一例を示すフローチャートである。FIG. 10 is a flowchart showing an example of the charging process. 図11は、情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。FIG. 11 is a hardware configuration diagram showing an example of a computer for realizing the function of the information processing apparatus.

以下に、本願に係る情報処理装置、情報処理方法、及び情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、以下の実施形態により本願に係る情報処理装置、情報処理方法、及び情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。   Hereinafter, an information processing apparatus, an information processing method, and a mode for carrying out an information processing program according to the present application (hereinafter, referred to as “embodiment”) will be described in detail with reference to the drawings. Note that the information processing apparatus, the information processing method, and the information processing program according to the present application are not limited by the following embodiments. Moreover, the same code | symbol is attached | subjected to the same site | part in the following each embodiment, and the overlapping description is abbreviate | omitted.

〔1.情報処理装置の動作〕
最初に、本実施形態の情報処理装置20を備える情報処理システム1を例に、情報処理装置の動作を説明する。
[1. Operation of Information Processing Device]
First, the operation of the information processing apparatus will be described using the information processing system 1 including the information processing apparatus 20 of the present embodiment as an example.

図1は、実施形態に係る情報処理システム1の動作を示す図である。情報処理システム1は、サービス提供主体間のデータのやり取りを容易にするためのシステムである。本実施形態でいう「サービス」は、ネットを介して提供されるサービスのことである。例えば、サービスは、ネットショッピング、広告配信、メール、ゲーム、ニュース、オークション、掲示板、ブログ、天気予報、ファイナンス、路線検索、地図、旅行、求人、不動産、飲食店紹介、データダウンロード等のサービスである。サービスは、医療情報(例えば、カルテ)に関するクラウドサービスであってもよい。以下の説明では、サービスの提供主体(すなわち、サービスの運営者)のことを運営者という。   FIG. 1 is a diagram showing an operation of the information processing system 1 according to the embodiment. The information processing system 1 is a system for facilitating exchange of data between service providers. The "service" in the present embodiment is a service provided via the Internet. For example, services are services such as online shopping, advertisement delivery, email, games, news, auctions, bulletin boards, blogs, weather forecasts, finance, route search, maps, travel, job offers, real estate, restaurant introduction, data download, etc. . The service may be a cloud service for medical information (eg, medical records). In the following description, the service provider (ie, the service operator) is referred to as the operator.

情報処理システム1は、端末装置10、10、10と、情報処理装置20、20、20と、を備える。なお、図1の例では、端末装置が3つ示されているが、端末装置は3つより少なくてもよいし、3つより多くてもよい。以下の説明では、端末装置10、10、10等を総称して端末装置10と記載することがある。また、図1の例では、情報処理装置が3つ示されているが、情報処理装置は3つより少なくてもよいし、3つより多くてもよい。以下の説明では、情報処理装置20、20、20等を総称して情報処理装置20と記載することがある。 The information processing system 1 includes terminal devices 10 1 , 10 2 , and 10 3 and information processing devices 20 1 , 20 2 , and 20 3 . Although three terminal devices are shown in the example of FIG. 1, the number of terminal devices may be less than three or more than three. In the following description, the terminal devices 10 1 , 10 2 , 10 3, etc. may be collectively referred to as the terminal device 10. Further, although three information processing apparatuses are shown in the example of FIG. 1, the number of information processing apparatuses may be less than three or more than three. In the following description, it may be referred to as information processing apparatus 20 are collectively the information processing apparatus 20 1, 20 2, 20 3, and the like.

端末装置10は、例えば、スマートデバイス(スマートフォン、或いはタブレット)、携帯電話、パーソナルコンピュータ等のユーザ端末である。端末装置10は会社Aの従業員が使用する端末であり、端末装置10は会社Bの従業員が使用する端末であり、端末装置10は会社Cの従業員が使用する端末である。会社A、会社B、会社Cは、それぞれ所定のサービスを提供するサービス提供主体である。なお、サービス提供主体は会社(企業)に限られない。サービス提供主体は、会社(企業)以外の組織、例えば、非営利法人、公共団体等の団体であってもよい。なお、「組織」には、非営利法人等の団体のみならず、会社(企業)も含まれる。勿論、サービス提供主体は組織ではなく個人であってもよい。また、サービス提供主体は、組織内の所定の部門(例えば、第1のサービスを提供する部門)であってもよい。この場合、同じ組織内の他の部門(例えば、第2のサービスを提供する部門)は、他のサービス提供主体である。以下の説明で登場する“会社”は、適宜、“組織”、“個人”、“部門”に置き換え可能である。端末装置10は、ネットワークを介して情報処理装置20と通信する。 The terminal device 10 is, for example, a user terminal such as a smart device (smart phone or tablet), a mobile phone, or a personal computer. Terminal apparatus 10 1 is a terminal used by company employees A, the terminal device 10 2 is a terminal used by company employees B, the terminal apparatus 103 is a terminal used by company employees C . The company A, the company B, and the company C are service providers that provide predetermined services. The service provider is not limited to a company. The service providing entity may be an organization other than a company (company), for example, an organization such as a non-profit corporation or a public organization. "Organization" includes not only organizations such as non-profit corporations but also companies (company). Of course, the service provider may be an individual rather than an organization. Also, the service providing entity may be a predetermined division (for example, a division providing the first service) in the organization. In this case, other departments within the same organization (e.g., departments providing the second service) are other service providers. The "company" appearing in the following description may be replaced by "organization", "individual", or "department" as appropriate. The terminal device 10 communicates with the information processing device 20 via a network.

情報処理装置20は、クライアント端末或いはクライアント端末を操作するユーザに対して各種サービスを提供するサーバ用ホストコンピュータである。例えば、情報処理装置20は、ユーザに対し各種サービスを提供するサーバである。情報処理装置20は、1台の装置から構成されていてもよいし、複数台の装置から構成されていてもよい。情報処理装置20は会社Aが運用するサーバであり、情報処理装置20は会社Bが運用するサーバであり、情報処理装置20は会社Cが運用するサーバである。情報処理装置20が提供するサービスは、例えば、ネットショッピング、広告配信、メール、ゲーム、ニュース、オークション、掲示板、ブログ、天気予報、ファイナンス、路線検索、地図、旅行、求人、不動産、飲食店紹介、データダウンロード、医療等のサービスである。 The information processing apparatus 20 is a server host computer that provides various services to a client terminal or a user who operates the client terminal. For example, the information processing apparatus 20 is a server that provides various services to the user. The information processing device 20 may be configured of one device or may be configured of a plurality of devices. The information processing apparatus 20 1 is a server that company A is operated, the information processing apparatus 20 2 is a server that operates the company B, the information processing apparatus 20 3 is a server for the company C is operated. Services provided by the information processing apparatus 20 include, for example, online shopping, advertisement delivery, mail, games, news, auctions, bulletin boards, blogs, weather forecasts, finance, route search, maps, travel, job offers, real estate, restaurant introduction, It is a service such as data download and medical care.

情報処理装置20は、サービスの提供にあたり取得したデータ(以下、サービスデータという。)を記録するデータベースを備える。サービスデータは、例えば、サービスを利用したユーザの情報である。サービスデータを格納するデータベースは、RDB(Relational Database)であってもよいし、NoSQL(Not Only SQL)等のハイパースケールなデータベース管理システム(スケールアウト型のシステム)を使ったデータベースであってもよい。このとき、NoSQLは、KVS(Key-Value Store)であってもよい。   The information processing apparatus 20 includes a database for recording data (hereinafter referred to as service data) acquired when providing a service. The service data is, for example, information of a user who has used the service. The database storing the service data may be RDB (Relational Database), or may be a database using a hyperscale database management system (scale-out type system) such as NoSQL (Not Only SQL). . At this time, NoSQL may be KVS (Key-Value Store).

また、情報処理装置20は、他の情報処理装置20に公開されたデータを記憶するための記憶部を有している。記憶部には、インタフェース部で暗号化されたデータが格納される。また、記憶部には、他の情報処理装置20の運営者が暗号化したデータも記録されている。情報処理装置20は、インタフェース部を介して提供者が提供した暗号データの復号等を行う。   Further, the information processing device 20 has a storage unit for storing data published to another information processing device 20. The storage unit stores data encrypted by the interface unit. Further, data encrypted by the operator of the other information processing apparatus 20 is also recorded in the storage unit. The information processing apparatus 20 decrypts encrypted data provided by the provider via the interface unit.

インタフェース部は、スマートコントラクトを実現するプログラムを実行する機能ブロックにより構成される。このとき、機能ブロックは、ソフトウェアブロックであってもよいし、ハードウェアブロックであってもよい。例えば、機能ブロックは、ソフトウェア(マイクロプログラムを含む。)で実現される1つのソフトウェアモジュールであってもよいし、半導体チップ(ダイ)上の1つの回路ブロックであってもよい。   The interface unit is composed of functional blocks that execute a program for realizing the smart contract. At this time, the functional block may be a software block or a hardware block. For example, the functional block may be one software module implemented by software (including a microprogram) or one circuit block on a semiconductor chip (die).

なお、スマートコントラクトとは、契約の条件確認や執行等の手続きをプログラムで自動化する仕組みのことである。スマートコントラクトを実現するプログラムは、情報処理システム1を構成する情報処理装置20の運営者(本実施形態の場合、会社A、会社B、会社C)が共同で開発したAPI(Application Programming Interface)であってもよい。   In addition, a smart contract is a mechanism that automates procedures such as condition confirmation and execution of a contract by a program. The program for realizing the smart contract is an API (Application Programming Interface) jointly developed by the operator of the information processing apparatus 20 constituting the information processing system 1 (company A, company B, company C in this embodiment) It may be.

スマートコントラクトを実現するプログラム(以下、契約プログラムという。)は、暗号データの提供者(例えば、他の情報処理装置20の運営者)により契約の内容を定義可能に構成されている。契約の内容は、例えば、暗号データを使用可能にするための条件、インタフェース部から出力されるデータの形式、データの使用期限、提供された暗号データのうちの使用可能なデータの範囲、データを使用した場合の課金額、課金方法等である。インタフェース部は、契約プログラムを実行することで、暗号データの提供者により認められた条件(利用範囲)に従ったデータを暗号データに基づいて生成して出力する。   The program for realizing the smart contract (hereinafter referred to as a contract program) is configured to be able to define the contents of the contract by a provider of encrypted data (for example, an operator of another information processing apparatus 20). The contents of the contract include, for example, the conditions for enabling the use of encrypted data, the format of data output from the interface unit, the expiration date of the data, the range of usable data among the provided encrypted data, and data The charge amount when used, the charge method, and the like. The interface unit executes the contract program to generate and output data based on the encrypted data in accordance with the condition (range of use) recognized by the provider of the encrypted data.

以下、図1を参照しながら、本実施形態の情報処理装置20を備える情報処理システム1の動作を説明する。   Hereinafter, the operation of the information processing system 1 provided with the information processing apparatus 20 of the present embodiment will be described with reference to FIG.

まず、情報処理装置20は、情報処理装置20の運営者よりサービスデータを取得すると(ステップS1a〜ステップS1c)、情報処理装置20のインタフェース部はサービスデータを暗号化して記憶部に格納する(ステップS2a、ステップS2b等)。   First, when the information processing apparatus 20 acquires service data from the operator of the information processing apparatus 20 (steps S1a to S1c), the interface unit of the information processing apparatus 20 encrypts the service data and stores it in the storage unit (step S2a, step S2b, etc.).

また、サービスデータが暗号化されると、情報処理装置20は他の情報処理装置20に暗号データを送信する。情報処理装置20は、他の情報処理装置20から暗号データを取得すると記憶部に格納する。複数の情報処理装置20は、互いに暗号データの送受信を行い、記憶部に格納されている暗号情報を同期する(ステップS3a〜ステップS3c)。なお、暗号データの復号のための鍵は契約プログラムの管理者によって厳重に管理されており、情報処理装置20の運営者といえども記憶部に格納されている暗号データを復号できない。   Further, when the service data is encrypted, the information processing device 20 transmits the encrypted data to the other information processing device 20. When the information processing device 20 acquires encrypted data from another information processing device 20, the information processing device 20 stores it in the storage unit. The plurality of information processing apparatuses 20 mutually transmit and receive encrypted data, and synchronizes the encrypted information stored in the storage unit (steps S3a to S3c). The key for decrypting the encrypted data is strictly managed by the contract program manager, and even the operator of the information processing apparatus 20 can not decrypt the encrypted data stored in the storage unit.

図2は、記憶部に格納される暗号情報の一例を示す図である。暗号情報には、複数の提供者がそれぞれ暗号化した複数の暗号データが格納されている。各暗号データには、暗号データの提供者を示す提供者IDが付される。図2の例の場合、提供者IDの“A”は会社Aを示しており、提供者IDの“B”は会社Bを示しており、提供者IDの“C”は会社Cを示している。以下の説明では、会社A、会社B、会社Cのことを提供者ともいう。   FIG. 2 is a diagram showing an example of encryption information stored in the storage unit. The encryption information stores a plurality of encryption data encrypted by a plurality of providers. Each encrypted data is attached with a provider ID indicating a provider of the encrypted data. In the example of FIG. 2, the provider ID "A" indicates the company A, the provider ID "B" indicates the company B, and the provider ID "C" indicates the company C. There is. In the following description, company A, company B and company C are also referred to as providers.

なお、情報処理装置20は、同じ暗号データを保持する複数の装置からの該暗号データに関する情報に基づいて他の情報処理装置20から取得した暗号データの改竄を検知するよう構成されていてもよい。例えば、情報処理装置20は、同じ暗号データを保持する複数の装置から暗号データのハッシュ値を取得し、自身が有する暗号データのハッシュ値と照合することにより暗号データの改竄を検知してもよい。その他、情報処理装置20は、自身が有する暗号データと他の情報処理装置20が有する暗号データとでブロックチェーンを構成することにより、暗号データの改竄を検知してもよい。   Note that the information processing device 20 may be configured to detect tampering of encrypted data acquired from another information processing device 20 based on information on the encrypted data from a plurality of devices holding the same encrypted data. . For example, the information processing device 20 may detect tampering of encrypted data by acquiring hash values of encrypted data from a plurality of devices holding the same encrypted data and collating with hash values of encrypted data owned by the information processing device 20 itself. . In addition, the information processing apparatus 20 may detect tampering of the encrypted data by forming a block chain with the encrypted data that the information processing apparatus 20 itself and the encrypted data that the other information processing apparatus 20 has.

情報処理装置20のインタフェース部は、運営者から所定の入力(例えば、要求するデータの種類)とともにデータの出力要求を受け取ると、暗号情報から出力に必要な暗号データを取得する(ステップS4a、ステップS4b等)。そして、情報処理装置20のインタフェース部は、暗号データの提供者により認められた条件に従ったデータを暗号データに基づいて生成して出力する(ステップS5a〜ステップS5c)。例えば、会社Aの従業員が、会社Bが提供する暗号データEC21の出力をインタフェース部に命令したとする。また、暗号データEC21が各ユーザのユーザID、名前、性別、年齢を含むユーザ情報であり、会社Bがユーザの名前の情報の出力を認めないとの条件を契約プログラムに設定していたとする。このとき、インタフェース部は、暗号情報に含まれる暗号データEC21を復号するとともに、復号して得られたユーザ情報からユーザの名前の情報を削除して会社Aの従業員に出力する。   When the interface unit of the information processing apparatus 20 receives a data output request together with a predetermined input (for example, the type of requested data) from the operator, the interface unit acquires encrypted data necessary for output from the encrypted information (step S4a, step S4b etc.). Then, the interface unit of the information processing device 20 generates data based on the encrypted data and outputs the data according to the condition recognized by the provider of the encrypted data (steps S5a to S5c). For example, it is assumed that an employee of company A instructs the interface unit to output encrypted data EC21 provided by company B. In addition, it is assumed that the condition that the company B does not allow the output of the information of the user's name is set in the contract program as the encrypted data EC21 is the user information including the user ID, name, gender, and age of each user. At this time, the interface unit decrypts the encrypted data EC21 included in the encrypted information, deletes the information of the user's name from the user information obtained by the decryption, and outputs the information to the employee of the company A.

なお、情報処理装置20のインタフェース部は、複数の暗号データに基づいて出力データを生成してもよい。このとき、複数の暗号データは、異なる提供者により提供されたものであってもよい。そして、インタフェース部は、複数の提供者のいずれの条件も満たすデータを出力データとして生成してもよい。例えば、会社Aの従業員が、他の会社全てのユーザ情報の出力をインタフェース部に命令したとする。また、図2に示す暗号情報のうち、会社Bが提供する暗号データEC21と、会社Cが提供する暗号データEC31が、いずれも、ユーザ情報を暗号化したものであり、各ユーザ情報には、ユーザID、名前、性別、年齢の情報が含まれていたとする。また、会社Bがユーザの名前の情報の出力を認めないとの条件を設定しており、会社Cがユーザの年齢の情報の出力を認めないとの条件を設定していたとする。このとき、インタフェース部は、暗号データEC21及び暗号データEC31を復号するとともに、復号して得られたユーザ情報の双方からユーザの名前とユーザの年齢の情報を削除する。そして、インタフェース部は、双方のユーザ情報を合体して会社Aの従業員に出力する。   The interface unit of the information processing device 20 may generate output data based on a plurality of encrypted data. At this time, the plurality of pieces of encrypted data may be provided by different providers. Then, the interface unit may generate, as output data, data that satisfies any of the conditions of a plurality of providers. For example, it is assumed that an employee of company A instructs the interface unit to output user information of all other companies. Further, among the encryption information shown in FIG. 2, both the encryption data EC21 provided by the company B and the encryption data EC31 provided by the company C are the encrypted user information, and each user information is It is assumed that user ID, name, gender, and age information are included. Further, it is assumed that the condition that company B does not allow the output of the information of the user's name is set, and the condition that company C does not allow the output of the user's age information is set. At this time, the interface unit decrypts the encrypted data EC21 and the encrypted data EC31, and deletes the user's name and the user's age information from both of the user information obtained by the decryption. Then, the interface unit combines the user information of both parties and outputs it to the employee of the company A.

なお、情報処理装置20のインタフェース部は、復号データに基づいて所定の処理を行い、その処理の結果生成されるデータを出力データとしてもよい。例えば、情報処理装置20は、所定の対象に関する推奨情報(レコメンドデータ)を複数の暗号データのうちの少なくとも2つの暗号データに基づいて生成して出力してもよい。所定の対象は、商品或いはサービスであってもよい。例えば、図2に示す暗号情報のうち、暗号データEC21がユーザ情報であり、暗号データEC22がユーザ情報で特定されるユーザの所定の商品の購買履歴であったとする。このとき、会社Aの従業員が、所定の商品を購入したユーザの男女比の出力を命令したとすれば、インタフェース部は、暗号データEC21及び暗号データEC22を復号するとともに、復号データに基づいて男性ユーザへの所定の商品の販売数と女性ユーザへの所定の商品の販売数を判別する。そして、インタフェース部は、判別した販売数に基づいて算出される男女比を出力する。   The interface unit of the information processing device 20 may perform predetermined processing based on the decoded data, and use data generated as a result of the processing as output data. For example, the information processing apparatus 20 may generate and output recommendation information (recommendation data) on a predetermined target based on at least two pieces of encrypted data of a plurality of encrypted data. The predetermined target may be a product or a service. For example, among the encryption information shown in FIG. 2, it is assumed that the encryption data EC21 is user information, and the encryption data EC22 is a purchase history of a predetermined product of the user specified by the user information. At this time, if an employee of company A instructs to output the male-female ratio of the user who has purchased a predetermined product, the interface unit decrypts the encrypted data EC21 and the encrypted data EC22, and based on the decrypted data The number of sales of a predetermined product to a male user and the number of sales of a predetermined product to a female user are determined. Then, the interface unit outputs the male / female ratio calculated based on the determined number of sales.

また、情報処理装置20のインタフェース部は、所定の対象に関する予測データを複数の暗号データのうちの少なくとも2つの暗号データに基づいて生成して出力してもよい。所定の対象は、ユーザの体(すなわち、ユーザの健康或いは病気)であってもよい。例えば、情報処理装置20は、複数の提供者がそれぞれ保持する医療データを暗号化した複数の暗号データを取得する。例えば、インタフェース部は、内科の医療データと外科の医療データをそれぞれ暗号化した複数の暗号データを取得する。そして、インタフェース部は、病気に関する予測データを複数の暗号データのうちの少なくとも2つの暗号データに基づいて生成して出力する。例えば、インタフェース部はユーザの病気を内科と外科のデータの組み合わせで予測し、予測結果を出力する。   Further, the interface unit of the information processing device 20 may generate and output prediction data on a predetermined target based on at least two pieces of encrypted data of the plurality of pieces of encrypted data. The predetermined subject may be the user's body (i.e. the user's health or illness). For example, the information processing device 20 acquires a plurality of encrypted data obtained by encrypting medical data held by a plurality of providers. For example, the interface unit acquires a plurality of encrypted data obtained by respectively encrypting medical data of internal medicine and medical data of surgery. Then, the interface unit generates and outputs prediction data on the disease based on at least two of the plurality of encrypted data. For example, the interface unit predicts the user's disease by combining medical and surgical data, and outputs a prediction result.

なお、情報処理装置20は、データを出力した場合に、該データの利用者に対する課金に関する処理を実行してもよい。例えば、情報処理装置20は、出力データの基となった暗号データの提供者により認められた条件に従った課金を実行してもよい。より具体的には、情報処理装置20のインタフェース部は、契約プログラムに設定されているデータの利用料金に基づいて、データを利用した運営者への課金額を算出する。利用料金は暗号データの提供者が設定したものであってもよい。そして、インタフェース部は、課金額が記載された請求書の発行処理や運営者からの入金の確認処理等を行う。インタフェース部は、入金に関する処理を金融機関のサーバと連携して行ってもよい。   When the data processing apparatus 20 outputs data, the information processing apparatus 20 may execute processing concerning charging of the user of the data. For example, the information processing apparatus 20 may execute charging in accordance with the condition accepted by the provider of the encrypted data that is the basis of the output data. More specifically, the interface unit of the information processing device 20 calculates the charge amount for the operator who uses the data, based on the use fee of the data set in the contract program. The usage fee may be set by the provider of the encrypted data. Then, the interface unit performs processing for issuing a bill in which the charge amount is written, processing for confirming payment from the operator, and the like. The interface unit may perform processing related to payment in cooperation with the server of the financial institution.

本実施形態によれば、情報処理装置20は、暗号データの提供者により認められた条件に従ったデータを暗号データに基づいて生成して出力するよう構成されている。暗号データの提供者は、自身が定めた条件の範囲外でデータが利用されることがないので、安心してデータを提供できる。結果、サービスの運営者は他の運営者のデータを容易に利用できる。   According to the present embodiment, the information processing apparatus 20 is configured to generate and output data according to the condition recognized by the provider of cryptographic data based on the cryptographic data. The provider of the encrypted data can provide the data at ease because the data is not used outside the range defined by the self. As a result, the service operator can easily use the data of other operators.

〔2.情報処理システムの構成例〕
以上、本実施形態の情報処理装置20を備える情報処理システム1を例に、本実施形態の情報処理装置の動作を述べたが、以下、本実施形態の情報処理システム1の構成を説明する。上述したように、情報処理システム1は、端末装置10と、情報処理装置20と、を備える。端末装置10、及び情報処理装置20は、ネットワークを介して接続される。ネットワークは、LAN(Local Area Network)、WAN(Wide Area Network)、電話網(携帯電話網、固定電話網等)、地域IP(Internet Protocol)網、インターネット等の通信ネットワークである。ネットワークには、有線ネットワークが含まれていてもよいし、無線ネットワークが含まれていてもよい。
[2. Configuration Example of Information Processing System]
The operation of the information processing apparatus of the present embodiment has been described above by taking the information processing system 1 including the information processing apparatus 20 of the present embodiment as an example, but the configuration of the information processing system 1 of the present embodiment will be described below. As described above, the information processing system 1 includes the terminal device 10 and the information processing device 20. The terminal device 10 and the information processing device 20 are connected via a network. The network is a communication network such as a Local Area Network (LAN), a Wide Area Network (WAN), a telephone network (such as a mobile telephone network or a fixed telephone network), a regional IP (Internet Protocol) network, or the Internet. The network may include a wired network or may include a wireless network.

〔3.端末装置の構成例〕
図3は、実施形態に係る端末装置10の構成例を示す図である。端末装置10は、ユーザがページの閲覧に使用する情報表示装置(情報処理装置)である。端末装置10は、例えば、スマートフォン、タブレット、携帯電話等の通信端末である。通信機能を備えるのであれば、端末装置10は、パーソナルコンピュータ(ノートPC、デスクトップPC)、PDA(Personal Digital Assistant)等の情報処理端末であってもよい。この場合、情報処理端末も通信端末の一種である。端末装置10は、ネットワークを介して情報処理装置20と接続する。端末装置10は、図3に示すように、通信部11と、入力部12と、記憶部13と、出力部14と、制御部15と、を備える。なお、図3に示した構成は機能的な構成であり、ハードウェア構成はこれとは異なっていてもよい。
[3. Configuration Example of Terminal Device]
FIG. 3 is a diagram showing an exemplary configuration of the terminal device 10 according to the embodiment. The terminal device 10 is an information display device (information processing device) used by a user to browse a page. The terminal device 10 is, for example, a communication terminal such as a smartphone, a tablet, or a mobile phone. As long as it has a communication function, the terminal device 10 may be an information processing terminal such as a personal computer (notebook PC, desktop PC), PDA (Personal Digital Assistant) or the like. In this case, the information processing terminal is also a type of communication terminal. The terminal device 10 connects to the information processing device 20 via a network. As shown in FIG. 3, the terminal device 10 includes a communication unit 11, an input unit 12, a storage unit 13, an output unit 14, and a control unit 15. The configuration shown in FIG. 3 is a functional configuration, and the hardware configuration may be different therefrom.

通信部11は、外部の装置と通信する通信インタフェースである。通信部11は、ネットワークインタフェースであってもよいし、機器接続インタフェースであってもよい。例えば、通信部11は、NIC(Network Interface Card)等のLANインタフェースであってもよいし、USB(Universal Serial Bus)ホストコントローラ、USBポート等により構成されるUSBインタフェースであってもよい。また、通信部11は、有線インタフェースであってもよいし、無線インタフェースであってもよい。通信部11は、端末装置10の通信手段として機能する。通信部11は、制御部15の制御に従って情報処理装置20と通信する。   The communication unit 11 is a communication interface that communicates with an external device. The communication unit 11 may be a network interface or a device connection interface. For example, the communication unit 11 may be a LAN interface such as a NIC (Network Interface Card), or may be a USB interface configured by a USB (Universal Serial Bus) host controller, a USB port, or the like. The communication unit 11 may be a wired interface or a wireless interface. The communication unit 11 functions as a communication unit of the terminal device 10. The communication unit 11 communicates with the information processing apparatus 20 according to the control of the control unit 15.

入力部12は、外部から各種入力を受け付ける入力装置である。例えば、入力部12は、キーボードやマウスや操作キー等、ユーザが各種操作を行うための操作装置である。入力部12は、端末装置10の入力手段として機能する。なお、端末装置10にタッチパネルが採用される場合には、タッチパネルも入力部12に含まれる。この場合、ユーザは、指やスタイラスで画面をタッチすることにより各種操作を行う。   The input unit 12 is an input device that receives various inputs from the outside. For example, the input unit 12 is an operation device such as a keyboard, a mouse, or an operation key for the user to perform various operations. The input unit 12 functions as an input unit of the terminal device 10. When a touch panel is adopted for the terminal device 10, the touch panel is also included in the input unit 12. In this case, the user performs various operations by touching the screen with a finger or a stylus.

記憶部13は、DRAM(Dynamic Random Access Memory)、SRAM(Static Random Access Memory)、フラッシュメモリ、ハードディスク等のデータ読み書き可能な記憶装置である。記憶部13は、端末装置10の記憶手段として機能する。記憶部13は、ウェブブラウザ等のアプリケーションソフトのデータが格納されている。ユーザはアプリケーションソフトを介して情報処理装置20と通信する。   The storage unit 13 is a storage device capable of reading and writing data, such as a dynamic random access memory (DRAM), a static random access memory (SRAM), a flash memory, and a hard disk. The storage unit 13 functions as a storage unit of the terminal device 10. The storage unit 13 stores data of application software such as a web browser. The user communicates with the information processing apparatus 20 via application software.

出力部14は、音、光、振動、画像等、外部に各種出力を行う装置である。出力部14は、端末装置10の出力手段として機能する。出力部14は、各種情報を表示する表示装置を備える。表示装置は、例えば、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイである。なお、端末装置10にタッチパネルが採用される場合には、表示装置は入力部12と一体であってもよい。出力部14は、制御部15の制御に従って、画面に画像を表示する。   The output unit 14 is a device that performs various outputs such as sound, light, vibration, and an image to the outside. The output unit 14 functions as an output unit of the terminal device 10. The output unit 14 includes a display device that displays various information. The display device is, for example, a liquid crystal display or an organic EL (Electro Luminescence) display. When a touch panel is adopted for the terminal device 10, the display device may be integrated with the input unit 12. The output unit 14 displays an image on the screen according to the control of the control unit 15.

制御部15は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)等のプロセッサによって、端末装置10内部の記憶装置に記憶されている各種プログラムがRAM等を作業領域として実行されることにより実現される。また、制御部15は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されてもよい。   The control unit 15 is a controller, and for example, various programs stored in a storage device inside the terminal device 10 are processed by a processor such as a central processing unit (CPU) or a micro processing unit (MPU). It is realized by being implemented as a work area. The control unit 15 is a controller, and may be realized by an integrated circuit such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA).

〔4.情報処理装置の構成例〕
次に、情報処理装置20の構成について詳細に説明する。情報処理装置20は、端末装置10等のクライアントコンピュータからの要求を処理するサーバ用ホストコンピュータ(以下、単に「サーバ」という。)である。情報処理装置20は、PCサーバであってもよいし、ミッドレンジサーバであってもよいし、メインフレームサーバであってもよい。また、情報処理装置20は、1つのサーバにより構成されていてもよいし、協働して処理を実行する複数のサーバにより構成されていてもよい。情報処理装置20が複数のサーバで構成される場合、これらサーバの設置場所は離れていてもよい。設置場所が離れていたとしても、協働して処理を実行するのであれば、これらサーバは1つの情報処理装置とみなすことができる。
[4. Configuration Example of Information Processing Device]
Next, the configuration of the information processing apparatus 20 will be described in detail. The information processing device 20 is a server host computer (hereinafter, simply referred to as a “server”) that processes requests from client computers such as the terminal device 10. The information processing device 20 may be a PC server, a midrange server, or a mainframe server. In addition, the information processing apparatus 20 may be configured by one server, or may be configured by a plurality of servers that cooperate to execute processing. When the information processing apparatus 20 includes a plurality of servers, the installation locations of these servers may be remote. These servers can be regarded as one information processing apparatus if the processing is performed in cooperation with each other even if the installation site is far.

図4は、実施形態に係る情報処理装置20の構成例を示す図である。情報処理装置20は、通信部21と、記憶部22と、制御部23と、を備える。なお、図4に示した構成は機能的な構成であり、ハードウェア構成はこれとは異なっていてもよい。   FIG. 4 is a diagram illustrating an exemplary configuration of the information processing apparatus 20 according to the embodiment. The information processing apparatus 20 includes a communication unit 21, a storage unit 22, and a control unit 23. The configuration shown in FIG. 4 is a functional configuration, and the hardware configuration may be different from this.

通信部21は、外部の装置と通信する通信インタフェースである。通信部21は、ネットワークインタフェースであってもよいし、機器接続インタフェースであってもよい。例えば、通信部21は、NIC等のLANインタフェースであってもよいし、USBホストコントローラ、USBポート等により構成されるUSBインタフェースであってもよい。また、通信部21は、有線インタフェースであってもよいし、無線インタフェースであってもよい。通信部21は、情報処理装置20の通信手段として機能する。通信部21は、制御部23の制御に従って端末装置10及び他の情報処理装置20と通信する。   The communication unit 21 is a communication interface that communicates with an external device. The communication unit 21 may be a network interface or a device connection interface. For example, the communication unit 21 may be a LAN interface such as a NIC, or may be a USB interface configured by a USB host controller, a USB port, or the like. The communication unit 21 may be a wired interface or a wireless interface. The communication unit 21 functions as a communication unit of the information processing apparatus 20. The communication unit 21 communicates with the terminal device 10 and the other information processing apparatus 20 according to the control of the control unit 23.

記憶部22は、DRAM、SRAM、フラッシュメモリ、ハードディスク等のデータ読み書き可能な記憶装置である。記憶部22は、情報処理装置20の記憶手段として機能する。記憶部22は、取得情報データベース221、暗号情報データベース222を記憶する。   The storage unit 22 is a storage device capable of reading and writing data such as a DRAM, an SRAM, a flash memory, and a hard disk. The storage unit 22 functions as a storage unit of the information processing apparatus 20. The storage unit 22 stores an acquired information database 221 and an encrypted information database 222.

取得情報データベース221は、情報処理装置20がユーザにサービスを提供するにあたり取得したデータ(サービスデータ)を記憶するデータベースである。取得情報データベース221は、RDBであってもよいし、NoSQL等のハイパースケールなデータベース管理システムを使ったデータベースであってもよい。このとき、NoSQLは、KVSであってもよい。図5は、取得情報データベース221に格納される情報の一例を示す図である。図5に示した例では、取得情報データベース221は、データID、サービスデータ等の項目を有している。   The acquired information database 221 is a database for storing data (service data) acquired when the information processing apparatus 20 provides a service to the user. The acquired information database 221 may be an RDB, or may be a database using a hyperscale database management system such as NoSQL. At this time, NoSQL may be KVS. FIG. 5 is a diagram showing an example of the information stored in the acquired information database 221. As shown in FIG. In the example shown in FIG. 5, the acquired information database 221 has items such as data ID and service data.

「データID」は、サービスデータの識別情報を示す。図5の例では、データIDの項目には、“001”、“002”、“003”等の値が格納されている。001は、サービスデータC11のIDを示し、002は、サービスデータC12のIDを示し、003は、サービスデータC13のIDを示す。   "Data ID" indicates identification information of service data. In the example of FIG. 5, values such as "001", "002", and "003" are stored in the item of data ID. 001 indicates the ID of the service data C11, 002 indicates the ID of the service data C12, and 003 indicates the ID of the service data C13.

「サービスデータ」は、情報処理装置20がサービスの提供にあたり取得したデータを示す。図5の例では、サービスの項目には“C11”〜“C13”等の概念的な情報が格納されているが、サービスデータの項目には、ユーザ情報、商品の販売情報、医療情報(例えば、カルテ)等が格納されていてもよい。サービスデータは、ユーザ情報、商品の販売情報、及び医療情報に限定されない。例えば、サービスデータはオンラインモールに出店しているストアの情報であってもよい。   “Service data” indicates data acquired by the information processing apparatus 20 in providing a service. In the example of FIG. 5, conceptual information such as "C11" to "C13" is stored in the item of service, but in the item of service data, user information, sales information of goods, medical information (for example, , Medical records, etc. may be stored. The service data is not limited to user information, product sales information, and medical information. For example, the service data may be information of a store that is open in an online mall.

図6は、ユーザ情報の一例を示す図である。ユーザ情報は、サービスデータの一例であり、ネットサービスを利用したユーザの情報を示す。ユーザ情報は、ユーザID、ユーザ名、性別、年齢、販売情報等の項目を有している。「ユーザID」は、ユーザの識別情報である。「ユーザ名」は、ユーザIDで示されるユーザの名前である。「性別」は、ユーザIDで示されるユーザの性別である。「年齢」は、ユーザIDで示されるユーザの年齢である。「販売情報」は、ユーザIDで示されるユーザがネットショッピングサービスを使って購入した商品の情報である。   FIG. 6 is a diagram showing an example of user information. The user information is an example of service data, and indicates information of a user who has used the net service. The user information has items such as user ID, user name, gender, age, and sales information. "User ID" is identification information of a user. The “user name” is the name of the user indicated by the user ID. "Gender" is the gender of the user indicated by the user ID. “Age” is the age of the user indicated by the user ID. The “sales information” is information on a product purchased by the user indicated by the user ID using the online shopping service.

図7は、暗号情報データベースの一例を示す図である。暗号情報には、複数の提供者がそれぞれ暗号化した複数の暗号データが格納されている。暗号情報は、提供者ID、暗号データ等の項目を有している。「提供者ID」は、暗号データの提供者の識別情報である。「暗号データ」は、提供者IDで示される提供者が保有するサービスデータを暗号化した暗号データである。   FIG. 7 is a diagram showing an example of the encryption information database. The encryption information stores a plurality of encryption data encrypted by a plurality of providers. The encryption information has items such as a provider ID and encryption data. The “provider ID” is identification information of a provider of encrypted data. “Encrypted data” is encrypted data obtained by encrypting service data held by a provider indicated by a provider ID.

制御部23は、コントローラであり、例えば、CPU、MPU等のプロセッサによって、情報処理装置20内部の記憶装置に記憶されている各種プログラムがRAM等を作業領域として実行されることにより実現される。また、制御部23は、コントローラであり、例えば、ASICやFPGA等の集積回路により実現されてもよい。   The control unit 23 is a controller, and is realized, for example, by a processor such as a CPU or an MPU executing various programs stored in a storage device in the information processing apparatus 20 using a RAM or the like as a work area. The control unit 23 is a controller, and may be realized by an integrated circuit such as an ASIC or an FPGA.

制御部23は、図4に示すように、取得部231と、インタフェース部232と、検知部233と、送信部234と、課金部235と、を備える。制御部23を構成するブロック(取得部231〜課金部235)はそれぞれ制御部23の機能を示す機能ブロックである。これら機能ブロックはソフトウェアブロックであってもよいし、ハードウェアブロックであってもよい。例えば、上述の機能ブロックが、それぞれ、ソフトウェア(マイクロプログラムを含む。)で実現される1つのソフトウェアモジュールであってもよいし、半導体チップ(ダイ)上の1つの回路ブロックであってもよい。勿論、各機能ブロックがそれぞれ1つのプロセッサ或いは1つの集積回路であってもよい。機能ブロックの構成方法は任意である。なお、制御部23は上述の機能ブロックとは異なる機能単位で構成されていてもよい。   As shown in FIG. 4, the control unit 23 includes an acquisition unit 231, an interface unit 232, a detection unit 233, a transmission unit 234, and a charging unit 235. The blocks (acquisition unit 231 to charging unit 235) constituting the control unit 23 are functional blocks each indicating the function of the control unit 23. These functional blocks may be software blocks or hardware blocks. For example, the functional blocks described above may be one software module implemented by software (including a microprogram) or one circuit block on a semiconductor chip (die). Of course, each functional block may be one processor or one integrated circuit. The configuration method of the functional block is arbitrary. In addition, the control part 23 may be comprised by the function unit different from the above-mentioned functional block.

取得部231は、情報処理装置20から暗号データを取得する。このとき、取得部231は、複数の提供者がそれぞれ暗号化した複数の暗号データを取得してもよい。また、取得部231は、複数の提供者がそれぞれ保持する医療データを暗号化した複数の暗号データを取得する。   The acquisition unit 231 acquires encrypted data from the information processing apparatus 20. At this time, the acquisition unit 231 may acquire a plurality of encrypted data encrypted by a plurality of providers. In addition, the acquisition unit 231 acquires a plurality of encrypted data obtained by encrypting medical data held by a plurality of providers.

インタフェース部232は、スマートコントラクトを実現するプログラムを実行する機能ブロックにより構成される。スマートコントラクトとは、契約の条件確認や執行等の手続きをプログラムで自動化する仕組みのことである。スマートコントラクトを実現するプログラムは、情報処理システム1を構成する複数の情報処理装置20の複数の運営者が共同で開発したAPI(Application Programming Interface)であってもよい。なお、取得部231、検知部233、送信部234、課金部235により実現される機能は、インタフェース部232に含有させることが可能である。   The interface unit 232 is configured by functional blocks that execute a program for realizing the smart contract. A smart contract is a mechanism that automates procedures such as condition confirmation and enforcement of a contract by a program. The program for realizing the smart contract may be an API (Application Programming Interface) jointly developed by a plurality of operators of a plurality of information processing apparatuses 20 constituting the information processing system 1. The functions implemented by the acquisition unit 231, the detection unit 233, the transmission unit 234, and the charging unit 235 can be included in the interface unit 232.

インタフェース部232は、暗号データの提供者により認められた条件に従ったデータを暗号データに基づいて生成して出力する。このとき、インタフェース部232は、複数の提供者の条件を満たすデータを複数の暗号データのうちの少なくとも2つの暗号データに基づいて生成して出力してもよい。また、インタフェース部232は、所定の対象に関する推奨情報を複数の暗号データのうちの少なくとも2つの暗号データに基づいて生成して出力する。   The interface unit 232 generates data based on the encrypted data and outputs the data according to the condition recognized by the provider of the encrypted data. At this time, the interface unit 232 may generate and output data meeting the conditions of the plurality of providers based on at least two of the plurality of encrypted data. The interface unit 232 also generates and outputs recommendation information on a predetermined target based on at least two pieces of encrypted data of the plurality of pieces of encrypted data.

また、インタフェース部232は、所定の対象に関する予測データを複数の暗号データのうちの少なくとも2つの暗号データに基づいて生成して出力する。例えば、インタフェース部232は、病気に関する予測データを複数の暗号データのうちの少なくとも2つの暗号データに基づいて生成して出力する。   The interface unit 232 also generates and outputs prediction data on a predetermined target based on at least two of the plurality of pieces of encrypted data. For example, the interface unit 232 generates and outputs prediction data related to a disease based on at least two of the plurality of encrypted data.

検知部233は、同じ暗号データを保持する複数の装置からの該暗号データに関する情報に基づいて情報処理装置20から取得した暗号データの改竄を検知する。   The detection unit 233 detects the falsification of the encrypted data acquired from the information processing device 20 based on the information related to the encrypted data from the plurality of devices holding the same encrypted data.

送信部234は、暗号データを情報処理装置20に送信する。例えば、送信部234は、インタフェース部232が生成した暗号データを情報処理装置20に送信する。   The transmitting unit 234 transmits the encrypted data to the information processing apparatus 20. For example, the transmission unit 234 transmits the encrypted data generated by the interface unit 232 to the information processing apparatus 20.

課金部235は、インタフェース部232がデータを出力した場合に、出力したデータの利用者に対し、暗号データの提供者により認められた条件に従った課金に関する処理を実行する。課金部235が実行する処理は、インタフェース部232が実行してもよい。   When the interface unit 232 outputs data, the charging unit 235 executes processing for charging of the user of the output data according to the condition accepted by the provider of the encrypted data. The interface unit 232 may execute the processing executed by the charging unit 235.

〔5.情報処理装置の処理フロー〕
次に、情報処理装置20が実行する処理の手順について説明する。情報処理装置20は登録処理と出力処理と課金処理を実行する。情報処理装置20はマルチタスクOSを備え、これらの処理を並行して実行可能である。
[5. Processing flow of information processing apparatus]
Next, the procedure of the process performed by the information processing device 20 will be described. The information processing apparatus 20 executes registration processing, output processing, and charging processing. The information processing apparatus 20 includes a multitasking OS, and can execute these processes in parallel.

〔5−1.登録処理〕
最初に登録処理を説明する。図8は、登録処理の一例を示すフローチャートである。登録処理は、取得情報データベース221及び暗号情報データベース222にデータを登録する処理である。情報処理装置20は電源が投入されると、登録処理を実行する。
[5-1. registration process〕
First, the registration process will be described. FIG. 8 is a flowchart showing an example of the registration process. The registration process is a process of registering data in the acquired information database 221 and the encryption information database 222. When the power is turned on, the information processing apparatus 20 executes a registration process.

まず、情報処理装置20は、端末装置10からデータの共有の可否の情報とともにサービスデータを取得したか判別する(ステップS11)。サービスデータを取得していない場合(ステップS11:No)、情報処理装置20は、サービスデータを取得するまでステップS11を繰り返す。   First, the information processing device 20 determines whether service data is acquired from the terminal device 10 together with information on whether data can be shared (step S11). When the service data is not acquired (step S11: No), the information processing device 20 repeats step S11 until acquiring the service data.

サービスデータを取得した場合(ステップS11:Yes)、情報処理装置20はサービスデータにデータIDを付すとともに、データIDを付したサービスデータを取得情報データベース221に登録する(ステップS12)。   When the service data is acquired (step S11: Yes), the information processing apparatus 20 attaches a data ID to the service data, and registers the service data with the data ID in the acquired information database 221 (step S12).

続いて、情報処理装置20は、取得したサービスデータが、共有可能なデータか判別する(ステップS13)。例えば、情報処理装置20は、取得したサービスデータが、当該サービスデータの提供者が定めた条件の下で他のサービス提供主体と共有可能なデータか判別する(ステップS13)。サービスデータが共有可能でない場合(ステップS13:No)、情報処理装置20は、ステップS11に処理を戻す。   Subsequently, the information processing apparatus 20 determines whether the acquired service data is data that can be shared (step S13). For example, the information processing apparatus 20 determines whether the acquired service data is data that can be shared with another service providing entity under the conditions determined by the provider of the service data (step S13). If the service data can not be shared (step S13: No), the information processing device 20 returns the process to step S11.

サービスデータが共有可能な場合(ステップS13:Yes)、情報処理装置20は、インタフェース部232を使ってサービスデータを暗号化する(ステップS14)。そして、情報処理装置20は、暗号化したデータにデータの提供者を示す提供者IDを付すとともに、提供者IDを付した暗号化データを暗号情報データベース222に登録する(ステップS15)。   If the service data can be shared (step S13: Yes), the information processing device 20 encrypts the service data using the interface unit 232 (step S14). Then, the information processing apparatus 20 attaches a provider ID indicating the provider of the data to the encrypted data, and registers the encrypted data with the provider ID in the encryption information database 222 (step S15).

その後、情報処理装置20は、他の情報処理装置20が保持する暗号情報と自身が保有する暗号情報とを同期させるため、新たに登録した暗号データを他の情報処理装置20に送信する(ステップS16)。他の情報処理装置20は、暗号データの送信を受けて、自身の暗号情報データベース222を更新する。暗号データの送信が完了したら、情報処理装置20はステップS11に処理を戻す。   After that, the information processing apparatus 20 transmits the newly registered encrypted data to the other information processing apparatus 20 in order to synchronize the encryption information held by the other information processing apparatus 20 and the encryption information held by itself (step S16). The other information processing apparatus 20 receives the transmission of the encrypted data and updates its own encryption information database 222. When the transmission of the encrypted data is completed, the information processing device 20 returns the process to step S11.

〔5−2.出力処理〕
最初に出力処理を説明する。図9は、出力処理の一例を示すフローチャートである。出力処理は、端末装置10を操作するユーザの指示に従ったデータを暗号データから生成して出力する処理である。情報処理装置20は、電源が投入されると、出力処理を開始する。
5-2. Output processing]
First, output processing will be described. FIG. 9 is a flowchart showing an example of the output process. The output process is a process of generating data from the encrypted data according to the instruction of the user operating the terminal device 10 and outputting the data. The information processing apparatus 20 starts output processing when the power is turned on.

まず、情報処理装置20は、端末装置10からら所定の入力(例えば、要求するデータの種類)ともにデータのリクエスト(出力要求)を受信したか判別する(ステップS21)。リクエストを受信していない場合(ステップS21:No)、情報処理装置20は、リクエストを受信するまでステップS21を繰り返す。   First, the information processing apparatus 20 determines whether a request for data (output request) has been received from the terminal apparatus 10 together with a predetermined input (for example, the type of requested data) (step S21). When the request has not been received (step S21: No), the information processing device 20 repeats step S21 until the request is received.

リクエストを受信した場合(ステップS21:Yes)、情報処理装置20はデータの生成に必要な暗号データを暗号情報データベース222から取得する(ステップS22)。このとき、データの生成に複数の暗号データが必要なのであれば、暗号情報データベース222から複数の暗号データを取得する。複数の暗号データは、提供者が異なっていてもよい。   If the request has been received (step S21: Yes), the information processing device 20 acquires encrypted data necessary for generating data from the encryption information database 222 (step S22). At this time, if multiple pieces of encrypted data are required to generate data, multiple pieces of encrypted data are acquired from the encrypted information database 222. The plurality of encrypted data may be provided by different providers.

情報処理装置20は、ステップS22で取得した暗号データが真正なものか判別する(ステップS23)。すなわち、情報処理装置20は、暗号データが改竄されたものでないか検証を行う。例えば、情報処理装置20は、同じ暗号データを保持する複数の装置から暗号データのハッシュ値を取得し、自身が有する暗号データのハッシュ値と照合することにより暗号データの改竄を検知する。暗号データが真正なものでない場合(ステップS23:No)、情報処理装置20はステップS21に処理を戻す。なお、情報処理装置20は、真正な暗号データを他の装置から取得し直してもよい。   The information processing apparatus 20 determines whether the encrypted data acquired in step S22 is authentic (step S23). That is, the information processing device 20 verifies whether or not the encrypted data is falsified. For example, the information processing device 20 acquires hash values of encrypted data from a plurality of devices holding the same encrypted data, and detects tampering of the encrypted data by collating with the hash values of the encrypted data owned by the information processing device 20 itself. If the encrypted data is not authentic (step S23: No), the information processing device 20 returns the process to step S21. The information processing device 20 may reacquire genuine encrypted data from another device.

暗号データが真正なものであった場合(ステップS23:Yes)、情報処理装置20は、暗号データに基づいてユーザの要求を満たすデータを生成する(ステップS24)。このとき、情報処理装置20は、インタフェース部232を使って暗号データの提供者により認められた条件に従ったデータを生成する。   If the encrypted data is authentic (step S23: Yes), the information processing apparatus 20 generates data satisfying the user's request based on the encrypted data (step S24). At this time, the information processing device 20 uses the interface unit 232 to generate data in accordance with the condition accepted by the provider of the encrypted data.

そして、情報処理装置20は、ステップS24で生成したデータを端末装置10に出力する(ステップS25)。出力が完了したら、情報処理装置20はステップS21に処理を戻し、リクエストを待機する。   Then, the information processing device 20 outputs the data generated in step S24 to the terminal device 10 (step S25). When the output is completed, the information processing apparatus 20 returns the process to step S21 and waits for a request.

〔5−3.課金処理〕
次に、課金処理について説明する。図10は、課金処理の一例を示すフローチャートである。課金処理は、暗号データの利用者へ課金を行うための処理である。情報処理装置20は、電源が投入されると、課金処理を開始する。
[5-3. Billing process]
Next, the charging process will be described. FIG. 10 is a flowchart showing an example of the charging process. The charging process is a process for charging a user of encrypted data. When the power is turned on, the information processing apparatus 20 starts charging processing.

まず、情報処理装置20は、課金日が到来したか判別する(ステップS31)。課金日は例えば月末であってもよい。課金日が到来していない場合(ステップS31:No)、情報処理装置20は、課金日が到来するまでステップS31の処理を繰り返す。   First, the information processing apparatus 20 determines whether a charging date has arrived (step S31). The charge date may be, for example, the end of the month. If the charging date has not arrived (step S31: No), the information processing apparatus 20 repeats the process of step S31 until the charging date arrives.

課金日が到来している場合(ステップS31:Yes)、情報処理装置20は、暗号データの利用履歴等に基づいて課金額を算出する(ステップS32)。情報処理装置20は、契約プログラムに設定されているデータの利用料金に基づいて課金額を算出してもよい。   If the billing date has arrived (step S31: Yes), the information processing apparatus 20 calculates the billing amount based on the usage history of the encrypted data and the like (step S32). The information processing apparatus 20 may calculate the billing amount based on the usage fee of the data set in the contract program.

そして、情報処理装置20は、暗号データの利用者(すなわち、情報処理装置20の運営者)に対する課金処理を実行する(ステップS33)。例えば、情報処理装置20は、課金額が記載された請求書の発行処理や通知利用者からの入金の確認処理等を行う。   Then, the information processing device 20 executes charging processing for the user of the encrypted data (that is, the operator of the information processing device 20) (step S33). For example, the information processing apparatus 20 performs processing for issuing a bill in which the charge amount is written, processing for confirming payment from a notification user, and the like.

課金の処理が完了したら、情報処理装置20はステップS31に戻り、課金日の到来を待機する。   When the charging process is completed, the information processing device 20 returns to step S31 and waits for the arrival of the charging date.

〔6.変形例〕
上述の実施形態は一例を示したものであり、種々の変更及び応用が可能である。
[6. Modified example]
The above embodiment is an example, and various modifications and applications are possible.

例えば、上述の実施形態では、インタフェース部232が生成する暗号データはサービスデータを暗号化したデータであるものとしたが、暗号データはサービスデータを暗号化したデータでなくてもよい。暗号データは、サービスの提供に関係のないデータ(例えば、従業員の管理情報等)を暗号化したデータであってもよい。   For example, in the above-described embodiment, the encrypted data generated by the interface unit 232 is data obtained by encrypting service data. However, the encrypted data may not be data obtained by encrypting the service data. The encrypted data may be data obtained by encrypting data (for example, management information of an employee, etc.) that is not related to the provision of the service.

本実施形態の情報処理装置20を制御する制御装置は、専用のコンピュータシステムによって実現してもよいし、通常のコンピュータシステムにより実現してもよい。例えば、上述の動作を実行するためのプログラムを、光ディスク、半導体メモリ、磁気テープ、フレキシブルディスク等のコンピュータ読み取り可能な記録媒体に格納して配布し、該プログラムをコンピュータにインストールし、上述の処理を実行することによって制御装置を構成してもよい。制御装置は、情報処理装置20の外部の装置(例えば、パーソナルコンピュータ)であってもよいし、内部の装置(例えば、制御部23)であってもよい。また、上記プログラムをインターネット等のネットワーク上のサーバ装置が備えるディスク装置に格納しておき、コンピュータにダウンロード等できるようにしてもよい。また、上述の機能を、OS(Operating System)とアプリケーションソフトとの協働により実現してもよい。この場合には、OS以外の部分を媒体に格納して配布してもよいし、OS以外の部分をサーバ装置に格納しておき、コンピュータにダウンロード等できるようにしてもよい。   The control device for controlling the information processing device 20 of the present embodiment may be realized by a dedicated computer system or may be realized by a normal computer system. For example, a program for executing the above-described operation is stored in a computer-readable recording medium such as an optical disk, semiconductor memory, magnetic tape, flexible disk, etc. and distributed, the program is installed in a computer, and the above-described processing is performed. The control device may be configured by execution. The control device may be an external device (for example, a personal computer) outside the information processing device 20 or an internal device (for example, the control unit 23). In addition, the program may be stored in a disk device provided in a server device on a network such as the Internet so that the program can be downloaded to a computer. In addition, the above-described functions may be realized by cooperation of an OS (Operating System) and application software. In this case, the part other than the OS may be stored in the medium and distributed, or the part other than the OS may be stored in the server apparatus and downloaded to the computer.

また、上記各実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。   Further, among the processes described in the above-described embodiments, all or part of the process described as being automatically performed may be manually performed, or the process described as being manually performed. All or part of can be performed automatically by known methods. In addition, information including processing procedures, specific names, various data and parameters shown in the above-mentioned documents and drawings can be arbitrarily changed unless otherwise specified. For example, the various information shown in each figure is not limited to the illustrated information.

また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。   Further, each component of each device illustrated is functionally conceptual, and does not necessarily have to be physically configured as illustrated. That is, the specific form of the distribution and integration of each device is not limited to the illustrated one, and all or a part thereof may be functionally or physically dispersed in any unit depending on various loads, usage conditions, etc. It can be integrated and configured.

また、上述してきた各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。   Moreover, it is possible to combine suitably each embodiment mentioned above in the range which does not contradict process content.

〔7.ハードウェア構成〕
実施形態及び変形例に係る情報処理装置20は、例えば図11に示すような構成のコンピュータ1000によっても実現可能である。図11は、情報処理装置20の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU(Central Processing Unit)1100、RAM1200、ROM1300、HDD(Hard Disk Drive)1400、通信インタフェース(I/F)1500、入出力インタフェース(I/F)1600、及びメディアインタフェース(I/F)1700を有する。
[7. Hardware configuration]
The information processing apparatus 20 according to the embodiment and the modification can also be realized by, for example, a computer 1000 configured as shown in FIG. FIG. 11 is a hardware configuration diagram showing an example of a computer that implements the functions of the information processing apparatus 20. The computer 1000 includes a central processing unit (CPU) 1100, a RAM 1200, a ROM 1300, a hard disk drive (HDD) 1400, a communication interface (I / F) 1500, an input / output interface (I / F) 1600, and a media interface (I / F). ) 1700.

CPU1100は、ROM1300またはHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。   The CPU 1100 operates based on a program stored in the ROM 1300 or the HDD 1400 to control each part. The ROM 1300 stores a boot program executed by the CPU 1100 when the computer 1000 starts up, a program depending on the hardware of the computer 1000, and the like.

HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インタフェース1500は、ネットワークNを介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータをネットワークNを介して他の機器へ送信する。   The HDD 1400 stores a program executed by the CPU 1100, data used by the program, and the like. The communication interface 1500 receives data from another device via the network N, sends the data to the CPU 1100, and transmits data generated by the CPU 1100 to the other device via the network N.

CPU1100は、入出力インタフェース1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インタフェース1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを入出力インタフェース1600を介して出力装置へ出力する。   The CPU 1100 controls output devices such as a display and a printer and input devices such as a keyboard and a mouse via the input / output interface 1600. The CPU 1100 acquires data from an input device via the input / output interface 1600. The CPU 1100 also outputs the generated data to the output device via the input / output interface 1600.

メディアインタフェース1700は、記録媒体1800に格納されたプログラムまたはデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインタフェース1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。   The media interface 1700 reads a program or data stored in the recording medium 1800 and provides the CPU 1100 with the program via the RAM 1200. The CPU 1100 loads such a program from the recording medium 1800 onto the RAM 1200 via the media interface 1700 and executes the loaded program. The recording medium 1800 is, for example, an optical recording medium such as a digital versatile disc (DVD) or a phase change rewritable disc (PD), a magneto-optical recording medium such as a magneto-optical disk (MO), a tape medium, a magnetic recording medium, or a semiconductor memory. Etc.

例えば、コンピュータ1000が実施形態に係る情報処理装置20として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部23を実現する。コンピュータ1000のCPU1100は、これらのプログラムを記録媒体1800から読み取って実行するが、他の例として、他の装置からネットワークNを介してこれらのプログラムを取得してもよい。   For example, when the computer 1000 functions as the information processing apparatus 20 according to the embodiment, the CPU 1100 of the computer 1000 implements the control unit 23 by executing a program loaded on the RAM 1200. The CPU 1100 of the computer 1000 reads these programs from the recording medium 1800 and executes them, but as another example, these programs may be acquired from another device via the network N.

以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の行に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。   Although some of the embodiments of the present application have been described in detail based on the drawings, these are only examples, and various modifications can be made based on the knowledge of those skilled in the art, including the aspects described in the rows of the disclosure of the invention. It is possible to implement the invention in other improved forms.

〔8.効果〕
本実施形態によれば、情報処理装置20は、他の装置から暗号データを取得する。そして、情報処理装置20は、暗号データの提供者により認められた条件に従ったデータを暗号データに基づいて生成して出力する。暗号データの提供者は、自身が定めた条件の範囲外でデータが利用されることがないので、安心してデータを提供できる。結果、サービスの運営者は他の運営者のデータを容易に利用できる。
[8. effect〕
According to the present embodiment, the information processing device 20 acquires encrypted data from another device. Then, the information processing device 20 generates data based on the encrypted data and outputs the data according to the condition recognized by the provider of the encrypted data. The provider of the encrypted data can provide the data at ease because the data is not used outside the range defined by the self. As a result, the service operator can easily use the data of other operators.

情報処理装置20は、複数の提供者がそれぞれ暗号化した複数の暗号データを取得する。そして、情報処理装置20は、複数の提供者の条件を満たすデータを複数の暗号データのうちの少なくとも2つの暗号データに基づいて生成して出力する。情報処理装置20は、複数の提供者のデータを使って出力データを生成するので、精度の高いデータ(例えば、精度の高い予測データ)を出力できる。   The information processing apparatus 20 acquires a plurality of encrypted data encrypted by a plurality of providers. Then, the information processing device 20 generates and outputs data satisfying the conditions of the plurality of providers based on at least two of the plurality of encrypted data. Since the information processing apparatus 20 generates output data using data of a plurality of providers, it can output data with high accuracy (for example, prediction data with high accuracy).

情報処理装置20は、所定の対象に関する推奨情報を複数の暗号データのうちの少なくとも2つの暗号データに基づいて生成して出力する。情報処理装置20は、複数の暗号データを使って推奨情報を生成するので、精度の高い推奨情報を出力できる。   The information processing device 20 generates and outputs recommendation information on a predetermined target based on at least two pieces of encrypted data of the plurality of pieces of encrypted data. The information processing apparatus 20 generates recommendation information using a plurality of encrypted data, and therefore can output recommendation information with high accuracy.

情報処理装置20は、所定の対象に関する予測データを複数の暗号データのうちの少なくとも2つの暗号データに基づいて生成して出力する。情報処理装置20は、複数の提供者のデータを使って予測データを生成するので、精度の高い予測データを出力できる。   The information processing apparatus 20 generates and outputs prediction data on a predetermined target based on at least two of the plurality of pieces of encrypted data. Since the information processing apparatus 20 generates prediction data using data of a plurality of providers, the information processing apparatus 20 can output prediction data with high accuracy.

情報処理装置20は、複数の提供者がそれぞれ保持する医療データを暗号化した複数の暗号データを取得する。そして、情報処理装置20は、病気に関する予測データを複数の暗号データのうちの少なくとも2つの暗号データに基づいて生成して出力する。情報処理装置20は、複数の暗号データを使って予測データを生成するので、精度の高い予測データを出力できる。   The information processing apparatus 20 acquires a plurality of encrypted data obtained by encrypting medical data held by a plurality of providers. Then, the information processing device 20 generates and outputs prediction data related to a disease based on at least two of the plurality of encrypted data. Since the information processing apparatus 20 generates prediction data using a plurality of encrypted data, it can output prediction data with high accuracy.

情報処理装置20は、同じ暗号データを保持する複数の装置からの該暗号データに関する情報に基づいて他の装置から取得した暗号データの改竄を検知する。暗号データの利用者は、提供された暗号データが真正なものであると確信できるので、安心して出力データを利用できる。   The information processing device 20 detects tampering of encrypted data acquired from another device based on information on the encrypted data from a plurality of devices holding the same encrypted data. The user of the encrypted data can be confident that the provided encrypted data is authentic, so the output data can be used with confidence.

情報処理装置20は、暗号データを他の装置に送信する。そして、情報処理装置20は、ユーザが提供するデータを暗号化し、暗号データを他の装置に送信する。データが暗号化されるので、ユーザは安心してデータを提供できる。   The information processing device 20 transmits the encrypted data to another device. Then, the information processing device 20 encrypts the data provided by the user and transmits the encrypted data to another device. Since the data is encrypted, the user can provide the data at ease.

情報処理装置20は、暗号データの提供者により認められた条件に従ったデータを暗号データに基づいて生成して出力した場合に、出力したデータの利用者に対し、暗号データの提供者により認められた条件に従った課金に関する処理を実行する。これにより、情報処理装置20の運営者は、データの提供の対価を得ることができる。多くの運営者がデータを提供するようになるので、サービスの運営者は多くの運営者のデータを容易に利用できる。   When the information processing apparatus 20 generates data based on the encrypted data according to the conditions accepted by the provider of the encrypted data and outputs the data, the information data provider recognizes the user of the output data by the provider of the encrypted data Execute processing related to charging according to the specified conditions. As a result, the operator of the information processing apparatus 20 can obtain compensation for the provision of data. As many operators will provide data, service operators can easily use the data of many operators.

以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。   Although some of the embodiments of the present application have been described above in detail based on the drawings, these are only examples, and various modifications can be made based on the knowledge of those skilled in the art, including the aspects described in the section of the description of the invention. It is possible to implement the invention in other improved forms.

また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、インタフェース部は、インタフェース手段やインタフェース回路に読み替えることができる。   In addition, the "section (module, unit)" described above can be read as "means" or "circuit". For example, the interface unit can be read as an interface means or an interface circuit.

1…情報処理システム
10、10、10、10…端末装置
11、21…通信部
12…入力部
13、22…記憶部
14…出力部
15、23…制御部
20、20、20、20…情報処理装置
221…取得情報データベース
222…暗号情報データベース
231…取得部
232…インタフェース部
233…検知部
234…送信部
235…課金部
1 ... information processing system 10, 10 1 , 10 2 , 10 3 ... terminal device 11, 21 ... communication unit 12 ... input unit 13, 22 ... storage unit 14 ... output unit 15, 23 ... control unit 20, 20 1 , 20 2 , 20 3 ... Information processing device 221 ... Acquisition information database 222 ... Encryption information database 231 ... Acquisition unit 232 ... Interface unit 233 ... Detection unit 234 ... Transmission unit 235 ... Accounting unit

Claims (10)

他の装置から暗号データを取得する取得部と、
前記暗号データの提供者により認められた条件に従ったデータを前記暗号データに基づいて生成して出力するインタフェース部と、
を備えることを特徴とする情報処理装置。
An acquisition unit that acquires encrypted data from another device;
An interface unit that generates data based on the encrypted data and outputs the data according to the condition recognized by the provider of the encrypted data;
An information processing apparatus comprising:
前記取得部は、複数の提供者がそれぞれ暗号化した複数の暗号データを取得し、
前記インタフェース部は、前記複数の提供者の条件を満たすデータを前記複数の暗号データのうちの少なくとも2つの暗号データに基づいて生成して出力する、
ことを特徴とする請求項1に記載の情報処理装置。
The acquisition unit acquires a plurality of encrypted data respectively encrypted by a plurality of providers,
The interface unit generates and outputs data meeting the conditions of the plurality of providers based on at least two of the plurality of encrypted data.
An information processing apparatus according to claim 1, characterized in that.
前記インタフェース部は、所定の対象に関する推奨情報を前記複数の暗号データのうちの少なくとも2つの暗号データに基づいて生成して出力する、
ことを特徴とする請求項2に記載の情報処理装置。
The interface unit generates and outputs recommendation information on a predetermined target based on at least two encrypted data of the plurality of encrypted data.
The information processing apparatus according to claim 2, characterized in that:
前記インタフェース部は、所定の対象に関する予測データを前記複数の暗号データのうちの少なくとも2つの暗号データに基づいて生成して出力する、
ことを特徴とする請求項2又は3に記載の情報処理装置。
The interface unit generates and outputs prediction data on a predetermined target based on at least two of the plurality of encrypted data.
The information processing apparatus according to claim 2 or 3, characterized in that:
前記取得部は、複数の提供者がそれぞれ保持する医療データを暗号化した複数の暗号データを取得し、
前記インタフェース部は、病気に関する予測データを前記複数の暗号データのうちの少なくとも2つの暗号データに基づいて生成して出力する、
ことを特徴とする請求項4に記載の情報処理装置。
The acquisition unit acquires a plurality of encrypted data obtained by encrypting medical data held by a plurality of providers.
The interface unit generates and outputs prediction data on disease based on at least two of the plurality of encrypted data.
The information processing apparatus according to claim 4, characterized in that:
同じ暗号データを保持する複数の装置からの該暗号データに関する情報に基づいて前記他の装置から取得した前記暗号データの改竄を検知する検知部、
をさらに備えることを特徴とする請求項1〜5のいずれか1項に記載の情報処理装置。
A detection unit that detects tampering of the encrypted data acquired from the other device based on information on the encrypted data from a plurality of devices holding the same encrypted data;
The information processing apparatus according to any one of claims 1 to 5, further comprising:
暗号データを前記他の装置に送信する送信部、を備え、
前記インタフェース部は、ユーザが提供するデータを暗号化し、
前記送信部は、前記インタフェース部が生成した暗号データを前記他の装置に送信する、
ことを特徴とする請求項1〜6のいずれか1項に記載の情報処理装置。
A transmitting unit that transmits encrypted data to the other device;
The interface unit encrypts data provided by the user,
The transmission unit transmits the encrypted data generated by the interface unit to the other device.
The information processing apparatus according to any one of claims 1 to 6, characterized in that:
前記インタフェース部がデータを出力した場合に、出力したデータの利用者に対し、前記暗号データの提供者により認められた条件に従った課金に関する処理を実行する課金部、
をさらに備えることを特徴とする請求項1〜7のいずれか1項に記載の情報処理装置。
A charging unit that executes processing relating to charging according to the condition accepted by the provider of the encrypted data to the user of the output data when the interface unit outputs the data;
The information processing apparatus according to any one of claims 1 to 7, further comprising:
情報処理装置が実行する情報処理方法であって、
暗号データを取得する取得工程と、
前記暗号データの提供者により認められた条件に従ったデータを前記暗号データに基づいて生成して出力するインタフェース工程と、
を含むことを特徴とする情報処理方法。
An information processing method executed by the information processing apparatus;
An acquisition process for acquiring encrypted data;
An interface step of generating data based on the encrypted data and outputting the data according to the condition recognized by the provider of the encrypted data;
An information processing method comprising:
暗号データを取得する取得手順と、
前記暗号データの提供者により認められた条件に従ったデータを前記暗号データに基づいて生成して出力するインタフェース手順と、
をコンピュータに実行させるための情報処理プログラム。
Acquisition procedure for acquiring encrypted data,
An interface procedure for generating data based on the encrypted data and outputting the data according to the condition recognized by the provider of the encrypted data;
An information processing program for making a computer execute.
JP2017169802A 2017-09-04 2017-09-04 Information processing apparatus, information processing method, and information processing program Active JP6429962B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017169802A JP6429962B1 (en) 2017-09-04 2017-09-04 Information processing apparatus, information processing method, and information processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017169802A JP6429962B1 (en) 2017-09-04 2017-09-04 Information processing apparatus, information processing method, and information processing program

Publications (2)

Publication Number Publication Date
JP6429962B1 JP6429962B1 (en) 2018-11-28
JP2019046262A true JP2019046262A (en) 2019-03-22

Family

ID=64480524

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017169802A Active JP6429962B1 (en) 2017-09-04 2017-09-04 Information processing apparatus, information processing method, and information processing program

Country Status (1)

Country Link
JP (1) JP6429962B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019144752A (en) * 2018-02-19 2019-08-29 株式会社デンソー Verification terminal

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3710974B1 (en) * 2017-11-17 2023-07-26 Telefonaktiebolaget LM Ericsson (publ) Method and arrangement for detecting digital content tampering
JP7210251B2 (en) * 2018-12-06 2023-01-23 株式会社日立製作所 SETTLEMENT BUSINESS SUPPORT SYSTEM AND SETTLEMENT BUSINESS SUPPORT METHOD

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000222315A (en) * 1999-01-29 2000-08-11 Toyo Commun Equip Co Ltd Server client type security system
WO2002073485A2 (en) * 2001-02-28 2002-09-19 Hata Internat Company Ltd System for providing medical service
JP2005242740A (en) * 2004-02-27 2005-09-08 Open Loop:Kk Program, storage medium and information processor in information security system
JP2006187876A (en) * 2004-12-28 2006-07-20 Sharp Corp Image forming apparatus
JP2008186289A (en) * 2007-01-30 2008-08-14 Ntt Docomo Inc Content use device and content use method
JP2011091494A (en) * 2009-10-20 2011-05-06 Nippon Hoso Kyokai <Nhk> Data distribution device, data reception device, data distribution program and data reception program
JP2013210933A (en) * 2012-03-30 2013-10-10 Ntt Docomo Inc Recommendation support method, recommendation support device and program

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000222315A (en) * 1999-01-29 2000-08-11 Toyo Commun Equip Co Ltd Server client type security system
WO2002073485A2 (en) * 2001-02-28 2002-09-19 Hata Internat Company Ltd System for providing medical service
JP2005242740A (en) * 2004-02-27 2005-09-08 Open Loop:Kk Program, storage medium and information processor in information security system
JP2006187876A (en) * 2004-12-28 2006-07-20 Sharp Corp Image forming apparatus
JP2008186289A (en) * 2007-01-30 2008-08-14 Ntt Docomo Inc Content use device and content use method
JP2011091494A (en) * 2009-10-20 2011-05-06 Nippon Hoso Kyokai <Nhk> Data distribution device, data reception device, data distribution program and data reception program
JP2013210933A (en) * 2012-03-30 2013-10-10 Ntt Docomo Inc Recommendation support method, recommendation support device and program

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019144752A (en) * 2018-02-19 2019-08-29 株式会社デンソー Verification terminal
JP7013921B2 (en) 2018-02-19 2022-02-01 株式会社デンソー Verification terminal
US11374942B2 (en) 2018-02-19 2022-06-28 Denso Corporation Verification terminal

Also Published As

Publication number Publication date
JP6429962B1 (en) 2018-11-28

Similar Documents

Publication Publication Date Title
US20230010452A1 (en) Zero-Knowledge Environment Based Networking Engine
US11144660B2 (en) Secure data sharing
US11244061B2 (en) Data encryption service
US20220116219A1 (en) Zero-knowledge environment based social networking engine
US11296895B2 (en) Systems and methods for preserving privacy and incentivizing third-party data sharing
US20180234241A1 (en) Blockchain systems and methods for user authentication
US20200042726A1 (en) Information processing apparatus and method for processing information
CN116114025A (en) Secure storage and retrieval of sensitive information
US11373216B2 (en) Method, server, and computer program for mediating advertisement based on block chain
US20210042294A1 (en) Blockchain-based consent management system and method
US11386232B2 (en) Distributed data management and verification
US11068881B2 (en) System for resource distribution within an offline environment
JP2023535927A (en) Digital ledger-based health data sharing and management
JP6429962B1 (en) Information processing apparatus, information processing method, and information processing program
JP6760904B2 (en) Information processing equipment, information processing methods, and information processing programs
JP2020077347A (en) Information processing system, data provide method, and manufacturing method for information processing system
KR101957186B1 (en) An aggregator system having a platform for engaging mobile device users
US11570177B2 (en) Distributed remote network systems for processing resource center operations
KR101986690B1 (en) Key chain management method and key chain management system for end-to-end encryption of message
JP2019046261A (en) Management device, management method, and management program
US20240086549A1 (en) Systems and methods for user characteristic determination through cryptographic tokenized data
US20240089105A1 (en) Systems and methods for user control and exclusion of cryptographic tokenized data
JP2018113043A (en) Information processing device, processing method, and program
US20220239669A1 (en) System for providing enhanced cryptography based response mechanism for malicious attacks
KR101809732B1 (en) Method and system for encrypting card data to charge

Legal Events

Date Code Title Description
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: 20181002

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181030

R150 Certificate of patent or registration of utility model

Ref document number: 6429962

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350