JP6558126B2 - Information processing system and information processing method - Google Patents

Information processing system and information processing method Download PDF

Info

Publication number
JP6558126B2
JP6558126B2 JP2015152837A JP2015152837A JP6558126B2 JP 6558126 B2 JP6558126 B2 JP 6558126B2 JP 2015152837 A JP2015152837 A JP 2015152837A JP 2015152837 A JP2015152837 A JP 2015152837A JP 6558126 B2 JP6558126 B2 JP 6558126B2
Authority
JP
Japan
Prior art keywords
data
information processing
information
server
identifier
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015152837A
Other languages
Japanese (ja)
Other versions
JP2017033305A (en
Inventor
秀暢 小栗
秀暢 小栗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2015152837A priority Critical patent/JP6558126B2/en
Publication of JP2017033305A publication Critical patent/JP2017033305A/en
Application granted granted Critical
Publication of JP6558126B2 publication Critical patent/JP6558126B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、情報処理システム及び情報処理方法に関する。   The present invention relates to an information processing system and an information processing method.

近年、情報漏洩の問題及び個人情報保護法の制定等により、個人情報の取り扱いが問題となっている。例えば、企業(以下では「データ提供者」と呼ぶことがある)の商品又はサービスを購入する消費者等の個人(以下では、「一般ユーザ」と呼ぶことがある)が商品又はサービスを購入する際に、会員登録することがある。この会員登録時には、通常、一般ユーザの氏名、年齢、性別、住所、及びメールアドレス等のデータが、一般ユーザに割り振られた個人IDと対応づけられた状態で、データ提供者のシステムに登録(記憶)される。すなわち、データ提供者のシステムは、「個人情報データ」を記憶しておく。ここで、「個人情報データ」は、例えば、氏名、年齢、性別、住所、メールアドレス、及び個人IDを含む。   In recent years, the handling of personal information has become a problem due to the problem of information leakage and the enactment of the Personal Information Protection Law. For example, an individual such as a consumer (hereinafter sometimes referred to as a “general user”) who purchases a product or service of a company (hereinafter sometimes referred to as a “data provider”) purchases the product or service. In some cases, you may register as a member. At the time of membership registration, data such as the general user's name, age, gender, address, and e-mail address is usually registered in the data provider's system in a state in which the data is associated with the personal ID assigned to the general user ( Remembered). That is, the data provider system stores “personal information data”. Here, the “personal information data” includes, for example, a name, age, sex, address, e-mail address, and personal ID.

さらに、データ提供者のシステムは、個人情報データが既に登録されている一般ユーザが商品又はサービスを購入する度に、その一般ユーザの個人IDに対応づけて、購入された商品又はサービスに関する情報を記憶する。これにより、データ提供者は、収集した個人情報データを用いて、企業活動に利用することができる。   Furthermore, each time a general user whose personal information data has already been registered purchases a product or service, the data provider system associates the personal ID of the general user with information about the purchased product or service. Remember. Thus, the data provider can use the collected personal information data for business activities.

一方で、例えば、個人情報データを正常に収集したデータ提供者以外の企業が、その個人情報データを利用することを望むことがある。すなわち、データ収集主体とデータ利用主体とが異なる可能性がある。しかしながら、個人情報保護の観点から、一般ユーザの許可を得ること無しに、個人情報データそのものを提供することはできない。そこで、個人情報データを正常に収集したデータ提供者が、個人情報データを、個人を特定できない状態のデータ(以下では、「匿名化データ」と呼ぶことがある)に変換し、匿名化データを提供することが考えられる。   On the other hand, for example, a company other than the data provider who normally collects personal information data may desire to use the personal information data. That is, there is a possibility that the data collection entity and the data utilization entity are different. However, from the viewpoint of personal information protection, personal information data itself cannot be provided without obtaining permission from a general user. Therefore, a data provider who has successfully collected personal information data converts the personal information data into data that cannot identify an individual (hereinafter sometimes referred to as “anonymized data”), It is possible to provide.

一般的に、匿名化データには、各個人のレコードを管理するために識別子が付与されている。識別子は、例えば匿名化データに新たな項目を追加する場合又は匿名化データに含まれる属性値を更新する場合に、追加、更新等の対象となるレコードを特定することに使用される。   In general, anonymized data is given an identifier to manage each individual record. The identifier is used to specify a record to be added, updated, etc., for example, when adding a new item to the anonymized data or updating an attribute value included in the anonymized data.

しかし、第三者に匿名化データを提供する場合に、当該識別子をそのまま付与すると、匿名化データに含まれる各レコードの個人が特定される。このため、第三者に匿名化データを流通させる際、匿名化データに付与された第1の識別子を第三者から隠蔽するために、当該第1の識別子を第2の識別子に変換して提供する場合がある。   However, when providing anonymized data to a third party, if the identifier is given as it is, an individual of each record included in the anonymized data is specified. For this reason, when distributing anonymized data to a third party, in order to conceal the first identifier assigned to the anonymized data from the third party, the first identifier is converted into a second identifier. May be provided.

また、今後改正され、施行が予定される個人情報保護法では、個人を特定できないように一定レベルの加工度で匿名化処理を行った個人情報を一般ユーザの許可なく流通させることが可能となることから、匿名化データの流通が期待される。   In addition, the Personal Information Protection Law, which will be revised in the future, will enable the distribution of personal information that has been anonymized at a certain level of processing so that individuals cannot be identified without permission from general users. Therefore, the distribution of anonymized data is expected.

特開2014−153944号公報JP 2014-153944 A

しかし、識別子を変換した匿名化データを提供した場合において、第1の識別子と第2の識別子との対照情報が漏洩すると、提供された匿名化データに付与される第2の識別子に基づいて第1の識別子が特定され、個人を特定されるおそれがある。識別子を変換する技術者が、当該対照情報を削除することも考えられるが、対照情報を適切な手順で消去したことを当該技術者が証明することは困難である。技術的な手違い等により対照情報が削除されずに残り、又は悪意のある技術者により対照情報が奪われる等により、対照情報が漏洩した場合は、当該対照情報を用いて個人が特定されるおそれがある。   However, in the case where the anonymized data obtained by converting the identifier is provided, if the comparison information between the first identifier and the second identifier is leaked, the second identifier is given based on the second identifier assigned to the provided anonymized data. One identifier is specified, and there is a possibility that an individual is specified. Although it is conceivable that the engineer who converts the identifier deletes the reference information, it is difficult for the engineer to prove that the control information has been deleted by an appropriate procedure. If the control information is leaked due to a technical error, etc. that remains without being deleted, or the control information is taken away by a malicious engineer, the individual may be identified using the control information There is.

1つの側面では、匿名化データの提供の際に、個人が特定されることを防ぐ情報処理システム及び情報処理方法を提供することを目的とする。   In one aspect, an object is to provide an information processing system and an information processing method for preventing an individual from being specified when anonymized data is provided.

1つの側面では、情報処理システムは、匿名化データを提供する第1の情報処理装置と、匿名化データの提供を受ける第2の情報処理装置とを有する。第1の情報処理装置は、個人情報が匿名化された匿名化データに付与される第1の識別子に対して、第2の識別子を生成する第1生成部と、匿名化データと第2の識別子とを対応付けた第1のデータを生成する第2生成部とを有する。第2の情報処理装置は、第1の情報処理装置から取得した第1のデータに含まれる第2の識別子に対して、第3の識別子を生成する生成部と、匿名化データと第3の識別子とを対応付けた第2のデータをデータ利用者に提供する提供部とを有する。   In one aspect, an information processing system includes a first information processing apparatus that provides anonymized data and a second information processing apparatus that receives provision of anonymized data. The first information processing device is configured to generate a second identifier for the first identifier assigned to the anonymized data in which the personal information is anonymized, the anonymized data, and the second A second generation unit that generates first data associated with the identifier. The second information processing device includes a generation unit that generates a third identifier for the second identifier included in the first data acquired from the first information processing device, anonymized data, and a third And a providing unit that provides second data associated with the identifier to the data user.

一実施態様によれば、匿名化データの提供の際に、個人が特定されることを防ぐ。   According to one embodiment, an individual is prevented from being specified when providing anonymized data.

図1は、実施例1におけるシステムの全体構成の一例を示す模式図である。FIG. 1 is a schematic diagram illustrating an example of the overall configuration of the system according to the first embodiment. 図2は、実施例1におけるシステムの一例を示す機能ブロック図である。FIG. 2 is a functional block diagram illustrating an example of a system according to the first embodiment. 図3は、実施例1における個人情報の一例を示す図である。FIG. 3 is a diagram illustrating an example of personal information according to the first embodiment. 図4は、実施例1における匿名化情報DBに記憶される情報の一例を示す図である。FIG. 4 is a diagram illustrating an example of information stored in the anonymization information DB according to the first embodiment. 図5は、実施例1におけるデータ提供者サーバのID管理DBに記憶される情報の一例を示す図である。FIG. 5 is a diagram illustrating an example of information stored in the ID management DB of the data provider server in the first embodiment. 図6は、実施例1における提供情報DBに記憶される情報の一例を示す図である。FIG. 6 is a diagram illustrating an example of information stored in the provision information DB according to the first embodiment. 図7は、実施例1におけるプラットフォームサーバのID管理DBに記憶される情報の一例を示す図である。FIG. 7 is a diagram illustrating an example of information stored in the ID management DB of the platform server in the first embodiment. 図8は、実施例1における公開情報DBに記憶される情報の一例を示す図である。FIG. 8 is a diagram illustrating an example of information stored in the public information DB according to the first embodiment. 図9は、実施例1における暗号化処理の流れの一例を示すフローチャートである。FIG. 9 is a flowchart illustrating an example of the flow of the encryption process according to the first embodiment. 図10は、実施例1における復号処理の流れの一例を示すフローチャートである。FIG. 10 is a flowchart illustrating an exemplary flow of a decoding process according to the first embodiment. 図11は、実施例2におけるID管理DBに記憶される情報の一例を示す図である。FIG. 11 is a diagram illustrating an example of information stored in the ID management DB according to the second embodiment. 図12は、実施例2におけるk−匿名レベルの判定について説明する図である。FIG. 12 is a diagram illustrating determination of the k-anonymity level in the second embodiment. 図13は、実施例2における復号されたSAを含むデータの一例を示す図である。FIG. 13 is a diagram illustrating an example of data including the decoded SA in the second embodiment. 図14は、実施例2における復号処理の流れの一例を示すフローチャートである。FIG. 14 is a flowchart illustrating an exemplary flow of a decoding process according to the second embodiment. 図15は、ハードウェア構成の一例を示す図である。FIG. 15 is a diagram illustrating an example of a hardware configuration.

以下に、本願の開示する情報処理システム及び情報処理方法の実施例を図面に基づいて詳細に説明する。なお、本実施例により、開示技術が限定されるものではない。また、以下に示す各実施例は、矛盾を起こさない範囲で適宜組み合わせても良い。   Embodiments of an information processing system and an information processing method disclosed in the present application will be described below in detail with reference to the drawings. The disclosed technology is not limited by the present embodiment. Moreover, you may combine suitably each Example shown below in the range which does not cause contradiction.

[全体構成]
本実施例においては、データ提供者がプラットフォーム(以下では「PF」と呼ぶ。)に提供する匿名化データにおいて、識別子を変換する構成について説明する。図1は、実施例1におけるシステムの全体構成の一例を示す模式図である。図1に示すように、実施例1におけるシステムは、データ提供者サーバ100(以下では「DPサーバ100」と呼ぶ。)と、プラットフォームサーバ300(以下では「PFサーバ300」と呼ぶ。)と、データ利用者端末500とを含む。
[overall structure]
In this embodiment, a configuration for converting an identifier in anonymized data provided by a data provider to a platform (hereinafter referred to as “PF”) will be described. FIG. 1 is a schematic diagram illustrating an example of the overall configuration of the system according to the first embodiment. As shown in FIG. 1, the system according to the first embodiment includes a data provider server 100 (hereinafter referred to as “DP server 100”) and a platform server 300 (hereinafter referred to as “PF server 300”). Data user terminal 500.

DPサーバ100は、個人の特定を防ぐ措置を施した上で、匿名化データを提供する。PFサーバ300は、提供された個人情報を、個人の特定を防ぐ措置を施した上で、データ利用者端末500に提供する。なお、図1においてはDPサーバ100、PFサーバ300及びデータ利用者端末500がそれぞれ一者づつである例を示したが、実施例はこれに限られず、それぞれ複数有するような構成であってもよい。   The DP server 100 provides anonymized data after taking measures to prevent an individual from being identified. The PF server 300 provides the provided personal information to the data user terminal 500 after taking measures to prevent identification of the individual. 1 shows an example in which the DP server 100, the PF server 300, and the data user terminal 500 are one by one. However, the embodiment is not limited to this, and a configuration having a plurality of them is also possible. Good.

本システムにおいて、DPサーバ100は、例えば一般ユーザから提供された個人情報を用いて、自ら匿名化データを生成し、又は第三者に匿名化データを生成させる。DPサーバ100は、生成された匿名化データを流通させるために、PFサーバ300に提供する。   In this system, the DP server 100 generates anonymized data by itself or causes a third party to generate anonymized data using, for example, personal information provided by a general user. The DP server 100 provides the PF server 300 with the generated anonymized data.

その際、DPサーバ100は、個人の特定を防ぐため、匿名化データの各レコードに付与された第1の識別子(以下では「ID1」と呼ぶ。)を第2の識別子(以下では「ID2」と呼ぶ。)に変換する。DPサーバ100は、ID1とID2とを連結するためのID対照情報(以下では「第1のID対照情報」と呼ぶ。)を暗号化して記憶する。なお、本実施例においては、暗号化した情報の安全性を高めるため、第1のID対照情報に対して、DPサーバ100とPFサーバ300との両方が暗号化処理を行う。   At this time, the DP server 100 uses the first identifier (hereinafter referred to as “ID1”) assigned to each record of the anonymized data as the second identifier (hereinafter referred to as “ID2”) in order to prevent identification of the individual. Is called). The DP server 100 encrypts and stores ID reference information (hereinafter referred to as “first ID reference information”) for connecting ID1 and ID2. In this embodiment, both the DP server 100 and the PF server 300 perform encryption processing on the first ID reference information in order to increase the security of the encrypted information.

