JP6817169B2 - データ流通方法及びデータ流通基盤装置 - Google Patents

データ流通方法及びデータ流通基盤装置 Download PDF

Info

Publication number
JP6817169B2
JP6817169B2 JP2017166898A JP2017166898A JP6817169B2 JP 6817169 B2 JP6817169 B2 JP 6817169B2 JP 2017166898 A JP2017166898 A JP 2017166898A JP 2017166898 A JP2017166898 A JP 2017166898A JP 6817169 B2 JP6817169 B2 JP 6817169B2
Authority
JP
Japan
Prior art keywords
data
record
anonymous
processing
anonymous processing
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
JP2017166898A
Other languages
English (en)
Other versions
JP2019046036A (ja
Inventor
淳 栖川
淳 栖川
啓生 宮本
啓生 宮本
直一 根本
直一 根本
将孝 菅
将孝 菅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2017166898A priority Critical patent/JP6817169B2/ja
Publication of JP2019046036A publication Critical patent/JP2019046036A/ja
Application granted granted Critical
Publication of JP6817169B2 publication Critical patent/JP6817169B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、データ流通のシステム、及び、データ流通システムのデータ流通基盤装置に関する。
(データ流通サービスの概要)
近年、データを提供する人(データ提供者)と、データを利用(購入)したい人(データ需要者)を仲介するプラットホームを活用したデータ流通サービスが提供されている。このプラットホームでは、データ需要者は登録されたデータの概要情報を閲覧、検索することができ、欲しいデータについては注文して購入することができる。
また、データ提供者は、保有しているデータをデータ流通のプラットホームに登録し、データを販売または貸し出すことができる。また、データ流通サービスでは、データ提供者とデータ需要者間のマッチングに対する手数料を収益としているところもある。
(匿名化技術の動向)
個人情報を含むデータを匿名化して、第3者に提供してデータの利活用を図る動きがある。改正個人情報保護法(2015年9月に成立、2017年4月に施行)において、匿名加工情報(特定の個人を識別することができないように個人情報を加工した情報)の利活用の規定を新設されている。
この新しい規定では、匿名加工情報を本人の同意がなくとも第三者への提供が可能、本来の利用目的外での利用が可能、匿名加工情報を取り扱う際に、本人を識別する目的で匿名加工情報を他の情報と照合することの禁止を規定している。
匿名化においては、データから個人を再特定できないように加工する技術が広く知られている。例えば、識別子の削除や、識別子を別のIDに変換する仮名化、属性の情報の一般化もしくは範囲化、頻度の低いレコードを削除するなどさまざまな加工が知られている。また、複数の属性の値の組み合わせから個人を特定するのを防ぐために、複数の属性の値の組み合わせがk個以上となるようなk−匿名化技術が知られている。
(匿名加工情報のデータ仲介の可能性)
改正個人情報保護法に伴い、今後、匿名加工情報の活用が進むと考えられる。また、その活用の一形態のひとつとして、データ仲介サービスでも匿名加工情報が流通することになると考えられる。
特開2005−72917号公報
個人情報を匿名化した情報を第3者に提供するのは従来、相対取引で実施されており、匿名化処理は提供者自らが実施し、または、専門会社のコンサルティングやサポートを受けて実施されてきた。
データマーケットプレイスを通じて、匿名加工情報を提供する場合、多数の需要者が存在する。需要者によって利用目的が異なるため、その結果、利用する項目と、項目毎に算出する粒度が異なるため、最適な加工方法は需要者毎に異なる。
データ提供者が全需要者への提供を想定して高いk−匿名性の匿名加工情報のみを提供すると、情報の有用性が損なわれてしまい、多くの需要者の要求を満たすことができなくなってしまう。また、データ提供者が取引相手(需要者)毎に異なる匿名化処理を実行すると、需要者の要求を満たすことができるが、データ提供者側で必要となる加工の手間が増大するという問題が生じる。
従って、データ需要者の個別の要求に合わせることができ、かつ、提供者の手間を抑えた匿名化方法の決定により匿名加工情報を流通させるシステムが望まれる。データ提供者の代わりにデータ需要者が匿名加工方法を決めるシステムが一つの実現手段となる。
データ需要者が匿名化方法を決定する上では、元データを見ることができることが望ましい。しかしながら、個人情報を扱うため、また、データが有料となる可能性があるため、元データを注文前にデータ需要者に開示することはできない。したがって、データ需要者に元データを推測されることなく、かつ、あたかも元データを扱うように匿名化方法を決める方法が望まれる。
特許文献1には、ダミーデータを挿入して頻度を撹乱する暗号化データ作成装置が開示されている。この従来例では、元のデータに対してダミーデータを付与して暗号化処理をすることで、元データを推測困難にしている。
しかしながら、上記従来例では、データ需要者側が元データを匿名加工するかのように見せることができない。従って、データ需要者が個人情報を含む元データを推測困難とし、かつ、データ需要者が元データを匿名加工するかのように加工可能とする2点を両立させることができないという問題があった。
したがって、本発明は、データ流通システムにおいて、個人情報を含む元データを推測困難とし、かつ、データ需要者が元データを匿名加工するかのように加工可能とするシステムを実現し、更には、元データを匿名加工するかのように加工可能なダミーデータを生成することを目的とする。
本発明は、プロセッサとメモリとストレージを備えたデータ流通基盤装置が、元データに匿名加工を実施した匿名加工データを提供するデータ流通方法であって、前記データ流通基盤装置が、前記元データをデータ提供者側装置から受け付ける第1のステップと、前記データ流通基盤装置が、前記元データの特徴量に基づいてダミーデータを生成する第2のステップと、前記データ流通基盤装置が、データ利用者側装置から前記ダミーデータに対する匿名加工の操作を受け付ける第3のステップと、前記データ流通基盤装置が、前記ダミーデータに対する匿名加工の操作に関する情報を匿名加工操作情報として取得し、当該匿名加工操作情報に基づいて元データに対する匿名加工処理を決定する第4のステップと、前記データ流通基盤装置が、前記決定された匿名加工処理を前記元データに適用して匿名加工データを生成する第5のステップと、を含み、前記第2のステップは、前記元データの値が重複する重複レコード数毎の統計分布を特徴量として、前記ダミーデータの重複レコード数毎の統計分布を用い、前記統計分布の目標とする目標統計分布を決定するステップと、所定の確率に従って前記元データから選択したレコードに対して、当該レコードの各項目の値をランダムに選択した他のレコードの値に置換した中間データを生成するステップと、前記中間データが、前記目標統計分布を満たした場合には、当該中間データをダミーデータとして生成するステップと、を含む。
本発明によれば、データ提供者は、保有している元データを注文前のデータ需要者に推測されることなく、データ需要者毎に最適な匿名加工情報を提供することができ、より多くのデータ需要者に情報を販売することが可能となる。また、データ提供者にとって匿名加工情報の作成に伴う工数を大きく削減することができる。
また、データ需要者は、元データを自分で匿名加工しているかのように加工方法を決定して注文できるため、自分の利用目的及びニーズに適合した匿名加工情報を迅速に入手することができるようになる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
本発明の実施例1を示し、データ流通システムの構成の一例を示すブロック図である。 本発明の実施例1を示し、データ提供者情報装置、データ流通基盤、データ需要者情報処理装置のハードウェア構成の一例を示すブロック図である。 本発明の実施例1を示し、データ流通基盤の機能要素の一例を示すブロック図である。 本発明の実施例1を示し、匿名加工データの処理の一例を示すシーケンス図である。 本発明の実施例1を示し、匿名加工処理の一例を示すフローチャートである。 本発明の実施例1を示し、ダミーデータ生成処理の一例を示すフローチャートの前半部である。 本発明の実施例1を示し、ダミーデータ生成処理の一例を示すフローチャートの後半部である。 本発明の実施例1を示し、登録データ管理テーブルの一例を示す図である。例である。 本発明の実施例1を示し、元データの顧客属性ソースデータの一例を示す図である。 本発明の実施例1を示し、元データの履歴ソースデータの一例を示す図である。 本発明の実施例1を示し、仮ID変換後の顧客属性データの一例を示す図である。 本発明の実施例1を示し、仮ID変換後の履歴データの一例を示す図である。 本発明の実施例1を示し、データ需要者情報処理装置の匿名加工操作画面の一例を示す図である。 本発明の実施例1を示し、ダミーデータ生成処理の過程で生成される加工用元データの例である。 本発明の実施例1を示し、ダミーデータ生成処理の過程で生成される中間データ(1)の例である。 本発明の実施例1を示し、ダミーデータ生成処理の過程で生成される中間データ(2)の例である。 本発明の実施例1を示し、ダミーデータ生成処理の過程で生成される中間データ(3)の例である。 本発明の実施例1を示し、ダミーデータ生成処理の過程で生成される中間データ(4)の例である。 本発明の実施例1を示し、ダミーデータ生成処理の過程で生成される中間データ(5)の例である。 本発明の実施例2を示し、ダミーデータ生成処理の一例を示すフローチャートの前半部である。 本発明の実施例2を示し、ダミーデータ生成処理の一例を示すフローチャートの後半部である。 本発明の実施例3を示し、匿名加工データの処理の一例を示すシーケンス図である。 本発明の実施例1を示し、元データとダミーデータのレコード対応テーブルの一例を示す図である。
以下、本発明の実施形態を添付図面に基づいて説明する。
(データ流通システム)
本発明の適用対象となるデータ流通システムの構成に関して説明する。図1は、実施例1のデータ流通システムの構成を示すブロック図である。
実施例1のデータ流通システムは、N台のデータ提供者情報処理装置10(10−1〜10−N)と、データ流通基盤20と、M台のデータ需要者情報処理装置30(30−1〜30−M)から構成される。
データ提供者情報処理装置10(10−1〜10−N)は、データ提供者業務システム40(40−1〜40−N)とそれぞれ接続されている。データ需要者情報処理装置30(30−1〜30−N)はデータ需要者業務システム50(50−1〜10−N)と接続されている。データ提供者情報処理装置(10−1〜10−N)とデータ流通基盤20、データ需要者情報処理装置(30−1〜30−N)とデータ流通基盤20はそれぞれネットワーク(図示省略)を介して接続される。
なお、以下の説明では、データ提供者情報処理装置10の全体について説明する場合には「−」以降の符号を省略する。なお、他の構成要素の符号についても同様である。
次に、このデータ流通システムにおいて、データの仲介を行う手順について説明する。データ提供者は、データ提供者業務システム40内で収集したデータを、データ提供者情報処理装置10に送信し、データ提供者情報処理装置10を用いてデータ及びそのデータの補足情報をデータ流通基盤20に登録する。
登録されたデータはデータ流通基盤20の装置に格納される。データ需要者(利用者)はデータ需要者情報処理装置30を介してデータ流通基盤20にアクセスして、購入したいデータを検索、閲覧し、注文を実行する。
データ流通基盤20において、注文が受け付けられると、データ需要者に対して該当のデータへのアクセス権を付与する。データ需要者は、データ需要者情報処理装置30を介して、購入するデータをダウンロードする。購入したデータはデータ需要者業務システム50に送信され、そのデータが業務に用いられる。
(各装置のハードウェア構成)
図2は、実施例1のデータ流通基盤、データ提供者情報処理装置、データ需要者情報処理装置のハードウェア構成の一例を示すブロック図である。
データ提供者情報処理装置10は、主記憶装置11と、中央演算装置12と、出力装置13と、入力装置14と、蓄積部15と、ネットワークインタフェース部17、18から構成される。各部はバス16を介して相互に接続されており、相互に制御用のデータをやりとりすることが可能である。
ネットワークインタフェース部17はデータ提供者内ネットワーク61に接続されており、このデータ提供者内ネットワーク61を介してデータ提供者業務システム40と通信することが可能である。ネットワークインタフェース部18は、ネットワーク62に接続されており、このネットワーク62を介してデータ流通基盤20と通信することが可能である。
データ流通基盤20は、主記憶装置21と、中央演算装置22と、出力装置23と、入力装置24と、蓄積部25と、ネットワークインタフェース部27から構成される。各部はバス26を介して相互に接続されており、相互に制御用のデータをやりとりすることが可能である。
ネットワークインタフェース部27は、ネットワーク62に接続されており、このネットワーク62を介してデータ提供者情報処理装置10やデータ需要者情報処理装置30と通信することが可能である。
データ需要者情報処理装置30は、主記憶装置31と、中央演算装置32と、出力装置33と、入力装置34と、蓄積部35と、ネットワークインタフェース部37、38から構成される。各部はバス36を介して相互に接続されており、相互に制御用のデータをやりとりすることが可能である。
ネットワークインタフェース部37はデータ需要者内ネットワーク63に接続されており、このデータ需要者内ネットワーク63を介してデータ需要者業務システム50と通信することが可能である。ネットワークインタフェース部38は、ネットワーク62に接続されており、このネットワーク62を介してデータ流通基盤20と通信することが可能である。
なお、各蓄積部15、25、35は、ストレージ装置で構成される。また、出力装置13、23、33はディスプレイなどを含む。
図3は、実施例1のデータ流通基盤20の機能要素の一例を示す説明図である。
データ流通基盤20は、課金収納管理部201と、ユーザー管理部202、データ登録処理部203、メータリング部204、注文処理部205、検索部206、データ匿名加工部207、ダミーデータ生成加工部208の処理部を含む。
また、データベースとして、ユーザー情報管理データベース221と、登録データ管理データベース222と、L個の辞書データベース230(230−1〜230−L)と、元データDB241と、ダミーデータDB242と、匿名加工データDB243と、匿名加工管理データベース244を含む。
課金収納管理部201は、データ需要者が有料のデータを購入した場合に、データ需要者から料金を徴収するためのインボイスを発行し、データ提供者に料金から手数料を差し引いた金額を振り込む処理を行う。
なお、本実施例1では、データ流通のサービスにおいて、データ提供者のデータとデータ需要者のニーズがマッチングした際の手数料をデータ流通基盤20の売上とする事業を想定したが、それ以外の収益モデルの事業でも構わない。例えば、データ需要者には、月額いくらで何個のデータまでダウンロード可能という課金のしかたでも構わない。
ユーザー管理部202は、データ提供者及びデータ需要者のユーザーの管理に関する処理を行う。具体的には、データ提供者やデータ需要者のユーザーIDの新規作成や削除、各ユーザーIDの属性情報の更新などの処理を行う。
データ登録処理部203は、データ提供者がデータ提供者情報処理装置10を介してデータの登録依頼をした際の処理を行う。データを登録する際に、データ流通基盤20は登録のフォームを提示し、そのフォームでの入力情報に従って、登録データ管理テーブル300に情報を登録する。
メータリング部204は、データ提供者のデータ販売の量及び料金の測定や、データ需要者のデータ購入の量及び料金の測定を行う。また、測定したデータの購入履歴や販売履歴をログとして格納する処理を行う。
注文処理部205は、データ需要者からデータの注文依頼があった際の受付処理を行う。匿名加工データが対象となる場合には、注文依頼の内容に基づいた加工データのレポートを生成し、データ提供者にレポートを通知するとともに、データ需要者にデータのダウンロード先のURLを通知する。
検索部206は、データ需要者がデータ流通基盤20で既に登録されているデータを検索するための処理を行う。具体的には、データ需要者が条件やキーワードを入力した際に、検索部206は当該条件に合致するデータの一覧を出力する処理を行う。検索部206がデータの一覧を出力する際には、主にデータのタイトルやデータの説明文を出力してデータ需要者情報処理装置30に表示させる。
データ匿名加工部207は、データ需要者が後述するように、ダミーデータに基づいて匿名加工操作をした場合に、元データに対する匿名加工操作を決定し、元データの匿名加工処理を行う。
ダミーデータ生成加工部208は、データ提供者がデータを登録した際に、登録したデータが個人情報を含むデータで、当該個人情報を匿名加工して提供したい場合に、データ提供者が提供した元データに基づいて、ダミーデータを生成する処理を行う。ダミーデータの生成処理の詳細については、後述する。
上記課金収納管理部201と、ユーザー管理部202、データ登録処理部203、メータリング部204、注文処理部205、検索部206、データ匿名加工部207、ダミーデータ生成加工部208の各機能部はプログラムとして主記憶装置21にロードされる。
中央演算装置22は、各機能部のプログラムに従って処理することによって、所定の機能を提供する機能部として稼働する。例えば、中央演算装置22は、ダミーデータ生成加工プログラムに従って処理することでダミーデータ生成加工部208として機能する。他のプログラムについても同様である。さらに、中央演算装置22は、各プログラムが実行する複数の処理のそれぞれの機能を提供する機能部としても稼働する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。
データ流通基盤20の各機能を実現するプログラム、テーブル等の情報は、蓄積部25等のストレージサブシステムや不揮発性半導体メモリ、ハードディスクドライブ、SSD(Solid State Drive)等の記憶デバイス、または、ICカード、SDカード、DVD等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
ユーザー情報管理DB221は、データ提供者及びデータ需要者のユーザー情報を管理するためのデータベースである。ユーザー情報管理DB221は、図示はしないが、ユーザーIDと、ユーザー種別(提供者または需要者)と、ユーザーの所属組織と、連絡先メールアドレスなどの情報を格納する。
登録データ管理DB222は、登録データ管理テーブル300と、顧客属性データ330と、履歴データ340と、レコード対応テーブル600を含む。各テーブルの詳細については後述する。
辞書DB230−1〜230−Lは、顧客属性データ330の各属性がとりうる値を含む辞書のデータベースを表す。属性としては、例えば、住所や職業、勤務地の項目がとりうる値である。これらのL個の辞書DB230は、ダミーデータの生成処理において用いられる。
元データDB241は、データ提供者が登録した元データのデータベースである。元データDB241は、例えば、顧客の属性を格納した顧客属性ソースデータ410と、顧客毎の履歴を格納した履歴ソースデータ420を含む。各テーブルの詳細については後述する。
ダミーデータDB242は、データ流通基盤20が元データに基づいて生成したダミーデータを格納するデータベースである。
匿名加工データDB243は、データ流通基盤20がデータ需要者の匿名加工操作に基づいて生成した匿名加工データのデータベースである。なお、この匿名加工データDB243には、匿名加工操作途中の加工中データを保持してもよい。なお、加工中データは、データ需要者情報処理装置30による匿名加工操作に基づいて、加工用元データ(元データ)に所定の匿名加工を実施したデータである。
匿名加工データDB243は、データ流通基盤20がデータ需要者の匿名加工操作に基づいて、元データに対する匿名加工操作情報を逐次取得し、匿名加工操作情報の履歴のデータベースである。匿名加工データDB243には、図示はしないが、各データセットIDに対して、操作番号と匿名加工で実施した操作の情報が格納される。匿名加工操作情報には、加工操作の種別と、加工対象(列1など)が格納される。これらの匿名加工操作の履歴は、データ注文があった場合にデータ提供者に送信される匿名加工レポートの作成等で利用される。
上記ユーザー情報管理データベース221と、登録データ管理データベース222と、L個の辞書データベース230と、元データDB241と、ダミーデータDB242と、匿名加工データDB243と、匿名加工管理データベース244は、蓄積部25に格納される。
(匿名加工データの登録、加工及び注文のシーケンス)
図4は、匿名加工データの登録から加工及び注文に至る一連の処理を実行する場合のシーケンス図である。
まず、データ提供者は、データ提供者情報処理装置10を介してデータ登録要求メッセージをデータ流通基盤20へ送信する。このメッセージは、元データの概要情報とデータの匿名加工要件の情報を含む(S1)。また、データ提供者情報処理装置10は、元データをデータ流通基盤20に送信する。なお、匿名加工要件は、K−匿名性等の匿名加工指標を含む。
次に、データ流通基盤20が、データ登録要求メッセージを受け付けると、データ登録処理部203が実行され、データの概要情報と、匿名加工要件を登録データ管理データベース222に格納する。
また、データ流通基盤20は受信した元データを元データDB241に格納する。また、データ流通基盤20のダミーデータ生成加工部208は、元データから匿名化に関連する特徴量を演算し、当該特徴量に近く、かつ、データ需要者から元データを推測するのが難しいダミーデータを生成して、ダミーデータDB242に格納する。
なお、ダミーデータの生成方法については、後述する。ダミーデータDB242にダミーデータの格納が完了すると、データ流通基盤20からデータ提供者情報処理装置10にデータ登録完了通知メッセージが送信される(S3)。
その後、データ需要者がデータ需要者情報処理装置30からデータの検索条件を入力する(S4)。データ流通基盤20の検索部206は、登録データ管理データベース222から検索条件に合致する検索結果をデータ需要者のデータ需要者情報処理装置30に送信する(S5)。
そして、データ需要者がデータ需要者情報処理装置30から購入対象のデータを選択すると(S6)、データ流通基盤20は選択されたデータの概要情報が含む情報を商品説明ページとしてデータ需要者情報処理装置30に提示する(S7)。なお、ここでデータ需要者が選択するのは、元データを匿名加工したデータである。
データ需要者がデータの商品説明ページ内に表示される匿名加工操作ボタンを選択すると(S8)、匿名加工操作画面がデータ需要者情報処理装置30の出力装置33に表示される(S9)。なお、匿名加工操作画面の詳細については後述する。
次に、データ需要者が匿名加工操作画面から、ダミーデータに対して匿名加工の操作Aを実施する(S10)。データ流通基盤20は、匿名加工の操作Aを元データに対して実施して匿名加工の中間データを生成する(S11)。データ流通基盤20は、匿名加工操作実施後の加工中データについて匿名加工指標を算出する。データ流通基盤20は、匿名加工操作後のダミーデータ及び匿名加工指標を更新した匿名加工操作画面を出力し、データ需要者情報処理装置30に通知する(S12)。なお、匿名加工操作画面に出力される匿名加工指標は、前回の匿名加工操作実施後に算出した値である。
次に、データ需要者がダミーデータに対して匿名加工の操作Bを実施する(S13)。データ流通基盤20は、匿名加工の操作Bを元データに対して実施して匿名加工の中間データを更新し(S14)、匿名加工操作実施後の中間データについて匿名加工指標を算出する。データ流通基盤20は、匿名加工操作Bの後のダミーデータ及び匿名加工指標を更新した匿名加工操作画面を出力し、データ需要者情報処理装置30に通知する(S15)。
次に、データ需要者がダミーデータに対して匿名加工の操作Cを実施する(S16)。データ流通基盤20は、匿名加工の操作Cを元データに対して実施して匿名加工の中間データを更新し(S17)、匿名加工操作Cを実施した後の中間データについて匿名加工指標を算出し、ダミーデータ及び匿名加工指標を更新した匿名加工操作画面を出力し、データ需要者情報処理装置30に通知する(S18)。
図4のシーケンス図では、例えば、初めに列3の削除を実施し(操作A)、次に、列2の一般化(簡略化)処理を実施し(操作B)、最後に、特定可能なレコードである行123の削除を実施する(操作C)。本実施例1では、一連の匿名加工操作後に、元データの匿名加工指標が提供可能条件を満たす場合には、匿名加工操作画面において、注文ボタンが有効化される。
この後、データ需要者は、データ需要者情報処理装置30で注文ボタンを押して注文依頼を送信する(S19)。なお、この注文依頼において、データ需要者は注文内容を確認して該当データの購入処理を行う。注文処理が完了すると、データ流通基盤20は、中間データを匿名加工データとして匿名加工データDB243に格納して(S20)からデータ提供者情報処理装置10に匿名加工レポートを通知する(S21)。
この匿名加工レポートには、元データに対してどのような匿名加工を実施したかを表す加工方法詳細と、加工されたデータ、及び、加工されたデータでの匿名加工指標を含む。また、注文が受け付けられると、データ流通基盤20からデータ需要者情報処理装置30に匿名加工データの閲覧やダウンロード可能になったことをデータ需要者に通知する(S22)。
本実施例1では、匿名加工データをデータ提供者が承認せずに注文を受け付けているが、データ提供者が匿名加工レポートの内容を承認してからデータ流通基盤20で注文を受け付けてもよい。その場合には、データ提供者情報処理装置10からデータ流通基盤20に注文依頼に対して許可するか否かを示すメッセージを送信し、データ流通基盤20は当該メッセージを受けて注文を受け付けるようにすればよい。
以上のシーケンスにより、匿名加工用の元データの登録から匿名加工及び注文に至る一連の処理を行うことができる。
(匿名加工操作画面)
図10に、データ需要者情報処理装置30の出力装置33に表示される匿名加工操作画面250の一例例を示す。匿名加工操作画面250は、データ需要者がデータ需要者情報処理装置30でダミーデータを閲覧しながら、ダミーデータに対して匿名加工操作を実施する。データ流通基盤20は、匿名加工の操作後に、元データに対する匿名加工の実施と匿名加工指標を更新して匿名加工操作画面250に出力する。
匿名加工操作画面250は、データ操作メニュー260と、匿名加工指標表示エリア270と、データプレビューエリア280から構成される。
データ操作メニュー260には、本画面で実行可能な匿名加工操作の一覧が表示される。例えば、「元に戻す」、「指定例の削除」、「指定例の値のグルーピング」、「指定列の値の一般化」、「低頻度レコードの選択・削除」、「ノイズ付加」、「スワッピング」等が表示される。各操作で必要な場合は各操作の対象やパラメータを指定することができる。例えば、匿名加工操作が指定例の削除の場合には、操作対象の列の一覧が表示され、その列を選択するとその列が削除される。
また、匿名加工操作が「指定列の値の一般化」である場合には、操作対象の列の一覧が表示され、さらに、その列での一般化のレベルを選択すると、該当列での一般化が実施される。ここで、一般化のレベルは、住所であれば都道府県まで一般化するのか、市町村まで一般化するのかなどを表す。
また、匿名加工操作を終了または中断する場合には、操作終了ボタン261を操作すればよい。
匿名加工指標表示エリア270は、データ需要者がどこまで匿名加工を実施すればよいのか、また、現状の匿名加工では情報損失量がどうなるかを表示する。
匿名加工指標表示エリア270には、k−匿名性や、特定可能なレコード数、レコード総数、情報損失量(エントロピー)、情報損失量(欠損レコード数)が表示される。また、提供可能条件が定義されている指標については、現在の匿名加工での指標の値と提供条件の値の両方を表示する。
また、匿名加工指標表示エリア270の匿名加工指標は、データ需要者が匿名加工操作を実行した際に、元データに対して匿名加工が実施され、匿名加工後の指標が算出され、算出された値が更新されて表示される。なお、匿名加工指標については、必ずしも上記に限定されない。
また、匿名加工指標表示エリア270は、提供可能条件を満たしている場合には提供可能表示271に「提供OK」を出力し、提供可能条件を満たしていない場合には提供可能表示271に「提供NG」を表示し、現在までの匿名加工で注文が可能か否かを示す。
また、匿名加工操作画面250においては、「注文依頼に進む」ボタン251が表示される。なお、提供可能条件を満たしていて提供OKの場合にボタン251を有効にし、提供可能条件を満たしておらず提供NGの場合にはボタン251を無効とする。
データプレビューエリア280には、匿名加工を実施した後のダミーデータが表示される。図示の例では、仮IDと年齢、性別及び住所で構成されたダミーデータの一例を示している。
(データ流通基盤での匿名加工処理のフローチャート)
図5は、実施例1のデータ流通基盤20における匿名加工処理の一例を示すフローチャートである。匿名加工処理は、データ需要者情報処理装置30の匿名加工操作画面でダミーデータに対して匿名加工を指令したときに処理が開始される(S301)。
次に、データ流通基盤20のデータ匿名加工部207は、匿名加工操作画面250を生成する(S302)。匿名加工操作画面250では、図10で示したようにダミーデータDB242から読み込んだダミーデータの表示と、ダミーデータに対する匿名加工操作の内容と、元データDB241から読み出した元データの匿名加工指標の表示を行う。
匿名加工操作画面250を介してデータ需要者のデータ需要者情報処理装置30から操作を受け付けたデータ流通基盤20がダミーデータに対する匿名加工を実施し、元データに対しても同様の匿名加工操作を決定することができる。
データ匿名加工部207は、匿名加工の対象となるダミーデータ及び元データの匿名加工に関する匿名加工指標を読み込み、匿名加工操作画面250を生成して出力し、データ需要者情報処理装置30の出力装置に表示する(S303)。
匿名加工の対象となるダミーデータはデータ流通基盤20のダミーデータDB242から取得する。また、データ匿名加工部207は、対象となる元データを元データDB241から取得し、加工実施前の元データの匿名加工に関する匿名加工指標を算出し、匿名加工操作画面250に出力する。また、データ匿名加工部207は、匿名加工指標の提供条件については、登録データ管理DB222から該当する元データの提供条件を取得して出力する。
次に、データ匿名加工部207は、データ需要者が匿名加工操作画面250の注文ボタン251を押したか否かを判定する(S304)。データ匿名加工部207は、注文ボタン251が押されたことを検出した場合には、ステップS313に進む。一方、注文ボタン251が押されたことを検出しなかった場合には、ステップS305に進む。
なお、ステップS310の処理の説明で後述するとおり、匿名加工操作画面250に表示される注文ボタン251は匿名加工指標の値が所定の提供条件を満たす場合にのみ有効となり、それ以外の場合には無効とし、匿名加工指標の値が提供条件を満たさないときには注文ボタン251の操作が禁止される。
次に、データ匿名加工部207は、データ需要者が匿名加工操作画面250の操作終了ボタン261を押したか否かを判定する(S305)。データ匿名加工部207は、操作終了ボタン261が押されたことを検出した場合には、ステップS312に進む。一方、操作終了ボタン261が押されたことを検出しなかった場合には、ステップS306に進む。
次に、データ匿名加工部207は、データ需要者が匿名加工操作を実施したか否かを判定する(S306)。データ匿名加工部207は、匿名加工操作の実施を検出した場合には、ステップS307に進む。一方、匿名加工操作の実施を検出していない場合には、ステップS304に戻る。データ需要者がいずれの操作も実施してないときには、ステップS304、S305、S306のループを繰り返すこととなる。
次に、データ需要者が匿名加工操作を実施した場合には、データ匿名加工部207は、ダミーデータに対応する元データの匿名加工操作を、後述するレコード対応テーブル600を参照して決定する(S307)。
この処理では、データ流通基盤20のデータ匿名加工部207は、データ需要者のダミーデータに対する匿名加工操作の情報を取得し、データ流通基盤20でデータ毎に管理している元データとダミーデータのレコード対応テーブル600を参照することで元データに対する匿名加工操作を決定する。
次に、データ流通基盤20のデータ匿名加工部207は、ステップS307で決定した元データに対する匿名加工操作に基づいて、元データに対する匿名加工操作を実行する(S308)。
データ匿名加工部207は、元データの複製(加工用元データ)に対して匿名加工操作を実施して、加工中データとして匿名加工データDB243に格納する。加工中データは、匿名加工操作が実施される度に更新される。また、元データに対する匿名加工操作情報は、匿名加工データDB243に格納する。
次に、データ匿名加工部207は、匿名加工操作実行後のデータを匿名加工データDB243から取得し、当該データの匿名加工指標を算出する(S309)。データ匿名加工部207は、匿名加工指標としては、上述のように、提供可能条件に対応した指標を算出する。例えば、提供可能条件としてk-匿名性や一意に特定可能なレコード数がある場合にはその値を算出する。また、データ需要者向けには元データと比べた情報損失量を表す欠損レコード数や情報エントロピーの値を算出する。
次に、データ匿名加工部207は、匿名加工操作画面250の表示内容を更新する(S310)。具体的には、ダミーデータの匿名加工操作後のデータと、ステップS309で算出した匿名加工指標の値を更新する。
次に、データ匿名加工部207は、上記ステップS309で算出した匿名加工指標の値が所定の提供条件を満たすか否かを判定する(S311)。データ匿名加工部207は、匿名加工指標の値が所定の提供条件を満たす場合には、ステップS312に進む。一方、提供条件を満たさない場合には、ステップS304に戻る。
上記ステップS311の判定で提供条件を満たす場合には、匿名加工操作画面250において無効化されていた注文ボタン251を有効にする(S312)。
上記ステップS304からステップS312までのループ処理を実行することにより、データ匿名加工部207は、ダミーデータに対する匿名加工操作に合わせて、元データに対する匿名加工操作を実行して加工中データを更新し、更に、匿名加工操作後の匿名加工指標を更新することを繰り返すことができる。
また、データ匿名加工部207は、ステップS305の匿名加工の操作終了ボタン261が押された場合には、匿名加工操作画面250を閉じる(S313)。なお、データ匿名加工部207が匿名加工操作画面250を閉じる場合には、匿名加工操作途中の加工データ及び匿名加工操作の情報、匿名加工操作途中のダミーデータをダミーデータDB242に保持し、加工中データを匿名加工データDB243で保持しておけば、後に途中から作業を再開することも可能である。
また、ステップS304の処理で、データ需要者が注文ボタン251を押した場合には、注文処理の画面(図示省略)に遷移する(S314)。データ匿名加工部207は、加工中データを匿名加工データとして匿名加工データDB243に保持し、データ需要者情報処理装置30へ出力することができる。
以上で述べたフローチャートの処理によれば、データ流通基盤20は、データ需要者がデータ需要者情報処理装置30でダミーデータを加工することに基づいて、元データの匿名加工方法を決定し、加工中データに対して匿名加工操作を実行することが可能である。
また、データ提供者が設定したデータ提供可能条件を満たしたときのみに匿名加工データの注文が可能となる。これにより、個人情報を含む元データから生成される加工データの匿名性を確保することができる。
(登録データの管理テーブル)
ダミーデータの生成においては、対象となる元データの構成を把握し、元データの各項目(フィールド)が識別子であるか、属性であるか、履歴であるかを決める必要がある。これらの情報はデータ登録時にデータ提供者がダイジェスト情報を入力し、ダイジェスト情報に基づいてデータ流通基盤20において管理する必要がある。
元データを管理するためのテーブルを登録データ管理DB222に格納する。登録データ管理DB222は、登録データ管理テーブル300と、顧客属性データ330と、履歴データ340と、レコード対応テーブル600を含む。
図7は、登録データ管理テーブル300と、顧客属性データ330と、履歴データ340の関係を示す図である。
登録データ管理テーブル300は、データセットID301と、登録者ID302と、顧客属性データ構成303と、履歴データ構成304と、提供可能条件305とをひとつのエントリに含む。
データセットID301は、データ流通基盤20において登録されているデータセットを一意に識別するための識別子である。例えば、データが登録された順に1、2、3、4とシーケンシャルに付与した識別子とすることができる。
登録者ID302は、データ提供者がデータ流通基盤20を利用する際のユーザーIDを表す。顧客属性データ構成303は、データセットのうち顧客の識別子及び顧客の属性を表す顧客属性管理テーブル310へのポインタ(図示の例では、Table00003A)を格納する。
履歴データ構成304は、データセットのうち顧客の識別子及びその識別子に関する履歴情報を表す履歴管理テーブル320へのポインタ(図示の例ではTable00003B)を格納する。
顧客属性データ330と履歴データ340が、加工用元データを構成するデータセットの実体である。顧客属性データ330は顧客属性管理テーブル310のフォーマットに従って生成され、履歴データ340は履歴管理テーブル320のフォーマットに従って生成される。
顧客属性管理テーブル310は、個人情報を匿名加工した識別子を格納する仮ID31と、属性としての年齢312と、属性としての性別313と、属性としての住所314をひとつのエントリに含む。
履歴管理テーブル320は、個人情報を匿名加工した識別子を格納する仮ID321と、履歴データとしての利用日322と、利用店舗323と、支払い方法324及び購入金額325と、をひとつのエントリに含む。
データの提供可能条件305は、個人情報が含まれるデータに関してどのような条件まで匿名化すれば、データ需要者に提供可能であるかを示す。例えば、データセットID=0000000001については、k−匿名性指標であるkの値が2より大きく、かつ、特定可能レコード数=0のように、定量化した条件が入力される。
なお、本実施例1では、顧客属性データ構成303と、履歴データ構成304と、提供可能条件305は、データを登録する際にデータ提供者がダイジェスト情報として入力するものと想定した。
なお、提供可能条件305は、データセットに対応して一意に定まるとしたが、必ずしもこれに限定されない。例えば、提供先のデータ需要者あるいはデータ需要者のグループ毎に提供可能条件を定めてもよい。
(元データのデータ構造)
図8A、図8Bに、データ提供者より提供される元データのデータ構造の一例を表す。
図示の例では、元データが図8Aの顧客属性ソースデータ410と、図8Bの履歴ソースデータ420で構成される例を示す。
本実施例1では、店舗でクレジットカードにより購入された購買履歴を契約者毎に収集した元データを表す。顧客属性ソースデータ410は、匿名加工前の顧客の属性を格納する。履歴ソースデータ420は、匿名加工前の顧客の購買履歴を格納する。
図8Aの顧客属性ソースデータ410は、例えば、契約者ID411と、氏名412と、電話番号413と、年齢414と、住所415と、性別416とをひとつのエントリに含む。このうち、契約者ID411と、氏名412と、電話番号413と、は単体で個人がほぼ特定されるため識別子として分類し、年齢414と、住所415と、性別416は属性として分類される。
図8Bの履歴ソースデータ420は、契約者ID421と、利用日422と、利用加盟店423と、支払方法424と、利用金額425とをひとつのエントリに含む。このうち、契約者ID421は識別子であり、利用日422と、利用加盟店423と、支払方法424と、利用金額425は履歴と分類される。なお、これらの分類は、データ提供者がデータを登録する際にダイジェスト情報として登録することを想定している。
(仮ID変換後の元データの構造)
図9A、図9Bは、データ提供者より提供される元データのうち、図8A、図8Bの識別子を仮IDに変換した後のデータの一例を表す。本実施例1では、元データの識別子を仮IDに変換したデータを加工用元データとする。図8A、図8Bに示した元データの識別子411、契約者ID412を、シリアル番号等の仮ID331に変換した例を示す。
図9Aは、仮ID変換後の顧客属性データ330の一例を示す図である。図9Bは、仮ID変換後の履歴データ340の一例を示す図である。
これらのデータは、顧客属性ソースデータ410と履歴ソースデータ420から生成される。顧客属性データ330は仮ID331と、年齢332と、住所333と、性別334をひとつのエントリに含む。このうち、仮ID331が識別子として分類され、図7で示したように、年齢332と、住所333と、性別334が属性として分類される。顧客属性ソースデータ410の氏名412と電話番号413は匿名化のため顧客属性データ330から除外される。
また、履歴データ340は、仮ID341と、利用日342と、利用加盟店343と、支払方法344と、利用金額345とをひとつのエントリに含む。このうち、利用日342と、利用加盟店343と、支払方法344と、利用金額345が履歴として分類される。
図8A、図8Bの元データと図9A、図9Bの仮ID変換後の加工用元データを比べると、識別子が仮ID511、521に集約されており、仮ID511、521が顧客属性データ330と履歴データ340の関連を示す。
(元データとダミーデータの対応管理テーブル)
図19は、元データとダミーデータのレコードの対応関係を管理するレコード対応テーブル600の一例を示す。
レコード対応テーブル600は元データのレコード番号601と、ダミーデータのレコード番号602からひとつのエントリが構成される。レコード番号601、602は元データとダミーデータのレコードを一意に識別することが可能であればよく、本実施例1では、レコード番号の代わりに仮IDを用いてもよい。それぞれのレコード番号601、602には、複数のレコードのリスト形式となってもよい。このレコード対応テーブル600の生成方法はダミーデータの生成処理において行われる。
また、このレコード対応テーブル600、ダミーデータの匿名加工操作から元データの匿名加工操作を決定することが可能となる。例えば、ダミーデータのレコード番号0041のレコードを削除する加工を実施した場合には、元データのレコード番号0024、0025のレコードを削除する。
(データ流通基盤でのダミーデータ生成処理のフローチャート)
図6A、図6Bに、ダミーデータ生成処理のフローチャートを示す。図6Aは、ダミーデータ生成処理の一例を示すフローチャートの前半部を示し、図6Bは、ダミーデータ生成処理の後半部である。
なお、ここでは、データ提供者情報処理装置10が全く加工をしていない元データをデータ流通基盤20に登録した例を示す。以下では、ダミーデータの生成処理の流れを図11から図16に示す加工用元データ350、中間データ(1)から中間データ(5)を用いて説明する。
まず、データ提供者情報処理装置10が元データの登録処理を完了すると、データ流通基盤20のダミーデータ生成加工部208は、元データの登録を検知してダミーデータ生成処理を開始する(S101)。
次に、ダミーデータ生成加工部208は、データ登録がなされたデータセットID301の元データ(顧客属性ソースデータ410、履歴ソースデータ420)を元データDB241から取得して、元データの各項目を識別子、属性、履歴に分類し、登録データ管理テーブル300を更新する(S102)。
本実施例1では、データセットが顧客属性データ330と履歴データ340から構成される例を示し、顧客属性データ330の構成及び履歴データ340の構成を表す顧客属性管理テーブル310と履歴管理テーブル320をそれぞれ作成する。
次に、ダミーデータ生成加工部208は、元データの識別子の組み合わせを仮IDに変換する(S103)。仮IDは、例えば、シリアル値などデータ流通基盤20で一意の識別子をもちいることができる。この処理により、図8A、図8Bの元データ(顧客属性ソースデータ410、履歴ソースデータ420)から図9A、図9Bに示す顧客属性データ330と履歴データ340からなる加工用元データが生成される。
なお、以下では、説明を簡易にするため、図11に示すように、顧客属性データ330と履歴データ340をマージしたデータを加工用元データ350とする。加工用元データ350は、仮ID331と、年齢332と、住所333と、性別334と、履歴データ335をひとつのエントリに含む。仮ID331〜性別334は、顧客属性データ330と同様であり、履歴データ335は履歴データ340の購入金額の代表値(または総和)とする。
次に、ダミーデータ生成加工部208は、顧客属性管理テーブル310を参照して、項目種別が属性となる項目について値を一般化した値に変換する(S104)。この処理により生成されるデータを図11の加工用元データ350に示す。
次に、ダミーデータ生成加工部208は、顧客属性管理テーブル310を参照して、項目種別が属性となる項目について、各辞書DB230を参照して、一般化した値を変換する(S105)。この処理により生成されるデータを図12の中間データ(1)360に示す。
図示の例では、ダミーデータ生成加工部208が顧客属性管理テーブル310の年齢312と住所314を一般化の対象として選択し、加工用元データ350の年齢332を10代単位で一般化し、住所333を都道府県で一般化した例を示す。なお、中間データ(1)360は、加工用元データ350から履歴データ335を割愛したもので、その他の項目(フィールド)は、図11と同様である。
次に、ダミーデータ生成加工部208が一般化した中間データ(1)360について、重複レコードの出現頻度の統計分布を算出し、目標とする重複レコードの出現頻度の範囲(目標統計分布)を決定する(S106)。ダミーデータ生成加工部208は、出現頻度を算出するため中間データ(1)360の属性をソートしたデータを図13の中間データ(2)360として生成する。
統計分布の算出においては、重複するレコードの数1、2、3、・・・で出現頻度を算出していく。ここで、目標とする出現頻度の範囲は、統計分布により中間データ(1)360の値の推測困難性と、ダミーデータの匿名加工操作が元データの匿名加工操作とのかい離度の両方を鑑みて設定する。
次に、ダミーデータ生成加工部208は、所定の確率pで中間データ(2)360のレコードを、別のレコード値のセットに置換して図14の中間データ(3)360を生成する(S107)。ダミーデータ生成加工部208は、各レコード毎に確率pで置換するとして、また置換後のレコード値は他のレコード値からランダムに選択する。
なお、ダミーデータ生成加工部208が、中間データ(2)から中間データ(3)を生成する場合には、仮ID=0004の年齢、住所、性別の値のセットを仮ID=0003のレコードの値のセットに置換する。また、ダミーデータ生成加工部208が、仮ID=0012の年齢、住所、性別の値のセットを仮ID=0013のレコードの値のセットに置換する。仮ID=0027の年齢、住所、性別の値のセットを仮ID=0025のレコードの値のセットに置換する。
次に、ダミーデータ生成加工部208は、置換後の中間データ(3)360における重複レコードの出現頻度の統計分布を算出する(S108)。
次に、ダミーデータ生成加工部208は、置換後の中間データ(3)360における重複レコードの頻度の統計分布が、ステップS106で設定した目標の出現頻度(目標統計分布)に近づくか否かを判定する(S109)。
具体的には、ダミーデータ生成加工部208は、置換前の中間データ(2)の重複レコード数1,2,3,・・・の頻度をn1,n2,n3,・・・とし、置換後の中間データ(3)の重複レコード数1,2,3,・・・の頻度をl1,l2,l3・・・とし、目標の頻度(目標統計分布)をそれぞれm1,m2,m3,・・・とする。
ここで、置換前の中間データ(2)の目標頻度(目標統計分布)までの二乗距離E1を、
E1=|n1−m1|^2+|n2−m2|^2+|n3−m3|^2 + ・・・
と定義し、置換後の中間データ(3)360の目標頻度までの二乗距離E2を、
E2=|l1−m1|^2+|l2−m2|^2+|l3−m3|^2 +・・・
と定義する。
このとき、E1>E2であるときに、ダミーデータ生成加工部208は、目標の頻度に近づいたと判定する。
次に、ダミーデータ生成加工部208は、ステップS109の判定結果がNoである場合には、ステップS107で実施した中間データ(3)に対する置換操作を元に戻す(S110)。そして、ステップS107に戻って上記処理を繰り返す。
次に、ダミーデータ生成加工部208は、ステップS109の判定結果がYesである場合には、ステップS111に進んで、統計分布が目標となる頻度の範囲(目標統計分布)内に収まっているか否かを判定する。
ダミーデータ生成加工部208は、上記ステップS108で算出した頻度の統計分布が、ステップS106で設定した頻度の範囲内であるか否かを判定する。ダミーデータ生成加工部208は、判定結果がYesである場合には、図6BのステップS112に進み、判定結果がNoである場合には、ステップS107に戻って上記処理を繰り返す。
上記ステップS107〜S111の処理を繰り返して実行することにより、目標となる頻度の統計分布(目標統計分布)になるまで、特定の確率pで別レコード値への置換が繰り返されることとなる。本実施例1では、何度か上記処理が実行されて、図14に示す中間データ(3)が生成される。
次に、ダミーデータ生成加工部208は、元データと生成されたダミーデータ(中間データ(3))の間でのレコード対応テーブル600を生成する(S112)。元データと中間データ(3)360は、レコードが1対1で対応しているため、中間データ(2)と中間データ(3)との間でのレコード対応テーブル600を生成することで代替してもよい。中間データ(3)と中間データ(4)で、同じ値のセットとなるレコードをそれぞれ選択し、それらをレコード対応テーブル600に書き込む。
例えば、説明に用いたデータの例での対応関係をいくつか列挙すると下記の通りとなる。
図13の中間データ(2)の仮id=[0001,0002,0003]のレコードと、図14の中間データ(3)の仮ID=[0001,0002]のレコードが対応する。
図13の中間データ(2)の仮id=[0020]のレコードと、図14の中間データ(3)の仮ID=[0020]のレコードが対応する。
図13の中間データ(2)の仮id=[0024,0025]のレコードと、図14の中間データ(3)の仮ID=[0024]のレコードが対応する。
図13の中間データ(2)の仮id=[0029]のレコードと、図14の中間データ(3)の仮ID=[0029]のレコードが対応する。
ダミーデータ生成加工部208は、これらの対応関係をレコード対応テーブル600として登録する。
次に、ダミーデータ生成加工部208は、顧客属性管理テーブル310を参照して属性となる項目種別について、各辞書DB260を参照し詳細値に変換する(S113)。ここで、年齢331に関しては、一般化された値に基づいてランダムに値を生成する。例えば、一般化された値が30である場合には、30〜39までの値をランダムに生成する。
また、住所333に関しては、一般化された値に合致する値を住所の辞書DBから選択し、選択した値の候補のなかから一つ選択する。性別334に関しては、詳細化の対象ではないため、値はそのままとする。このような処理により図14の中間データ(3)から図15に示す中間データ(4)が生成される。
次に、ダミーデータ生成加工部208は、図15に示した中間データ(4)のレコードをシャッフルする(S114)。レコードをシャッフルするのは、元のデータの並び順のままであると元データの値を推測されるリスクがあるためである。このような処理により図15に示した中間データ(4)から図16に示した中間データ(5)が生成される。
次に、ダミーデータ生成加工部208は、元データとシャッフル後のダミーデータのレコード間のレコード対応テーブル600を更新する(S115)。これは、上記ステップS114の処理において、ダミーデータ生成加工部208がシャッフルにおける処理内容を保存しておき、その処理内容に基づいてレコード間の対応関係を更新すればよい。
次に、ダミーデータ生成加工部208は、履歴となる項目(図示省略)に、ダイジェスト情報で指定された範囲内のランダムな値を出力する(S116)。履歴の利用日342には指定された期間内での日付の値を設定し、利用加盟店343には取り得る値のリストからランダムに選択した値を設定し、支払方法344には取り得る値のリストからランダムに選択した値を設定し、利用金額345には取り得る値の範囲からランダムに選択した値を設定する。
以上の処理が完了すると、ダミーデータ生成加工部208、処理が完了した中間データ(5)をダミーデータとしてダミーデータDB242へ格納し、ダミーデータ生成処理を終了する(S117)。
以上のフローチャートの処理に従うことで、匿名加工に関する一つの特徴量である重複レコードについて、重複レコード毎に統計分布の目標値(目標統計分布)を満たすようなダミーデータを生成することができる。また、この生成過程において、目標値に近づくようにある確率で別のレコード値に変換する処理を加えることにより、ダミーデータから元データの推測が困難となる。また、この生成過程において、元データとダミーデータのレコードの対応づけを実施することができ、この対応表を活用することで、ダミーデータに対する匿名加工操作に基づいて元データの匿名加工操作を決定することができる。
また、データ需要者は、元データを自分で匿名加工しているかのように加工方法を決定して注文できるため、データ需要者の利用目的及びニーズに適合した匿名加工情報を迅速に入手することができるようになる。
実施例1では、ダミーデータの生成において、重複レコードの出現頻度について目標となる統計分布(目標統計分布)を決定した後に、その分布に近づけるために、各レコードに対して確率pでランダムに選択した別レコードに置換する処理を実施した。そして、ダミーデータ生成加工部208はレコードの置換前後で分布が近づくか否かを判定し、近づく場合にのみ置換処理を実施し、近づかない場合には何もしない処理を繰り返していた。
元データの重複レコード数の分布と、目標となる統計分布の差が大きい場合や、データのレコード数が多い場合には、より多くの置換処理が必要となる。そのため、ダミーデータの生成に時間がかかってしまう可能性がある。
そこで、本実施例2では、ダミーデータ生成の処理時間を短縮するために、中間データのレコードで出現頻度が目標の値より大きいレコードを集めたグループAと、出現頻度が目標の値より小さいレコードを集めたグループBに分けて、グループAのレコードに対して確率pでグループBからランダムに選択したレコード値に置換する。
以下では、実施例1との差分を中心に実施例2を説明する。差分は、ダミーデータ生成処理のみである。その他の構成については前記実施例1と同様である。
図17A、図17Bは、本実施例2におけるダミーデータ生成処理のフローチャートを示す。図17Aは、フローチャートの前半部を示し、図17Bは、フローチャートの後半部を示す。
ステップS201からS206までの処理は、実施例1における図6Aに示したダミーデータ生成処理のステップS101からS106と同一である。S206までの処理で、図13の中間データ(2)360が生成され、また、目標となる出現頻度が決定される。
次に、ダミーデータにおける重複レコードの出現頻度の統計分布を算出する(S207)。処理が完了すると、ステップS208へ進む。
次に、ダミーデータ生成加工部208は、中間データの統計分布が目標となる出現頻度の範囲内にあるか否かを判定する(S208)。統計分布が目標となる出現頻度の範囲内(Yes)である場合には、中間データの重複レコード数毎の統計分布が目標範囲に入っているため、ステップS212の処理に進む。
一方、判定結果がNo(統計分布が目標範囲外)である場合には、まだ目標の統計分布になっていないため、ステップS209に進んで、ステップS209、S210、S211、S207の処理を再度行う。
次に、ダミーデータ生成加工部208は、中間データのレコードにおいて、出現頻度>目標となるレコードの集合Aと、出現頻度<目標となるレコードの集合Bを特定する(S209)。処理が完了すると、ステップS210に進む。
次に、ダミーデータ生成加工部208は、集合Aから置換対象のレコードを確率pで選択する。選択されたレコードがレコードaであるとする。ダミーデータ生成加工部208は、このレコードaに対して、レコード値の変換対象である集合Bからランダムにレコードbを選択する(S210)。なお、選択されたレコードは複数あってもよく、その場合には、選択されたレコード数分だけ、変換対象のレコードも選択する。
次に、ダミーデータ生成加工部208は、上記ステップS210で選択したレコードa,レコードbでの各属性の値を取得し、レコードaでの属性の値のセットをレコードbの属性の値のセットに置換する(S211)。
ダミーデータ生成加工部208は、上記ステップS208からステップS211までの処理を繰り返すことにより、ダミーデータの重複レコード数の統計分布を目標の分布に近づけることができる。
ステップS212からS217までの処理は、実施例1におけるダミーデータ生成処理のステップS112からS117と同一である。
以上の処理からなるダミーデータ生成により、元データと匿名加工に関する特徴を残し、かつ、データ需要者はダミーデータから元データを推測するのが困難な匿名加工データを生成することができる。
また、本実施例2では、前記実施例1と異なり、出現頻度を目標に常に近づけることができるため無駄な処理を抑制し、より少ない処理、より短い処理時間でダミーデータの生成処理が可能になる。
前記実施例1や実施例2では、(1)元データに基づくダミーデータの生成、(2)ダミーデータに対する匿名加工操作と、匿名加工操作情報に基づく元データに対する匿名加工操作情報の決定と、(3)元データに対する匿名加工の実行と、(4)匿名加工データの保持はすべてデータ流通基盤20において実施していた。
しかしながら、データ提供者によっては元データを自分の管理する装置内に保管することを要求し、データ流通基盤に保管されることを嫌う可能性がある。そこで、本実施例3では、上記(3)の処理はデータ提供者のデータ提供者情報処理装置10で実施し、上記(1)、(2)及び(4)の処理はデータ流通基盤20で実施する。
以下では、前記実施例1との差分を中心に実施例3を説明する。差分は、元データの登録と加工及び注文の一連の処理のみである。
図18は、本実施例3の元データの登録と加工、注文及び匿名加工データのダウンロードまでの一連の処理を実行するシーケンス図を示す。なお、ステップS1〜10、S12、S13、S15、S16、S18、S19、S22は前記実施例1の図4と同様である。
本実施例3においても、実施例1と同様にデータ流通基盤20がデータ需要者のダミーデータに対する匿名加工操作画面250での匿名加工操作情報を収集し、元データに対する匿名加工操作情報を決定する。
本実施例3では、データ流通基盤20は元データを保持しておらず、決定した加工操作情報をデータ提供者情報処理装置10に送信する。なお、データ流通基盤20はダミーデータ生成後に元データを破棄しておけばよい。
データ提供者情報処理装置10では、元データを保持しており、データ流通基盤20から受信した匿名加工操作情報(S51、S54、S57)に基づいて、元データに対して匿名加工を実行する(S52、S55、S58)。換言すれば、データ流通基盤20は、元データに対する匿名加工操作を決定して匿名加工操作情報をデータ提供者情報処理装置10に指示することで、元データに対する匿名加工を実行させる。
その後、データ提供者情報処理装置10では、匿名加工を実施した後の加工中データの匿名化指標を算出し、算出した匿名化指標の値をデータ流通基盤20に送信する(S53、S56、S59)。
データ流通基盤20では、受信した匿名化指標に基づいてダミーデータに対する匿名加工操作画面250の表示を更新する(S12、S15、S18)。これらの処理は、データ需要者がデータ需要者情報処理装置30で操作を行うたびに実行される(S10、S13、S16)。
データ流通基盤20がデータ需要者情報処理装置30から注文依頼を受け付けると、データ流通基盤20では匿名加工のレポートを生成し、データ提供者情報処理装置10に送信する(S60)。
また、データ提供者情報処理装置10では、匿名加工レポートの受信後に、装置内に蓄積してある加工中データから匿名加工データを生成して(S61)データ流通基盤20にアップロードする(S62)。
その後、データ流通基盤20は、アップロードされた匿名加工データを匿名加工データDB243に格納し、データ需要者情報処理装置30にアクセス権を付与する。その後、データ需要者が匿名加工データを閲覧したり、ダウンロードすることが可能となる(S22)。
以上の実施例3によれば、元データをデータ提供者情報処理装置10に格納した状態でも、実施例1と同様に匿名加工データを生成し、データ需要者が閲覧及びダウンロードすることが可能である。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に記載したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、又は置換のいずれもが、単独で、又は組み合わせても適用可能である。
また、上記の各構成、機能、処理部、及び処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、及び機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
10 データ提供者情報処理装置
20 データ流通基盤
30 データ需要者情報処理装置
40 データ提供者業務システム
50 データ需要者業務システム
11、21、31 主記憶装置
12、22、32 中央演算装置
13、23、33 出力装置
14、24、34 入力装置
15、25、35 蓄積部
16、26、36 バス
17、18、27、37、38 ネットワークインタフェース部
207 データ匿名加工部
208 ダミーデータ生成加工部

Claims (12)

  1. プロセッサとメモリとストレージを備えたデータ流通基盤装置が、元データに匿名加工を実施した匿名加工データを提供するデータ流通方法であって、
    前記データ流通基盤装置が、前記元データをデータ提供者側装置から受け付ける第1のステップと、
    前記データ流通基盤装置が、前記元データの特徴量に基づいてダミーデータを生成する第2のステップと、
    前記データ流通基盤装置が、データ利用者側装置から前記ダミーデータに対する匿名加工の操作を受け付ける第3のステップと、
    前記データ流通基盤装置が、前記ダミーデータに対する匿名加工の操作に関する情報を匿名加工操作情報として取得し、当該匿名加工操作情報に基づいて前記元データに対する匿名加工処理を決定する第4のステップと、
    前記データ流通基盤装置が、前記決定された匿名加工処理を前記元データに適用して匿名加工データを生成する第5のステップと、
    を含み、
    前記第2のステップは、
    前記元データの値が重複する重複レコード数毎の統計分布を特徴量として、前記ダミーデータの重複レコード数毎の統計分布を用い、前記統計分布の目標とする目標統計分布を決定するステップと、
    所定の確率に従って前記元データから選択したレコードに対して、当該レコードの各項目の値をランダムに選択した他のレコードの値に置換した中間データを生成するステップと、
    前記中間データが、前記目標統計分布を満たした場合には、当該中間データをダミーデータとして生成するステップと、
    を含むことを特徴とするデータ流通方法。
  2. 請求項1に記載のデータ流通方法であって、
    前記データ流通基盤装置が、生成された前記匿名加工データをデータ利用者側装置に提供する第6のステップをさらに含み、
    前記元データは、個人情報を含むことを特徴とするデータ流通方法。
  3. 請求項2に記載のデータ流通方法であって、
    前記第2のステップは、
    前記個人情報の属性を表す項目の値を所定の識別子に置換した加工用元データを生成するステップを、さらに有し、
    前記中間データを生成するステップは、
    前記所定の確率に従って前記加工用元データから選択されたレコードに対して、当該レコードの各項目の値をランダムに選択した他のレコードの値に置換することを特徴とするデータ流通方法。
  4. 請求項1に記載のデータ流通方法であって、
    前記第4のステップは、
    前記元データの加工を実行した後に匿名加工に関する指標を算出するステップを含み、
    前記第3のステップは、
    前回の元データの加工で算出した前記指標と、前記ダミーデータの加工操作を実施するための操作メニューとを前記データ利用者側装置へ出力するステップを含むことを特徴とするデータ流通方法。
  5. 請求項1に記載のデータ流通方法であって、
    前記第2のステップは、
    前記ダミーデータのレコードと、前記元データのレコードの対応を管理するレコード対応情報を生成し、
    前記第4のステップは、
    前記レコード対応情報と、前記匿名加工操作情報に基づいて前記元データに対する匿名加工処理を決定することを特徴とするデータ流通方法。
  6. 請求項1に記載のデータ流通方法であって、
    前記第2のステップは、
    前記中間データの統計分布と目標統計分布の差を算出し、前記中間データの出現頻度の方が大きい重複レコード数N1と、前記中間データの出現頻度の方が小さい重複レコード数N2を特定するステップと、
    前記重複レコード数N1に属するレコードの集合Aと、前記重複レコード数N2に属するレコードの集合Bに分類するステップと、
    前記集合Aに属するレコードから前記確率に従って選択するレコードに対し、当該レコードの各項目の値を前記集合Bに属するレコードからランダムに選択したレコードの値に置換するステップと、を含むことを特徴とするデータ流通方法。
  7. プロセッサとメモリとストレージを備えたデータ流通基盤装置、元データに匿名加工を実施した匿名加工データを生成するデータ提供者側装置と、を有し、前記データ提供者側装置が前記匿名加工データを前記データ流通基盤装置に出力し、前記データ流通基盤装置が匿名加工データを提供するデータ流通方法であって、
    前記データ流通基盤装置が、データ提供者側装置が保持する前記元データの特徴量に基づいてダミーデータを生成する第1のステップと、
    前記データ流通基盤装置が、データ利用者側装置から前記ダミーデータに対する匿名加工の操作を受け付ける第2のステップと、
    前記データ流通基盤装置が、前記ダミーデータに対する匿名加工の操作に関する情報を匿名加工操作情報として取得し、当該匿名加工操作情報に基づいて元データに対する匿名加工処理を決定する第3のステップと、
    前記データ流通基盤装置が、前記匿名加工処理をデータ提供者側装置に通知する第4のステップと、
    前記データ提供者側装置が、前記通知された匿名加工処理を前記元データに適用して匿名加工データを生成する第5のステップと、
    を含み、
    前記第1のステップは、
    前記元データの値が重複する重複レコード数毎の統計分布を特徴量として、前記ダミーデータの重複レコード数毎の統計分布を用い、前記統計分布の目標とする目標統計分布を決定するステップと、
    所定の確率に従って前記元データから選択したレコードに対して、当該レコードの各項目の値をランダムに選択した他のレコードの値に置換した中間データを生成するステップと、
    前記中間データが、前記目標統計分布を満たした場合には、当該中間データをダミーデータとして生成するステップと、
    を含むことを特徴とするデータ流通方法。
  8. 請求項7に記載のデータ流通方法であって、
    前記データ流通基盤装置が、前記データ提供者側装置で生成された前記匿名加工データをデータ利用者側装置に提供する第6のステップをさらに含み、
    前記元データは、個人情報を含むことを特徴とするデータ流通方法。
  9. 請求項8に記載のデータ流通方法であって、
    前記第1のステップは、
    前記個人情報の属性を表す項目の値を所定の識別子に置換した加工用元データを生成するステップを、さらに有し、
    前記中間データを生成するステップは、
    前記所定の確率に従って前記加工用元データから選択されたレコードに対して、当該レコードの各項目の値をランダムに選択した他のレコードの値に置換することを特徴とするデータ流通方法。
  10. プロセッサとメモリとストレージを備えたデータ流通基盤装置であって、
    元データを受け付けて、当該元データの特徴量に基づいてダミーデータを生成するダミーデータ生成部と、
    前記ダミーデータに対する匿名加工の操作を受け付けて、前記ダミーデータに対する匿名加工の操作に関する情報を匿名加工操作情報として取得し、当該匿名加工操作情報に基づいて元データに対する匿名加工処理を決定し、前記匿名加工処理を前記元データに適用して匿名加工データを生成するデータ匿名加工部と、を有し、
    前記ダミーデータ生成部は、
    前記元データの値が重複する重複レコード数毎の統計分布を特徴量として、前記ダミーデータの重複レコード数毎の統計分布を用い、前記統計分布の目標とする目標統計分布を決定し、所定の確率に従って前記元データから選択したレコードに対して、当該レコードの各項目の値をランダムに選択した他のレコードの値に置換した中間データを生成し、前記中間データが、前記目標統計分布を満たした場合には、当該中間データをダミーデータとして生成することを特徴とするデータ流通基盤装置。
  11. 請求項10に記載のデータ流通基盤装置であって、
    前記データ匿名加工部が、
    前記匿名加工データを送信し、
    前記元データは、個人情報を含むことを特徴とするデータ流通基盤装置。
  12. 請求項11に記載のデータ流通基盤装置であって、
    前記ダミーデータ生成部は、
    前記個人情報の属性を表す項目の値を所定の識別子に置換した加工用元データを生成し、前記所定の確率に従って前記加工用元データから選択されたレコードに対して、当該レコードの各項目の値をランダムに選択した他のレコードの値に置換することを特徴とするデータ流通基盤装置。
JP2017166898A 2017-08-31 2017-08-31 データ流通方法及びデータ流通基盤装置 Active JP6817169B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017166898A JP6817169B2 (ja) 2017-08-31 2017-08-31 データ流通方法及びデータ流通基盤装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017166898A JP6817169B2 (ja) 2017-08-31 2017-08-31 データ流通方法及びデータ流通基盤装置

Publications (2)

Publication Number Publication Date
JP2019046036A JP2019046036A (ja) 2019-03-22
JP6817169B2 true JP6817169B2 (ja) 2021-01-20

Family

ID=65814651

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017166898A Active JP6817169B2 (ja) 2017-08-31 2017-08-31 データ流通方法及びデータ流通基盤装置

Country Status (1)

Country Link
JP (1) JP6817169B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021157343A (ja) 2020-03-25 2021-10-07 京セラドキュメントソリューションズ株式会社 データ連携システムおよび匿名化制御システム
JP2022020143A (ja) 2020-07-20 2022-02-01 富士通株式会社 通信プログラム、通信装置、及び通信方法
JP7445135B2 (ja) 2020-08-27 2024-03-07 富士通株式会社 通信プログラム、通信装置、通信方法、及び通信システム
KR102374522B1 (ko) * 2021-09-13 2022-03-15 (주)프레스토테크놀로지 거래 위험 관리를 지원하는 거래소 운영 방법 및 시스템
KR102627734B1 (ko) * 2022-01-04 2024-01-23 비씨카드(주) 익명 값에 대한 예측 값을 결정하는 방법 및 디바이스

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5747012B2 (ja) * 2012-10-26 2015-07-08 株式会社東芝 匿名化データ変更システム
JP6263620B2 (ja) * 2014-07-04 2018-01-17 株式会社日立製作所 匿名化データ提供装置及び方法

Also Published As

Publication number Publication date
JP2019046036A (ja) 2019-03-22

Similar Documents

Publication Publication Date Title
JP6817169B2 (ja) データ流通方法及びデータ流通基盤装置
US11886398B2 (en) Data supply chain
JP7004463B2 (ja) 分散型の識別解除ブリッジングネットワークプラットフォーム
WO2019232509A1 (en) User control of anonymized profiling data using public and private blockchains in an electronic ad marketplace
JP7157798B6 (ja) ブロックチェーンネットワークを介してデータを通信し、格納し、及び処理するためのブロックチェーンベースのシステム及び方法
JP7290359B2 (ja) 個人情報管理装置、個人情報管理システム、その個人情報の管理方法及びこれを記録したコンピューター判読可能記録媒体
JP2003108846A (ja) 販売促進方法及び販売促進装置
JP6471699B2 (ja) 情報判定装置、情報判定方法及びプログラム
JP2017228040A (ja) 加盟店舗情報提供方法
JP2004295719A (ja) デジタルコンテンツ販売におけるライセンスおよび特典管理方法
JP2015141642A (ja) 利用同意管理装置
JP2002324194A (ja) アクセス権管理方法
JP5086936B2 (ja) ポイント管理装置、ポイント管理方法及びポイント管理プログラム
JP6995667B2 (ja) 情報管理システム、情報管理方法及び情報管理装置
JP6108432B2 (ja) 匿名化データの粒度管理装置および粒度管理方法
WO2023007867A1 (ja) チケット管理システム、プログラム、および方法
US20230205743A1 (en) Security control framework for an enterprise data management platform
JP7460365B2 (ja) 情報提供サーバ、プログラム、および情報提供方法
JP6592213B1 (ja) 仲介装置及びコンピュータプログラム
US20200027117A1 (en) Real-Time Trusted Blockchain Attribution Platform
US11222026B1 (en) Platform for staging transactions
KR100596411B1 (ko) 개인간 지식정보 전송 중개 방법 및 시스템
JP2004118584A (ja) ライセンス管理サーバ、方法及びプログラム
JP2021174166A (ja) ウォレットサーバ、ウォレットプログラム、ウォレットシステムおよび報奨提供方法
US20230205742A1 (en) Data quality control in an enterprise data management platform

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201027

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201030

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201113

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201224

R150 Certificate of patent or registration of utility model

Ref document number: 6817169

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150