【文献】
小栗 秀暢 ほか,データの安全性と事業性の評価を行うプラットフォームの提案,電子情報通信学会技術研究報告,日本,一般社団法人電子情報通信学会,2012年11月15日,Vol.112 No.313,p.17−20
【文献】
佐藤 嘉則、外1名,識別リスクを保証する個人情報匿名化システムの検討,マルチメディア,分散,協調とモバイル(DICOMO2007)シンポジウム論文集 情報処理学会シンポジ,日本,社団法人情報処理学会,2009年 4月 7日,第2007巻,第1号,p.1182−1189
【文献】
浜本 一知 Kazutomo HAMAMOTO,ユーザ背景情報及びコミュニティ状況を考慮した匿名度制御によるプライバシ保護エージェントの提案 A Proposal for Privacy Preserving Agent by Anonymization Based on User Background Information and Community Status,電子情報通信学会論文誌 (J94−D) 第11号 THE IEICE TRANSACTIONS ON INFORMATION AND SYSTEMS (JAPANESE EDITION),日本,社団法人電子情報通信学会 THE INSTITUTE OF ELECTRONICS,INFORMATION AND COMMUNICATION ENGINEERS,2011年11月 1日,第J94-D巻,pp.1812-1824
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0035】
以下、図面を参照して本発明を実施するための形態について説明する。以下の実施の形態の構成は例示であり、本発明は実施の形態の構成に限定されない。
【0036】
〈実施形態1〉
§1.匿名化
図1はk−匿名化の説明図であり、
図1(A)は、姓、年齢、性別の項目を含む会員情
報から姓の項目を削除した例を示す。
【0037】
図1(A)に示すように年齢が記載されている会員情報に16歳の女性が一人だけであると、16歳の女性が、この会員であることが分かった時点で、その人を特定できる。即ち、16歳・女性という属性を持つ人が一人だけであると、他の情報と照らし合わせることで、個人を特定できる可能性がある。
【0038】
図1(B)では、会員リストの年齢の記載を抽象化し、0代(10歳未満)、10代、20代のように年代別とした。しかし、この場合でも10代女性は一人だけであり、
図1(A)と同様に個人が特定できてしまい匿名化としては不十分である。
【0039】
そこで、
図1(C)では、更に抽象化し、10代以下(19歳以下)と20代のように年代の区切りを変更した。
図1(C)の場合、10代以下の女性が2人であり、[10代以下]及び[女性]という属性が単一では無くなる。このため前述のように16歳の女性が、この会員であることが分かったとしても、どちらが当該16歳女性のデータであるかは特定できない。このように同じ属性を持つ人がk人(本例では2人)以上いる状態を、「k-匿名性」を満たすと称し、そのようにデータを加工することを「k-匿名化」と称する。
【0040】
図2は、l−多様化の説明図であり、ユーザ毎の利用駅のデータを抽象化し、ユーザ毎の利用駅が属する区のデータとした例を示す。
【0041】
抽象化前のデータでは、駅が特定されているために、住居が新宿駅付近で勤務地が東京駅付近といったデータと照らし合わせることでユーザを特定できる可能性がある。このため利用駅を抽象化して、利用駅が属する区とすることで、新宿区内の駅と千代田区内の駅を利用するユーザが複数となり、利用者が特定されなくなる。このように「新宿区内の駅と千代田区内の駅を利用する」のように属性値がl種類の可能性を持つ状態を、「l-多
様性」を満たすと称し、そのようにデータを加工することを「l-多様化」と称する。
【0042】
本実施形態1の匿名化システム100は、この「k-匿名性」や「l-多様性」を満たす
ように対象データを抽象化する、即ちデータの項目の値の組み合わせが、対象データの一個人に限定されないように抽象化することにより匿名化を行う。
【0043】
§2.システム構成
図3は、匿名化システムの機能ブロック図である。本実施形態1の匿名化システム100は、個人情報の匿名化を行う匿名化装置10や、匿名化装置10で匿名化された匿名情報を記憶する匿名情報DB145、ユーザ端末30からのアクセス要求を受信し、各ユーザのアクセス権限に応じて匿名情報を提供する管理サーバ20を有する。
【0044】
図3に示すように匿名化装置10は、データ取得部101や、抽象化部102、検定部103、選択部104、価値判定部106、価値データ取得部107、ワードカテゴリ分析部108、ワード価値計算部109、出現数取得部111、権限決定部112、個人情報データベース(DB)131、公開条件DB132、検索情報蓄積DB133、一時処理DB134、権限設定DB(権限記憶部)135を備えている。
【0045】
データ取得部101は、個人と対応付けられた複数の項目を含むデータ、即ち個人情報を匿名化の対象データとして取得する。例えば、データ取得部101は、ネットワークを介して他のコンピュータからデータを受信する、又はネットワークを介してデータベースから対象データを読み出す。また、データ取得部101は、イベント会場の来場者が記載
したアンケートや来場者から聞き取った個人情報をキーボード等から入力して個人情報DB131に記憶しておき、この個人情報を個人情報DB131からデータ取得部101が対象データとして読み出す。また、来場者の名刺やアンケートに記載された事項を読み取り、OCR(Optical Character Recognition)により電子データとしても良いし、来場
者のRF−IDタグやICチップ等から当該来場者の情報を取得しても良い。なお、データ取得部101は、匿名化の対象データだけでなく、事業者側で匿名化した匿名情報を取得しても良い。即ち、データ取得部101は、匿名情報取得部として機能しても良い。
【0046】
抽象化部102は、前記次元からなる統合匿名化辞書を参照し、前記対象データ中の項目の値である語を前記優先度に基づいて抽象化した語に替えて匿名化候補データを生成する。
【0047】
検定部103は、前記抽象化候補データの項目の値の組み合わせが、前記対象データの一個人に限定されないことを条件として検定する。例えば、検定部103は、抽象化候補データの項目の値の組み合わせが、k−匿名性を満たすこと、或いはl−多様性を満たすことを条件として検定する。
【0048】
選択部104は、検定の条件を満たした抽象化候補データの価値に基づいて抽象化候補データを選択する。例えば、選択部104は、k−匿名性やl−多様性を満たした抽象化候補データを価値が高い順に所定数選択する。また、選択部104は、k−匿名性やl−多様性を満たした抽象化候補データのうち、最も価値が高い抽象化候補データを選択しても良い。
【0049】
価値判定部106は、抽象化候補データに含まれるワードの価値に基づいて当該抽象化候補データの価値を求める。
【0050】
価値データ取得部107は、抽象化候補データに含まれるワードの価値データを検索情報蓄積DBから取得(受信)する。また、価値データ取得部107は、検索情報蓄積DBに前記ワードの価値データが登録されていない場合に、他の装置にリクエストし、取得した価値データを検索情報蓄積DBに登録する機能(データリクエスト)や、定期的に他の装置を巡回して最新の価値データを取得し、検索情報蓄積DBに登録されている価値データを更新する機能(データクローラ)を有する。本実施形態では、この価値データとして検索エンジン90から各ワードの統計情報を受信する。ここで、各ワードの統計情報は、例えばSEMの広告単価(クリック単価)や、クリック率、平均掲載順位、1日の表示回数、1日のクリック数等である。なお、価値の取得先は、検索エンジンに限らず、ウェブページやSNS等であっても良い。この場合、例えばウェブページやSNSにおける各ワードの使用頻度を価値としても良い。
【0051】
ワードカテゴリ分析部108は、ウェブサイト等のデータを分析して、新規のワードや、当該ワードを抽象化したワード(カテゴリ)を求め、検索情報蓄積DBに登録する。
【0052】
価値計算部109は、価値データ取得部107で取得したワードの価値に基づき、ワードの価値の年平均や月平均、週平均など、ワードの価値の統計情報を求める。
【0053】
出現数取得部111は、前記匿名情報を構成する語の出現数を求める。例えば、匿名情報において、一個人の情報を一つのデータ(1レコード)とし、同じ情報(語)が幾つ出現したかを出現数としてカウントする。なお、各個人の情報が、単一の項目からなる場合には、当該項目の値である語が同じもの毎に出現数をカウントし、複数の項目からなる場合には、当該複数の項目の値である語の組み合わせが同じもの毎に出現数をカウントする。
【0054】
また、出現数取得部111は、前記匿名情報を構成する語の出現数のうち最少の出現数を最少出現数とし、前記匿名情報を構成する語の全数に対する前記最少出現数の割合を最少出現率として求める出現率取得部として機能しても良い。
【0055】
権限決定部112は、前記匿名情報の出現数又はこの出現数に基づいて算出した最少出現率等の値に基づいて当該匿名情報のアクセス権限を決定し、匿名情報に付加して匿名情報DB145に記憶させる。権限決定部112は、例えば、匿名情報の出現数又は前記出現数に基づいて算出した出現率等の値と前記アクセス権限とを対応付けて記憶した権限記憶部を参照して、前記権限決定部が前記匿名情報の出現数に基づく前記アクセス権限を決定する。
【0056】
図4は、個人情報DB131の一例を示す図である。個人情報DB131は、データ取得部101が他のコンピュータから受信した個人情報やキーボード等の匿名化前の個人情報を記憶している。
図4の個人情報は、例えば、個人ID、年齢、住所、車名等を記憶している。
【0057】
個人IDは、会員番号やシリアル番号等の個人を識別するための識別情報であり、氏名や電話番号、メールアドレスであっても良い。
【0058】
車名は、当該個人の車を識別する情報であり、名称、通称、愛称等である。なお、本願において車名は、年式や型番等の識別情報を含んでも良い。
【0059】
公開条件DB132は、公開可能な匿名情報の条件を記憶し、例えば「最少出現数が30以上の場合に公開可、但し外部公開不可」「キーワード=○○○が含まれている場合、△月□日以降公開可」のように、公開可能な最少出現数や、社外への公開の可否、公開不可とするキーワードを公開条件として記憶している。なお、公開条件は、「辞書ID=D1を用いた場合、最少出現数が5以上の場合に内部公開可、それ以下の場合は公開不可と
し、また、最少出現数が10以上の場合に外部公開可、それ以下の場合は外部公開不可とする」といったように、匿名化に用いた辞書に応じて公開の可否を定める条件であっても良い。
【0060】
また、匿名情報DB145は、匿名化装置10で匿名化した匿名情報を記憶している。匿名情報DB145は、匿名化前の個人情報が異なる匿名情報や匿名化に用いる辞書が異なる匿名情報等、複数の匿名情報を記憶すると共に、これらの匿名情報へのアクセスを管理するための情報を記憶する。
【0061】
図5は、匿名情報DB145に記憶される匿名情報の一例を示す図である。匿名情報は、個人情報の各語を抽象化したものであり、
図5の例では、年代、住所(都道府県名)、車種、最少出現数を対応付けて記憶している。
【0062】
図6は、匿名情報へのアクセスを管理するための情報(以下アクセス管理情報とも称す)の一例を示す図である。このアクセス管理情報は、
図6に示すように、例えば、レベル、匿名情報ID、使用辞書、最少出現率、情報種別、概要等を含んでいる。ここで、レベルは、当該匿名情報にアクセス可能な権限を示す情報であり、後述のように当該匿名情報の最少出現数や最少出現数に基づいて算出した最少出現率等の値に基づいて求めている。
【0063】
匿名情報IDは、匿名情報を一意に識別する情報である。使用辞書は、当該匿名情報の匿名化に用いた辞書を示す情報であり、例えば各辞書の識別情報である。最少出現率は、当該匿名情報を構成する語の全数に対する最少出現数の割合である。ここで最少出現数は
、当該匿名情報において同じ属性値を持つ個人の人数、即ち匿名情報を構成する語の出現数のうち最少のものである。
【0064】
情報種別は、当該匿名情報が複数の個人情報に基づく統計情報であるか、特定の事業者が持つ個人情報を匿名化したものか等の種別を示す。
図6の例では、匿名情報が、複数の匿名情報の平均や合計を求めた統計情報の場合に、この種別を平均又は合計と示し、特定の事業者の個人情報を匿名化したものの場合、この事業者の名称を示している。概要は、当該匿名情報の説明であり、例えば匿名情報に含まれる項目や匿名化の条件を示す。
【0065】
なお、匿名情報DB145は、匿名化装置10又は管理サーバ20が備えた記憶装置に格納されたものでも良いし、匿名化装置10及び管理サーバ20からアクセス可能であれば独立したファイルサーバ等の装置に格納されたものでも良い。
【0066】
また、管理サーバ20は、
図3に示すように、要求受付部201や、アクセス制御部202、出力制御部203、ユーザ管理DB251を備えている。
【0067】
要求受付部201は、匿名情報を取得するためのアクセス要求を利用者の端末から受信する。
【0068】
アクセス制御部202は、利用者からのアクセス要求を受信した場合に、当該利用者の権限レベルと対応する匿名レベルの匿名情報へのアクセスを許可する。
【0069】
出力制御部203は、アクセス制御部202によってアクセスを許可した匿名情報を匿名情報DB145から読み出して出力する。例えば要求元の利用者の端末30へ送信する。ここで、匿名情報の出力とは、表示装置による表示出力や、プリンタによる印刷出力、他のコンピュータへの送信、記憶媒体への書き込み等であっても良い。
【0070】
図7は匿名化装置10のハードウェア構成を示す図である。匿名化装置10は、CPU11、メモリ12、通信制御部13、記憶装置14、入出力インタフェース15を有する所謂コンピュータである。
【0071】
CPU11は、メモリ12に実行可能に展開されたプログラムを実行し、前述のデータ取得部101や、抽象化部102、検定部103、選択部104、価値判定部106、価値データ取得部107、ワードカテゴリ分析部108、ワード価値計算部109、出現数取得部111、権限決定部112の機能を提供する。
【0072】
メモリ12は、主記憶装置ということもできる。メモリ12は、例えば、CPU11が実行するプログラムや、通信制御部13を介して受信したデータ、記憶装置14から読み出したデータ、その他のデータ等を記憶する。
【0073】
通信制御部13は、ネットワークを介して他の装置と接続し、当該装置との通信を制御する。入出力インタフェース15は、表示装置やプリンタ等の出力手段や、キーボードやポインティングデバイス等の入力手段、ドライブ装置等の入出力手段が適宜接続される。ドライブ装置は、着脱可能な記憶媒体の読み書き装置であり、例えば、フラッシュメモリカードの入出力装置、USBメモリを接続するUSBのアダプタ等である。また、着脱可能な記憶媒体は、例えば、CD(Compact Disc)、DVD(Digital Versatile Disk)、ブルーレイディスク(Blu-ray(登録商標) Disc)等のディスク媒体であってもよい。ドライブ装置は、着脱可能な記憶媒体からプログラムを読み出し、記憶装置14に格納する。
【0074】
記憶装置14は、外部記憶装置ということもできる。記憶装置14としては、SSD(Solid State Drive)やHDD等であってもよい。記憶装置14は、ドライブ装置との間
で、データを授受する。例えば、記憶装置14は、ドライブ装置からインストールされるプログラム等を記憶する。また、記憶装置14は、プログラムを読み出し、メモリ12に引き渡す。本実施形態では、記憶装置14が前述の、個人情報DB131及び公開条件DB132を格納している。
【0075】
図8は管理サーバ20のハードウェア構成を示す図である。管理サーバ20は、CPU21、メモリ22、通信制御部23、記憶装置24、入出力インタフェース25を有する所謂コンピュータである。
【0076】
CPU21は、メモリ22に実行可能に展開されたプログラムを実行し、前述の要求受付部201や、アクセス制御部202、出力制御部203の機能を提供する。
【0077】
メモリ22は、主記憶装置ということもできる。メモリ22は、例えば、CPU21が実行するプログラムや、通信制御部23を介して受信したデータ、記憶装置24から読み出したデータ、その他のデータ等を記憶する。
【0078】
通信制御部23は、ネットワークを介して他の装置と接続し、当該装置との通信を制御する。入出力インタフェース25は、表示装置やプリンタ等の出力手段や、キーボードやポインティングデバイス等の入力手段、ドライブ装置等の入出力手段が適宜接続される。ドライブ装置は、着脱可能な記憶媒体の読み書き装置であり、例えば、フラッシュメモリカードの入出力装置、USBメモリを接続するUSBのアダプタ等である。また、着脱可能な記憶媒体は、例えば、CD(Compact Disc)、DVD(Digital Versatile Disk)、ブルーレイディスク(Blu-ray Disc)等のディスク媒体であってもよい。ドライブ装置は、着脱可能な記憶媒体からプログラムを読み出し、記憶装置24に格納する。
【0079】
記憶装置24は、外部記憶装置ということもできる。記憶装置24としては、SSD(Solid State Drive)やHDD等であってもよい。記憶装置24は、ドライブ装置との間
で、データを授受する。例えば、記憶装置24は、ドライブ装置からインストールされる情報処理プログラム等を記憶する。また、記憶装置24は、プログラムを読み出し、メモリ22に引き渡す。本実施形態では、記憶装置24が前述のユーザ管理DB251を格納している。
【0080】
図9は、ユーザ管理DB251が記憶するユーザ管理情報の一例を示す図である。
図9に示すように、ユーザ管理DB251は、各ユーザの識別情報(ユーザID)と、権限情報と、使用可能辞書の情報を対応つけてユーザ管理情報としている。
【0081】
§3.匿名化方法
次に本実施形態の匿名化方法について説明する。
図10は、匿名化装置10がプログラムに従って実行する匿名化方法の概略を示した説明図である。
図10に示すように、匿名化装置10は、先ず匿名化情報を取得し(ステップS1)、この匿名情報が公開条件を満たしているか否かを判定し(ステップS2)、公開条件を満たした匿名情報にアクセス権限を設定する(ステップS3)。
【0082】
なお、ステップS1における匿名化情報の取得は、個人情報を有する事業者が匿名化した匿名情報をそれぞれの事業者から匿名化装置10が受信するものでも良いし、それぞれの事業者から匿名化装置10が個人情報を受信し、匿名化して取得するものでも良い。
【0083】
図11は、匿名化の処理を示す図である。匿名化装置10は、匿名化の処理を行う場合
、
図11に示すように、先ず他のコンピュータ或いは入力手段から個人情報を取得(受信)し(ステップS10)、この個人情報を所定形式となるよう正規化して個人情報DB131に登録する(ステップS20)。
【0084】
匿名化装置10は、個人情報を個人情報DB131から対象データとして読み出す(ステップS30)。ここで、匿名化装置10は、個人情報に個人IDや氏名、電話番号、メールアドレスのように、個人を識別するための情報で、抽象化したのでは意味の無いデータは、読み出さずに対象データから外しても良い。
次に匿名化装置10は、対象データ中の各ワードについて、価値データが検索情報蓄積DB133に存在するか否か、即ち既に価値データを取得済みか否かを判定する(ステップS40)。匿名化装置10は、全てのワードの価値データが検索情報蓄積DB133に存在する場合にはステップS60へ移行し(ステップS40,Yes)、足りない価値データがある場合(ステップS40,No)、当該ワードの価値データを外部の装置、本例では検索エンジン90から取得する(ステップS50)。なお、検索エンジンから取得した価値データ以外、即ち検索情報蓄積DB133に存在したワードの価値情報は、検索情報蓄積DB133から取得する(ステップS60)。
【0085】
また、匿名化装置10は、匿名性を満たすため対象データの各項目を抽象化したワード(カテゴリ)に置き換えることで抽象化し、抽象化候補データを作成する(ステップS70)。各ワードの抽象化は、
図12〜
図14に示すように抽象化前のワードと抽象化後のワードとを対応付けて記憶した辞書を用いて、抽象化前のワードと対応する抽象化後のワードにおきかえる。
図12は、車名と対応するメーカ名に抽象化する辞書の例を示している。
図13は、車名と対応する車種に抽象化する辞書の例を示している。
図14は、車名と対応する車両の区分に抽象化する辞書の例を示している。
図12〜
図14では、車名の項目についてのみ示したが、年齢や住所等、他の項目についても同様に対応するワードが各辞書に含まれている。各辞書は、システム100側で一意に識別できるように、辞書IDが付されており、例えば
図12〜
図14の辞書の辞書IDはD1〜D3である。
【0086】
また、抽象化可能な項目が複数存在する場合には、各項目を抽象化した場合と抽象化しない場合の全てのパターンを作成する。例えば対象データに三つの項目A,B,Cが含まれ、全項目について抽象化が可能で、抽象化した項目をA´,B´,C´とした場合、
図15に示すように、項目Aだけを抽象化した場合A´,B,C、項目A,Bを抽象化した場合A´,B´,Cなど、七つの候補パターンが作成できる。また、全項目を用いるものに限らず、A´,BやB´,Cなど、一部の項目を用いた候補パターンを作成しても良い。
【0087】
次に匿名化装置10は、抽象化候補データに含まれる各ワードの価値データに基づいて各パターンの抽象化候補データの価値を算出し(ステップS80)、この抽象化候補データの価値に基づいて検定の順番を決定する(ステップS90)。例えばこの価値が高い順(降順)に検定の順番を決定する。なお、全ての候補パターンについて検定を行うことが望ましいが、この抽象化候補データの価値に基づき、価値の低過ぎる抽象化候補データを順番から外しても良い。例えば、価値の高い順番で、所定番目以降或いは半分未満など所定割合未満の抽象化候補データを外しても良い。また、抽象化候補データの価値が対象データの価値に対して所定割合未満となった抽象化候補データを外しても良い。これにより検定数が少なくなり、処理時間の短縮化が図れる。
【0088】
この検定の順番に従い、匿名化装置10は、抽象化候補データの匿名性を検定する(ステップS100)。例えば、k−匿名性を検定するため、一個人と対応付けられた異なる項目の値の組み合わせが当該抽象化候補データ中に存在する数(存在数)を求める。或いは、l多様性を検定するため、一個人と対応付けられた同じ項目の値の組み合わせが当該
抽象化候補データ中に存在する数(存在数)を求める。そして、この存在数のうち最小のものを最低出現数(k値/l値)として求め(ステップS110)、この最低出現数が1を超えているか否かを判定する(ステップS120)。即ち、ここでk値が1を超えていればk−匿名性を満たし、1であればk−匿名性を満たさない。同様にl値が1を超えていればl−多様性を満たし、1であればl−多様性を満たさない。
【0089】
最低出現数(k値/l値)が1を超えていない場合(ステップS120,No)、匿名化装置10は、抽象化候補データのうち、少なくとも一つの項目の値を更に抽象化する、即ち抽象化したワードに置き換え(ステップS130)、ステップS100に戻る。
【0090】
一方、最低出現数(k値/l値)が1を超えている場合(ステップS120,Yes)、匿名化装置10は、当該抽象化候補データの価値と元の対象データの価値との差分を求め(ステップS140)、この差分や、この差分に基づく値、例えば対象データの価値に対する差分の割合、対象データの価値に対する抽象化候補データの価値の割合を当該抽象化候補データの価値として決定する(ステップS150)。
【0091】
また、匿名化装置10は、検定していない候補パターンがあるか否かを判定し(ステップS160)、検定していない候補パターンがあれば(ステップS160,Yes)、ステップS90で決定した順番に従って、次の順番の抽象化候補データを特定し(ステップS170)、ステップS100に戻って次の抽象化候補データについて検定を行う。
【0092】
このように各パターンの抽象化候補データについて検定を繰り返し、次の候補パターンが無くなった場合(ステップS160,No)、匿名化装置10は、ステップS150で求各抽象化候補データの価値に基づいて、採用すべき抽象化候補データを選択し(ステップS180)、匿名情報として匿名情報DB145に記憶する(ステップS190)。
【0093】
抽象化候補データの選択は、例えば、全候補パターンの中で価値の高い順に所定数の抽象化候補データを選択する。また、匿名化装置10は、全候補パターンの中から価値の高い順に複数の抽象化候補データを出力し、この出力された抽象化候補データの中から操作者が適切だと思う抽象化候補データを指定し、この指定された抽象化候補データを選択しても良い。
次に
図16−
図23を用いて本実施形態におけるデータの価値について説明する。
図16は対象データにおける年齢の項目の一部の例を示す図である。
図16に示すように対象データは、年齢si毎に人数ciを有している。例えば、18歳(s1)の人数(c1)が30人、19歳(s2)の人数(c2)が10人である。
【0094】
図17は、年齢siについて取得する価値データの一例を示す。
図17の価値データは、年齢si毎にSEM単価eiを有している。
【0095】
この年齢siの価値は、SEM単価eiに人数ciを乗じた値であり、式1で示される。
【0096】
si=ci×ei ・・・(式1)
そして、
図18に示すように年齢の項目S(e)の価値は、各年齢siの総計であり、式2で示される。なお、
図18においてnは5である。従って、年齢の項目S(e)の価値は、
図19に示すように、2446円である。また、対象データにおける全ての項目の価値を合計したものが対象データの価値である。
【0097】
一方、
図20は抽象化候補データにおける年齢の項目の一部の例を示す図である。
図20に示すように抽象化候補データは、年代ki毎に人数ciを有している。例えば、10
代(k1)の人数(c1)が40人、20代(k2)の人数(c2)が22人である。
【0098】
図21は、年代kiについて取得する各ワードの価値データの一例を示す。
図21の価値データは、年代ki毎にSEM単価eiを有している。
【0099】
この年代kiの価値は、SEM単価eiに人数ciを乗じた値であり、式3で示される。
【0100】
ki=ci×ei ・・・(式3)
そして、
図22に示すように年代の項目S(k)の価値は、各年代kiの総計であり、式4で示される。なお、
図22においてnは2である。従って、年齢の項目S(k)の価値は、
図23に示すように、2134円である。即ち、年齢の項目を年代に抽象化したことにより、価値が312円減損したことになる。また、抽象化候補データにおける全ての項目の価値を合計したものが抽象化候補データの価値である。
【0101】
そして、ステップS150で求める抽象化候補データの価値として、例えば式5に示すように、抽象化候補データの価値を抽象化候補データの価値と対象データの価値の合計で除した減損率M(k)を求める。
【0102】
M(k)=S(k)/(S(k)+S(e)) ・・・(式5)
このように本実施形態の匿名化装置10は、各抽象化候補データの価値を抽象化したワードの価値に基づいて評価することにより、自動で適切な匿名化処理を行うことができる。即ち、抽象化の程度を異ならせて、多数の匿名情報を自動生成するといったことができる。
【0103】
図24は、匿名化装置10が匿名情報の公開条件を確認する処理を示す図である。公開条件を確認するステップS2では、
図24に示すように匿名化装置10は、ステップS1で取得した匿名情報について公開条件を確認する匿名情報を対象データとして記憶装置14から読み出し(ステップS210)、公開条件を確認していない匿名情報、即ち未確認の匿名情報が存在するか否かを判定し(ステップS220)、未確認の匿名情報が存在しなければ処理を終了し(ステップS220,No)、未確認の匿名情報が存在すれば(ステップS220,Yes)、ステップS230に移行する。
【0104】
ステップS230では、未確認の匿名情報を権限設定DB135の権限情報と照合し、当該匿名情報に対応する権限情報が権限設定DB135に記憶されているか否かを判定する(ステップS240)。
【0105】
ステップS240において、当該匿名情報に対応する権限情報が権限設定DB135に記憶されていない、例えば当該匿名情報の提供元や提供先と一致する情報が権限設定DB135に無く、対応する権限情報が記憶されていないと判定された場合(ステップS240、No)、権限設定DB135へ新規に権限情報を追加する。新規権限情報を追加する場合、匿名化装置10は、例えば当該匿名情報の提供元の事業者の装置から権限情報を取得して権限設定DB135に記憶させる(ステップS245)。なお、匿名化装置10は、新規権限情報を追加する場合、匿名化装置10の操作者に権限情報の入力を促し、権限情報が入力された場合に、この権限情報を権限設定DB135に記憶させても良い。
【0106】
ステップS245の処理により匿名情報に対する権限情報が権限設定DB135に記憶された場合や、ステップS240で匿名情報に対応する権限情報が権限設定DB135に全て記憶されていると判定した場合、(ステップS240、Yes)、この匿名情報を一時処理DB134に格納する(ステップS250)。
【0107】
次に匿名化装置10は、一時処理DB134に格納した匿名情報が、公開条件DB132の公開条件に合致しているか否かを判定する(ステップS260)。ここで匿名情報が、公開条件DB132の公開条件に合致していなければ(ステップS260,No)、ステップS210に戻って次の匿名情報の処理に移る。一方、匿名情報が、公開条件DB132の公開条件に合致していれば(ステップS260,Yes)、当該匿名情報を匿名情報DB145に格納し、ステップS210に戻って次の匿名情報の処理に移る。
【0108】
図25Aは、権限設定DB135の一例を示す図である。権限設定DB135は、匿名化情報の最少出現数等の情報とアクセス権限(ランク)とを対応付けた権限設定情報を記憶している。即ち、権限設定DB135は、権限記憶部の一形態である。
図25Aの例では、最少出現率の他、提供元や提供先、使用可能辞書の情報とアクセス権限(ランク)とを対応付けている。ここで、提供元は、匿名情報又は匿名化前の個人情報を提供した事業者を示す情報であり、提供元の事業者毎に各ランクの最少出現率や使用可能辞書が定められている。なお、
図25Aの権限設定DB135では、複数の事業者に係る匿名情報を統計情報化したものの場合、提供元の項目に、平均や合計等、統計情報の種別を記憶している。提供先は、匿名情報の提供先(送信先)を示す情報である。最少出現率は、データ総数に対する最少出現数の割合であり、最少出現率が小さい場合、データ全体に対して個々のデータの占める割合が小さく、希釈された情報であるため、低いランクと対応付け、最少出現率が大きい場合、データ全体に対して個々のデータの占める割合が大きく、個々のデータから全体のデータを把握し易くなるため、高いランクと対応付けている。
【0109】
例えば、
図25Aの権限設定DB135では、提供元が販売店Pであって、当該匿名情報の提供先が、同一事業者内、即ち販売店Pの場合には最少出現率が0.05%未満でランクAと対応付けられ、同匿名情報の提供先が、事業者外の場合には最少出現率が0.05%未満でランクCのように事業者内に提供する場合と比べて高いランクと対応付けられている。また、提供先は、提供先に応じたランクの指定が無い場合、制限無しとしても良い。更に、提供先は、特定の事業者名や業種としても良い。例えば競合する事業者が提供先の場合は、他の事業者(事業者外)に提供するよりも高いランクと対応付け、業務提携している事業者が提供先の場合は、他の事業者(事業者外)に提供するよりも低いランクと対応付けても良い。同様に提供先が自動車販売店の場合や自動車修理工場の場合等、業種によって指定されても良い。
【0110】
また、
図25Aの権限設定DB135において、提供元が販売店Pであって、使用可能辞書がD1の場合、ランクA〜Dの何れかと対応付けられ、使用可能辞書がD2の場合、ランクEと対応付けられている。
【0111】
なお、
図25Aの権限設定DB135では、最少出現率を含む条件とランクを対応付けているが、これに限らず、
図25Bに示すように、最少出限数を含む条件とランクとを対応付けて記憶しても良い。
【0112】
例えば、
図25Bの権限設定DB135では、提供元が販売店Pであって、当該匿名情報の提供先が、同一事業者内の場合は最少出現数が50以上でランクAであるのに対し、同匿名情報の提供先が、事業者外の場合は最少出現数が50以上でランクCのように事業者内に提供する場合と比べて高いランクと対応付けられている。
【0113】
図26は、公開条件DB132の一例を示す図である。公開条件DB132は、匿名条件の属性値と公開条件とを対応付けて記憶している。例えば、
図26では、属性値に応じた最少出現数を指定し、属性値に車種が含まれている場合、最少出現率が0.05%未満であることを公開条件としている。即ち、匿名情報に車種が含まれている場合、最少出現
率が0.05%未満であれば匿名情報DB145に格納して公開の対象とし、最少出現率が0.05%以上であれば匿名情報DB145に格納せず非公開とする。同様に属性値にメーカ名が含まれている場合、最少出現率が0.1%未満であることを公開条件としている。また、公開条件を国内メーカとし、国内メーカの情報を抽出して公開の対象とし、国外メーカの情報を非公開としても良い。なお、本例において、国内メーカと国外メーカとの判別は、予めメーカ名毎に、国内メーカであるか国外メーカであるかを示すテーブルを用意しておき、匿名化装置10は、このテーブルを参照し、メーカ名に応じて国内メーカか否かを判定する。また、公開条件として、公開する期日や期間を定めても良い。
図26の例では、匿名情報が、所定のキーワード“▽ベンタ○ール”を含む場合、公開条件が“○月○日以降”であるので、“▽ベンタ○ール”を含むレコード又は匿名情報について、○月○日以降は公開対象とし、○月○日までは非公開とする。また、
図26の例では、匿名情報が、所定のキーワード“力○一ラ”を含む場合、公開条件が“1月1日〜2月28日”であるので、“力○一ラ”を含むレコード又は匿名情報について、1月1日〜2月28日の期間は公開対象とし、この期間以外は非公開とする。
【0114】
図24の公開条件の確認処理が完了した場合、匿名化装置10は、次に各匿名情報のアクセス権限を設定する(ステップS3)。
図27は、このアクセス権限を設定する処理の具体例を示す。匿名化装置10は、権限設定DB135から権限情報を取得し(ステップS310)、匿名情報DB145から各匿名情報の最少出現率等の情報、例えば最少出現率、提供元、提供先、使用辞書といった情報を読み出し、これらの情報と対応するアクセス権限を権限設定DB135から求めて、当該匿名情報のアクセス権限情報として匿名情報DB145に記憶させる(ステップS320)。
【0115】
例えば、匿名化装置10は、権限設定DB135を参照し、ステップS310で取得した匿名情報の最少出現率、提供元、提供先、使用辞書が全て適合するランクを当該匿名情報のアクセス権限情報として決定する。なお、最少出現率のように、低いランクの条件に適合した際、それよりも高いランクの条件にも同時に適合する場合、最も低いランクに決定する。
図25Aの例では、提供元が販売店P、提供先が同一事業者内、即ち販売店P、使用辞書がD1、最少出現率が0.05%未満の場合、匿名化装置10は、アクセス権限をランクAと決定する。また、提供元が販売店P、提供先が事業者外、使用辞書がD1、最少出現率が0.05%未満の場合、匿名化装置10は、アクセス権限をランクCと決定する。そして、提供元が販売店P、提供先が同一事業者内、使用辞書がD2、最少出現率が0.2%の場合、使用可能辞書以外はランクCの条件を満たすが、辞書D2と適合する使用可能辞書はランクEであるため、匿名化装置10は、アクセス権限をランクEと決定する。
【0116】
また、匿名化装置10は、これらの匿名情報について合計、平均、標準偏差等の統計情報を求め、ステップS320と同様に当該統計情報のアクセス権限を求め、当該統計情報とアクセス権限とを対応付けて匿名情報DB145に記憶させる(ステップS330)。
【0117】
上記のようにアクセス権限を付加した匿名情報に対するアクセス管理について、次に説明する。
図28は、管理サーバ20が匿名情報のアクセス権限に応じて当該匿名情報へのアクセスを管理するアクセス管理方法の説明図である。
【0118】
管理サーバ20は、ユーザ端末30から匿名情報へのアクセス要求を受けた場合に、
図28の処理を開始し、まずユーザの認証を行う(ステップS410)。ユーザの認証処理は、管理サーバ20が、ユーザIDやパスワード等の認証情報をユーザ端末30から受信し、この認証情報を登録済の情報と比較して一致していれば認証成功として次のステップS430へ移行し、一致しなければ認証失敗として
図28の処理を終了する。なお、管理サーバ20が、ウエブサーバの機能を有し、匿名情報等の情報をウエブページとして提供
し、ユーザ端末30が所謂ウエブブラウザの機能によって管理サーバ20にアクセスする構成の場合、認証情報はHTTP Cookie等によってユーザ端末30から管理サーバ20へ送
信されても良い。また、認証情報は、ユーザの操作によってキーボード等の入力手段から入力され、ユーザ端末30から管理サーバ20へ送信されても良い。
【0119】
認証が成功した場合、管理サーバ20は、ユーザ管理DB251から当該ユーザのユーザ管理情報を取得する(ステップS420)。このユーザ管理情報は、例えば
図9のようにユーザID、アクセス権限、使用可能辞書等の情報を対応付けてユーザ管理DB251に記録されたものである。ユーザIDは、各ユーザを一意に識別するための識別情報である。ユーザのアクセス権限は、当該ユーザの持つ権限、即ち当該ユーザのアクセスが可能な匿名情報の範囲を示す情報である。特に、
図9の例では、アクセス権限の範囲(アクセス可能な範囲)をランクで示している。例えば権限の低い(アクセス可能な範囲が狭い)順にランクA〜Eとした場合、ランクAはランクAの匿名情報をアクセス範囲とし、ランクBはランクAとランクBの匿名情報をアクセス範囲とし、ランクEはランクAからランクEの匿名情報をアクセス範囲とする。このように上位の権限の範囲に、下位の権限の範囲が含まれるように設定しても良いし、各権限を独立に設定しても良い。例えば、権限Aと権限Eを有するユーザは、権限A、Eの匿名情報のみアクセスでき、権限B,C,Dにはアクセスできない、というように設定しても良い。
【0120】
そして管理サーバ20は、当該ユーザの権限内の匿名情報、即ち当該ユーザのアクセス権限でアクセス可能な匿名情報の概要情報を匿名情報DB145から取得する(ステップS430)。この概要情報の取得は、
図6に示すように、予め各匿名情報のアクセス管理情報に記録されている概要情報を読み出すものでも良いし、項目名や匿名情報の一部のデータを概要情報として読み出しても良い。
【0121】
管理サーバ20は、この取得した概要情報をユーザ端末30に送信し(ステップS440)、提供する匿名情報の選択を促す(ステップS450)。例えば管理サーバ20が、概要情報を一覧表示させるウエブページとしてユーザ端末30へ提供すると共に、キーワード検索や絞り込みのための入力欄を表示させて匿名情報の選択を促す。
【0122】
そして、ユーザが前記概要情報の一覧の中から匿名情報を選択して、ユーザ端末30からリクエストし、管理サーバ20がこのリクエストを受信すると(ステップS460)、管理サーバ20は、この匿名情報のアクセス権限とユーザのアクセス権限とを比較して(ステップS470)、当該ユーザが当該匿名情報にアクセスする権限を有しているか否かを再確認する(ステップS480)。
【0123】
この結果、管理サーバ20は、当該ユーザが当該匿名情報にアクセスする権限を有していないと判定した場合には(ステップS480,No)、
図28の処理を終了し、当該ユーザが当該匿名情報にアクセスする権限を有していると判定した場合には(ステップS480、Yes)、利用日時や当該ユーザの情報(ユーザID等)を履歴情報として記憶
装置24に記憶させる(ステップS490)。また、管理サーバ20は、リクエストを受けた匿名情報を匿名情報DB145から取得し(ステップS500)、リクエスト元のユーザ端末30に送信して表示させる(ステップS510)。
【0124】
このようにアクセス権限に基づいて権限を有するユーザにのみ匿名情報を送信するので、匿名情報に対するアクセス制御を適切に行うことができる。特に、本実施形態によれば、アクセス管理に用いる匿名情報のアクセス権限を最少出現率等の情報から求め、アクセス権限を自動で設定できる。このため、個人情報を抽象化して匿名化する際に、複数の抽象化候補を生成し、抽象化後の価値に基づいて選択した抽象化候補を匿名情報とするシステムにおいても、前述のように最少出現率等の情報から匿名情報にアクセス権限を付加す
ることで、人手を要することなくアクセス管理を行うことができる。
【0125】
〈実施形態2〉
図29は本実施形態2に係る匿名化システムの機能ブロック図である。本実施形態2の匿名化システム200は、複数の事業者が出展する展示会において、各事業者が来場者から収集した個人情報の匿名化を行うシステムであり、各事業者の匿名化装置10や、各事業者で匿名化した匿名情報を管理する管理サーバ20を有する。
【0126】
本実施形態2の匿名化システム200では、管理サーバ20が、各事業者の匿名化装置10から夫々匿名化辞書を取得し、各事業者の匿名化辞書を統合して統合匿名化辞書を生成し、各統合匿名化辞書にIDを付して各事業者の匿名化装置10へ配信する。そして、各事業者の匿名化装置10が共通の統合匿名化辞書を用いて個人情報を匿名化して匿名情報とし、匿名情報DB(Data Base)145に登録し、前記統合匿名化辞書のIDや最少
出現率に基づいて、当該匿名情報に対するアクセスの管理を行う。
【0127】
図29に示すように、管理サーバ20は、要求受付部201や、アクセス制御部202、出力制御部203、ユーザ管理DB251、辞書取得部211、統合部212、優先度決定部213、辞書管理部214、匿名情報登録部215、匿名情報制御部216、選択部217、辞書DB231、優先度DB232を備えている。即ち、本実施形態1の管理サーバ20は、辞書取得部211、統合部212、優先度決定部213及び選択部217を備えた辞書作成装置でもある。
【0128】
要求受付部201は、匿名情報を取得するためのアクセス要求を利用者の端末から受信する。
【0129】
アクセス制御部202は、利用者からのアクセス要求を受信した場合に、当該利用者の権限レベルと対応する匿名レベルの匿名情報へのアクセスを許可する。
【0130】
出力制御部203は、アクセス制御部202によってアクセスを許可した匿名情報を匿名情報DB145から読み出して出力する。例えば要求元の利用者の端末30へ送信する。ここで、匿名情報の出力とは、表示装置による表示出力や、プリンタによる印刷出力、他のコンピュータへの送信、記憶媒体への書き込み等であっても良い。
【0131】
辞書取得部211は、対象データに含まれる語を抽象化した語に替えて匿名化するため、前記語と前記抽象化した語とを対応付けて記憶した複数の匿名化辞書を各事業者の匿名化装置10から取得する。本実施形態では、各事業者の匿名化装置10から送信された匿名化辞書を辞書取得部211が受信し、辞書DB231に登録する。
【0132】
統合部212は、各事業者の匿名化装置10から取得した複数の匿名化辞書を統合して統合匿名化辞書を作成する。例えば統合部212は、複数の匿名化辞書に含まれる各語の対応関係に基づいて、抽象化した語を上位、抽象化前の語を下位とし、前記複数の匿名化辞書に含まれる各語と、前記複数の匿名化辞書に存在する上位及び下位の語とを対応付け、対応する上位の語が存在しない最上位の語をルートとして対応する下位の語が存在しない最下位の語までのツリー状の対応関係にある語の次元を前記最上位の語毎に生成し、統合匿名化辞書として辞書DB231に記憶させる。この各最上位の語をルートとするツリー状の語の次元が統合匿名化辞書を構成する。
【0133】
優先度決定部213は、前記統合匿名化辞書を構成する次元の夫々について、当該次元に含まれる語に基づいて優先度を決定する。例えば、優先度決定部213は、各次元に含まれる語の数、各次元に含まれる語について上位と下位の関係にある段階の数、各次元に
含まれる語の価値のうち少なくとも一つに基づいて前記優先度を決定する。なお、前記語について予め定めた値を、例えば優先度DB232が記憶しておき、優先度決定部213は、優先度DB232を参照して優先度を決定する。
【0134】
選択部217は、前記統合部212で生成した複数の次元のうち、統合匿名化辞書として採用する次元と採用しない次元とを前記優先度に基づいて選択する。
【0135】
辞書管理部214は、統合部212で作成された統合匿名化辞書を管理する。例えば辞書管理部214は、統合匿名化辞書を辞書DB231から読み出して各事業者の匿名化装置10へ配信する。
【0136】
匿名情報登録部215は、各事業者の匿名化装置10から匿名情報を取得し、共通DB233に登録する。
【0137】
匿名情報制御部216は、共通DB233に登録された匿名情報の出力処理等を制御する。例えば、匿名化装置10等の情報処理装置から匿名情報の取得要求を受けた場合に、該当する匿名情報を要求元の情報処理装置へ配信する。本実施形態1において、匿名情報制御部216は、出力部の一形態である。
【0138】
図30は辞書DB231の例を示す図である。辞書DB231は、抽象化前のワード(以下、下位のワードとも称す)と、当該ワードを抽象化した後のワード(以下、上位のワ
ードとも称す)とを対応付けて記憶している。
【0139】
図31は、優先度DB232の例を示す図である。優先度DB232は、各ワードについて、優先度を決定するための値(価値)を記憶している。
図31の例では、各ワードに対して、1日当たりのクリック数、1日当たりの表示回数、参入企業数、1日当たりのコスト、クリック率、SEM価格(獲得価格)など、SEMに用いられる値が記憶されている。
【0140】
図32は、共通DB233の例を示す図である。共通DB233は、各事業者の匿名化装置10で統合匿名化辞書を用いて匿名化した匿名情報を記憶している。
図32の例では、来訪ブース、年齢、性別、所属企業、役職、興味を示した商品、ステータスなどの項目のデータを記憶している。この項目や各項目の抽象化の程度は、後述のように統合匿名化辞書や検定の結果等によって決まる。
【0141】
また、各事業者の匿名化装置10は、
図29に示すように、データ取得部101や、抽象化部102、検定部103、選択部104、価値判定部106、価値データ取得部107、ワードカテゴリ分析部108、ワード価値計算部109、出現数取得部111、権限決定部112、出力制御部121、個人情報DB131、公開条件DB132、検索情報蓄積DB133、一時処理DB134、権限設定DB(権限記憶部)135を備えている。
【0142】
データ取得部101は、個人と対応付けられた複数の項目を含むデータ、即ち個人情報を対象データとして取得する。例えば来場者が記載したアンケートや来場者から聞き取った個人情報をキーボード等から入力して個人情報DB131に記憶しておき、この個人情報を個人情報DB131からデータ取得部101が対象データとして読み出す。また、来場者の名刺やアンケートに記載された事項を読み取り、OCR(Optical Character Recognition)により電子データとしても良いし、来場者のRF−IDタグやICチップ等か
ら当該来場者の情報を取得しても良い。
【0143】
抽象化部102は、前記次元からなる統合匿名化辞書を参照し、前記対象データ中の項目の値である語を前記優先度に基づいて抽象化した語に替えて匿名化候補データを生成する。
【0144】
検定部103は、前記抽象化候補データの項目の値の組み合わせが、前記対象データの一個人に限定されないことを条件として検定する。例えば、検定部103は、抽象化候補データの項目の値の組み合わせが、k−匿名性を満たすこと、或いはl−多様性を満たすことを条件として検定する。
【0145】
選択部104は、検定の条件を満たした抽象化候補データの価値に基づいて抽象化候補データを選択する。例えば、選択部104は、k−匿名性やl−多様性を満たした抽象化候補データを価値が高い順に所定数選択する。また、選択部104は、k−匿名性やl−多様性を満たした抽象化候補データのうち、最も価値が高い抽象化候補データを選択しても良い。
【0146】
価値判定部106は、抽象化候補データに含まれるワードの価値に基づいて当該抽象化候補データの価値を求める。
【0147】
価値データ取得部107は、抽象化候補データに含まれるワードの価値データを検索情報蓄積DBから取得(受信)する。また、価値データ取得部107は、検索情報蓄積DBに前記ワードの価値データが登録されていない場合に、他の装置にリクエストし、取得した価値データを検索情報蓄積DBに登録する機能(データリクエスト)や、定期的に他の装置を巡回して最新の価値データを取得し、検索情報蓄積DBに登録されている価値データを更新する機能(データクローラ)を有する。本実施形態では、この価値データとして検索エンジン90から各ワードの統計情報を受信する。ここで、各ワードの統計情報は、例えばSEMの広告単価(クリック単価)や、クリック率、平均掲載順位、1日の表示回数、1日のクリック数等である。なお、価値の取得先は、検索エンジンに限らず、ウェブページやSNS等であっても良い。この場合、例えばウェブページやSNSにおける各ワードの使用頻度を価値としても良い。
【0148】
ワードカテゴリ分析部108は、ウェブサイト等のデータを分析して、新規のワードや、当該ワードを抽象化したワード(カテゴリ)を求め、検索情報蓄積DBに登録する。
【0149】
価値計算部109は、価値データ取得部107で取得したワードの価値に基づき、ワードの価値の年平均や月平均、週平均など、ワードの価値の統計情報を求める。
【0150】
出現数取得部111は、前記匿名情報を構成する語の出現数を求める。例えば、匿名情報において、一個人の情報を一つのデータ(1レコード)とし、同じ情報(語)が幾つ出現したかを出現数としてカウントする。なお、各個人の情報が、単一の項目からなる場合には、当該項目の値である語が同じもの毎に出現数をカウントし、複数の項目からなる場合には、当該複数の項目の値である語の組み合わせが同じもの毎に出現数をカウントする。
【0151】
また、出現数取得部111は、前記匿名情報を構成する語の出現数のうち最少の出現数を最少出現数とし、前記匿名情報を構成する語の全数に対する前記最少出現数の割合を最少出現率として求める出現率取得部として機能しても良い。
【0152】
権限決定部112は、前記匿名情報の出現数又はこの出現数に基づいて算出した最少出現率等の値に基づいて当該匿名情報のアクセス権限を決定し、匿名情報に付加して匿名情報DB145に記憶させる。権限決定部112は、例えば、匿名情報の出現数又は前記出
現数に基づいて算出した出現率等の値と前記アクセス権限とを対応付けて記憶した権限記憶部を参照して、前記権限決定部が前記匿名情報の出現数に基づく前記アクセス権限を決定する。
【0153】
出力制御部121は、前記検定の条件を満たした抽象化候補データを匿名情報として出力する。例えば、出力制御部121は、匿名情報を管理サーバ20へ送信する。
【0154】
図33は、個人情報DB131の例を示す図である。個人情報DB131は、データ取得部101で取得した個人情報を記憶している。
図33の例では氏名、メール、所属企業名、役職、興味、ステータス等を記憶している。
【0155】
公開条件DB132は、公開可能な匿名情報の条件を記憶し、例えば「最少出現数が30以上の場合に公開可、但し外部公開不可」「キーワード=○○○が含まれている場合、△月□日以降公開可」のように、公開可能な最少出現数や、社外への公開の可否、公開不可とするキーワードを公開条件として記憶している。なお、公開条件は、「辞書ID=D1を用いた場合、最少出現数が5以上の場合に内部公開可、それ以下の場合は公開不可と
し、また、最少出現数が10以上の場合に外部公開可、それ以下の場合は外部公開不可とする」といったように、匿名化に用いた辞書に応じて公開の可否を定める条件であっても良い。
【0156】
また、匿名情報DB145は、匿名化装置10で匿名化した匿名情報を記憶している。匿名情報DB145は、匿名化前の個人情報が異なる匿名情報や匿名化に用いる辞書が異なる匿名情報等、複数の匿名情報を記憶すると共に、これらの匿名情報へのアクセスを管理するための情報を記憶する。
【0157】
図34は、匿名情報DB145に記憶される匿名情報の一例を示す図である。匿名情報は、個人情報の各語を抽象化したものであり、
図34の例では、年代、住所(都道府県名)、車種、最少出現数を対応付けて記憶している。
【0158】
図35は、匿名情報へのアクセスを管理するための情報(以下アクセス管理情報とも称す)の一例を示す図である。このアクセス管理情報は、
図35に示すように、例えば、レベル、匿名情報ID、使用辞書、最少出現数率、情報種別、概要等を含んでいる。ここで、レベルは、当該匿名情報にアクセス可能な権限を示す情報であり、後述のように当該匿名情報の最少出現数や最少出現数に基づいて算出した最少出現率等の値に基づいて求めている。
【0159】
匿名情報IDは、匿名情報を一意に識別する情報である。使用辞書は、当該匿名情報の匿名化に用いた辞書を示す情報であり、例えば各辞書の識別情報である。最少出現率は、当該匿名情報を構成する語の全数に対する最少出現数の割合である。ここで最少出現数は、当該匿名情報において同じ属性値を持つ個人の人数、即ち匿名情報を構成する語の出現数を求めた場合に、この同じ属性値毎の人数(出現数)のうち最少のものである。
【0160】
情報種別は、当該匿名情報が複数の個人情報に基づく統計情報であるか、特定の事業者が持つ個人情報を匿名化したものか等の種別を示す。
図35の例では、匿名情報が、複数の匿名情報の平均や合計を求めた統計情報の場合に、この種別を平均又は合計と示し、特定の事業者の個人情報を匿名化したものの場合、この事業者の名称を示している。概要は、当該匿名情報の説明であり、例えば匿名情報に含まれる項目や匿名化の条件を示す。
【0161】
なお、匿名情報DB145は、匿名化装置10又は管理サーバ20が備えた記憶装置に格納されたものでも良いし、匿名化装置10及び管理サーバ20からアクセス可能であれ
ば独立したファイルサーバ等の装置に格納されたものでも良い。
【0162】
図36は管理サーバ20のハードウェア構成を示す図である。管理サーバ20は、CPU21、メモリ22、通信制御部23、記憶装置24、入出力インタフェース25を有する所謂コンピュータである。
【0163】
CPU21は、メモリ22に実行可能に展開されたプログラムを実行し、前述の辞書取得部211や、統合部212、優先度決定部213、辞書管理部214、匿名情報登録部215、匿名情報制御部216、選択部217、要求受付部201、アクセス制御部202、出力制御部203の機能を提供する。
【0164】
メモリ22は、主記憶装置ということもできる。メモリ22は、例えば、CPU21が実行するプログラムや、通信制御部23を介して受信したデータ、記憶装置24から読み出したデータ、その他のデータ等を記憶する。
【0165】
通信制御部23は、ネットワークを介して他の装置と接続し、当該装置との通信を制御する。入出力インタフェース25は、表示装置やプリンタ等の出力手段や、キーボードやポインティングデバイス等の入力手段、ドライブ装置等の入出力手段が適宜接続される。ドライブ装置は、着脱可能な記憶媒体の読み書き装置であり、例えば、フラッシュメモリカードの入出力装置、USBメモリを接続するUSBのアダプタ等である。また、着脱可能な記憶媒体は、例えば、CD(Compact Disc)、DVD(Digital Versatile Disk)、ブルーレイディスク(Blu-ray Disc)等のディスク媒体であってもよい。ドライブ装置は、着脱可能な記憶媒体からプログラムを読み出し、記憶装置24に格納する。
【0166】
記憶装置24は、外部記憶装置ということもできる。記憶装置24としては、SSD(Solid State Drive)やHDD等であってもよい。記憶装置24は、ドライブ装置との間
で、データを授受する。例えば、記憶装置24は、ドライブ装置からインストールされる情報処理プログラム等を記憶する。また、記憶装置24は、プログラムを読み出し、メモリ22に引き渡す。本実施形態では、記憶装置24が前述の辞書DB231、優先度DB232、共通DB233を格納している。
【0167】
図37は匿名化装置10のハードウェア構成を示す図である。匿名化装置10は、CPU11、メモリ12、通信制御部13、記憶装置14、入出力インタフェース15を有する所謂コンピュータである。
【0168】
CPU11は、メモリ12に実行可能に展開されたプログラムを実行し、前述のデータ取得部101や、抽象化部102、検定部103、選択部104、価値判定部106、価値データ取得部107、ワードカテゴリ分析部108、ワード価値計算部109、出現数取得部111、権限決定部112、出力制御部121の機能を提供する。
【0169】
メモリ12は、主記憶装置ということもできる。メモリ12は、例えば、CPU11が実行するプログラムや、通信制御部13を介して受信したデータ、記憶装置14から読み出したデータ、その他のデータ等を記憶する。
【0170】
通信制御部13は、ネットワークを介して他の装置と接続し、当該装置との通信を制御する。入出力インタフェース15は、表示装置やプリンタ等の出力手段や、キーボードやポインティングデバイス等の入力手段、ドライブ装置等の入出力手段が適宜接続される。ドライブ装置は、着脱可能な記憶媒体の読み書き装置であり、例えば、フラッシュメモリカードの入出力装置、USBメモリを接続するUSBのアダプタ等である。また、着脱可能な記憶媒体は、例えば、CD(Compact Disc)、DVD(Digital Versatile Disk)、
ブルーレイディスク(Blu-ray Disc)等のディスク媒体であってもよい。ドライブ装置は、着脱可能な記憶媒体からプログラムを読み出し、記憶装置14に格納する。
【0171】
記憶装置14は、外部記憶装置ということもできる。記憶装置14としては、SSD(Solid State Drive)やHDD等であってもよい。記憶装置14は、ドライブ装置との間
で、データを授受する。例えば、記憶装置14は、ドライブ装置からインストールされるプログラム等を記憶する。また、記憶装置14は、プログラムを読み出し、メモリ12に引き渡す。本実施形態では、記憶装置14が前述の個人情報DB131、公開条件DB132、検索情報蓄積DB133、一時処理DB134、権限設定DB(権限記憶部)135を格納している。
【0172】
§3.匿名化方法
次に
図38〜
図45を用いて匿名化方法について説明する。
図38は、管理サーバ20がプログラムに従って実行する統合匿名化辞書を作成する処理の説明図である。
【0173】
(3−1)統合匿名化辞書の作成
まず、管理サーバ20は、各事業者の匿名化装置10から各事業者の匿名化辞書を受信する(ステップS510)。
【0174】
次に管理サーバ20は、各事業者の匿名化辞書を統合する(ステップS520)。なお、匿名化辞書を統合する際の具体的な処理については後述する。
【0175】
また、管理サーバ20は、統合匿名化辞書を構成するワードの次元について、優先度を決定し(ステップS530)、この優先度に基づいて統合匿名化辞書に採用する次元と採用しない次元とを選択する(ステップS540)。
次に管理サーバ20は、作成した統合匿名化辞書を一意に識別できるように、辞書ID当該統合匿名化辞書に付す(ステップS550)。辞書IDは、例えば辞書を示す情報“D”と、作成順にカウントするシリアルナンバー“1,2,3・・・”とを組み合わせて生成される。
また、管理サーバ20は、作成した統合匿名化辞書に係る権限情報を権限設定DB135に登録する。即ち、作成した統合匿名化辞書“D4”を用いて匿名化した匿名情報の最少出現率が0.05%以下であればランクA、最少出現率が0.1%以下であればランクCのように、作成した統合匿名化辞書を用いて匿名化した匿名情報の権限情報を判断するための権限情報を
例えば、提供元の事業者名や、当該事業者の業種、匿名化辞書のジャンル、匿名化辞書の重要度、統合した匿名化辞書の数といった匿名化辞書や提供元の事業者に係る情報と権限情報とを対応付けて記憶した権限テーブルを記憶装置24に予め記憶しておき、管理サーバ20は、取得した匿名化辞書や提供元の事業者に係る情報と対応する権限情報を権限テーブルから取得して権限設定DB135に登録する。また、ステップS510で、各事業者の匿名化装置10から匿名化辞書と共に、ランクや提供先等の権限情報を受信し、これを当該事業者の権限情報として権限設定DB135に登録する。更に、管理サーバ20は、担当者に権限情報の入力を促し、入力された権限情報を権限設定DB135に登録しても良い。
【0176】
そして、管理サーバ20は、ステップS540で選択した次元から構成される統合匿名化辞書を各匿名化装置10へ配信する(ステップS550)。
【0177】
図39は、ステップS520における匿名化辞書を統合する処理の説明図である。管理サーバ20は、先ず、各事業者の匿名化辞書を記憶した辞書DB231から最下位のワードを抽出する(ステップS610)。例えば各事業者の匿名化辞書には、
図30に示すよ
うに「ソフトA」を抽象化した語が「伝票ソフト」と記憶されており、「ソフトA」に対して一段階上位のワードが「伝票ソフト」であることがわかる。同様に、「ソフトZ」を抽象化した語が「伝票ソフト」であり、「ソフトB」を抽象化した語が「会計ソフト」である。
【0178】
更に、「ソフトA」や「ソフトZ」に対して一段階上位のワードである「伝票ソフト」についても一段階上位のワードが「業務ソフト」と記憶されている。
【0179】
このように辞書DB231に上位・下位の関係と共に記憶されているワードのうち、下位のワードと対応付けられていないワード、即ち最も下位のワードを一つ抽出する。
【0180】
次に管理サーバ20は、ステップS610で抽出したワードより一つ上位のワードを求め、一つ上位の段階(抽象化レベル)を設定する(ステップS620)。例えば、ステップS610で抽出したワードが「ソフトA」であれば、「伝票ソフト」を一段階上位のワードとして抽出する。
【0181】
管理サーバ20は、ステップS620で抽出したワードと対応する一つ下位のワードと同じ段階(抽象化レベル)のワードを抽出する(ステップS630)。例えば、ステップS620で抽出したワードが「伝票ソフト」であれば、「ソフトA」と同じ段階の「ソフトZ」が抽出される。
【0182】
更に、管理サーバ20は、ステップS630で抽出したワードと対応する下位のワードがあれば抽出し、対応する下位のワードが無くなるまで下位のワードの抽出を繰り返す(ステップS640)。
【0183】
ステップS640で、下位のワードが出尽くした場合に、管理サーバ20は、直前のステップS620又はステップS660で設定した段階が最上位か否か、即ち更に上位のワードが存在するか否かを判定し、最上位でなければ(ステップS650,No)、一つ上位のワードを求め、一つ上位の段階(抽象化レベル)を設定してステップと130に戻る(ステップS660)。例えば、ステップS620で設定したワードが「伝票ソフト」であった場合、一つ上位のワード「業務ソフト」を求め、一つ上位の段階として設定する。
【0184】
そして、ステップS630へ戻り、ステップS630,S640の処理を行った後、ステップS650で、直前のステップS620又はステップS660で設定した段階が最上位と判定した場合(ステップS650,Yes)、前記複数の匿名化辞書に含まれる全てのワードの処理が終了したか否かを判定し(ステップS670)、残りのワードがあれば(ステップS670,No)、ステップS610に戻って処理を繰り返し、全てのワードの処理が終了したならば(ステップS670,Yes)
図39の処理を終了する。
【0185】
(3−2)次元の説明
図40は、
図39の処理によって作成される各次元の説明図である。
図40の例では、「IT製品」をルートとする次元について示している。即ち、
図40の次元において、「IT製品」が最上位の段階のワードである。
【0186】
「IT製品」は、その一つ下位の段階(
図40の例では段階4)のワードとして「ソフト」「ハード」が対応付けられている。そして、「ソフト」は、その一つ下位の段階(
図40の例では段階3)のワードとして「業務ソフト」「個人ソフト」が対応付けられている。
【0187】
また、「業務ソフト」は、その一つ下位の段階(
図40の例では段階2)のワードとし
て「伝票ソフト」「会計ソフト」「顧客管理ソフト」が対応付けられ、「伝票ソフト」は、その一つ下位の段階(
図40の例では段階1、最下位の段階)のワードとして「ソフトA」「ソフトZ」が対応付けられている。なお、「個人ソフト」は、その一つ下位の段階のワードとして「ソフトV」「ソフトU」と対応付けられ、「ハード」は、その一つ下位の段階のワードとして「サーバD」「サーバE」と対応付けられている。
【0188】
このように本実施形態の統合部は、各事業者の匿名化辞書に基づいて
図40に示すような次元を複数作成する。ここで次元は、最上位のワードをルートとし、最下位のワードにかけて樹状に対応付けられた対応関係であり、最上位のワード毎に生成される。即ち統合部は、各事業者の匿名化辞書に含まれる全てのワードをまとめて樹状に対応つけて複数の次元とすることにより匿名化辞書を統合化している。そして、この複数の次元が、統合匿名化辞書である。
【0189】
図41は複数の次元の説明図である。
図41に示すように、あるワードを抽象化する次元は複数存在し得る。例えば、
図41の次元aでは、「ソフトウェアA」を「会計ソフト」、「業務ソフト」に抽象化し、次元cでは、「ソフトウェアA」を「a社製品」、「パッケージ」に抽象化する。また、次元bや次元dでもそれぞれ異なるワードに抽象化する。
【0190】
特に本実施形態の統合匿名化辞書は、多数の事業者の匿名化辞書を統合しているので、例えば数十〜数百の次元を含むことになり、全ての次元を用いて抽象化を行うと、データ量が膨大になってしまう。このため、本実施形態では、統合匿名化辞書の各次元について、抽象化に採用する次元の優先度を決定している。
【0191】
(3−3)優先度の説明
次に、
図41〜
図43を用いてステップS30における優先度の決定処理の詳細について説明する。
図42は、
図41に示した次元に含まれる各ワードに重み付けをした例を示す図である。
図42の例では、各次元に含まれるワードの夫々が、当該ワードの段階と対応付けて記憶されると共に、三種類の重み付けが行われる。重み付け1では、重要フラグの有無を付し、重み付け2では、検索回数を付し、重み付け3では、SEM(Search Engine Marketing)価格を付している。ここで重要フラグは、ユーザが重要か否かを入力し
た値であり、重要なワード、即ち抽象化に利用したいワードには重要と記録する(重要フラグを立てる)。
【0192】
また、優先度決定部213は、
図31に示す優先度DB232からワードの価値を読み出し、
図41に示すように対応するワードに重み付けとして付加する。
【0193】
そして
図41に示した次元のワードの数や、段階の和、各ワードの重み付けを次元毎に集計して、優先度を決定する。
【0194】
図43は、各ワードの重みを集計して各次元の優先度を求める処理の説明図である。
図43において、次元aの各ワードについて、ワード数、段階数の和、重み付け1、重み付け2、重み付け3を集計したものが表51Aである。同様に次元bを集計した表が51B、次元cを集計した表が51Cである。
【0195】
ワード数は、各次元に含まれるワードの総数であり、
図43の例では、次元aが25、次元bが50、次元cが9である。このワード数が多いと、抽象化のバリエーションが多く、l−多様性を満たし難くなる、即ち安全性が低くなることが考えられるが、データとしての詳細性は高いため、ワード数が多いものを優先する。
【0196】
段階数の和とは、段階の数に、当該段階に属するワードの数を乗じ、総計を求めたものであり、例えば(段階数5×ワード数1)+(段階数4×ワード数2)+(段階数3×ワード数2)+(段階数2×ワード数3)+(段階数1×ワード数9)=34と求める。この段階数の和が多いと、上位の段階が多く存在し、抽象度の高い選択肢が多く存在することになり、適切な抽象化レベルで抽象化可能で、安全性が高いため、段階数の和が多いものを優先する。
【0197】
同様に、重み付け1〜3についても、重要フラグの数や、検索回数、SEM価格の総計を求め、この値の高い、即ち価値の高いものを優先する。
【0198】
そして、これらワード数、段階数の和、重み付け1〜3について、次式に基づいて全体出現率(全体数に対する割合)を求める。
【0199】
全体出現率=tf/idf
=次元aの値/(次元aの値+次元bの値+次元cの値+・・・)
この全体出現率を各次元について比較したものが表52である。表52の各次元について、ワード数、段階数の和、重み付け1〜3の全体出現率を合計して全体優先度を定めている。
【0200】
このように各次元について全体優先度を求め、この全体優先度に基づいて選択部217が統合匿名化辞書に採用する次元と採用しない次元とを選択する。例えば、選択部217が表52の全体優先度を参照し、全体優先度が高い順に所定数の次元を採用し、これ以外の全体優先度が低い次元は採用しない。
【0201】
なお、選択の基準は、全体優先度の順だけでなく、重要フラグを含む次元は採用し、重要フラグを含まない次元については全体優先度が高い順に所定数の次元を採用するといったように選択条件を設定しても良い。
【0202】
また、選択の対象は、例えば統合匿名化辞書に含まれる全ての次元を選択の対象とし、全体優先度に基づいて所定数の次元を採用しても良いし、同じワードを含む次元毎に選択の対象とし、全体優先度に基づいて所定数の次元を採用しても良い。
【0203】
(3−4)匿名化方法
各匿名化装置10は、管理サーバ(辞書作成装置)20から受信した統合匿名化辞書を用いて匿名化を行い、匿名化した匿名情報を管理サーバ20へ送信する。この統合匿名化辞書を用いたことと、作成した匿名情報を管理サーバ20へ送信すること以外の匿名化の処理については、前述した実施形態1の
図11の説明と同じである。なお、匿名化装置10は、ステップS180で採用する抽象化候補を選択して匿名情報を作成した後、匿名情報を管理サーバ20へ送信して匿名情報を匿名情報DB145に登録させる(ステップS190)。
管理サーバ20は、
図10に示すように、匿名化装置10から匿名化情報を取得し(ス
テップS1)、この匿名情報が公開条件を満たしているか否かを判定し(ステップS2)、
公開条件を満たした匿名情報にアクセス権限を設定する(ステップS3)。即ち、本実施形態2では、管理サーバ20が、前述した実施形態1の
図24の説明と同様に公開条件を確認する処理 (ステップS2)及び、
図27の説明と同様にアクセス権限を設定する処理 (
ステップS3)を行う。
【0204】
なお、ステップS1における匿名化情報の取得は、個人情報を有する事業者が匿名化した匿名情報をそれぞれの事業者から匿名化装置10が受信するものでも良いし、それぞれの事業者から匿名化装置10が個人情報を受信し、匿名化して取得するものでも良い。
【0205】
§4.匿名情報の具体例
次に
図44,
図45を用いて匿名情報の具体例について説明する。
図44は、A社における匿名化の例を示す図であり、
図44(a)は、A社が収集した個人情報、
図44(b)は、
図44(a)の個人情報をA社独自の匿名化辞書で匿名化した場合の匿名情報の例を示す図、
図44(c)は、
図44(a)の個人情報を統合匿名化辞書で匿名化した場合の匿名情報の例を示す図である。
【0206】
A社の匿名化装置10は、
図44(a)の個人情報を独自の匿名化辞書で匿名化した場合、
図44(b)に示すように、氏名とメールアドレスの項目を削除し、年齢を年代に、所属企業を上場企業又は非上場企業に、役職を管理職や社員、アルバイトに抽象化する。
【0207】
これに対して、A社の匿名化装置10は、
図44(a)の個人情報を統合匿名化辞書で匿名化した場合、
図44(c)に示すように、氏名とメールアドレスの項目を削除し、年齢を年代に、所属企業を上場企業又は非上場企業、及び所属企業を業種に抽象化する。また、A社の匿名化装置10は、統合匿名化辞書を用いた場合、役職をマネージャやスタッフに、興味を示した商品を伝票ソフトやサーバに抽象化すると共に、来訪ブースの項目を追加して、A社に来訪した人のデータであることを示す値「A社」を入力する。
【0208】
一方、
図45は、B社における匿名化の例を示す図であり、
図45(a)は、B社が収集した個人情報、
図45(b)は、
図45(a)の個人情報をB社独自の匿名化辞書で匿名化した場合の匿名情報の例を示す図、
図45(c)は、
図45(a)の個人情報を統合匿名化辞書で匿名化した場合の匿名情報の例を示す図である。
【0209】
B社の匿名化装置10は、
図45(a)の個人情報を独自の匿名化辞書で匿名化した場合、
図45(b)に示すように、氏名とメールアドレスの項目を削除し、年齢を年代に、所属企業を業種に、職種を開発や総務に抽象化する。
【0210】
これに対して、B社の匿名化装置10は、
図45(a)の個人情報を統合匿名化辞書で匿名化した場合、
図45(c)に示すように、氏名とメールアドレスの項目を削除し、年齢を年代に、所属企業を上場企業又は非上場企業、及び所属企業を業種に抽象化する。また、B社の匿名化装置10は、統合匿名化辞書を用いた場合、職種を技術職や事務に、興味を示した商品を会計ソフトやサーバに抽象化すると共に、来訪ブースの項目を追加して、B社に来訪した人のデータであることを示す値「B社」を入力する。
【0211】
このように各事業者の匿名化装置10は、統合匿名化辞書に基づいて所属企業の項目を複数の次元で抽象化する。前述のように統合匿名化辞書には優先度の高い次元が採用されているので、この統合匿名化辞書に存在する次元で抽象化することにより、各事業者にとって有用な抽象化を行うことができる。
【0212】
また、前述のように匿名化辞書を統合したことにより、抽象化する際のワードの対応関係が再編され、A社の役職やB社の職種のように独自の項目についても共通の次元で抽象化されるので、類似の項目を有する他社のデータと比較することができる。
【0213】
§5.匿名情報の配信
上記のようにアクセス権限を付加した匿名情報に対するアクセス管理について、次に説明する。アクセス管理の手順は、前述した実施形態1の
図28の説明と同様であるため、
図28を用いて説明する。
【0214】
管理サーバ20は、ユーザ端末30や各事業者の匿名化装置10(以下単にユーザ端末
30と称す)から匿名情報へのアクセス要求を受けた場合に、
図28の処理を開始し、まずユーザの認証を行う(ステップS410)。ユーザの認証処理は、管理サーバ20が、ユーザIDやパスワード等の認証情報をユーザ端末30から受信し、この認証情報を登録済の情報と比較して一致していれば認証成功として次のステップS430へ移行し、一致しなければ認証失敗として
図28の処理を終了する。なお、管理サーバ20が、ウエブサーバの機能を有し、匿名情報等の情報をウエブページとして提供し、ユーザ端末30が所謂ウエブブラウザの機能によって管理サーバ20にアクセスする構成の場合、認証情報はHTTP Cookie等によってユーザ端末30から管理サーバ20へ送信されても良い。また、
認証情報は、ユーザの操作によってキーボード等の入力手段から入力され、ユーザ端末30から管理サーバ20へ送信されても良い。
【0215】
認証が成功した場合、管理サーバ20は、ユーザ管理DB251から当該ユーザのユーザ管理情報を取得する(ステップS420)。このユーザ管理情報は、例えば
図9のようにユーザID、アクセス権限、使用可能辞書等の情報を対応付けてユーザ管理DB251に記録されたものである。ユーザIDは、各ユーザを一意に識別するための識別情報である。ユーザのアクセス権限は、当該ユーザの持つ権限、即ち当該ユーザのアクセスが可能な匿名情報の範囲を示す情報である。特に、
図9の例では、アクセス権限の範囲(アクセス可能な範囲)をランクで示している。例えば権限の低い(アクセス可能な範囲が狭い)順にランクA〜Eとした場合、ランクAはランクAの匿名情報をアクセス範囲とし、ランクBはランクAとランクBの匿名情報をアクセス範囲とし、ランクEはランクAからランクEの匿名情報をアクセス範囲とする。このように上位の権限の範囲に、下位の権限の範囲が含まれるように設定しても良いし、各権限を独立に設定しても良い。例えば、権限Aと権限Eを有するユーザは、権限A、Eの匿名情報のみアクセスでき、権限B,C,Dにはアクセスできない、というように設定しても良い。
【0216】
そして管理サーバ20は、当該ユーザの権限内の匿名情報、即ち当該ユーザのアクセス権限でアクセス可能な匿名情報の概要情報を匿名情報DB145から取得する(ステップS430)。この概要情報の取得は、
図35のように、予め各匿名情報のアクセス管理情報に記録されている概要情報を読み出すものでも良いし、項目名や匿名情報の一部のデータを概要情報として読み出しても良い。
【0217】
管理サーバ20は、この取得した概要情報をユーザ端末30に送信し(ステップS440)、提供する匿名情報の選択を促す(ステップS450)。例えば管理サーバ20が、概要情報を一覧表示させるウエブページとしてユーザ端末30へ提供すると共に、キーワード検索や絞り込みのための入力欄を表示させて匿名情報の選択を促す。
【0218】
そして、ユーザが前記概要情報の一覧の中から匿名情報を選択して、ユーザ端末30からリクエストし、管理サーバ20がこのリクエストを受信すると(ステップS460)、管理サーバ20は、この匿名情報のアクセス権限とユーザのアクセス権限とを比較して(ステップS470)、当該ユーザが当該匿名情報にアクセスする権限を有しているか否かを再確認する(ステップS480)。このときリクエストする匿名情報は、匿名情報の全項目であっても良いし、項目によって指定された範囲であっても良い。例えば、年代、性別、来訪ブース、興味を示した商品のように必要な項目が指定されたリクエストであっても良いし、年代が20代、性別が男性、興味を示した商品がハード、ステータスが資料請求又は商談のように項目の値が指定されたリクエストであっても良い。
【0219】
この結果、管理サーバ20は、当該ユーザが当該匿名情報にアクセスする権限を有していないと判定した場合には(ステップS480,No)、
図28の処理を終了し、当該ユーザが当該匿名情報にアクセスする権限を有していると判定した場合には(ステップS480、Yes)、利用日時や当該ユーザの情報(ユーザID等)を履歴情報として記憶
装置24に記憶させる(ステップS490)。また、管理サーバ20は、リクエストを受けた匿名情報を匿名情報DB145から取得し(ステップS500)、リクエスト元のユーザ端末30に送信して表示させる(ステップS510)。
【0220】
このように本実施形態2によれば、複数の事業者がそれぞれに収集した個人情報を共通の統合匿名化辞書を用いて匿名化を行い、匿名情報を匿名情報DBに登録することで、この匿名情報を一元的に利用することができる。この場合でも本実施形態2の匿名化システムは、アクセス権限に基づいて権限を有するユーザにのみ匿名情報を送信するので、匿名情報に対するアクセス制御を適切に行うことができる。特に、本実施形態2によれば、各事業者の匿名化辞書を統合した統合匿名化辞書を作成した際、当該統合匿名化辞書に係る権限情報を自動で設定でき、複数の事業者がそれぞれに収集した個人情報に基づく匿名情報を共有する場合でも、人手を要することなくアクセス管理を行うことができる。
【0221】
〈その他〉
本発明は、上述の図示例にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。