また、年収や病歴等、特に厳重な秘密保持が求められるセンシティブな属性値(以下では「SA」と呼ぶ。)が匿名化データに含まれる場合、DPサーバ100はSAを削除し、又は暗号化する等、SAの漏洩を防ぐための措置を施す。   Further, when sensitive attribute values (hereinafter referred to as “SA”) that require particularly strict confidentiality such as annual income and medical history are included in the anonymized data, the DP server 100 deletes the SA or encrypts it. Measures to prevent SA leakage are taken.

その後、DPサーバ100は、ID2と、当該IDに対応するSA以外の属性値(以下では「QID(Quasi IDentifier)」と呼ぶ。)と、暗号化された第1のID対照情報とを、PFサーバ300に送信する。なお、DPサーバ100が、暗号化されたSAを合わせてPFサーバ300に送信するような構成であってもよい。   Thereafter, the DP server 100 uses the PF for ID2, the attribute value other than SA corresponding to the ID (hereinafter referred to as “QID (Quasi IDentifier)”), and the encrypted first ID reference information. Send to server 300. Note that the DP server 100 may transmit the encrypted SA to the PF server 300 together.

データを受信したPFサーバ300は、受信したデータに含まれるID2を、第3の識別子(以下では「ID3」と呼ぶ。)に変換する。PFサーバ300は、ID2とID3とを連結するためのID対照情報(以下では「第2のID対照情報」と呼ぶ。)を暗号化する。   The PF server 300 that has received the data converts ID2 included in the received data into a third identifier (hereinafter referred to as “ID3”). The PF server 300 encrypts ID contrast information (hereinafter referred to as “second ID contrast information”) for linking ID2 and ID3.

その後、PFサーバ300は、暗号化された第1のID対照情報を再暗号化するとともに、暗号化された第2のID対照情報と合わせてDPサーバ100に送信する。なお、本実施例においては、第1のID対照情報と同様に、第2のID対照情報に対しても、DPサーバ100とPFサーバ300との両方が暗号化処理を行う。   Thereafter, the PF server 300 re-encrypts the encrypted first ID reference information and transmits it to the DP server 100 together with the encrypted second ID reference information. In the present embodiment, both the DP server 100 and the PF server 300 perform the encryption process on the second ID reference information as well as the first ID reference information.

データを受信したDPサーバ100は、再暗号化された第1のID対照情報を記憶する。また、DPサーバ100は、暗号化された第2のID対照情報を再暗号化し、PFサーバ300に送信する。   The DP server 100 that has received the data stores the re-encrypted first ID reference information. Further, the DP server 100 re-encrypts the encrypted second ID reference information and transmits it to the PF server 300.

データを受信したPFサーバ300は、再暗号化された第2のID対照情報を記憶する。また、PFサーバ300は、ID3と、受信したQIDとを対応付けて記憶するとともに、データ利用者端末500から要求を受けた場合にこれを提供する。   The PF server 300 that has received the data stores the re-encrypted second ID reference information. Further, the PF server 300 stores ID3 and the received QID in association with each other, and provides this when receiving a request from the data user terminal 500.

次に、データの追加又は更新等について説明する。PFサーバ300は、データ利用者端末500からID3を含むデータの追加又は更新の依頼を受けた場合、DPサーバ100とともに、第1のID対照情報及び第2のID対照情報を復号する。PFサーバ300は、データ利用者端末500から受信したID3に対応するID2をDPサーバ100に送信し、DPサーバ100は、ID2に対応するID1の追加・更新情報を取得する。   Next, addition or update of data will be described. When receiving a request to add or update data including ID3 from the data user terminal 500, the PF server 300 decrypts the first ID reference information and the second ID reference information together with the DP server 100. The PF server 300 transmits ID2 corresponding to ID3 received from the data user terminal 500 to the DP server 100, and the DP server 100 acquires ID1 addition / update information corresponding to ID2.

その後、DPサーバ100は、PFサーバ300に当該追加・更新情報とID2とを対応付けて送信し、PFサーバ300は当該追加・更新情報をID3と対応付けてデータ利用者端末500に送信する。なお、暗号化されたSAを復号して提供する構成については、実施例2において説明する。   Thereafter, the DP server 100 transmits the addition / update information and ID2 in association with the PF server 300, and the PF server 300 transmits the addition / update information in association with ID3 to the data user terminal 500. The configuration for decrypting and providing the encrypted SA will be described in the second embodiment.

次に、本実施例において実装されるシステムの機能構成について説明する。図2は、実施例1におけるシステムの一例を示す機能ブロック図である。図2に示すように、本実施例におけるシステムは、DPサーバ100と、PFサーバ300と、データ利用者端末500とを有する。   Next, the functional configuration of the system implemented in the present embodiment will be described. FIG. 2 is a functional block diagram illustrating an example of a system according to the first embodiment. As shown in FIG. 2, the system in the present embodiment includes a DP server 100, a PF server 300, and a data user terminal 500.

DPサーバ100と、PFサーバ300とは、ネットワークNを通じて、相互に通信可能に接続される。PFサーバ300は、ネットワークNを通じて、データ利用者端末500と相互に通信可能に接続される。かかるネットワークNには、有線または無線を問わず、インターネット(Internet)を始め、LAN(Local Area Network)やVPN(Virtual Private Network)などの任意の種類の通信網を採用できる。なお、図2においては、DPサーバ100、PFサーバ300及びデータ利用者端末500がそれぞれ1台づつである例を示したが、実施例はこれに限られない。例えば、DPサーバ100、PFサーバ300及びデータ利用者端末500を複数有するような構成であってもよい。   The DP server 100 and the PF server 300 are connected to each other through the network N so that they can communicate with each other. The PF server 300 is connected to the data user terminal 500 through the network N so as to communicate with each other. For such a network N, any kind of communication network such as the Internet (Internet), LAN (Local Area Network), VPN (Virtual Private Network), etc. can be adopted regardless of wired or wireless. Although FIG. 2 shows an example in which one DP server 100, one PF server 300, and one data user terminal 500 are provided, the embodiment is not limited thereto. For example, the configuration may include a plurality of DP servers 100, PF servers 300, and data user terminals 500.

[DPサーバの機能構成]
まず、DPサーバ100の機能構成について説明する。DPサーバ100は、匿名化データに付与される識別子を変換し、PFサーバ300に提供する処理を行うコンピュータである。図2に示されるように、DPサーバ100は、記憶部120と、制御部130とを有する。なお、DPサーバ100は、図2に示す機能部以外にも既知のコンピュータが有する各種の機能部、例えば各種の入力デバイスや音声出力デバイス等の機能部を有することとしてもかまわない。
[Functional configuration of DP server]
First, the functional configuration of the DP server 100 will be described. The DP server 100 is a computer that performs processing for converting an identifier given to anonymized data and providing the converted identifier to the PF server 300. As shown in FIG. 2, the DP server 100 includes a storage unit 120 and a control unit 130. Note that the DP server 100 may include various functional units included in known computers, for example, functional units such as various input devices and audio output devices, in addition to the functional units illustrated in FIG.

次に、DPサーバ100の各機能ブロックについて説明する。記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、ハードディスクや光ディスク等の記憶装置によって実現される。記憶部120は、匿名化情報DB121、ID管理DB123、提供情報DB124及び操作ログDB125を有する。また、記憶部120は、制御部130での処理に用いる各種情報を記憶する。   Next, each functional block of the DP server 100 will be described. The storage unit 120 is realized by, for example, a semiconductor memory device such as a RAM (Random Access Memory) or a flash memory, or a storage device such as a hard disk or an optical disk. The storage unit 120 includes an anonymization information DB 121, an ID management DB 123, a provision information DB 124, and an operation log DB 125. In addition, the storage unit 120 stores various information used for processing in the control unit 130.

匿名化情報DB121は、生成された匿名化データを、識別子と対応付けて記憶する記憶部である。匿名化データは、例えば、一般ユーザから取得した個人情報に、属性値を抽象化する等の匿名化処理を施すことにより生成される。なお、個人情報に含まれる年齢や収入等の属性値が更新された場合、又は新たな個人に関する属性値を取得した場合、匿名化データも適宜更新される。   The anonymization information DB 121 is a storage unit that stores generated anonymization data in association with an identifier. Anonymization data is generated by, for example, performing anonymization processing such as abstracting attribute values on personal information acquired from a general user. When attribute values such as age and income included in personal information are updated, or when attribute values related to new individuals are acquired, anonymization data is also updated as appropriate.

図3及び図4を用いて、匿名化処理の概要について説明する。図3は、実施例1における個人情報の一例を示す図である。また、図4は、実施例1における匿名化情報DBに記憶される情報の一例を示す図である。図3は、「ID1」、「属性1性別(QID)」、「属性2年齢(QID)」及び「属性n年収(SA)」の項目を含む。一方、図4においては、図3に示される「属性2年齢(QID)」が、匿名化処理において、図4に示される「属性2年代(QID)」に抽象化される。図4に示されるその他の項目については、図3に示される項目と同様である。なお、図3及び図4において、図示しないその他の属性を含むような構成であってもよい。   The outline | summary of anonymization processing is demonstrated using FIG.3 and FIG.4. FIG. 3 is a diagram illustrating an example of personal information according to the first embodiment. FIG. 4 is a diagram illustrating an example of information stored in the anonymization information DB according to the first embodiment. FIG. 3 includes items of “ID1”, “attribute 1 sex (QID)”, “attribute 2 age (QID)”, and “attribute n annual income (SA)”. On the other hand, in FIG. 4, “attribute 2 age (QID)” shown in FIG. 3 is abstracted into “attribute 2 age (QID)” shown in FIG. 4 in the anonymization process. Other items shown in FIG. 4 are the same as the items shown in FIG. 3 and 4 may include other attributes not shown.

