JP2021001991A - Anonymous data management system and anonymous data management method - Google Patents
Anonymous data management system and anonymous data management method Download PDFInfo
- Publication number
- JP2021001991A JP2021001991A JP2019116149A JP2019116149A JP2021001991A JP 2021001991 A JP2021001991 A JP 2021001991A JP 2019116149 A JP2019116149 A JP 2019116149A JP 2019116149 A JP2019116149 A JP 2019116149A JP 2021001991 A JP2021001991 A JP 2021001991A
- Authority
- JP
- Japan
- Prior art keywords
- analysis processing
- analysis
- processing function
- smart contract
- key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
Description
本発明は、匿名データ管理システムおよび匿名データ管理方法に関するものであり、具体的には、個人情報の流出可能性を極小化したうえで、外部組織による個人情報の利活用を可能にする技術に関する。 The present invention relates to an anonymous data management system and an anonymous data management method, and more specifically, to a technique that enables an external organization to utilize personal information after minimizing the possibility of leakage of personal information. ..
例えば、「私は20歳以上だ」という命題が存在し、その検証者が当該命題の証明を証明者に求めたとする。その際、証明者が自信の運転免許証を検証者に提示すれば、確かに当該命題が真であることを証明できるが、生年月日や免許番号など証明者の情報が検証者に漏れてしまう。 For example, suppose there is a proposition "I am over 20 years old" and the verifier asks the certifier to prove the proposition. At that time, if the certifier presents his / her own driver's license to the verifier, it can be proved that the proposition is true, but the certifier's information such as date of birth and license number is leaked to the verifier. It ends up.
そこで、証明者(Prover)が検証者(verifier)に、自分の持っている命題が真であることを伝えるのに、真であること以外、何の知識も伝えることなく証明できるプロトコルとして、ゼロ知識証明(zero-knowliedge proof)の概念が存在する(非特許文献1参照)。 Therefore, the proofer (Prover) tells the verifier that the proposition he has is true, but as a protocol that can be proved without telling any knowledge other than being true, there is zero. There is a concept of zero-knowli edge proof (see Non-Patent Document 1).
そこで、このゼロ知識証明の概念を、命題「私は公開鍵Pkの秘密鍵を知っている」に適用した場合、検証者は乱数を生成し、これを公開鍵Pkで暗号鍵で暗号化して証明者に送信する。一方、暗号化された乱数を受信した証明者は、これを自身で保持する秘密鍵で復号化して当該変数を特定し、これを検証者に返信する。検証者は、証明者から受信した乱数と自身が証明者に送信した変数とが一致するか判定することで、上述の命題が正しいことを判断できる。この時、検証者は、上述の変数以外の情報(例:証明者に関する情報)を得ていない。 Therefore, when this concept of zero-knowledge proof is applied to the proposition "I know the private key of the public key Pk", the verifier generates a random number and encrypts it with the public key Pk with the encryption key. Send to certifier. On the other hand, the certifier who receives the encrypted random number decrypts it with the private key held by itself, identifies the variable, and returns it to the verifier. The verifier can determine that the above proposition is correct by determining whether the random number received from the prover matches the variable sent to the prover. At this time, the verifier has not obtained any information other than the above variables (eg, information about the prover).
このような秘匿計算に関連する従来技術としては、例えば、秘匿回路計算を用いて入力データを明かすことなく関数計算する場合の計算量削減を実現する秘匿関数計算方法(特許文献1参照)などが提案されている。 As a conventional technique related to such concealment calculation, for example, a concealment function calculation method (see Patent Document 1) that realizes a reduction in the amount of calculation when a function calculation is performed without revealing input data by using a concealment circuit calculation is used. Proposed.
金融機関は多くの個人情報(顧客情報)を保持している。そのため金融機関は、それら個人情報を、匿名性に関して十分な措置を講じた上で、監査対応や情報銀行の取り組みのために外部組織に提供することを検討している。 Financial institutions hold a lot of personal information (customer information). Therefore, financial institutions are considering providing such personal information to external organizations for auditing and information banking efforts after taking sufficient measures regarding anonymity.
例えば、金融機関が、業務の一部(例:ATM利用情報の分析など)を外部組織に委託するケースなど、金融機関が自身がもつ顧客情報を、顧客の同意のうえで他事業者に提供し、他事業者はサービス間の円滑な連携やマーケティングへそれら個人情報を活用する状況が想定されている。 For example, when a financial institution outsources part of its business (eg, analysis of ATM usage information) to an external organization, the financial institution provides its own customer information to other businesses with the consent of the customer. However, it is assumed that other businesses will utilize such personal information for smooth cooperation between services and marketing.
また、監査対応として、FATF(マネー・ロンダリング対策における国際協調を推進するため設立された国際的な組織)の求めるマネーロンダリング対策の厳格化に伴い、当該監査組織に対し、顧客の同意の上でその個人情報を提供する状況も想定されている。
いずれにしても、金融機関としては顧客の個人情報を生の形で外部組織に提供できない一方で、上述の外部組織は生に近い形の多くの情報を求めている。
In addition, as an audit response, with the tightening of money laundering measures required by FATF (an international organization established to promote international cooperation in money laundering measures), the customer's consent has been given to the audit organization. The situation of providing the personal information above is also assumed.
In any case, while financial institutions cannot provide personal information of customers to external organizations in a raw form, the above-mentioned external organizations require a lot of information in a form close to raw.
金融機関の立場からすれば、顧客の個人情報は機微情報であって、生の状態で外部組織に提供することは避けたいと考える。他方、外部組織の立場からすれば、より多くの、かつ本人のものである確証がある生の個人情報を得たいと考える。 From the financial institution's point of view, the personal information of customers is sensitive information, and we would like to avoid providing it to external organizations in the raw state. On the other hand, from the standpoint of an external organization, we would like to obtain more raw personal information that is confirmed to belong to the individual.
そこで、各顧客の個人情報を生の形で外部組織にそのまま渡す方式、匿名加工して渡す方式、および、情報を渡すことなく情報に対する処理結果のみを返す方式のいずれかが選択肢となっているが、いずれの方式であっても金融機関と外部組織の双方のニーズを満たす適宜なものにはなり得なかった。
そこで本発明の目的は、個人情報の流出可能性を極小化したうえで、外部組織による個人情報の利活用を可能にする技術を提供することにある。
Therefore, one of the options is to pass each customer's personal information in raw form to an external organization as it is, to pass it anonymously, or to return only the processing result for the information without passing the information. However, none of these methods could meet the needs of both financial institutions and external organizations.
Therefore, an object of the present invention is to provide a technique that enables an external organization to utilize personal information while minimizing the possibility of leakage of personal information.
上記課題を解決する本発明の匿名データ管理システムは、金融機関の顧客データを保持する記憶装置と、検証者装置から配信された分析処理関数を含む鍵生成依頼を、鍵生成装置に送信し、当該鍵生成装置から公開鍵および秘密鍵を取得する処理、前記分析処理関数に前記顧客データを引数として与えることで分析実行結果を生成する処理、前記秘密鍵、前記分析処理関数、前記分析実行結果、および前記引数に基づいて証明書を生成する処理、および前記分析処理関数、前記証明書、および前記公開鍵を検証用情報として前記検証者装置に返信する処理、を実行する演算装置と、を備える分析処理サーバを含むことを特徴とする。 The anonymous data management system of the present invention that solves the above problems transmits a key generation request including a storage device that holds customer data of a financial institution and an analysis processing function distributed from a verifier device to the key generation device. A process of acquiring a public key and a private key from the key generator, a process of generating an analysis execution result by giving the customer data as an argument to the analysis processing function, the private key, the analysis processing function, and the analysis execution result. , And a processing device that executes a process of generating a certificate based on the argument, and a process of returning the analysis processing function, the certificate, and the public key to the verifier device as verification information. It is characterized by including an analysis processing server provided.
また、本発明の匿名データ管理システムは、金融機関の顧客データを保持する記憶装置と、検証者装置であるブロックチェーンシステムのクライアントから配信された、分析処理関数たるスマートコントラクトをデプロイし、当該分析処理関数を含む鍵生成依頼を、鍵生成装置に送信し、当該鍵生成装置から公開鍵および秘密鍵を取得する処理、前記検証者装置からの前記スマートコントラクトの実行依頼に対応したトランザクションを受信し、前記スマートコントラクトに前記顧客データを引数として与えることで分析実行結果を生成する処理、前記秘密鍵、前記分析処理関数、前記分析実行結果、および前記引数に基づいて証明書を生成する処理、前記公開鍵と前記スマートコントラクトを紐付けて分散台帳におけるブロックチェーンに格納する処理、および前記スマートコントラクト、および前記公開鍵を検証用情報として前記検証者装置に返信する処理、を実行する演算装置と、を備える分析処理サーバを含むことを特徴とする。 In addition, the anonymous data management system of the present invention deploys a storage device that holds customer data of a financial institution and a smart contract that is an analysis processing function distributed from a client of a blockchain system that is a verifier device, and analyzes the data. A key generation request including a processing function is sent to the key generation device, a process of acquiring the public key and a private key from the key generation device, and a transaction corresponding to the execution request of the smart contract from the verifier device are received. , A process of generating an analysis execution result by giving the customer data as an argument to the smart contract, a process of generating a certificate based on the private key, the analysis processing function, the analysis execution result, and the argument. An arithmetic device that executes a process of associating a public key with the smart contract and storing it in a blockchain in a distributed ledger, and a process of returning the smart contract and the public key as verification information to the verifier device. It is characterized by including an analysis processing server including.
また、本発明の匿名データ管理方法は、情報処理装置が、金融機関の顧客データを保持する記憶装置を備えて、検証者装置から配信された分析処理関数を含む鍵生成依頼を、鍵生成装置に送信し、当該鍵生成装置から公開鍵および秘密鍵を取得する処理、前記分析処理関数に前記顧客データを引数として与えることで分析実行結果を生成する処理、前記秘密鍵、前記分析処理関数、前記分析実行結果、および前記引数に基づいて証明書を生成する処理、および前記分析処理関数、前記証明書、および前記公開鍵を検証用情報として前記検証者装置に返信する処理、を実行することを特徴とする。 Further, in the anonymous data management method of the present invention, the information processing device includes a storage device that holds customer data of a financial institution, and makes a key generation request including an analysis processing function distributed from the verifier device. Processing to acquire public key and private key from the key generator, processing to generate analysis execution result by giving the customer data as an argument to the analysis processing function, the private key, the analysis processing function, Executing the process of generating a certificate based on the analysis execution result and the argument, and the process of returning the analysis processing function, the certificate, and the public key to the verifier device as verification information. It is characterized by.
また、本発明の匿名データ管理方法は、情報処理装置が、金融機関の顧客データを保持する記憶装置を備えて、検証者装置であるブロックチェーンシステムのクライアントから配信された、分析処理関数たるスマートコントラクトをデプロイし、当該分析処理関数を
含む鍵生成依頼を、鍵生成装置に送信し、当該鍵生成装置から公開鍵および秘密鍵を取得する処理、前記検証者装置からの前記スマートコントラクトの実行依頼に対応したトランザクションを受信し、前記スマートコントラクトに前記顧客データを引数として与えることで分析実行結果を生成する処理、前記秘密鍵、前記分析処理関数、前記分析実行結果、および前記引数に基づいて証明書を生成する処理、前記公開鍵と前記スマートコントラクトを紐付けて分散台帳におけるブロックチェーンに格納する処理、および前記スマートコントラクト、および前記公開鍵を検証用情報として前記検証者装置に返信する処理、を実行することを特徴とする。
Further, in the anonymous data management method of the present invention, the information processing device is provided with a storage device for holding customer data of a financial institution, and is a smart analysis processing function delivered from a client of a blockchain system which is a verifier device. A process of deploying a contract, sending a key generation request including the analysis processing function to the key generation device, acquiring a public key and a private key from the key generation device, and an execution request of the smart contract from the verifier device. A process for generating an analysis execution result by receiving the transaction corresponding to the above and giving the customer data as an argument to the smart contract, the private key, the analysis processing function, the analysis execution result, and proof based on the argument. A process of generating a document, a process of linking the public key and the smart contract and storing them in a blockchain in a distributed ledger, and a process of returning the smart contract and the public key to the verifier device as verification information. It is characterized by executing.
本発明によれば、個人情報の流出可能性を極小化したうえで、外部組織による個人情報の利活用が可能となる。 According to the present invention, it is possible for an external organization to utilize personal information while minimizing the possibility of leakage of personal information.
−−−ネットワーク構成−−− --- Network configuration ---
以下に本発明の実施形態について図面を用いて詳細に説明する。図1は、本実施形態の匿名データ管理システム10を含むネットワーク構成図である。図1に示す匿名データ管理システム10は、個人情報の流出可能性を極小化したうえで、外部組織による個人情報の利活用を可能にするコンピュータシステムである。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. FIG. 1 is a network configuration diagram including the anonymous
本実施形態の匿名データ管理システム10は、分析処理サーバ100、CRS生成用サーバ150、およびゼロ知識証明処理サーバ200のうち、少なくとも分析処理サーバ100を含んで構成される。こうした分析処理サーバ100、CRS生成用サーバ150、およびゼロ知識証明処理サーバ200は、例えば、セキュアなネットワーク1を介して通信可能に接続されている。
The anonymous
分析処理サーバ100は、例えば、金融機関が管理、運営するサーバ装置である。金融機関は、分析処理サーバ100において当該金融機関における顧客の情報を蓄積し、この情報の利活用を図るべき検討している事業者である。
The
一方、ゼロ知識証明処理サーバ200は、上述の金融機関に対して、その顧客の情報をリソースとした所定の分析処理を依頼することを考える事業者が運営するサーバ装置である。この事業者の一例としては、上述の金融機関の業務委託先、監査組織、情報銀行の連携企業、などを想定できる。こうした事業者の運用するゼロ知識証明処理サーバ200は、分析処理関数を上述の金融機関の分析処理サーバ100に配信し、分析処理を要求することになる。
On the other hand, the zero-knowledge
他方、CRS生成用サーバ150は、Common Reference Stringモデルに従って、分析
処理関数から、Verification Keyたる公開鍵、およびEvaluation Keyたる秘密鍵、を生成するサーバ装置である。このCRS生成用サーバ150は、例えば、認証局のような信頼しうる第三者機関によって管理、運営されているものを想定する。
−−−ハードウェア構成−−−
また、図2において、匿名データ管理システム10を主として構成する分析処理サーバ100のハードウェア構成を示す。
本実施形態の分析処理サーバ100は、記憶装置101、メモリ103、演算装置104、および通信装置105を備える。
そのうち記憶装置101は、SSD(Solid State Drive)やハードディスクドライブなど適宜な不揮発性記憶素子で構成される。
また、メモリ103は、RAMなど揮発性記憶素子で構成される。
On the other hand, the
--- Hardware configuration ---
Further, FIG. 2 shows the hardware configuration of the
The
Among them, the
Further, the
また、演算装置104は、記憶装置101に保持されるプログラム102をメモリ103に読み出すなどして実行し装置自体の統括制御を行なうとともに各種判定、演算及び制御処理を行なうCPUである。
Further, the
また、通信装置105は、ネットワーク1と接続して、CRS生成用サーバ150やゼロ知識証明処理サーバ200など他装置との通信処理を担うネットワークインターフェイスカードである。
Further, the
なお、特に図示しないが、ユーザからのキー入力や音声入力を受け付けるキーボードやマウスといった入力装置、処理データの表示を行うディスプレイ等の出力装置、を更に備えるとしてもよい。 Although not particularly shown, an input device such as a keyboard or mouse that accepts key input or voice input from the user, and an output device such as a display that displays processing data may be further provided.
また、記憶装置101内には、本実施形態の匿名データ管理システムを構成する情報処理装置として必要な機能を実装する為のプログラム102に加えて、顧客DB125、不都合処理リスト126、および宛先情報リスト127が少なくとも記憶されている。
−−−データ構造例−−−
続いて、本実施形態の匿名データ管理システム10のうち、例えば、分析処理サーバ100が用いる情報類について説明する。
Further, in the
--- Data structure example ---
Subsequently, among the anonymous
図3に、本実施形態における顧客DB125の一例を示す。顧客DB125は、 を蓄積したデータベースである。そのデータ構造は、顧客を一意に特定するIDをキーとして、当該顧客の氏名、性別、年齢、住所、連絡先、および口座情報、などといった、金融機関が顧客に関して管理する一般的なデータから成るレコードの集合体である。
FIG. 3 shows an example of the
また図4に、本実施形態の不都合処理リスト126の構成例を示す。不都合処理リスト126は、上述の金融機関において、分析処理関数が実行する処理として不都合な処理のリストである。
Further, FIG. 4 shows a configuration example of the
なお、不都合な処理とは、例えば、金融機関の基幹システム(例:勘定系)へのアクセスを行う処理、顧客DB125から全ての顧客の全ての項目の値を抽出する処理、といったものを想定できるが、金融機関ごとのポリシーによって種々に想定できる。
It should be noted that the inconvenient process can be assumed to be, for example, a process of accessing the core system (example: accounting system) of a financial institution, a process of extracting the values of all items of all customers from the
こうした不都合処理リスト126におけるデータ構造は、上述の不都合な各処理に対応するコードないしパラメータ、といったデータから成るレコードの集合体である。
The data structure in such an
また図5に、本実施形態の宛先情報リスト127のデータ構成例を示す。本実施形態の
宛先情報リスト127は、分析処理においてアクセスすべきデータリソースの宛先情報を格納したテーブルである。
Further, FIG. 5 shows an example of data configuration of the
こうした宛先情報リスト127におけるデータ構造は、分析処理を示するコードに対し、当該コードが示す処理でアクセスすべきDBなどデータリソースのアドレスから成るレコードの集合体である。
−−−フロー例−−−
The data structure in the
--- Flow example ---
以下、本実施形態における匿名データ管理方法の実際手順について図に基づき説明する。以下で説明する匿名データ管理方法に対応する各種動作は、匿名データ管理システム10を構成する、分析処理サーバ100、CRS生成用サーバ150、およびゼロ知識証明処理サーバ200といった各情報処理装置が、それぞれにメモリ等に読み出して実行するプログラムによって実現される。そして、このプログラムは、以下に説明される各種の動作を行うためのコードから構成されている。
Hereinafter, the actual procedure of the anonymous data management method in the present embodiment will be described with reference to the figure. Various operations corresponding to the anonymous data management method described below are performed by each information processing device such as the
図6は、本実施形態における匿名データ管理方法のフロー例を示す図である。この場合まず、分析処理サーバ100は、検証者装置たるゼロ知識証明処理サーバ200から配信された分析処理関数を、分析要求として受信する(s10)。
FIG. 6 is a diagram showing a flow example of the anonymous data management method in the present embodiment. In this case, first, the
分析処理関数の具体的例としては、例えば、特定地区に居住し特定取引を高頻度で行う顧客の年齢構成を分析するもの、特定の氏名および住所の顧客の有無と当該顧客の取引傾向を抽出するもの、など様々なものを想定できる。 Specific examples of the analysis processing function include analyzing the age composition of customers who live in a specific area and frequently perform specific transactions, and extract the presence or absence of customers with specific names and addresses and the transaction tendency of the customers. You can imagine various things such as things to do.
続いて、分析処理サーバ100は、上述のゼロ知識証明処理サーバ200から受信した分析処理関数が含むコードを、不都合処理リスト126が示す各コードに照合して、不都合な処理の有無を判定する(s11)。
Subsequently, the
この判定の結果、上述の分析処理関数が不都合な処理を含む場合(s11:Y)、分析処理サーバ100は、例えば、分析要求に対応出来ない旨を示す所定のメッセージ(図7の画面700)をゼロ知識証明処理サーバ200に返信し(s12)、処理を終了する。
一方、上述の判定の結果、上述の分析処理関数が不都合な処理を含まない場合(s11:N)、分析処理サーバ100は、処理をs13に遷移させる。
As a result of this determination, when the above-mentioned analysis processing function includes inconvenient processing (s11: Y), the
On the other hand, as a result of the above determination, when the above analysis processing function does not include inconvenient processing (s11: N), the
続いて、分析処理サーバ100は、上述の判定にて分析処理関数が不都合な処理を含まない場合において、上述の分析処理関数が含む分析処理の情報たるコード等を、宛先情報リスト127に照合して、当該分析処理において規定すべきデータリソースの宛先情報(例えば、データベースのアドレスなど)を特定する(s13)。
Subsequently, the
また、分析処理サーバ100は、上述のs13で特定した宛先情報を、当該し、当該宛先情報を分析処理関数に設定する(s14)。具体的には、分析処理関数における該当コードの引数部分(当初は空欄か無意味な文字列等が記載されている)に、宛先情報たるデータベースのURLなどを記載する。
続いて、分析処理サーバ100は、s10で得た分析処理関数を含む鍵生成依頼を、鍵生成装置たるCRS生成用サーバ150に送信する(s15)。
Further, the
Subsequently, the
一方、CRS生成用サーバ150は、分析処理サーバ100から送信されてきた鍵生成依頼に応じて、上述の分析処理関数に所定のアルゴリズム(予め規定のもの。既存技術)を適用することで、Verification Keyである公開鍵、およびEvaluation Keyである秘密鍵を生成し、これらを分析処理サーバ100に返信する。
他方、分析処理サーバ100は、上述のCRS生成用サーバ150から、公開鍵および
秘密鍵を受信し、これを記憶装置101に格納する(s16)。
On the other hand, the
On the other hand, the
また、分析処理サーバ100は、s10で得ている分析処理関数に、記憶装置101で保持する顧客DB125の各データを引数として与えることで、分析実行結果を生成する(s17)。
Further, the
この分析実行結果としては、上述の分析処理関数の例で言えば、例えば、特定地区に居住し特定取引を高頻度で行う顧客の年齢構成として、「20代:10%、30代:40%、40代:5%、50代:5%、60代:20%、70代以上:10%」、といった結果や特定の氏名および住所の顧客の有無と当該顧客の取引傾向として、「該当顧客無し」或いは「顧客:7名該当、取引傾向:いずれも海外送金が高頻度」といったものが該当することになる。 As a result of executing this analysis, in the example of the above-mentioned analysis processing function, for example, as the age composition of customers who live in a specific area and frequently carry out specific transactions, "20s: 10%, 30s: 40%". , 40s: 5%, 50s: 5%, 60s: 20%, 70s and over: 10% "and the presence or absence of customers with a specific name and address and the transaction tendency of the customer," Applicable customers "None" or "Customers: 7 people, transaction tendency: High frequency of overseas remittances" is applicable.
続いて、分析処理サーバ100は、上述のCRS生成用サーバ150から得た秘密鍵、ゼロ知識証明処理サーバ200から得ている分析処理関数、s17にて生成した分析実行結果、およびs17で利用した引数(顧客DB125のデータ)に基づいて証明書を生成する(s18)。
また、分析処理サーバ100は、上述の証明書と分析処理関数および公開鍵とを、検証用情報として、ゼロ知識証明処理サーバ200に返信する(s19)。
Subsequently, the
Further, the
一方、ゼロ知識証明処理サーバ200では、分析処理サーバ100から返信されてきた検証用情報を受信し、上述の金融機関において顧客DB125のデータを引数として利用し、分析処理関数を実行したことを、当該検証用情報に基づき検証することとなる。この検証の手法自体は、ゼロ知識証明における既存技術を適宜に適用するものとする。
On the other hand, the zero-knowledge
こうした検証の結果、上述の金融機関において顧客DB125のデータを引数として利用し、分析処理関数を実行したことが判明した場合、ゼロ知識証明処理サーバ200を運用する事業者等は、当該金融機関による分析処理結果を信頼し、適宜に活用することとなる。
As a result of such verification, if it is found that the above-mentioned financial institution uses the data of the
なお、上述の検証者装置すなわちゼロ知識証明処理サーバ200が、ブロックチェーンシステムにおけるクライアントであり、分析処理サーバ100がブロックチェーンシステムにおける分散台帳ノードである構成も想定可能である。
It is also possible to assume that the above-mentioned verifier device, that is, the zero-knowledge
この場合、分析処理サーバ100は、分析処理関数の配信をゼロ知識証明処理サーバ200から受けるに際し、分析処理関数であるスマートコントラクトを、ゼロ知識証明処理サーバ200から受信してデプロイして、ゼロ知識証明処理サーバ200からのスマートコントラクトの実行依頼に対応したトランザクションを受信する。
In this case, when the
また、分析処理サーバ100は、分析実行結果の生成に際し、トランザクションの受信に応じて、スマートコントラクトに顧客DBのデータを引数として与えて実行し、分析実行結果を生成する。
Further, when generating the analysis execution result, the
また、分析処理サーバ100は、CRS生成用サーバ150から得ている公開鍵とスマートコントラクトとを紐付けて、自身の分散台帳におけるブロックチェーンに格納する。こうしたブロックチェーン技術を適用した形態について、更に以下に詳述する。
−−−他実施形態におけるネットワーク構成−−−
Further, the
--- Network configuration in other embodiments ---
続いて、他実施形態における匿名データ管理システム10のネットワーク構成例について説明する。図8は、他実施形態の匿名データ管理システム10を含むネットワーク構成
例を示す図であり、図9は、他実施形態における分析処理サーバ100のハードウェア構成例を示す図である。
Subsequently, a network configuration example of the anonymous
図8に示す匿名データ管理システム10は、ゼロ知識証明処理サーバ200をクライアントノードとし、分析処理サーバ100を分散台帳ノードとした、ブロックチェーンシステムを構成している。
The anonymous
この場合、分散台帳ノードである分析処理サーバ100は、クライアントノードであるゼロ知識証明処理サーバ200から配信された、分析処理関数たるスマートコントラクトをデプロイする。
In this case, the
また、分析処理サーバ100は、当該分析処理関数を含む鍵生成依頼を、CRS生成用サーバ150に送信し、当該CRS生成用サーバ150から公開鍵および秘密鍵を取得する。
Further, the
また、分析処理サーバ100は、ゼロ知識証明処理サーバ200からのスマートコントラクトの実行依頼に対応したトランザクションを受信し、スマートコントラクトに顧客DB125のデータを引数として与えることで分析実行結果を生成する。
Further, the
また、分析処理サーバ100は、上述のCRSから得た秘密鍵、上述のスマートコントラクトたる分析処理関数、当該スマートコントラクトの実行で得る分析実行結果、および引数たる顧客DB125のデータ、に基づいて証明書を生成する。
Further, the
また、分析処理サーバ100は、CRS生成用サーバ150から得た公開鍵とスマートコントラクトとを紐付けて分散台帳110におけるブロックチェーンに格納する。この格納の処理は、通常のブロックチェーンシステムにおいて必要となる、他の分散台帳ノードとの合意形成は不要とする。なぜなら、ゼロ知識証明の概念により、分散台帳ノードたる分析処理サーバ100での処理結果の真正性を担保しているためである。
また、分析処理サーバ100は、上述のスマートコントラクトおよび公開鍵を検証用情報としてゼロ知識証明処理サーバ200に返信する。
Further, the
Further, the
上述のように、分析処理サーバ100は、分散台帳ノードとして機能しうるため、記憶装置101において分散台帳110を保持し、この分散台帳110にてブロックチェーン115を管理している。
As described above, since the
従来のブロックチェーンシステムにおいては、複数ノードを管理する必要が生じ、システム規模の拡大等に伴い管理コストが増加する、全ノード数に対して一定割合のノード数(51%等)での実行を必須とした場合、システム規模の拡大に伴うスケールアウトが期待出来ない、および乱数生成など、ノードごとに異なる処理結果を返す可能性のあるトランザクションは実行できない(実行結果が同一にならないため正当性検証は常に失敗する)、といった課題が存在する。 In a conventional blockchain system, it becomes necessary to manage multiple nodes, and the management cost increases as the system scale expands. Execution is performed with a fixed ratio of nodes (51%, etc.) to the total number of nodes. If it is required, scale-out cannot be expected due to the expansion of the system scale, and transactions that may return different processing results for each node, such as random number generation, cannot be executed (validity verification because the execution results are not the same). Always fails).
ところが、上述の実施形態を採用すれば、分散台帳ノードを大幅に低減し、最小構成としては1つの分散台帳ノードのみでブロックチェーンシステムを運用出来る。そのため、ノード管理にかかるコストを低減し、システム規模の拡大に伴うスケールアウトを期待出来る。また、乱数生成など、ノードごとに異なる処理結果を返す可能性のあるトランザクションであっても実行可能、といった効果を奏することになる。
−−−他実施形態における匿名データ管理方法のフロー例−−−
However, if the above-described embodiment is adopted, the number of distributed ledger nodes can be significantly reduced, and the blockchain system can be operated with only one distributed ledger node as the minimum configuration. Therefore, the cost for node management can be reduced, and scale-out can be expected as the system scale expands. In addition, even a transaction that may return different processing results for each node, such as random number generation, can be executed.
--- Example of flow of anonymous data management method in other embodiments ---
図10は、他実施形態における匿名データ管理方法のフロー例を示す図である。この場
合、分散台帳ノードたる分析処理サーバ100は、クライアントノードたるゼロ知識証明処理サーバ200から配信された、分析処理関数たるスマートコントラクトをデプロイする(s20)。
FIG. 10 is a diagram showing a flow example of an anonymous data management method in another embodiment. In this case, the
また、分散台帳ノードたる分析処理サーバ100は、s20でデプロイした分析処理関数を含む鍵生成依頼を、CRS生成用サーバ150に送信し、当該CRS生成用サーバ150から公開鍵および秘密鍵を取得する(s21)。
Further, the
続いて、分散台帳ノードたる分析処理サーバ100は、ゼロ知識証明処理サーバ200からのスマートコントラクトの実行依頼に対応したトランザクションを受信する(s22)。
Subsequently, the
また、分散台帳ノードたる分析処理サーバ100は、スマートコントラクトに対し、顧客DB125のデータを引数として与えることで、分析実行結果を生成する(s23)。
Further, the
続いて、分散台帳ノードたる分析処理サーバ100は、CRS生成用サーバ150から得ている秘密鍵、クライアントノードたるゼロ知識証明処理サーバ200から得ている分析処理関数、s23で生成した分析実行結果、および引数として利用した顧客DB125のデータ、に基づいて証明書を生成する(s24)。
Subsequently, the
また、分散台帳ノードたる分析処理サーバ100は、CRS生成用サーバ150から得ている公開鍵とゼロ知識証明処理サーバ200から得てデプロイしたスマートコントクトとを紐付けて、分散台帳110におけるブロックチェーン115に格納する(s25)。
Further, the
この際、既に述べたとおり、従来においてブロックチェーンシステムとは異なり、分散台帳ノード間での合意形成手続は不要である。なぜなら、ゼロ知識証明の概念により、分散台帳ノードたる分析処理サーバ100での処理結果の真正性を担保しているためである。
At this time, as already described, unlike the conventional blockchain system, no consensus building procedure is required between the distributed ledger nodes. This is because the concept of zero-knowledge proof ensures the authenticity of the processing result in the
続いて、分散台帳ノードたる分析処理サーバ100は、スマートコントラクトおよび公開鍵を検証用情報としてゼロ知識証明処理サーバ200に返信し(s26)、処理を終了する。
Subsequently, the
従来のブロックチェーンシステムにおいては、複数ノードを管理する必要が生じ、システム規模の拡大等に伴い管理コストが増加する、全ノード数に対して一定割合のノード数(51%等)での実行を必須とした場合、システム規模の拡大に伴うスケールアウトが期待出来ない、および乱数生成など、ノードごとに異なる処理結果を返す可能性のあるトランザクションは実行できない(実行結果が同一にならないため正当性検証は常に失敗する)、といった課題が存在する。 In a conventional blockchain system, it becomes necessary to manage multiple nodes, and the management cost increases as the system scale expands. Execution is performed with a fixed ratio of nodes (51%, etc.) to the total number of nodes. If it is required, scale-out cannot be expected due to the expansion of the system scale, and transactions that may return different processing results for each node, such as random number generation, cannot be executed (validity verification because the execution results are not the same). Always fails).
ところが、上述の実施形態を採用すれば、分散台帳ノードを大幅に低減し、最小構成としては1つの分散台帳ノードのみでブロックチェーンシステムを運用出来る。そのため、ノード管理にかかるコストを低減し、システム規模の拡大に伴うスケールアウトを期待出来る。また、乱数生成など、ノードごとに異なる処理結果を返す可能性のあるトランザクションであっても実行可能、といった効果を奏することになる。 However, if the above-described embodiment is adopted, the number of distributed ledger nodes can be significantly reduced, and the blockchain system can be operated with only one distributed ledger node as the minimum configuration. Therefore, the cost for node management can be reduced, and scale-out can be expected as the system scale expands. In addition, even a transaction that may return different processing results for each node, such as random number generation, can be executed.
以上、本発明を実施するための最良の形態などについて具体的に説明したが、本発明はこれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
こうした本実施形態によれば、個人情報の流出可能性を極小化したうえで、外部組織による個人情報の利活用が可能となる。
Although the best mode for carrying out the present invention has been specifically described above, the present invention is not limited to this, and various modifications can be made without departing from the gist thereof.
According to this embodiment, the possibility of leakage of personal information is minimized, and then the personal information can be utilized by an external organization.
本明細書の記載により、少なくとも次のことが明らかにされる。すなわち、本実施形態の匿名データ管理システムにおいて、前記記憶装置は、前記分析処理関数が実行する処理として不都合な処理のリストを更に保持し、前記演算装置は、前記検証者装置から前記分析処理関数を受信し、当該分析処理関数が含むコードを、前記リストが示す各コードに照合して、前記不都合な処理の有無を判定し、前記分析処理関数が前記不都合な処理を含まない場合、前記鍵生成依頼から以降の処理を実行するものである、としてもよい。 The description herein reveals at least the following: That is, in the anonymous data management system of the present embodiment, the storage device further holds a list of processes that are inconvenient as the processes executed by the analysis processing function, and the arithmetic unit receives the analysis processing function from the verifier device. Is received, the code included in the analysis processing function is collated with each code shown in the list to determine the presence or absence of the inconvenient processing, and if the analysis processing function does not include the inconvenient processing, the key. It may be said that the subsequent processing is executed from the generation request.
これによれば、例えば、金融機関の基幹システム(例:勘定系)へのアクセスを行う処理、顧客DBから全ての顧客の全ての項目の値を抽出する処理、といった不都合な処理を分析処理関数が含むか的確に特定し、こうした分析処理関数の実行を事前に排除できる。すなわち、個人情報の流出可能性を極小化したうえで、外部組織による個人情報の利活用が可能となる。 According to this, for example, an analysis processing function analyzes inconvenient processes such as a process of accessing a core system of a financial institution (eg, a core banking system) and a process of extracting the values of all items of all customers from a customer DB. It is possible to accurately identify whether the analysis processing function is included and to eliminate the execution of such an analysis processing function in advance. That is, after minimizing the possibility of leakage of personal information, it is possible for an external organization to utilize the personal information.
また、本実施形態の匿名データ管理システムにおいて、前記記憶装置は、所定の分析処理ごとにアクセスすべきデータリソースの宛先情報リストを更に保持し、前記演算装置は、前記判定の結果、前記分析処理関数が前記不都合な処理を含まない場合、前記分析処理関数が含む分析処理の情報を、前記宛先情報リストに照合して、当該分析処理において規定すべきデータリソースの宛先情報を特定し、当該宛先情報を前記分析処理関数に設定する処理をさらに実行するものである、としてもよい。 Further, in the anonymous data management system of the present embodiment, the storage device further holds a destination information list of data resources to be accessed for each predetermined analysis process, and the calculation device further holds the destination information list of the data resource to be accessed for each predetermined analysis process, and the calculation device determines the result of the analysis process. When the function does not include the inconvenient processing, the analysis processing information included in the analysis processing function is collated with the destination information list to identify the destination information of the data resource to be specified in the analysis processing, and the destination is specified. The process of setting the information in the analysis processing function may be further executed.
これによれば、検証者側では知り得ない、金融機関でのデータベースのアドレス等に関して、分析処理関数中では記載せずとも、適宜な分析処理関数を最終的に生成し、これを実行可能とすることができる。 According to this, it is possible to finally generate an appropriate analysis processing function and execute it without describing it in the analysis processing function regarding the database address etc. at the financial institution, which the verifier cannot know. can do.
また、本実施形態の匿名データ管理システムにおいて、前記検証者装置がブロックチェーンシステムにおけるクライアントであり、前記分析処理サーバが前記ブロックチェーンシステムにおける分散台帳ノードである構成において、前記分析処理サーバの演算装置は、前記分析処理関数の配信を前記検証者装置から受けるに際し、前記分析処理関数であるスマートコントラクトを、前記検証者装置から受信してデプロイして、前記検証者装置からの前記スマートコントラクトの実行依頼に対応したトランザクションを受信し、前記分析実行結果の生成に際し、前記トランザクションの受信に応じて、前記スマートコントラクトを前記引数を与えて実行し、分析実行結果を生成し、前記公開鍵と前記スマートコントラクトを紐付けて分散台帳におけるブロックチェーンに格納するものである、としてもよい。 Further, in the anonymous data management system of the present embodiment, in a configuration in which the verifier device is a client in the blockchain system and the analysis processing server is a distributed ledger node in the blockchain system, the calculation device of the analysis processing server. When receiving the distribution of the analysis processing function from the verifier device, receives and deploys the smart contract which is the analysis processing function from the verifier device, and executes the smart contract from the verifier device. When the transaction corresponding to the request is received and the analysis execution result is generated, the smart contract is executed by giving the argument in response to the reception of the transaction, the analysis execution result is generated, and the public key and the smart are generated. It may be assumed that the contract is linked and stored in the blockchain in the distributed ledger.
これによれば、ブロックチェーンシステムにおける従来の課題、すなわち、複数ノードを管理する必要が生じ、システム規模の拡大等に伴い管理コストが増加する、全ノード数に対して一定割合のノード数(51%等)での実行を必須とした場合、システム規模の拡大に伴うスケールアウトが期待出来ない、および乱数生成など、ノードごとに異なる処理結果を返す可能性のあるトランザクションは実行できない(実行結果が同一にならないため
正当性検証は常に失敗する)、といった課題に対処して、分散台帳ノードを大幅に低減し
、最小構成としては1つの分散台帳ノードのみでブロックチェーンシステムを運用出来ることとなる。そのため、ノード管理にかかるコストを低減し、システム規模の拡大に伴うスケールアウトを期待出来る。また、乱数生成など、ノードごとに異なる処理結果を返す可能性のあるトランザクションであっても実行可能、といった効果を奏することになる。
According to this, the conventional problem in the blockchain system, that is, the need to manage a plurality of nodes arises, and the management cost increases with the expansion of the system scale, etc., and the number of nodes (51) is a fixed ratio to the total number of nodes. If execution at% etc. is mandatory, scale-out cannot be expected due to the expansion of the system scale, and transactions that may return different processing results for each node, such as random number generation, cannot be executed (execution results are By dealing with issues such as (validity verification always fails because they are not the same), the number of distributed ledger nodes can be significantly reduced, and the blockchain system can be operated with only one distributed ledger node as the minimum configuration. Therefore, the cost for node management can be reduced, and scale-out can be expected as the system scale expands. In addition, even a transaction that may return different processing results for each node, such as random number generation, can be executed.
また、本実施形態の匿名データ管理方法において、前記情報処理装置が、前記記憶装置において、前記分析処理関数が実行する処理として不都合な処理のリストを更に保持し、前記検証者装置から前記分析処理関数を受信し、当該分析処理関数が含むコードを、前記
リストが示す各コードに照合して、前記不都合な処理の有無を判定し、前記分析処理関数が前記不都合な処理を含まない場合、前記鍵生成依頼から以降の処理を実行する、としてもよい。
Further, in the anonymous data management method of the present embodiment, the information processing device further holds a list of processes that are inconvenient as processes executed by the analysis processing function in the storage device, and the analysis processing is performed by the verifier device. When the function is received, the code included in the analysis processing function is collated with each code shown in the list to determine the presence or absence of the inconvenient processing, and the analysis processing function does not include the inconvenient processing, the above. The subsequent processing may be executed from the key generation request.
また、本実施形態の匿名データ管理方法において、前記情報処理装置が、前記記憶装置において、所定の分析処理ごとにアクセスすべきデータリソースの宛先情報リストを更に保持し、前記判定の結果、前記分析処理関数が前記不都合な処理を含まない場合、前記分析処理関数が含む分析処理の情報を、前記宛先情報リストに照合して、当該分析処理において規定すべきデータリソースの宛先情報を特定し、当該宛先情報を前記分析処理関数に設定する処理をさらに実行する、としてもよい。 Further, in the anonymous data management method of the present embodiment, the information processing device further holds a destination information list of data resources to be accessed for each predetermined analysis process in the storage device, and as a result of the determination, the analysis When the processing function does not include the inconvenient processing, the analysis processing information included in the analysis processing function is collated with the destination information list to identify the destination information of the data resource to be specified in the analysis processing. The process of setting the destination information in the analysis processing function may be further executed.
また、本実施形態の匿名データ管理方法において、前記検証者装置がブロックチェーンシステムにおけるクライアントであり、前記分析処理サーバが前記ブロックチェーンシステムにおける分散台帳ノードである構成において、前記分析処理サーバが、前記分析処理関数の配信を前記検証者装置から受けるに際し、前記分析処理関数であるスマートコントラクトを、前記検証者装置から受信してデプロイして、前記検証者装置からの前記スマートコントラクトの実行依頼に対応したトランザクションを受信し、前記分析実行結果の生成に際し、前記トランザクションの受信に応じて、前記スマートコントラクトを前記引数を与えて実行し、分析実行結果を生成し、前記公開鍵と前記スマートコントラクトを紐付けて分散台帳におけるブロックチェーンに格納する、としてもよい。 Further, in the anonymous data management method of the present embodiment, in a configuration in which the verifier device is a client in the blockchain system and the analysis processing server is a distributed ledger node in the blockchain system, the analysis processing server is said. When receiving the distribution of the analysis processing function from the verifier device, the smart contract which is the analysis processing function is received from the verifier device and deployed to respond to the execution request of the smart contract from the verifier device. When the transaction is received and the analysis execution result is generated, the smart contract is executed by giving the argument in response to the reception of the transaction, the analysis execution result is generated, and the public key and the smart contract are linked. It may be attached and stored in the blockchain in the distributed ledger.
1 ネットワーク
10 匿名データ管理システム
100 分析処理サーバ
101 記憶装置
102 プログラム
103 メモリ
104 演算装置
105 通信装置
110 分散台帳
115 ブロックチェーン
125 顧客DB
126 不都合処理リスト
127 宛先情報リスト
150 CRS生成用サーバ
200 ゼロ知識証明処理サーバ
1
126
Claims (10)
検証者装置から配信された分析処理関数を含む鍵生成依頼を、鍵生成装置に送信し、当該鍵生成装置から公開鍵および秘密鍵を取得する処理、前記分析処理関数に前記顧客データを引数として与えることで分析実行結果を生成する処理、前記秘密鍵、前記分析処理関数、前記分析実行結果、および前記引数に基づいて証明書を生成する処理、および前記分析処理関数、前記証明書、および前記公開鍵を検証用情報として前記検証者装置に返信する処理、を実行する演算装置と、
を備える分析処理サーバ、
を含むことを特徴とする匿名データ管理システム。 A storage device that holds customer data of financial institutions,
A process of sending a key generation request including an analysis processing function distributed from a verifier device to a key generation device and acquiring a public key and a private key from the key generation device, using the customer data as an argument to the analysis processing function. A process of generating an analysis execution result by giving, a process of generating a certificate based on the private key, the analysis processing function, the analysis execution result, and the argument, and the analysis processing function, the certificate, and the above. An arithmetic device that executes a process of returning the public key as verification information to the verifier device,
Analysis processing server, equipped with
An anonymous data management system characterized by including.
前記分析処理関数が実行する処理として不都合な処理のリストを更に保持し、
前記演算装置は、
前記検証者装置から前記分析処理関数を受信し、当該分析処理関数が含むコードを、前記リストが示す各コードに照合して、前記不都合な処理の有無を判定し、前記分析処理関数が前記不都合な処理を含まない場合、前記鍵生成依頼から以降の処理を実行するものである、
ことを特徴とする請求項1に記載の匿名データ管理システム。 The storage device is
Further, a list of inconvenient processes to be executed by the analysis process function is retained.
The arithmetic unit
The analysis processing function is received from the verifier device, the code included in the analysis processing function is collated with each code shown in the list, the presence or absence of the inconvenient processing is determined, and the analysis processing function performs the inconvenience. If no processing is included, the subsequent processing is executed from the key generation request.
The anonymous data management system according to claim 1.
所定の分析処理ごとにアクセスすべきデータリソースの宛先情報リストを更に保持し、
前記演算装置は、
前記判定の結果、前記分析処理関数が前記不都合な処理を含まない場合、前記分析処理関数が含む分析処理の情報を、前記宛先情報リストに照合して、当該分析処理において規定すべきデータリソースの宛先情報を特定し、当該宛先情報を前記分析処理関数に設定する処理をさらに実行するものである、
ことを特徴とする請求項2に記載の匿名データ管理システム。 The storage device is
Further holds a list of destination information of data resources to be accessed for each predetermined analysis process.
The arithmetic unit
As a result of the determination, when the analysis processing function does not include the inconvenient processing, the information of the analysis processing included in the analysis processing function is collated with the destination information list, and the data resource to be specified in the analysis processing. The process of specifying the destination information and setting the destination information in the analysis processing function is further executed.
2. The anonymous data management system according to claim 2.
前記分析処理サーバの演算装置は、
前記分析処理関数の配信を前記検証者装置から受けるに際し、前記分析処理関数であるスマートコントラクトを、前記検証者装置から受信してデプロイして、前記検証者装置からの前記スマートコントラクトの実行依頼に対応したトランザクションを受信し、
前記分析実行結果の生成に際し、前記トランザクションの受信に応じて、前記スマートコントラクトを前記引数を与えて実行し、分析実行結果を生成し、
前記公開鍵と前記スマートコントラクトを紐付けて分散台帳におけるブロックチェーンに格納するものである、
ことを特徴とする請求項1に記載の匿名データ管理システム。 In a configuration in which the verifier device is a client in the blockchain system and the analysis processing server is a distributed ledger node in the blockchain system.
The arithmetic unit of the analysis processing server is
When receiving the distribution of the analysis processing function from the verifier device, the smart contract which is the analysis processing function is received from the verifier device and deployed, and the execution request of the smart contract from the verifier device is made. Receive the corresponding transaction and
When generating the analysis execution result, the smart contract is executed by giving the argument in response to the reception of the transaction, and the analysis execution result is generated.
The public key and the smart contract are linked and stored in the blockchain in the distributed ledger.
The anonymous data management system according to claim 1.
検証者装置であるブロックチェーンシステムのクライアントから配信された、分析処理関数たるスマートコントラクトをデプロイし、当該分析処理関数を含む鍵生成依頼を、鍵生成装置に送信し、当該鍵生成装置から公開鍵および秘密鍵を取得する処理、前記検証者装置からの前記スマートコントラクトの実行依頼に対応したトランザクションを受信し、前記スマートコントラクトに前記顧客データを引数として与えることで分析実行結果を生成する処理、前記秘密鍵、前記分析処理関数、前記分析実行結果、および前記引数に基づいて証明書を生成する処理、前記公開鍵と前記スマートコントラクトを紐付けて分散台帳
におけるブロックチェーンに格納する処理、および前記スマートコントラクト、および前記公開鍵を検証用情報として前記検証者装置に返信する処理、を実行する演算装置と、
を備える分析処理サーバ、
を含むことを特徴とする匿名データ管理システム。 A storage device that holds customer data of financial institutions,
A smart contract, which is an analysis processing function, delivered from a client of the blockchain system, which is a verifier device, is deployed, a key generation request including the analysis processing function is sent to the key generation device, and the public key is sent from the key generation device. And the process of acquiring the private key, the process of receiving the transaction corresponding to the execution request of the smart contract from the verifier device, and the process of generating the analysis execution result by giving the customer data to the smart contract as an argument. The process of generating a certificate based on the private key, the analysis processing function, the analysis execution result, and the argument, the process of linking the public key and the smart contract and storing them in the blockchain in the distributed ledger, and the smart. An arithmetic device that executes a contract and a process of returning the public key as verification information to the verifier device.
Analysis processing server, equipped with
An anonymous data management system characterized by including.
金融機関の顧客データを保持する記憶装置を備えて、
検証者装置から配信された分析処理関数を含む鍵生成依頼を、鍵生成装置に送信し、当該鍵生成装置から公開鍵および秘密鍵を取得する処理、前記分析処理関数に前記顧客データを引数として与えることで分析実行結果を生成する処理、前記秘密鍵、前記分析処理関数、前記分析実行結果、および前記引数に基づいて証明書を生成する処理、および前記分析処理関数、前記証明書、および前記公開鍵を検証用情報として前記検証者装置に返信する処理、
を実行することを特徴とする匿名データ管理方法。 Information processing device
Equipped with a storage device that holds customer data of financial institutions
A process of sending a key generation request including an analysis processing function distributed from a verifier device to a key generation device and acquiring a public key and a private key from the key generation device, using the customer data as an argument to the analysis processing function. A process of generating an analysis execution result by giving, a process of generating a certificate based on the private key, the analysis processing function, the analysis execution result, and the argument, and the analysis processing function, the certificate, and the above. Processing to return the public key to the verifier device as verification information,
An anonymous data management method characterized by performing.
前記記憶装置において、前記分析処理関数が実行する処理として不都合な処理のリストを更に保持し、
前記検証者装置から前記分析処理関数を受信し、当該分析処理関数が含むコードを、前記リストが示す各コードに照合して、前記不都合な処理の有無を判定し、前記分析処理関数が前記不都合な処理を含まない場合、前記鍵生成依頼から以降の処理を実行する、
ことを特徴とする請求項6に記載の匿名データ管理方法。 The information processing device
In the storage device, a list of processes that are inconvenient as the processes executed by the analysis processing function is further retained.
The analysis processing function is received from the verifier device, the code included in the analysis processing function is collated with each code shown in the list, the presence or absence of the inconvenient processing is determined, and the analysis processing function performs the inconvenience. If no processing is included, the subsequent processing from the key generation request is executed.
The anonymous data management method according to claim 6, characterized in that.
前記記憶装置において、所定の分析処理ごとにアクセスすべきデータリソースの宛先情報リストを更に保持し、
前記判定の結果、前記分析処理関数が前記不都合な処理を含まない場合、前記分析処理関数が含む分析処理の情報を、前記宛先情報リストに照合して、当該分析処理において規定すべきデータリソースの宛先情報を特定し、当該宛先情報を前記分析処理関数に設定する処理をさらに実行する、
ことを特徴とする請求項7に記載の匿名データ管理方法。 The information processing device
The storage device further holds a list of destination information of data resources to be accessed for each predetermined analysis process.
As a result of the determination, when the analysis processing function does not include the inconvenient processing, the information of the analysis processing included in the analysis processing function is collated with the destination information list, and the data resource to be specified in the analysis processing. Further executing the process of specifying the destination information and setting the destination information in the analysis processing function.
The anonymous data management method according to claim 7, characterized in that.
前記分析処理サーバが、
前記分析処理関数の配信を前記検証者装置から受けるに際し、前記分析処理関数であるスマートコントラクトを、前記検証者装置から受信してデプロイして、前記検証者装置からの前記スマートコントラクトの実行依頼に対応したトランザクションを受信し、
前記分析実行結果の生成に際し、前記トランザクションの受信に応じて、前記スマートコントラクトを前記引数を与えて実行し、分析実行結果を生成し、
前記公開鍵と前記スマートコントラクトを紐付けて分散台帳におけるブロックチェーンに格納する、
ことを特徴とする請求項6に記載の匿名データ管理方法。 In a configuration in which the verifier device is a client in the blockchain system and the analysis processing server is a distributed ledger node in the blockchain system.
The analysis processing server
When receiving the distribution of the analysis processing function from the verifier device, the smart contract which is the analysis processing function is received from the verifier device and deployed, and the execution request of the smart contract from the verifier device is made. Receive the corresponding transaction and
When generating the analysis execution result, the smart contract is executed by giving the argument in response to the reception of the transaction, and the analysis execution result is generated.
The public key and the smart contract are linked and stored in the blockchain in the distributed ledger.
The anonymous data management method according to claim 6, characterized in that.
金融機関の顧客データを保持する記憶装置を備えて、
検証者装置であるブロックチェーンシステムのクライアントから配信された、分析処理関数たるスマートコントラクトをデプロイし、当該分析処理関数を含む鍵生成依頼を、鍵生成装置に送信し、当該鍵生成装置から公開鍵および秘密鍵を取得する処理、前記検証者装置からの前記スマートコントラクトの実行依頼に対応したトランザクションを受信し、
前記スマートコントラクトに前記顧客データを引数として与えることで分析実行結果を生成する処理、前記秘密鍵、前記分析処理関数、前記分析実行結果、および前記引数に基づいて証明書を生成する処理、前記公開鍵と前記スマートコントラクトを紐付けて分散台帳におけるブロックチェーンに格納する処理、および前記スマートコントラクト、および前記公開鍵を検証用情報として前記検証者装置に返信する処理、
を実行することを特徴とする匿名データ管理方法。 Information processing device
Equipped with a storage device that holds customer data of financial institutions
A smart contract, which is an analysis processing function, delivered from a client of the blockchain system, which is a verifier device, is deployed, a key generation request including the analysis processing function is sent to the key generation device, and the public key is sent from the key generation device. And the process of acquiring the private key, receiving the transaction corresponding to the execution request of the smart contract from the verifier device,
A process of generating an analysis execution result by giving the customer data as an argument to the smart contract, a process of generating a certificate based on the private key, the analysis processing function, the analysis execution result, and the argument, the public A process of associating a key with the smart contract and storing it in a blockchain in a distributed ledger, and a process of returning the smart contract and the public key to the verifier device as verification information.
An anonymous data management method characterized by performing.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019116149A JP2021001991A (en) | 2019-06-24 | 2019-06-24 | Anonymous data management system and anonymous data management method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019116149A JP2021001991A (en) | 2019-06-24 | 2019-06-24 | Anonymous data management system and anonymous data management method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2021001991A true JP2021001991A (en) | 2021-01-07 |
Family
ID=73994167
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019116149A Pending JP2021001991A (en) | 2019-06-24 | 2019-06-24 | Anonymous data management system and anonymous data management method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2021001991A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210264416A1 (en) * | 2020-02-26 | 2021-08-26 | Nice Ltd. | System and method using zero knowledge proofs for alert sharing |
WO2022249439A1 (en) * | 2021-05-28 | 2022-12-01 | 富士通株式会社 | Information processing system, information processing device, information processing program, and information processing method |
WO2023058186A1 (en) * | 2021-10-07 | 2023-04-13 | 富士通株式会社 | Information processing program, information processing method, and information processing apparatus |
-
2019
- 2019-06-24 JP JP2019116149A patent/JP2021001991A/en active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210264416A1 (en) * | 2020-02-26 | 2021-08-26 | Nice Ltd. | System and method using zero knowledge proofs for alert sharing |
US11514439B2 (en) * | 2020-02-26 | 2022-11-29 | Nice Ltd. | System and method using zero knowledge proofs for alert sharing |
US11928675B2 (en) | 2020-02-26 | 2024-03-12 | Nice Ltd. | System and method using zero knowledge proofs for alert sharing |
WO2022249439A1 (en) * | 2021-05-28 | 2022-12-01 | 富士通株式会社 | Information processing system, information processing device, information processing program, and information processing method |
WO2023058186A1 (en) * | 2021-10-07 | 2023-04-13 | 富士通株式会社 | Information processing program, information processing method, and information processing apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11210661B2 (en) | Method for providing payment gateway service using UTXO-based protocol and server using same | |
US11533164B2 (en) | System and method for blockchain-based cross-entity authentication | |
JP6873270B2 (en) | Handling of transaction activities based on smart contracts in the blockchain Caution Methods and devices for protecting data | |
US11025435B2 (en) | System and method for blockchain-based cross-entity authentication | |
EP3788523B1 (en) | System and method for blockchain-based cross-entity authentication | |
EP3520319B1 (en) | Distributed electronic record and transaction history | |
WO2021000419A1 (en) | System and method for blockchain-based cross-entity authentication | |
Mukta et al. | Blockchain-based verifiable credential sharing with selective disclosure | |
US20210406877A1 (en) | Digital Asset Custody Method and Apparatus and Storage Medium | |
US20190058595A1 (en) | Platform for generating authenticated data objects | |
US11263632B2 (en) | Information sharing methods, apparatuses, and devices | |
JP2021001991A (en) | Anonymous data management system and anonymous data management method | |
US11310244B2 (en) | Information sharing methods, apparatuses, and devices | |
CN112560072B (en) | Key management method, device, medium and equipment based on block chain | |
US11514445B2 (en) | Information sharing methods, apparatuses, and devices | |
JP7222436B2 (en) | Security control method, information processing device and security control program | |
CN111402037A (en) | User data processing method and device | |
CN111275461A (en) | Data processing method and device and computer readable storage medium | |
WO2022208724A1 (en) | Verification method, control method, information processing device, and verification program | |
Isern-Deyà et al. | Micropayment scheme implementation on the android platform with performance evaluation |