例えば、図3に示される「45」や「52」などの属性値は、図4においてそれぞれ「40−50代」に抽象化される。同様に、図3の「属性n年収(SA)」に示される「550万」や「240万」などの属性値は、図4においてそれぞれ「500万円台」や「300万円未満」に抽象化される。各属性値は、「ID1」に示す識別子により一意に識別される。   For example, the attribute values such as “45” and “52” shown in FIG. 3 are abstracted to “40-50 generations” in FIG. Similarly, the attribute values such as “5.5 million” and “2.4 million” shown in “attribute n annual income (SA)” in FIG. 3 are respectively “5 million yen” and “less than 3 million yen” in FIG. Abstracted. Each attribute value is uniquely identified by the identifier indicated by “ID1”.

また、図4においては、各レコードが順不同に並び替えて記憶される。これは、例えば50音順や年齢順などのレコードの並び順に基づいて、各レコードに該当する個人を推定されることを防ぐためである。   Moreover, in FIG. 4, the records are rearranged in random order and stored. This is to prevent an individual corresponding to each record from being estimated on the basis of the order of records such as the order of the Japanese syllabary or the order of age.

図2の説明に戻って、ID管理DB123は、ID1とID2とを対応づける第1のID対照情報を記憶する記憶部である。ID管理DB123に格納される情報について、図5を用いて説明する。図5は、実施例1におけるデータ提供者サーバのID管理DBに記憶される情報の一例を示す図である。図5に示すように、ID管理DB123は、「ID1」と、「ID2」とを対応付けて記憶する。例えば、「A003」というID1には、「Z123」というID2が対応付けられて記憶される。   Returning to the description of FIG. 2, the ID management DB 123 is a storage unit that stores first ID contrast information that associates ID1 and ID2. Information stored in the ID management DB 123 will be described with reference to FIG. FIG. 5 is a diagram illustrating an example of information stored in the ID management DB of the data provider server in the first embodiment. As illustrated in FIG. 5, the ID management DB 123 stores “ID1” and “ID2” in association with each other. For example, ID1 “A123” is stored in association with ID2 “Z123”.

なお、図5においては、ID1とID2とが一意に対応する例を示したが、実施例はこれに限られず、データ利用者ごとに、又はデータを提供する度に、ID1に対応するID2を新たに生成するような構成であってもよい。この場合、ID管理DB123は、図5に示すような情報を、データ利用者に割り振られた識別子等に対応付けて記憶する。   5 shows an example in which ID1 and ID2 uniquely correspond to each other. However, the embodiment is not limited to this, and ID2 corresponding to ID1 is assigned to each data user or each time data is provided. A new configuration may be used. In this case, the ID management DB 123 stores information as shown in FIG. 5 in association with an identifier assigned to the data user.

また、図5に示す例においては、図4に示す「属性1性別(QID)」及び「属性2年代(QID)」もID1及びID2と合わせて記憶されるが、図4に示す「属性n年収(SA)」は、本実施例においては削除される。   In the example shown in FIG. 5, “attribute 1 sex (QID)” and “attribute 2 age (QID)” shown in FIG. 4 are also stored together with ID1 and ID2, but “attribute n” shown in FIG. “Annual income (SA)” is deleted in this embodiment.

図2の説明に戻って、提供情報DB124は、PFサーバ300に提供される情報を記憶する記憶部である。提供情報DB124に格納される情報について、図6を用いて説明する。図6は、実施例1における提供情報DBに記憶される情報の一例を示す図である。図6に示すように、提供情報DB124は、図5に示すようなID管理DB123に記憶される情報のうち、「ID2」、「属性1性別(QID)」及び「属性2年代(QID)」のみを含み、「ID1」は削除されている。   Returning to the description of FIG. 2, the provision information DB 124 is a storage unit that stores information provided to the PF server 300. Information stored in the provision information DB 124 will be described with reference to FIG. FIG. 6 is a diagram illustrating an example of information stored in the provision information DB according to the first embodiment. As shown in FIG. 6, the provided information DB 124 includes “ID2”, “attribute 1 sex (QID)”, and “attribute 2 age (QID)” among the information stored in the ID management DB 123 as shown in FIG. 5. Only “ID1” is deleted.

図2の説明に戻って、操作ログDB125は、匿名化データに対する取得要求や暗号化等の操作を記憶する記憶部である。操作ログDB125は、例えば、ID1に対応するID2が生成されたこと、SAが暗号化され又は復号されたこと、ID2及びQIDがPFサーバ300に送信されたこと、第1のID対照情報が暗号化され又は復号されたこと等の操作を記録する。操作ログDB125は、各操作履歴を、操作を行った担当者のIDや、操作が行われた日時等と対応付けて記録する。   Returning to the description of FIG. 2, the operation log DB 125 is a storage unit that stores an acquisition request for anonymized data, an operation such as encryption, and the like. The operation log DB 125 includes, for example, that ID2 corresponding to ID1 has been generated, SA has been encrypted or decrypted, ID2 and QID have been transmitted to the PF server 300, and the first ID reference information is encrypted. An operation such as being converted to or decrypted is recorded. The operation log DB 125 records each operation history in association with the ID of the person in charge who performed the operation, the date and time when the operation was performed, and the like.

図2の説明に戻って、制御部130は、例えば、CPUやMPU(Micro Processing Unit)等によって、内部の記憶装置に記憶されているプログラムがRAMを作業領域として実行されることにより実現される。また、制御部130は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されるようにしてもよい。   Returning to the description of FIG. 2, the control unit 130 is realized by a program stored in an internal storage device being executed using the RAM as a work area, for example, by a CPU, an MPU (Micro Processing Unit), or the like. . Further, the control unit 130 may be realized by an integrated circuit such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA).

この制御部130は、ID生成部131と、暗号処理部133と、送受信部135とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、図2に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、ID生成部131、暗号処理部133及び送受信部135は、プロセッサなどの電子回路の一例またはプロセッサなどが実行するプロセスの一例である。   The control unit 130 includes an ID generation unit 131, an encryption processing unit 133, and a transmission / reception unit 135, and realizes or executes functions and operations of information processing described below. The internal configuration of the control unit 130 is not limited to the configuration illustrated in FIG. 2, and may be another configuration as long as the information processing described later is performed. Further, the ID generation unit 131, the encryption processing unit 133, and the transmission / reception unit 135 are an example of an electronic circuit such as a processor or an example of a process executed by the processor.

ID生成部131は、ID1に対応するID2を生成する処理部である。ID生成部131は、例えば、図5に示すように、「A003」というID1に対応して、「Z123」というID2を生成し、ID管理DB123に記憶する。ID生成部131は、第1生成部及び第2生成部の一例である。   The ID generation unit 131 is a processing unit that generates ID2 corresponding to ID1. For example, as illustrated in FIG. 5, the ID generation unit 131 generates ID2 “Z123” corresponding to ID1 “A003” and stores the ID2 in the ID management DB 123. The ID generation unit 131 is an example of a first generation unit and a second generation unit.

暗号処理部133は、複数のIDを対応付けるID対照情報を暗号化し、又は復号する処理部である。具体的には、暗号処理部133は、図5に示すようなID1とID2とを対応付ける情報を暗号化して、ID管理DB123に記憶し、また暗号化された情報を復号する。また、上で述べたように、暗号処理部133は、PFサーバ300により暗号化された第2のID対照情報をさらに再暗号化する。なお、暗号処理部133は、ID管理DB123全体を暗号化する構成であっても、ID管理DB123の内容を出力したファイルを暗号化する構成であってもよい。   The encryption processing unit 133 is a processing unit that encrypts or decrypts ID reference information that associates a plurality of IDs. Specifically, the encryption processing unit 133 encrypts information associating ID1 and ID2 as shown in FIG. 5, stores the information in the ID management DB 123, and decrypts the encrypted information. Further, as described above, the cryptographic processing unit 133 further re-encrypts the second ID reference information encrypted by the PF server 300. The encryption processing unit 133 may be configured to encrypt the entire ID management DB 123 or may be configured to encrypt a file that outputs the contents of the ID management DB 123.

送受信部135は、PFサーバ300に情報を送信し、又はPFサーバ300から情報を受信する処理部である。例えば、送受信部135は、提供情報DB124に記憶された、図6に示すような情報を読み出し、PFサーバ300に送信する。また、送受信部135は、例えば、PFサーバ300から暗号化したID対照情報の復号要求を受信し、暗号処理部133に指示を出力する。   The transmission / reception unit 135 is a processing unit that transmits information to the PF server 300 or receives information from the PF server 300. For example, the transmission / reception unit 135 reads information as illustrated in FIG. 6 stored in the provision information DB 124 and transmits the information to the PF server 300. For example, the transmission / reception unit 135 receives a decryption request for encrypted ID reference information from the PF server 300 and outputs an instruction to the encryption processing unit 133.

[PFサーバの機能構成]
次に、図2の説明に戻って、PFサーバ300の機能構成について説明する。PFサーバ300は、DPサーバ100から匿名化データの提供を受け、データ利用者端末500に提供する処理を行うコンピュータである。図2に示されるように、PFサーバ300は、記憶部320と、制御部330とを有する。なお、PFサーバ300は、図2に示す機能部以外にも既知のコンピュータが有する各種の機能部、例えば各種の入力デバイスや音声出力デバイス等の機能部を有することとしてもかまわない。
[Functional configuration of PF server]
Next, returning to the description of FIG. 2, the functional configuration of the PF server 300 will be described. The PF server 300 is a computer that receives anonymized data from the DP server 100 and performs processing to be provided to the data user terminal 500. As illustrated in FIG. 2, the PF server 300 includes a storage unit 320 and a control unit 330. The PF server 300 may include various functional units included in known computers, for example, functional units such as various input devices and audio output devices, in addition to the functional units illustrated in FIG.

次に、PFサーバ300の各機能ブロックについて説明する。記憶部320は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、ハードディスクや光ディスク等の記憶装置によって実現される。記憶部320は、ID管理DB323と、公開情報DB324と、操作ログDB325とを有する。また、記憶部320は、制御部330での処理に用いる各種情報を記憶する。   Next, each functional block of the PF server 300 will be described. The storage unit 320 is realized by, for example, a semiconductor memory device such as a RAM or a flash memory, or a storage device such as a hard disk or an optical disk. The storage unit 320 includes an ID management DB 323, a public information DB 324, and an operation log DB 325. In addition, the storage unit 320 stores various information used for processing in the control unit 330.

ID管理DB323は、ID2とID3とを対応づける第2のID対照情報を記憶する記憶部である。ID管理DB323に格納される情報について、図7を用いて説明する。図7は、実施例1におけるプラットフォームサーバのID管理DBに記憶される情報の一例を示す図である。図7に示すように、ID管理DB323は、「ID2」と、「ID3」とを対応付けて記憶する。例えば、「Z123」というID2には、「ABC1」というID3が対応付けられて記憶される。   The ID management DB 323 is a storage unit that stores second ID contrast information that associates ID2 and ID3. Information stored in the ID management DB 323 will be described with reference to FIG. FIG. 7 is a diagram illustrating an example of information stored in the ID management DB of the platform server in the first embodiment. As illustrated in FIG. 7, the ID management DB 323 stores “ID2” and “ID3” in association with each other. For example, ID2 “Z123” is stored in association with ID3 “ABC1”.

図2の説明に戻って、公開情報DB324は、PFサーバ300に提供される情報を記憶する記憶部である。公開情報DB324に格納される情報について、図8を用いて説明する。図8は、実施例1における公開情報DBに記憶される情報の一例を示す図である。図8に示すように、公開情報DB324は、図6に示す提供情報DB124に示す情報のうち、「ID2」を「ID3」に変換した情報を記憶する。   Returning to the description of FIG. 2, the public information DB 324 is a storage unit that stores information provided to the PF server 300. Information stored in the public information DB 324 will be described with reference to FIG. FIG. 8 is a diagram illustrating an example of information stored in the public information DB according to the first embodiment. As illustrated in FIG. 8, the public information DB 324 stores information obtained by converting “ID2” into “ID3” among the information illustrated in the provision information DB 124 illustrated in FIG. 6.

図2の説明に戻って、操作ログDB325は、匿名化データに対する取得要求や暗号化等の操作を記憶する記憶部である。操作ログDB325は、例えば、ID2に対応するID3が生成されたこと、第2のID対照情報が暗号化され又は復号されたこと等の操作を記録する。また、操作ログDB325は、データ利用者端末500に対して匿名化データを提供したこと、データ利用者端末500から追加情報取得のリクエストを受信したこと等の操作も記録する。操作ログDB325は、各操作履歴を、操作を行った担当者のIDや、操作が行われた日時等と対応付けて記録する。   Returning to the description of FIG. 2, the operation log DB 325 is a storage unit that stores operations such as an acquisition request for anonymized data and encryption. For example, the operation log DB 325 records operations such as the generation of ID3 corresponding to ID2 and the encryption or decryption of the second ID reference information. The operation log DB 325 also records operations such as providing anonymized data to the data user terminal 500 and receiving a request for acquiring additional information from the data user terminal 500. The operation log DB 325 records each operation history in association with the ID of the person in charge who performed the operation, the date and time when the operation was performed, and the like.

制御部330は、例えば、CPUやMPU等によって、内部の記憶装置に記憶されているプログラムがRAMを作業領域として実行されることにより実現される。また、制御部330は、例えば、ASICやFPGA等の集積回路により実現されるようにしてもよい。   The control unit 330 is realized, for example, by executing a program stored in an internal storage device using the RAM as a work area by a CPU, an MPU, or the like. The control unit 330 may be realized by an integrated circuit such as an ASIC or FPGA, for example.

この制御部330は、ID生成部331と、暗号処理部333と、送受信部335とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部330の内部構成は、図2に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。また、ID生成部331、暗号処理部333及び送受信部335は、プロセッサなどの電子回路の一例またはプロセッサなどが実行するプロセスの一例である。   The control unit 330 includes an ID generation unit 331, an encryption processing unit 333, and a transmission / reception unit 335, and realizes or executes functions and operations of information processing described below. Note that the internal configuration of the control unit 330 is not limited to the configuration illustrated in FIG. 2, and may be another configuration as long as information processing described later is performed. The ID generation unit 331, the encryption processing unit 333, and the transmission / reception unit 335 are an example of an electronic circuit such as a processor or an example of a process executed by the processor.

ID生成部331は、ID2に対応するID3を生成する処理部である。ID生成部331は、例えば、図7に示すように、「Z123」というID2に対応して、「ABC1」というID3を生成し、ID管理DB323に記憶する。ID生成部331は、生成部の一例である。   The ID generation unit 331 is a processing unit that generates ID3 corresponding to ID2. For example, as illustrated in FIG. 7, the ID generation unit 331 generates ID3 “ABC1” corresponding to ID2 “Z123” and stores the ID3 in the ID management DB 323. The ID generation unit 331 is an example of a generation unit.

暗号処理部333は、複数のIDを対応付けるID対照情報を暗号化し、又は復号する処理部である。具体的には、暗号処理部333は、図7に示すようなID2とID3とを対応付ける第2のID対照情報を暗号化して、ID管理DB323に記憶し、また暗号化された情報を復号する。また、上で述べたように、暗号処理部333は、DPサーバ100により暗号化された第1のID対照情報をさらに再暗号化する。   The encryption processing unit 333 is a processing unit that encrypts or decrypts ID reference information that associates a plurality of IDs. Specifically, the encryption processing unit 333 encrypts the second ID reference information that associates ID2 and ID3 as shown in FIG. 7, stores it in the ID management DB 323, and decrypts the encrypted information . Further, as described above, the cryptographic processing unit 333 further re-encrypts the first ID reference information encrypted by the DP server 100.

送受信部335は、DPサーバ100及びデータ利用者端末500との間で情報を送受信する処理部である。例えば、送受信部335は、DPサーバ100からID2とQIDとの組み合わせを受信し、記憶部320に記憶する。また、送受信部335は、データ利用者端末500からデータの追加又は更新のリクエストを受信すると、DPサーバ100にリクエストを送信する。送受信部335は、提供部の一例である。   The transmission / reception unit 335 is a processing unit that transmits / receives information between the DP server 100 and the data user terminal 500. For example, the transmission / reception unit 335 receives a combination of ID2 and QID from the DP server 100 and stores the combination in the storage unit 320. In addition, when the transmission / reception unit 335 receives a data addition or update request from the data user terminal 500, the transmission / reception unit 335 transmits the request to the DP server 100. The transmission / reception unit 335 is an example of a providing unit.

[処理の流れ]
次に、DPサーバ100及びPFサーバ300による処理の流れについて説明する。図9は、実施例1における暗号化処理の流れの一例を示すフローチャートである。なお、各ステップにおいて実行された処理の内容については、適宜操作ログDB125又は操作ログDB325に記録される。
[Process flow]
Next, the flow of processing by the DP server 100 and the PF server 300 will be described. FIG. 9 is a flowchart illustrating an example of the flow of the encryption process according to the first embodiment. Note that the contents of the processing executed in each step are appropriately recorded in the operation log DB 125 or the operation log DB 325.

まず、DPサーバ100のID生成部131は、匿名化情報DB121に記憶された匿名化データの各レコードを順不同に並べ替える(ステップS101)。次に、ID生成部131は、順不同に並べ替えた匿名化データに付与されたID1に対応するID2を生成し、第1のID対照情報をID管理DB123に記憶する(ステップS111)。   First, the ID generation unit 131 of the DP server 100 rearranges the records of the anonymization data stored in the anonymization information DB 121 in no particular order (step S101). Next, the ID generation unit 131 generates ID2 corresponding to ID1 assigned to the anonymized data rearranged in any order, and stores the first ID contrast information in the ID management DB 123 (step S111).

次に、暗号処理部133は、匿名化情報DB121に記憶された匿名化データからSAを削除する(ステップS121)。なお、SAを暗号化する構成については、実施例2において説明する。   Next, the encryption processing unit 133 deletes the SA from the anonymization data stored in the anonymization information DB 121 (step S121). A configuration for encrypting the SA will be described in a second embodiment.

その後、ID生成部131は、匿名化情報DB121から匿名化データ及び識別子を読み出し、匿名化データに付与されたID1をID2に置き換えて、提供情報DB124に記憶する(ステップS131)。そして、送受信部135は、提供情報DB124に記憶されたID2及びQIDを、PFサーバ300に送信する(ステップS135)。   After that, the ID generation unit 131 reads the anonymized data and the identifier from the anonymized information DB 121, replaces ID1 assigned to the anonymized data with ID2, and stores it in the provided information DB 124 (step S131). Then, the transmission / reception unit 135 transmits the ID2 and QID stored in the provision information DB 124 to the PF server 300 (step S135).

PFサーバ300の送受信部335が、DPサーバ100からID2とQIDとを受信すると(ステップS141)、ID生成部331は、ID2に対応するID3を生成し、第2のID対照情報をID管理DB323に記憶する(ステップS143)。次に、暗号処理部333は、第2のID対照情報を暗号化し、ID管理DB323に記憶する(ステップS145)。   When the transmission / reception unit 335 of the PF server 300 receives ID2 and QID from the DP server 100 (step S141), the ID generation unit 331 generates ID3 corresponding to ID2 and uses the second ID reference information as the ID management DB 323. (Step S143). Next, the encryption processing unit 333 encrypts the second ID reference information and stores it in the ID management DB 323 (step S145).

次に、送受信部335は、DPサーバ100に、暗号化された第2のID対照情報を送信する(ステップS151)。DPサーバ100の送受信部135が暗号化された第2のID対照情報を受信すると、暗号処理部133は、暗号化された第2のID対照情報を再暗号化する(ステップS161)。次に、暗号処理部133は、ID管理DB123に記憶された第1のID対照情報を暗号化する(ステップS163)。次に、送受信部135は、暗号化された第1のID対照情報と、再暗号化された第2のID対照情報とを、PFサーバ300に送信する(ステップS165)。   Next, the transmission / reception unit 335 transmits the encrypted second ID reference information to the DP server 100 (step S151). When the transmission / reception unit 135 of the DP server 100 receives the encrypted second ID reference information, the encryption processing unit 133 re-encrypts the encrypted second ID reference information (step S161). Next, the encryption processing unit 133 encrypts the first ID reference information stored in the ID management DB 123 (step S163). Next, the transmission / reception unit 135 transmits the encrypted first ID reference information and the re-encrypted second ID reference information to the PF server 300 (step S165).

PFサーバ300の送受信部335は、暗号化された第1のID対照情報と、再暗号化された第2のID対照情報とを受信すると、再暗号化された第2のID対照情報をID管理DB323に格納する(ステップS171)。次に、暗号処理部333は、暗号化された第1のID対照情報を再暗号化する(ステップS173)。   When the transmission / reception unit 335 of the PF server 300 receives the encrypted first ID reference information and the re-encrypted second ID reference information, the transmission / reception unit 335 receives the re-encrypted second ID reference information as the ID. It stores in management DB323 (step S171). Next, the encryption processing unit 333 re-encrypts the encrypted first ID reference information (step S173).

その後、送受信部335は、処理に用いた中間データを削除し、再暗号化された第1のID対照情報をDPサーバ100に送信する(ステップS175)。再暗号化された第1のID対照情報を受信したDPサーバ100の送受信部135は、再暗号化された第1のID対照情報をID管理DB123に格納するとともに、処理に用いた中間データを削除する(ステップS181)。   Thereafter, the transmission / reception unit 335 deletes the intermediate data used for the processing, and transmits the re-encrypted first ID reference information to the DP server 100 (step S175). The transmission / reception unit 135 of the DP server 100 that has received the re-encrypted first ID reference information stores the re-encrypted first ID reference information in the ID management DB 123 and also stores the intermediate data used for the processing. It deletes (step S181).

次に、データ利用者に提供するデータを更新又は追加するための復号処理について、図10を用いて説明する。図10は、実施例1における復号処理の流れの一例を示すフローチャートである。まず、PFサーバ300の送受信部335は、データ利用者端末500から、データの更新又は追加のリクエストを受信すると(ステップS201)、当該リクエストがデータ利用者とプラットフォームとの契約等の条件を満たすかを判定する(ステップS203)。条件を満たさない場合(ステップS203:No)、処理を終了する。   Next, decryption processing for updating or adding data to be provided to the data user will be described with reference to FIG. FIG. 10 is a flowchart illustrating an exemplary flow of a decoding process according to the first embodiment. First, when the transmission / reception unit 335 of the PF server 300 receives a data update or addition request from the data user terminal 500 (step S201), does the request satisfy a condition such as a contract between the data user and the platform? Is determined (step S203). If the condition is not satisfied (step S203: No), the process ends.

一方、当該リクエストが条件を満たす場合(ステップS203:Yes)、送受信部335は、DPサーバ100に、確認依頼を送信する(ステップS205)。DPサーバ100の送受信部135は、確認依頼を受信すると(ステップS221)、当該リクエストがプラットフォームとデータ提供者との契約等の条件を満たすかを判定する(ステップS223)。条件を満たさない場合(ステップS223:No)、送受信部135は、PFサーバ300に処理不能を通知し(ステップS225)、処理を終了する。   On the other hand, when the request satisfies the condition (step S203: Yes), the transmission / reception unit 335 transmits a confirmation request to the DP server 100 (step S205). When the transmission / reception unit 135 of the DP server 100 receives the confirmation request (step S221), the transmission / reception unit 135 determines whether the request satisfies a condition such as a contract between the platform and the data provider (step S223). When the condition is not satisfied (step S223: No), the transmission / reception unit 135 notifies the PF server 300 that processing is impossible (step S225), and ends the processing.

一方、当該リクエストが条件を満たす場合(ステップS223:Yes)、暗号処理部133は、ID管理DB123に記憶された第1のID対照情報を復号し、PFサーバ300に送信する(ステップS231)。PFサーバ300の送受信部335は、復号された第1のID対照情報を受信し、暗号処理部333がこれを再復号する(ステップS241)。次に、暗号処理部333は、ID管理DB323に記憶された第2のID対照情報を復号する(ステップS243)。次に、送受信部335は、再復号された第1のID対照情報と、復号された第2のID対照情報とをDPサーバ100に送信する(ステップS245)。   On the other hand, when the request satisfies the condition (step S223: Yes), the encryption processing unit 133 decrypts the first ID reference information stored in the ID management DB 123 and transmits it to the PF server 300 (step S231). The transmission / reception unit 335 of the PF server 300 receives the decrypted first ID reference information, and the encryption processing unit 333 re-decrypts this (step S241). Next, the encryption processing unit 333 decrypts the second ID reference information stored in the ID management DB 323 (step S243). Next, the transmission / reception unit 335 transmits the re-decoded first ID reference information and the decoded second ID reference information to the DP server 100 (step S245).

DPサーバ100の送受信部135が、復号された第2のID対照情報を受信すると、暗号処理部133は、受信された第2のID対照情報を再復号する(ステップS251)。次に、ID生成部131は、再復号された第1のID対照情報及び第2のID対照情報を用いて、ID3に対応するID1を特定し、匿名化情報DB121からID1に対応する追加情報又は更新情報(以下「追加情報等」と呼ぶ。)を取得する(ステップS253)。次に、送受信部135は、取得した追加情報等を、ID2と対応付けてPFサーバ300に送信する(ステップS255)。   When the transmission / reception unit 135 of the DP server 100 receives the decrypted second ID reference information, the encryption processing unit 133 re-decrypts the received second ID reference information (step S251). Next, the ID generation unit 131 identifies ID1 corresponding to ID3 using the re-decoded first ID reference information and second ID reference information, and additional information corresponding to ID1 from the anonymization information DB 121. Alternatively, update information (hereinafter referred to as “additional information or the like”) is acquired (step S253). Next, the transmission / reception unit 135 transmits the acquired additional information and the like to the PF server 300 in association with ID2 (step S255).

PFサーバ300の送受信部335が、DPサーバ100から追加情報等を受信すると(ステップS261)、ID生成部331は、追加情報等をID3と対応付け、データ利用者に提供する(ステップS263)。   When the transmission / reception unit 335 of the PF server 300 receives additional information or the like from the DP server 100 (step S261), the ID generation unit 331 associates the additional information and the like with ID3 and provides them to the data user (step S263).

以上のような構成により、DPサーバ100は単独でID1からID3を対応付けることができず、またPFサーバ300は単独でID3からID1を対応付けることができない。すなわち、DPサーバ100が生成した第1のID対照情報と、PFサーバ300が生成した第2のID対照情報との両方がそろわなければ、ID3からID1に再連結することができなくなる。これにより、いずれか一方のID対照情報が漏洩しても、匿名化データに付与された識別子により個人が特定されることを防止できる。   With the configuration described above, the DP server 100 cannot associate ID1 to ID3 alone, and the PF server 300 cannot associate ID1 to ID1 alone. That is, if both the first ID reference information generated by the DP server 100 and the second ID reference information generated by the PF server 300 are not aligned, it is impossible to reconnect ID3 to ID1. Thereby, even if any one of the ID reference information leaks, it is possible to prevent an individual from being identified by the identifier assigned to the anonymized data.

なお、識別子そのものを削除する場合と異なり、データ提供者とプラットフォームとが合意すれば、ID3とID1とを対応付けることで、DPサーバ100が保有する匿名化データと再連結することができる。このため、データ利用者端末500が、提供されたデータについてさらに別の項目の提供を受けることや、提供されたデータをアップデートすることもできる。   Unlike the case where the identifier itself is deleted, if the data provider and the platform agree, it is possible to reconnect the anonymized data held by the DP server 100 by associating ID3 and ID1. For this reason, the data user terminal 500 can receive provision of another item for the provided data, and can update the provided data.

本実施例においては、PFサーバ300が暗号化した第2のID対照情報をDPサーバ100に送信し、DPサーバ100がこれを再暗号化する構成を説明したが、実施例はこれに限られない。例えば、DPサーバ100が予め暗号化した第1のID対照情報をPFサーバ300に送信し、PFサーバ300が再暗号化した第1のID対照情報と、暗号化した第2のID対照情報とをDPサーバ100に送信するような構成であってもよい。   In the present embodiment, the second ID reference information encrypted by the PF server 300 is transmitted to the DP server 100, and the DP server 100 re-encrypts the information. However, the embodiment is not limited thereto. Absent. For example, the first ID reference information encrypted in advance by the DP server 100 is transmitted to the PF server 300, and the first ID reference information re-encrypted by the PF server 300, the encrypted second ID reference information, May be transmitted to the DP server 100.

また、本実施例においては、DPサーバ100側でID1からID2に変換し、ID1をPFサーバ300に受け渡さない構成について説明したが、実施例はこれに限られない。例えば、DPサーバ100がID1をPFサーバ300に受け渡し、PFサーバ300がID1に対応するID2及びID3を生成するような構成であってもよい。これにより、DPサーバ100がIDを変換する機能を有しない場合であっても、データ利用者に変換したIDを付与した匿名化データを提供することができる。   In the present embodiment, the configuration is described in which the DP server 100 converts ID1 to ID2 and does not pass ID1 to the PF server 300. However, the embodiment is not limited thereto. For example, the DP server 100 may pass ID1 to the PF server 300, and the PF server 300 may generate ID2 and ID3 corresponding to ID1. Thereby, even if it is a case where DP server 100 does not have a function which converts ID, anonymized data which gave ID converted to a data user can be provided.

DPサーバ100が提供する匿名化データには、収入や病歴等のSAが含まれる場合がある。SAは、他の属性値と比較して、特に厳重に秘密を保持することが要求される。しかし、SAそのものを削除してしまうと、後にSAの提供を求められた場合に、提供済みのデータとの連結ができなくなる。   The anonymization data provided by the DP server 100 may include SA such as income and medical history. SA is required to keep secrets particularly strictly as compared with other attribute values. However, if the SA itself is deleted, if it is requested to provide the SA later, it cannot be linked with the provided data.

[全体構成]
以下の実施例においては、再連結可能なSAの漏洩を防ぐ構成について説明する。本実施例の全体構成について、図1を用いて説明する。本実施例においては、DPサーバ100は、SAを削除せずに暗号化して保持する。
[overall structure]
In the following embodiment, a configuration for preventing releasable SA leakage will be described. The overall configuration of this embodiment will be described with reference to FIG. In this embodiment, the DP server 100 encrypts and holds the SA without deleting it.

図1の符号1001に示すように、データ利用者端末500からID3を含むSAの追加提供のリクエストを受けたPFサーバ300は、リクエストに含まれるID3をID2に変換し、DPサーバ100にSAの復号をリクエストする。なお、当該リクエストは、対象となる匿名化データに付与されたID3全てを含むものに限られず、一部のID3だけを含むものであってもよい。   As indicated by reference numeral 1001 in FIG. 1, the PF server 300 that has received a request for additional provision of SA including ID3 from the data user terminal 500 converts ID3 included in the request into ID2, and sends the SA of the SA to the DP server 100. Request decryption. In addition, the said request is not restricted to what contains all ID3 provided to the anonymization data used as object, It may contain only some ID3.

リクエストをうけたDPサーバ100は、ID2をID1に変換し、ID1に対応するSAを復号して、ID2とともにPFサーバ300に送信する。PFサーバ300は、受信した復号済みSAを、ID3とともにデータ利用者端末500に送信する。   Upon receiving the request, the DP server 100 converts ID2 into ID1, decrypts the SA corresponding to ID1, and transmits it to the PF server 300 together with ID2. The PF server 300 transmits the received decrypted SA to the data user terminal 500 together with ID3.

次に、本実施例において実装されるシステムの機能構成について、図2を用いて説明する。本実施例におけるシステムも、実施例1におけるシステムと同様に、DPサーバ100と、PFサーバ300と、データ利用者端末500とを有し、それぞれが実施例1における各コンピュータと同様の機能構成を有する。以下において、実施例1と同様の構成を有する機能ブロックについては、詳細な説明を省略する。   Next, the functional configuration of the system implemented in the present embodiment will be described with reference to FIG. Similarly to the system in the first embodiment, the system in the present embodiment also includes the DP server 100, the PF server 300, and the data user terminal 500, each having the same functional configuration as each computer in the first embodiment. Have. In the following, detailed description of functional blocks having the same configuration as in the first embodiment is omitted.

[DPサーバの機能構成]
まず、本実施例におけるDPサーバ100の機能構成のうち、実施例1における機能構成と異なる点について説明する。本実施例において、DPサーバ100のID管理DB123に記憶される情報の一例を、図11を用いて説明する。図11は、実施例2におけるID管理DBに記憶される情報の一例を示す図である。図11の符号1101に示すように、本実施例におけるID管理DB123は、図5に示す「ID1」、「ID2」、「属性1性別(QID)」及び「属性2年代(QID)」の各情報に加えて、「属性n年収(CSA)」をさらに含む。なお、「属性n年収(CSA)」は、「属性n年収(SA)」を暗号化した属性値である。例えば、「属性n年収(CSA)」の「qrq242q34」のレコードは、図4に示す「属性n年収(SA)」が「500万円台」のレコードを暗号化した属性値であることを示す。
[Functional configuration of DP server]
First, differences in the functional configuration of the DP server 100 according to the present embodiment from the functional configuration according to the first embodiment will be described. In this embodiment, an example of information stored in the ID management DB 123 of the DP server 100 will be described with reference to FIG. FIG. 11 is a diagram illustrating an example of information stored in the ID management DB according to the second embodiment. As indicated by reference numeral 1101 in FIG. 11, the ID management DB 123 in the present embodiment includes “ID1”, “ID2”, “attribute 1 sex (QID)”, and “attribute 2 age (QID)” illustrated in FIG. In addition to the information, “attribute n annual income (CSA)” is further included. “Attribute n annual income (CSA)” is an attribute value obtained by encrypting “attribute n annual income (SA)”. For example, the record “qrq242q34” of “attribute n annual income (CSA)” indicates that the attribute value obtained by encrypting the record of “attribute n annual income (SA)” “5 million yen” shown in FIG. .

なお、SA単体で暗号化するのではなく、SAと他の属性値とを合わせて暗号化した属性値を「属性n年収(CSA)」として記憶するような構成であってもよい。例えば、SAである「年収」と、他の属性値である「年代」とを合わせて暗号化するような構成が考えられる。この場合、SAが同じ「500万円台」であっても、「40−50代」と「30代」とでは、暗号化された属性値が異なることになる。なお、暗号処理部133がSAを暗号化する際に、属性値ごとに暗号鍵を変更するような構成であってもよい。   Instead of encrypting the SA alone, the configuration may be such that the attribute value encrypted by combining the SA and other attribute values is stored as “attribute n annual income (CSA)”. For example, a configuration is conceivable in which the “annual income” that is SA and the “age” that is another attribute value are encrypted together. In this case, even if the SA is in the “5 million yen range”, the encrypted attribute values are different between “40-50s” and “30s”. Note that the encryption processing unit 133 may change the encryption key for each attribute value when encrypting the SA.

図2の説明に戻って、本実施例におけるDPサーバ100の提供情報DB124においては、図11に示す情報のうち、「ID1」を削除した情報が記憶される。すなわち、提供情報DB124には、「ID2」と、「属性1性別(QID)」と、「属性2年代(QID)」と、「属性n年収(CSA)」とが対応付けられて記憶される。この場合において、「属性n年収(CSA)」は暗号化されているため、PFサーバ300やデータ利用者端末500において年収を把握することはできない。   Returning to the description of FIG. 2, in the provision information DB 124 of the DP server 100 in the present embodiment, information obtained by deleting “ID1” from the information illustrated in FIG. 11 is stored. That is, in the provided information DB 124, “ID2”, “attribute 1 sex (QID)”, “attribute 2 age (QID)”, and “attribute n annual income (CSA)” are stored in association with each other. . In this case, since “attribute n annual income (CSA)” is encrypted, the PF server 300 and the data user terminal 500 cannot grasp the annual income.

本実施例における暗号処理部133は、匿名化情報DB121からSA、又はSA及びその他の属性値を読み出して暗号化し、ID管理DB123に記憶する。暗号処理部133は、例えば、「属性n年収(SA)」と「属性2年代(QID)」とを読み出して暗号化し、「属性n年収(CSA)」としてID管理DB123に記憶する。また、暗号処理部133は、PFサーバ300からリクエストを受けた場合に、「属性n年収(CSA)」を復号する処理を行う。   The encryption processing unit 133 in the present embodiment reads SA from the anonymization information DB 121, encrypts the SA and other attribute values, and stores them in the ID management DB 123. For example, the encryption processing unit 133 reads and encrypts “attribute n year income (SA)” and “attribute 2 age (QID)”, and stores them in the ID management DB 123 as “attribute n year income (CSA)”. In addition, when receiving a request from the PF server 300, the encryption processing unit 133 performs a process of decrypting “attribute n annual income (CSA)”.

[PFサーバの機能構成]
次に、本実施例におけるPFサーバ300の機能構成のうち、実施例1における機能構成と異なる点について説明する。公開情報DB324は、DPサーバ100の提供情報DB124に記憶される情報のうち、「ID2」を「ID3」に変換した情報が記憶される。すなわち、公開情報DB324には、「ID3」と、「属性1性別(QID)」と、「属性2年代(QID)」と、「属性n年収(CSA)」とが対応付けられて記憶される。
[Functional configuration of PF server]
Next, differences in the functional configuration of the PF server 300 in the present embodiment from the functional configuration in the first embodiment will be described. The public information DB 324 stores information obtained by converting “ID2” into “ID3” among the information stored in the provision information DB 124 of the DP server 100. That is, in the public information DB 324, “ID3”, “attribute 1 sex (QID)”, “attribute 2 age (QID)”, and “attribute n annual income (CSA)” are stored in association with each other. .

本実施例における送受信部335は、データ利用者端末500に、「属性n年収(CSA)」を含むデータを送信し、データ利用者端末500から、SA開示のリクエストを受信する。具体的には、送受信部335は、データ利用者端末500から、開示を希望するSAの項目と、開示を希望するレコードのID3を受信する。リクエストを受信した送受信部335は、DPサーバ100に、ID3に対応するID2を含むリクエストを送信する。   The transmission / reception unit 335 in the present embodiment transmits data including “attribute n annual income (CSA)” to the data user terminal 500 and receives a request for SA disclosure from the data user terminal 500. Specifically, the transmission / reception unit 335 receives from the data user terminal 500 the SA item desired to be disclosed and the ID 3 of the record desired to be disclosed. The transmission / reception unit 335 that has received the request transmits a request including ID2 corresponding to ID3 to the DP server 100.

ここで、データ利用者端末500から受信するリクエストについて詳細に説明する。「属性n年収(CSA)」を受信したデータ利用者端末500において、暗号化されたCSAから元データである「属性n年収(SA)」を復号することはできない。しかし、データ利用者端末500において、「属性n年収(CSA)」の各属性値に該当する個人が、それぞれ何人いるかを集計することは可能であるため、データ利用者端末500の利用者は、例えば当該集計結果に基づいて復号を要求するCSAを特定する。   Here, the request received from the data user terminal 500 will be described in detail. The data user terminal 500 that has received “attribute n annual income (CSA)” cannot decrypt “attribute n annual income (SA)” that is the original data from the encrypted CSA. However, in the data user terminal 500, since it is possible to count the number of individuals corresponding to each attribute value of “attribute n annual income (CSA)”, the user of the data user terminal 500 For example, a CSA requesting decryption is specified based on the aggregation result.

匿名化データの利用を認めるか否かを判断する上で、匿名化データのどの属性値についても、該当する個人が少なくともk人以上いるか否かという条件がある。かかる条件を満たす人数を「k−匿名レベル」といい、匿名化データの利用を認める条件として、例えばk−匿名レベル「10」といえば、匿名化データのどの属性値についても、該当する個人が10人以上いなければならないことを示す。   In determining whether or not to allow the use of anonymized data, there is a condition whether or not there are at least k corresponding individuals for any attribute value of anonymized data. The number of persons satisfying such conditions is referred to as “k-anonymity level”. As a condition for permitting the use of anonymized data, for example, k-anonymity level “10”, for any attribute value of anonymized data, Indicates that there must be at least 10 people.

データ利用者端末500の利用者は、「属性n年収(CSA)」の各属性値のうち、例えばk−匿名レベル「10」を満たす属性値について、SA開示のリクエストを送信する。図12は、実施例2におけるk−匿名レベルの判定について説明する図である。図12は、CSAの各属性値に該当するレコードが何件あるかを示す。図12の符号1201に示すように、例えばCSAの属性値が「qrq242q34」であるレコードは260件存在し、またCSAの属性値が「y464w34yj」であるレコードは5件存在する。   The user of the data user terminal 500 transmits an SA disclosure request for an attribute value satisfying, for example, the k-anonymity level “10” among the attribute values of “attribute n annual income (CSA)”. FIG. 12 is a diagram illustrating determination of the k-anonymity level in the second embodiment. FIG. 12 shows how many records correspond to each attribute value of the CSA. As indicated by reference numeral 1201 in FIG. 12, for example, there are 260 records whose CSA attribute value is “qrq242q34”, and there are 5 records whose CSA attribute value is “y464w34yj”.

図12において、「属性n元データ」の欄は、CSAの各属性値に対応する、暗号化前のSAの元データを示す。例えば、CSAの属性値が「qrq242q34」であるレコードは、SAの属性値が「500万円台」であったレコードを暗号化したものであることを示す。なお、図12において、「属性n元データ」の欄は、説明のために便宜的に記載されたものであり、PFサーバ300又はデータ利用者端末500においてその属性値を把握することはできない。   In FIG. 12, the column “attribute n original data” indicates the original data of the SA before encryption corresponding to each attribute value of the CSA. For example, a record whose CSA attribute value is “qrq242q34” indicates that a record whose SA attribute value is “5 million yen level” is encrypted. In FIG. 12, the column “attribute n original data” is described for convenience of explanation, and the PF server 300 or the data user terminal 500 cannot grasp the attribute value.

データ利用者端末500の利用者は、例えば、図12の符号1201に示すように、「qrq242q34」が何の属性値を暗号化したものかがわからなくとも、復号した当該属性値を含む匿名化データが、k−匿名レベル「10」を満たすことを特定できる。一方、図12の符号1201に示す「y464w34yj」のレコードは5件しかないため、データ利用者端末500の利用者は、復号した当該属性値を含む匿名化データが、k−匿名レベル「10」を満たさないことを特定できる。   For example, as shown by reference numeral 1201 in FIG. 12, the user of the data user terminal 500 can anonymize including the decrypted attribute value without knowing what attribute value “qrq242q34” is encrypted. It can be specified that the data satisfies the k-anonymity level “10”. On the other hand, since there are only five records “y464w34yj” indicated by reference numeral 1201 in FIG. 12, the user of the data user terminal 500 indicates that the anonymized data including the decrypted attribute value is k-anonymity level “10”. Can be specified.

以上の特定の結果、データ利用者端末500は、例えばk−匿名レベル「10」に関する条件を満たす属性値である「qrq242q34」及び「53yt5ytrh1」のいずれかに該当するID3を指定して、SA開示のリクエストを送信する。   As a result of the above specific, the data user terminal 500 designates ID3 corresponding to either “qrq242q34” or “53yt5ythr1” which is an attribute value that satisfies the condition regarding the k-anonymity level “10”, for example, and discloses SA Send a request for.

上で述べたようなk−匿名レベルに基づく判定の結果、図13に示すような復号されたSAを含むデータが得られる。図13は、実施例2における復号されたSAを含むデータの一例を示す図である。図13に示すように、レコード数が「260」である属性値、及びレコード数が「110」である属性値については、CSAが部分的に復号され、暗号化前のSAである年収「500万円台」及び「600万円台」が記憶される。   As a result of the determination based on the k-anonymity level as described above, data including the decrypted SA as shown in FIG. 13 is obtained. FIG. 13 is a diagram illustrating an example of data including the decoded SA in the second embodiment. As shown in FIG. 13, for the attribute value with the number of records “260” and the attribute value with the number of records “110”, the CSA is partially decrypted and the annual income “500” which is the SA before encryption. "10,000 yen" and "6 million yen" are stored.

一方、図12においてレコード数が「1」及び「5」である各属性値については、当該属性値を復号した匿名化データがk−匿名レベル「10」を満たさなくなるため、CSAは復号されず、図13において、年収及びその他の属性値「不明」となっている。なお、図13に示す例においては、レコード数が「1」である各属性値と、レコード数が「5」である各属性値とを集約して、レコード数が「6」である属性値として表示している。   On the other hand, for each attribute value having the number of records “1” and “5” in FIG. 12, the anonymized data obtained by decrypting the attribute value does not satisfy the k-anonymity level “10”, so the CSA is not decrypted. In FIG. 13, the annual income and other attribute values are “unknown”. In the example shown in FIG. 13, the attribute values with the record number “1” and the attribute values with the record number “5” are aggregated to obtain the attribute value with the record number “6”. It is displayed as.

[処理の流れ]
次に、本実施例における処理の流れについて、図9及び図14を用いて説明する。なお、実施例1と同様に、各ステップにおいて実行された処理の内容については、適宜操作ログDB125又は操作ログDB325に記録される。
[Process flow]
Next, the flow of processing in this embodiment will be described with reference to FIGS. Similar to the first embodiment, the contents of the processing executed in each step are appropriately recorded in the operation log DB 125 or the operation log DB 325.

まず、暗号化処理においては、図9のステップS121及びS131において、ID生成部131及び暗号処理部133は、実施例1に示されるようにSAを削除するのではなく、SAを暗号化して提供情報DB124に記憶する。それ以外の処理については実施例1と同様であるので、詳細な説明は省略する。なお、SA以外のデータの更新又は追加に関する処理については、実施例1における図10に示す処理と同様であるので、詳細な説明は省略する。   First, in the encryption process, in steps S121 and S131 in FIG. 9, the ID generation unit 131 and the encryption processing unit 133 provide the encrypted SA instead of deleting the SA as shown in the first embodiment. It memorize | stores in information DB124. Since other processes are the same as those in the first embodiment, detailed description thereof is omitted. Note that the processing related to the update or addition of data other than SA is the same as the processing shown in FIG.

次に、データ利用者からSA開示のリクエストがあった場合の処理について説明する。図14は、実施例2における復号処理の流れの一例を示すフローチャートである。まず、PFサーバ300は、データ利用者端末500から、対象とするSAの種別、及び対象とするID3を含むSA開示のリクエストを受信する(ステップS301)。   Next, processing when a data user requests SA disclosure will be described. FIG. 14 is a flowchart illustrating an exemplary flow of a decoding process according to the second embodiment. First, the PF server 300 receives an SA disclosure request including the target SA type and the target ID 3 from the data user terminal 500 (step S301).

リクエストを受信したPFサーバ300の送受信部335は、当該リクエストがデータ利用者とプラットフォームとの契約等の条件を満たすかを判定する(ステップS303)。送受信部335は、例えば、暗号化されたSAに含まれるレコードの件数が、契約等で定められたk−匿名レベルを満たすか否かを判定する。条件を満たさない場合(ステップS303:No)、処理を終了する。   The transmission / reception unit 335 of the PF server 300 that has received the request determines whether the request satisfies a condition such as a contract between the data user and the platform (step S303). The transmission / reception unit 335 determines, for example, whether or not the number of records included in the encrypted SA satisfies the k-anonymity level defined in the contract or the like. If the condition is not satisfied (step S303: No), the process ends.

一方、当該リクエストが条件を満たす場合(ステップS303:Yes)、送受信部335は、ID管理DB323を参照してID3に対応するID2を取得する(ステップS305)。その後、送受信部335は、DPサーバ100に、ID2を含むSA復号のリクエストを送信する(ステップS311)。その際、送受信部335は、例えば、当該リクエストがk−匿名レベル等の条件を満たすことをDPサーバ100に通知する。なお、ID管理DB323に記憶される第2のID対照情報が暗号化されている場合、例えば図10のステップS231乃至S251に示すような処理を行い、第2のID対照情報を復号する。   On the other hand, when the request satisfies the condition (step S303: Yes), the transmission / reception unit 335 refers to the ID management DB 323 and acquires ID2 corresponding to ID3 (step S305). Thereafter, the transmission / reception unit 335 transmits an SA decryption request including ID2 to the DP server 100 (step S311). At that time, the transmission / reception unit 335 notifies the DP server 100 that the request satisfies a condition such as a k-anonymity level, for example. When the second ID reference information stored in the ID management DB 323 is encrypted, for example, processing as shown in steps S231 to S251 in FIG. 10 is performed to decrypt the second ID reference information.

DPサーバ100の送受信部135は、SA復号のリクエストを受信すると(ステップS321)、当該リクエストがプラットフォームとデータ提供者との契約等の条件を満たすかを判定する(ステップS323)。条件を満たさない場合(ステップS323:No)、送受信部135は、PFサーバ300に処理不能を通知し(ステップS325)、処理を終了する。   When receiving the SA decryption request (step S321), the transmission / reception unit 135 of the DP server 100 determines whether the request satisfies a condition such as a contract between the platform and the data provider (step S323). When the condition is not satisfied (step S323: No), the transmission / reception unit 135 notifies the PF server 300 that processing cannot be performed (step S325), and ends the processing.

一方、当該リクエストが条件を満たす場合(ステップS323:Yes)、暗号処理部133は、ID管理DB123を参照して、受信したID2に対応するID1を取得する(ステップS331)。なお、ID管理DB123に記憶される第1のID対照情報が暗号化されている場合、例えば図10のステップS231乃至S251に示すような処理を行い、第1のID対照情報を復号する。   On the other hand, when the request satisfies the condition (step S323: Yes), the encryption processing unit 133 refers to the ID management DB 123 and acquires ID1 corresponding to the received ID2 (step S331). If the first ID reference information stored in the ID management DB 123 is encrypted, for example, the processes shown in steps S231 to S251 in FIG. 10 are performed to decrypt the first ID reference information.

次に、暗号処理部133は、提供情報DB124を参照し、ID1に対応するCSAを復号する(ステップS333)。そして、送受信部135は、復号されたSAと、受信したID2とを対応付けて、PFサーバ300に送信する(ステップS335)。   Next, the encryption processing unit 133 refers to the provided information DB 124 and decrypts the CSA corresponding to ID1 (step S333). Then, the transmission / reception unit 135 associates the decrypted SA with the received ID2 and transmits it to the PF server 300 (step S335).

PFサーバ300の送受信部335が、ID2と、復号されたSAとを受信すると(ステップS341)、暗号処理部333は、ID管理DB323を参照してID2をID3に変換する(ステップS343)。次に、送受信部335は、復号されたSAとID3とを対応付けたデータを、データ利用者端末500に送信する(ステップS345)。   When the transmission / reception unit 335 of the PF server 300 receives ID2 and the decrypted SA (step S341), the encryption processing unit 333 refers to the ID management DB 323 and converts ID2 to ID3 (step S343). Next, the transmission / reception unit 335 transmits data in which the decrypted SA is associated with ID3 to the data user terminal 500 (step S345).

以上説明したような処理により、SAを再連結できる匿名化データの提供において、SAの漏洩を防ぐことができる。また、暗号化されたCSAに基づいて、SAの各属性値に該当するレコード数を特定できるため、k−匿名レベルの設定に応じたSAの開示が可能となる。   Through the processing described above, it is possible to prevent SA leakage in providing anonymized data that can reconnect SAs. Moreover, since the number of records corresponding to each attribute value of SA can be specified based on the encrypted CSA, SA can be disclosed according to the setting of k-anonymity level.

なお、暗号処理部133がSAを暗号化する際の暗号鍵を属性値ごとに変更するような構成においては、DPサーバ100がPFサーバ300に対して特定の属性値に対応する暗号鍵を提供するような構成であってもよい。PFサーバ300又はデータ利用者端末500が、提供された暗号鍵を用いてCSAを復号するような構成とすることにより、他のSAが漏洩することなく特定のSAを復号でき、復号処理を簡略化できる。   In a configuration in which the encryption processor 133 changes the encryption key for encrypting the SA for each attribute value, the DP server 100 provides the PF server 300 with an encryption key corresponding to the specific attribute value. Such a configuration may be adopted. By configuring the PF server 300 or the data user terminal 500 to decrypt the CSA using the provided encryption key, a specific SA can be decrypted without leakage of other SAs, and the decryption process is simplified. Can be

また、本実施例においては、SAを可逆的に暗号化し、「属性n年収(CSA)」を復号してSAを取得する構成について説明したが、実施の形態はこれに限られない。例えば、暗号処理部133が、SAを不可逆的に暗号化するような構成であってもよい。不可逆的に暗号化することで、CSAからSAを解読されるリスクをさらに低減しつつ、PFサーバ300又はデータ利用者端末500においてCSAの各属性値の件数をカウントできる。なお、SAを不可逆的に暗号化する場合、DPサーバ100はCSAからSAへの復号ができないため、例えば匿名化情報DB121から該当するID1に対応する元データを読み出して、ID2と対応付けてPFサーバに送信する。   In the present embodiment, the configuration has been described in which the SA is reversibly encrypted and the “attribute n annual income (CSA)” is decrypted to obtain the SA, but the embodiment is not limited thereto. For example, the encryption processing unit 133 may be configured to irreversibly encrypt the SA. By irreversibly encrypting, the number of CSA attribute values can be counted in the PF server 300 or the data user terminal 500 while further reducing the risk of decrypting the SA from the CSA. Note that when the SA is irreversibly encrypted, the DP server 100 cannot decrypt the CSA to the SA. For example, the original data corresponding to the corresponding ID1 is read from the anonymization information DB 121 and associated with the ID2 PF. Send to server.

なお、本実施例においては、データ利用者端末500が、開示を希望するSAに対応するID3を送信する構成について説明したが、実施の形態はこれに限られない。例えば、データ利用者端末500からリクエストを受信したPFサーバ300が、k−匿名レベル等の条件を満たすID2を特定して、DPサーバ100にリクエストを送信するような構成であってもよい。かかる構成によれば、PFサーバ300が、データ利用者端末500に開示する匿名化データを、k−匿名レベル等の条件に基づいてコントロールできる。   In the present embodiment, the configuration in which the data user terminal 500 transmits ID3 corresponding to the SA desired to be disclosed has been described, but the embodiment is not limited thereto. For example, the configuration may be such that the PF server 300 that has received the request from the data user terminal 500 specifies ID2 that satisfies the condition such as the k-anonymity level and transmits the request to the DP server 100. According to such a configuration, the PF server 300 can control the anonymized data disclosed to the data user terminal 500 based on conditions such as the k-anonymity level.

さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。例えば、図9、図10及び図14に示す各処理は、上記の順番に限定されるものではなく、処理内容を矛盾させない範囲において、同時に実施してもよく、順序を入れ替えて実施してもよい。   Although the embodiments of the present invention have been described so far, the present invention may be implemented in various different forms other than the embodiments described above. For example, the processes shown in FIG. 9, FIG. 10 and FIG. 14 are not limited to the above order, and may be performed at the same time as long as the processing contents do not contradict each other. Good.

また、本実施例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともできる。あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。   In addition, among the processes described in the present embodiment, all or part of the processes described as being automatically performed can be manually performed. Alternatively, all or part of the processing described as being performed manually can be automatically performed by a known method. In addition, the processing procedure, control procedure, specific name, and information including various data and parameters shown in the above-described document and drawings can be arbitrarily changed unless otherwise specified.

また、上で述べた各実施例においては、DPサーバ100とPFサーバ300の2者による二重暗号化によって情報の機密性を高める手段を採っているが、実際には2者による暗号化は、途中の暗号が傍受されることによって強度が減少することが知られている。例えば、何者かが途中の暗号と平文とを取得した場合、Meet in the Middle Attack(中間一致攻撃)等により暗号鍵を特定できるおそれがあることが知られている。そのため、安全性向上のために、2者以外にも、機密を守ることが出来る第三者機関や会社内における独立したセキュリティ部門などを含めた3者以上により暗号化するような構成であってもよい。   In each of the above-described embodiments, the DP server 100 and the PF server 300 employ a means for improving the confidentiality of information by double encryption. It is known that the strength is reduced by intercepting the encryption on the way. For example, it is known that when someone obtains an intermediate cipher and plaintext, the encryption key may be identified by Meet in the Middle Attack. Therefore, in order to improve safety, in addition to the two parties, encryption is performed by three or more parties including a third party organization that can protect confidentiality and an independent security department within the company. Also good.

上で述べた各実施例においては、個人情報に基づいて生成された匿名化データについて実施する例として説明したが、適用範囲はこれに限られない。例えば、企業等の法人に関する情報など、当該情報に該当する対象を特定されることを抑制したいその他の情報について各実施例を実施してもよい。   In each Example mentioned above, although demonstrated as an example implemented about the anonymization data produced | generated based on personal information, an application range is not restricted to this. For example, you may implement each Example about the other information which wants to suppress specifying the object applicable to the said information, such as information regarding corporations, such as a company.

[システム]
また、図示した装置の各構成は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、任意の単位で分散または統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
[system]
Further, each configuration of the illustrated apparatus does not necessarily need to be physically configured as illustrated. That is, it can be configured to be distributed or integrated in arbitrary units. Furthermore, all or a part of each processing function performed in each device may be realized by a CPU and a program that is analyzed and executed by the CPU, or may be realized as hardware by wired logic.

更に、各装置で行われる各種処理機能は、CPU(又はMPU、MCU(Micro Controller Unit)等のマイクロ・コンピュータ)上で、その全部又は任意の一部を実行するようにしてもよい。また、各種処理機能は、CPU(又はMPU、MCU等のマイクロ・コンピュータ)で解析実行するプログラム上、又はワイヤードロジックによるハードウェア上で、その全部又は任意の一部を実行するようにしてもよい。   Furthermore, various processing functions performed in each device may be executed entirely or arbitrarily on a CPU (or a microcomputer such as an MPU or MCU (Micro Controller Unit)). Various processing functions may be executed entirely or arbitrarily on a program that is analyzed and executed by a CPU (or a microcomputer such as an MPU or MCU) or hardware based on wired logic. .

上記DPサーバ100、PFサーバ300、及びデータ利用者端末500は、例えば、図15に示すコンピュータ2000のようなハードウェア構成により実現することができる。図15は、ハードウェア構成の一例を示す図である。図15に示すように、コンピュータ2000は、プロセッサ2001と、メモリ2002と、IF2003を有する。   The DP server 100, the PF server 300, and the data user terminal 500 can be realized by a hardware configuration such as a computer 2000 shown in FIG. FIG. 15 is a diagram illustrating an example of a hardware configuration. As illustrated in FIG. 15, the computer 2000 includes a processor 2001, a memory 2002, and an IF 2003.

プロセッサ2001の一例としては、CPU、DSP(Digital Signal Processor)、FPGA等が挙げられる。また、メモリ2002の一例としては、SDRAM(Synchronous Dynamic Random Access Memory)等のRAM、ROM(Read Only Memory)、フラッシュメモリ等が挙げられる。   Examples of the processor 2001 include a CPU, a DSP (Digital Signal Processor), and an FPGA. Further, examples of the memory 2002 include RAM such as SDRAM (Synchronous Dynamic Random Access Memory), ROM (Read Only Memory), flash memory, and the like.

そして、上記DPサーバ100、PFサーバ300、及びデータ利用者端末500で行われる各種処理機能は、不揮発性記憶媒体などの各種メモリに格納されたプログラムを制御装置が備えるプロセッサで実行することによって実現してもよい。すなわち、ID生成部131及び331、暗号処理部133及び333、並びに送受信部135及び335によって実行される各処理に対応するプログラムがメモリ2002に記録され、各プログラムがプロセッサ2001で実行されてもよい。   Various processing functions performed in the DP server 100, the PF server 300, and the data user terminal 500 are realized by executing programs stored in various memories such as a nonvolatile storage medium by a processor included in the control device. May be. That is, a program corresponding to each process executed by the ID generation units 131 and 331, the encryption processing units 133 and 333, and the transmission / reception units 135 and 335 may be recorded in the memory 2002, and each program may be executed by the processor 2001. .

100 データ提供者サーバ
300 プラットフォームサーバ
500 データ利用者端末
120、320 記憶部
121 匿名化情報DB
123、323 ID管理DB
124 提供情報DB
324 公開情報DB
125、325 操作ログDB
130、330 制御部
131、331 ID生成部
133、333 暗号処理部
135、335 送受信部
DESCRIPTION OF SYMBOLS 100 Data provider server 300 Platform server 500 Data user terminal 120, 320 Storage part 121 Anonymization information DB
123, 323 ID management DB
124 Provided information DB
324 Public Information DB
125, 325 Operation log DB
130, 330 Control unit 131, 331 ID generation unit 133, 333 Cryptographic processing unit 135, 335 Transmission / reception unit

Claims (8)

匿名化データを提供する第1の情報処理装置と、当該匿名化データの提供を受ける第2の情報処理装置とを有する情報処理システムにおいて、
前記第1の情報処理装置は、
個人情報が匿名化された匿名化データに付与される第1の識別子に対して、第2の識別子を生成する第1生成部と、
前記匿名化データと前記第2の識別子とを対応付けた第1のデータを生成する第2生成部と
を有し、
前記第2の情報処理装置は、
前記第1の情報処理装置から取得した前記第1のデータに含まれる前記第2の識別子に対して、第3の識別子を生成する生成部と、
前記匿名化データと前記第3の識別子とを対応付けた第2のデータをデータ利用者に提供する提供部と
を有することを特徴とする情報処理システム。
In an information processing system having a first information processing device that provides anonymized data and a second information processing device that receives provision of the anonymized data,
The first information processing apparatus includes:
A first generator for generating a second identifier for the first identifier assigned to the anonymized data in which the personal information is anonymized;
A second generation unit that generates first data in which the anonymization data and the second identifier are associated with each other;
The second information processing apparatus
A generating unit that generates a third identifier for the second identifier included in the first data acquired from the first information processing apparatus;
An information processing system comprising: a providing unit that provides the data user with second data in which the anonymized data is associated with the third identifier.
前記第1の情報処理装置の第2生成部が、前記匿名化データ又は前記匿名化データの一部を不可逆的に暗号化し、当該暗号化されたデータを取得した前記第2の情報処理装置から、前記暗号化されたデータが所定のk−匿名レベルを満たす旨の通知を受けた場合に、前記暗号化されたデータの元データを前記第2の情報処理装置に提供することを特徴とする請求項1に記載の情報処理システム。   The second generation unit of the first information processing apparatus irreversibly encrypts the anonymized data or a part of the anonymized data, and obtains the encrypted data from the second information processing apparatus. When the notification that the encrypted data satisfies a predetermined k-anonymity level is received, the original data of the encrypted data is provided to the second information processing apparatus. The information processing system according to claim 1. 前記第1の情報処理装置の第2生成部が、前記匿名化データ又は前記匿名化データの一部を可逆的に暗号化し、当該暗号化されたデータを取得した前記第2の情報処理装置から、前記暗号化されたデータが所定のk−匿名レベルを満たす旨の通知を受けた場合に、前記暗号化されたデータを復号する暗号鍵を前記第2の情報処理装置に提供する
ことを特徴とする請求項1に記載の情報処理システム。
From the second information processing apparatus in which the second generation unit of the first information processing apparatus reversibly encrypts the anonymized data or a part of the anonymized data, and acquires the encrypted data. When the notification that the encrypted data satisfies a predetermined k-anonymity level is received, an encryption key for decrypting the encrypted data is provided to the second information processing apparatus. The information processing system according to claim 1.
前記第1の情報処理装置の第2生成部が、前記匿名化データの第1の部分及び第2の部分を、それぞれ別の暗号鍵を用いて可逆的に暗号化し、前記第2の情報処理装置から、前記第1の部分が所定のk−匿名レベルを満たす旨の通知を受けた場合に、前記第1の部分を復号する暗号鍵を前記第2の情報処理装置に提供することを特徴とする請求項3に記載の情報処理システム。   The second generation unit of the first information processing device reversibly encrypts the first part and the second part of the anonymized data using different encryption keys, respectively, and the second information processing When receiving notification from the apparatus that the first part satisfies a predetermined k-anonymity level, an encryption key for decrypting the first part is provided to the second information processing apparatus. The information processing system according to claim 3. 前記第2の情報処理装置の生成部が、前記第1の情報処理装置から取得した前記暗号化されたデータに含まれるレコードの件数に基づいて、前記暗号化されたデータが所定のk−匿名レベルを満たすか否かを判定し、前記所定のk−匿名レベルを満たす場合に、前記暗号化されたデータが前記所定のk−匿名レベルを満たす旨を通知することを特徴とする請求項2乃至4のいずれか1つに記載の情報処理システム。   Based on the number of records included in the encrypted data acquired from the first information processing apparatus by the generation unit of the second information processing apparatus, the encrypted data is predetermined k-anonymous. 3. It is determined whether or not a level is satisfied, and when the predetermined k-anonymity level is satisfied, notification is made that the encrypted data satisfies the predetermined k-anonymity level. Information processing system as described in any one of thru | or 4. 前記第2の情報処理装置の生成部が、前記第2の識別子と前記第3の識別子との対応関係を示す対照情報を暗号し、
前記第1の情報処理装置の第1生成部が、暗号化された前記対照情報をさらに再暗号化することを特徴とする請求項1乃至5のいずれか1つに記載の情報処理システム。
The generation unit of the second information processing apparatus encrypts contrast information indicating a correspondence relationship between the second identifier and the third identifier,
The information processing system according to claim 1, wherein the first generation unit of the first information processing apparatus further re-encrypts the encrypted comparison information.
前記第1の情報処理装置の第1生成部が、前記第1の識別子を順不同に並べ替えて、前記第1の識別子に対する前記第2の識別子を生成することを特徴とする請求項1乃至6のいずれか1つに記載の情報処理システム。   The first generation unit of the first information processing device generates the second identifier for the first identifier by rearranging the first identifiers in no particular order. The information processing system according to any one of the above. 匿名化データを提供する第1の情報処理装置と、当該匿名化データの提供を受ける第2の情報処理装置とにより実行される情報処理方法であって、
前記第1の情報処理装置が、
個人情報が匿名化された匿名化データに付与される第1の識別子に対して、第2の識別子を生成し、
前記匿名化データと前記第2の識別子とを対応付けた第1のデータを生成する処理を行い、
前記第2の情報処理装置が、
前記第1のデータを取得し、
取得した前記第1のデータに含まれる前記第2の識別子に対して、第3の識別子を生成し、
前記匿名化データと前記第3の識別子とを対応付けた第2のデータをデータ利用者に提供する
処理を行うことを特徴とする情報処理方法。
An information processing method executed by a first information processing device that provides anonymized data and a second information processing device that receives provision of the anonymized data,
The first information processing apparatus is
For the first identifier assigned to the anonymized data in which the personal information is anonymized, a second identifier is generated,
Performing a process of generating first data in which the anonymized data and the second identifier are associated with each other;
The second information processing apparatus is
Obtaining the first data;
Generating a third identifier for the second identifier included in the acquired first data;
The information processing method characterized by performing the process which provides the data user with the 2nd data which matched the said anonymization data and the said 3rd identifier.
JP2015152837A 2015-07-31 2015-07-31 Information processing system and information processing method Active JP6558126B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015152837A JP6558126B2 (en) 2015-07-31 2015-07-31 Information processing system and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015152837A JP6558126B2 (en) 2015-07-31 2015-07-31 Information processing system and information processing method

Publications (2)

Publication Number Publication Date
JP2017033305A JP2017033305A (en) 2017-02-09
JP6558126B2 true JP6558126B2 (en) 2019-08-14

Family

ID=57989445

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015152837A Active JP6558126B2 (en) 2015-07-31 2015-07-31 Information processing system and information processing method

Country Status (1)

Country Link
JP (1) JP6558126B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7105034B2 (en) * 2017-03-24 2022-07-22 富士通株式会社 Data transmission processing program, data transmission processing device, and data transmission processing method
JP6979562B2 (en) * 2017-03-31 2021-12-15 パナソニックIpマネジメント株式会社 Energy database system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006293577A (en) * 2005-04-08 2006-10-26 Hitachi Ltd Data entry method
EP2229650A1 (en) * 2007-12-28 2010-09-22 Koninklijke Philips Electronics N.V. Information interchange system and apparatus
JP2010211590A (en) * 2009-03-11 2010-09-24 Kansai Electric Power Co Inc:The Data conversion program, data converter and data conversion method
JP2010237811A (en) * 2009-03-30 2010-10-21 Nec Corp Personal information management system and personal information management method

Also Published As

Publication number Publication date
JP2017033305A (en) 2017-02-09

Similar Documents

Publication Publication Date Title
EP3298532B1 (en) Encryption and decryption system and method
CN111539813B (en) Method, device, equipment and system for backtracking processing of business behaviors
JP5639660B2 (en) Confirmable trust for data through the wrapper complex
US9767299B2 (en) Secure cloud data sharing
US20160292453A1 (en) Health care information system and method for securely storing and controlling access to health care data
US20150026462A1 (en) Method and system for access-controlled decryption in big data stores
US20130117802A1 (en) Authorization-based redaction of data
CN108885672B (en) Access management method, information processing device, program, and recording medium
US11509709B1 (en) Providing access to encrypted insights using anonymous insight records
EP4068130A1 (en) Data sharing system, data sharing method, and data sharing program
JP2020519097A (en) Creating a matching cohort and exchanging protected data using blockchain
Zala et al. PRMS: design and development of patients’ E-healthcare records management system for privacy preservation in third party cloud platforms
CN111132150A (en) Method and device for protecting data, storage medium and electronic equipment
US20220200791A1 (en) Method for encrypting and storing computer files and associated encryption and storage device
US20150143107A1 (en) Data security tools for shared data
US10216940B2 (en) Systems, methods, apparatuses, and computer program products for truncated, encrypted searching of encrypted identifiers
WO2019058952A1 (en) Medical data search system, medical data search method, and medical data search program
Zhou et al. A secure role-based cloud storage system for encrypted patient-centric health records
WO2018184441A1 (en) Method and device for processing user information
Lee et al. Privacy Preservation in Patient Information Exchange Systems Based on Blockchain: System Design Study
JP6558126B2 (en) Information processing system and information processing method
Ikuomola et al. Securing patient privacy in e-health cloud using homomorphic encryption and access control
CN116663047A (en) Fine-granularity safe data sharing method for privacy protection of patient health record
TW202301160A (en) Private joining, analysis and sharing of information located on a plurality of information stores
Sri et al. A Framework for Uncertain Cloud Data Security and Recovery Based on Hybrid Multi-User Medical Decision Learning Patterns

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180720

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20190118

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190124

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190214

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190531

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: 20190618

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190701

R150 Certificate of patent or registration of utility model

Ref document number: 6558126

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150