(57)【特許請求の範囲】
【請求項１】
データセットにおける何れかのレコードの何れかの属性の属性値が第１の値となる条件付き確率が、第１の定数以下であって第２の定数以上となるように匿名化データを生成する匿名化装置であって、
前記条件付き確率が前記第１の定数以下であって前記第２の定数以上となるように、前記何れかのレコードの前記属性値が前記第１の値となる確率と、前記属性値が匿名化後に前記第１の値から第２の値に遷移する確率である第１の遷移確率と、前記何れかのレコードの前記属性値が取り得る各属性値となる各確率と、前記取り得る各属性値が匿名化後に前記第２の値に遷移する確率である第２の遷移確率に基づいて、前記条件付き確率を計算し、前記第１の遷移確率または前記第２の遷移確率に基づいて攪乱係数を生成する撹乱係数生成部と、
前記撹乱係数と、前記データセットに基づいて、前記匿名化データを生成し、出力するデータ攪乱部と、
を含む匿名化装置。
【請求項２】
請求項１に記載の匿名化装置であって、
前記第１の遷移確率および前記第２の遷移確率が、前記撹乱係数と、取り得る属性値の個数に基づく関係式で定義され、
前記撹乱係数生成部は、
前記関係式に基づいて前記撹乱係数を生成する
匿名化装置。
【請求項３】
請求項１または２に記載の匿名化装置であって、
前記撹乱係数生成部は、
予め設定された攻撃者の事前知識に基づいて、前記属性値が取り得る各属性値となる各確率を取得する
匿名化装置。
【請求項４】
請求項１から３の何れかに記載の匿名化装置であって、
前記撹乱係数生成部は、
前記条件付き確率の条件である所定の値の匿名化データの全てのレコードの前記何れかの属性の属性値を全て等しい値として、前記条件付き確率を計算する
匿名化装置。
【請求項５】
請求項１から３の何れかに記載の匿名化装置であって、
前記撹乱係数生成部は、
前記データセットの全てのレコードの前記何れかの属性の属性値を全て等しい値として、前記条件付き確率を計算する
匿名化装置。
【請求項６】
データセットにおける何れかのレコードの何れかの属性の属性値が第１の値となる条件付き確率が、第１の定数以下であって第２の定数以上となるように、匿名化データを生成する匿名化装置が実行する匿名化方法であって、
前記条件付き確率が前記第１の定数以下であって前記第２の定数以上となるように、前記何れかのレコードの前記属性値が前記第１の値となる確率と、前記属性値が匿名化後に前記第１の値から第２の値に遷移する確率である第１の遷移確率と、前記何れかのレコードの前記属性値が取り得る各属性値となる各確率と、前記取り得る各属性値が匿名化後に前記第２の値に遷移する確率である第２の遷移確率に基づいて、前記条件付き確率を計算し、前記第１の遷移確率または前記第２の遷移確率に基づいて攪乱係数を生成するステップと、
前記撹乱係数と、前記データセットに基づいて、前記匿名化データを生成し、出力するステップを含む匿名化方法。
【請求項７】
コンピュータを、請求項１から５の何れかに記載の匿名化装置として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、匿名化装置、匿名化方法、プログラムに関する。
【背景技術】
【０００２】
顧客情報等のパーソナルデータ（個人に関する情報）を保有する組織や部署等が、当該パーソナルデータを別の組織や部署等に開示、あるいは公開する際、当該パーソナルデータに対応する個人のプライバシーが損なわれないよう匿名化技術がしばしば用いられる。ここで匿名化とは、特定の個人に対するプライバシー侵害のリスクを下げるためにデータを加工する処理を指すものとする。匿名化として例えば、名前など特定の個人を直接識別しやすいデータ（識別子）をパーソナルデータから削除する方法がある。さらに年齢や性別など、特定の個人を絞り込めるデータ（準識別子)についても、一般化(例えば年齢を年代に変更)や撹乱(例えば性別を10%の確率で入れ替え)などを行う方法もある。どの程度一般化や撹乱などを行うべきか、いくつかの指標が提案されている。Sweeneyは、同じ準識別子の組合せを持つデータがk個以上となるように匿名化を行う指標「k-匿名性」を提案した(非特許文献１）。図１は、各個人のパーソナルデータが各行（各レコード）に記されている表形式のパーソナルデータのセット（以下、パーソナルデータセットという）を例示する図である。図１の例において、名前を識別子、性別と年齢を準識別子とする。このとき、識別子(名前)の列の値を削除し、さらに準識別子(性別、年齢)の列の値がk個以上同じとなるようデータを加工すれば、k-匿名性を満たすデータが得られる。図２は、レコードの一部削除により2-匿名性(k-匿名性のkの値を2としたもの)を満たした例を示す図である。図３は、準識別子の値の一般化により2-匿名性を満たした例を示す図である。なお図２、図３においてハッチングを施したセルは、該当セル内のデータ（値）の削除を意味するものとする。これにより、例えばパーソナルデータセットに含まれるChrisの性別と年齢(M,30)を知っていても、レコードを一意に識別できないため、Chrisの年収（属性値）を知ることが一般に難しくなる。図２、図３の例では、Chrisの年収が$57Kか$81Kのどちらか分からない。
【０００３】
しかしレコードを一意に識別できなくても、候補のレコードの年収が全て同じ値であれば年収を知られてしまう。また候補のレコードのほとんどの年収が同じであれば、高い確率で年収を推定できてしまう。このように匿名化したパーソナルデータセット（以降、単に匿名化データと呼ぶ）の属性値の偏りから特定の個人のデータを推定することを同種攻撃（homogeneity attack）と呼ぶ。同種攻撃の対策としてWongらは、k-匿名性を満たしつつ、αを超える割合で属性値が同じ値とならないことを指標とする「(α,k)-匿名性」を提案した(非特許文献２）。例えば図２、図３の例からChrisの年収は$57Kか$81Kのどちらかとなり、どちらも同じ割合のため、Chrisの年収に関しては(0.5,2)-匿名性を満たす。
【０００４】
k-匿名性のその他の問題点として、例えば「Chrisの年収は$60K以下」ということを知っていれば、Chrisの年収は$57Kであることが分かってしまうことが指摘されている。このように匿名化データと元々知っている情報から特定の個人のデータを推定することを背景知識攻撃（background knowledge attack）と呼ぶ。背景知識攻撃の対策としてTrutaらは、k-匿名性を満たしつつ、候補のレコードがp通り以上の属性値を持つことを指標とする「p-センシティブk-匿名性」を提案した(非特許文献３）。例えば図２の例ではChrisの年収に関して2-センシティブ2-匿名性を満たす。
【０００５】
一方、Evfimievskiらは匿名化したパーソナルデータセットの開示前後の知識の差を指標とする「ρ1-to-ρ2プライバシー侵害」を提案した（非特許文献４）。X,Yをそれぞれ匿名化前後のパーソナルデータセットの確率変数、Q(x)を匿名化前のデータを入力とする述語関数としたとき、0<ρ1<ρ2<1を満たす定数ρ1,ρ2について
【０００６】
【数１】
0006445415.tif 000002
【０００７】
となるとき、yの開示はρ1-to-ρ2プライバシー侵害と見なす。ここでPr(Q(X))はQ(X)が真と推定できる確率（事前確率）であり、この事前確率を例えば「Chrisの年収が$60K以下であることが真と推定できる確率」とすれば、「Chrisの年収が$60K以下であることが真と推定できる確率は30%」といった背景知識が考えられる。そしてPr(Q(X)|Y=y)は匿名化データyの開示によってQ(X)が真と推定できる確率（事後確率）であり、この事後確率を例えば「匿名化データyの開示によってChrisの年収が$60K以下であることが真と推定できる確率」とすることができる。例えばこの事後確率が60%であれば、匿名化データyの開示によって事後確率（60%）が背景知識による事前確率（30%）よりも上昇し、新たな知識が得られたことを意味する。
【０００８】
「ρ1-to-ρ2プライバシー侵害」は、yという知識が与えられることで、Q(X)が真と推定できる確率がρ1以下からρ2以上になるとプライバシー侵害のリスクが高いと考える指標である。この指標では、Q(X)が真と推定できる確率がρ2以上からρ1以下になる場合も同様にリスクが高いと考える。
【先行技術文献】
【非特許文献】
【０００９】
【非特許文献１】L. Sweeney, "k-anonymity: A model for protecting privacy," Int' l Journal on Uncertainty, Fuzziness and Knowledge-based Systems, Vol.10, No.5, pp.557-570, 2002.
【非特許文献２】R. Wong, J. Li, A. Fu, and K. Wang, "(α,k)-anonymity: an enhanced k-anonymity model for privacy preserving data publishing," Proc. of ACM SIGKDD 2006, pp.754-759, 2006.
【非特許文献３】T.M. Truta and B. Vinay, "Privacy protection: p-sensitive k-anonymity property," Proc. of 22nd IEEE Int’l Conf. on Data Engineering Workshops, 2006.
【非特許文献４】A. Evfimievski, J. Gehrke, and R. Srikant, "Limiting privacy breaches in privacy preserving data mining," Proc. of PODS '03, pp.211-222, 2003.
【発明の概要】
【発明が解決しようとする課題】
【００１０】
前述の通り、匿名化に対する指標は様々提案されている。しかし如何なる攻撃をも防ぐことは困難であることが知られており、適切で受容性の高い指標の確立と、当該指標を満たす匿名化手法が望まれる。
【００１１】
このような状況に鑑み、本発明では、同種攻撃と背景知識攻撃を防ぐための新たな指標を満たす匿名化を実行できる匿名化装置を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本発明の匿名化装置は、データセットにおける何れかのレコードの何れかの属性の属性値が第１の値となる条件付き確率が、第１の定数以下であって第２の定数以上となるように、匿名化データを生成する。
【発明の効果】
【００１３】
本発明の匿名化装置によれば、同種攻撃と背景知識攻撃を防ぐための新たな指標を満たす匿名化を実行できる。
【図面の簡単な説明】
【００１４】
【図１】各個人のパーソナルデータが各行に記されている表形式のパーソナルデータセットを例示する図。
【図２】レコードの一部削除により2-匿名性を満たした例を示す図。
【図３】準識別子の値の一般化により2-匿名性を満たした例を示す図。
【図４】実施例１の匿名化装置の構成の概要を示すブロック図。
【図５】実施例１の匿名化装置の動作の概要を示すフローチャート。
【図６】実施例１の匿名化装置の構成の詳細を示すブロック図。
【図７】実施例１の匿名化装置の動作の詳細を示すフローチャート。
【図８】確率θおよび式（６）の式変形を説明する図。
【発明を実施するための形態】
【００１５】
以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
【実施例１】
【００１６】
以下、図４、図５を参照して、実施例１の匿名化装置の構成及び動作の概要を説明する。図４に示すように、本実施例の匿名化装置１は、匿名化データを生成、出力する装置である。図５に示すように、本実施例の匿名化装置１は、パーソナルデータセットを与えられた場合の、パーソナルデータセットにおける何れかのレコード（後述するr）の何れかの属性（後述するA）の属性値が第１の値（後述するau）となる条件付き確率（後述するPr(A=au|Y=y))が、第１の定数（後述するα）以下であって第２の定数以上（後述するγ）となるように、匿名化データを生成する（Ｓ１）。
【００１７】
以下にステップＳ１について詳細に説明する。パーソナルデータセットの何れかの属性A（年収など、センシティブなデータの項目）の取り得るm個の値（属性値）をaw（ただしw=1,2,…,m）とする。このとき、元のパーソナルデータセットの何れかのレコード（好適には、全てのレコード）について、属性Aの属性値を推定できる確率が一定の範囲内となるような指標を定める。具体的には、Yを匿名化データの確率変数、yを匿名化データ、第１の定数α、第２の定数γを0≦γ<α≦1を満たす定数とし、Aの属性値である第１の値au（ただしu=1,2,…,m）について、yを与えられた場合に何れかのレコードの属性Aの属性値が第１の値auと推定できる条件付き確率Pr(A=au|Y=y)が、
【００１８】
【数２】
0006445415.tif 000003
および
【００１９】
【数３】
0006445415.tif 000004
【００２０】
を満たすことを新たな指標とし、匿名化装置１は、ステップＳ１において、当該指標を満足するように、匿名化データを生成する。
【００２１】
式（２）は(α,k)-匿名性同様、同種攻撃の対策となる指標である。そして式（３）は背景知識攻撃の対策となる指標であり、任意のレコードのAの属性値がauである可能性をγ以上の確率で否定できないことを保証する指標である。
【００２２】
次に、図６、図７を参照して、本実施例の匿名化装置１の構成及び動作の詳細を説明する。図６に示すように、本実施例の匿名化装置１は、パーソナルデータ記憶部１１と、撹乱係数生成部１２と、定数記憶部１３と、データ攪乱部１４を含む構成である。パーソナルデータ記憶部１１には、前述したパーソナルデータセットが記憶されている。定数記憶部１３には、前述した第１の定数α、第２の定数γが記憶されている。撹乱係数生成部１２は、条件付き確率（Pr(A=au|Y=y)）が、第１の定数（α）以下であって第２の定数（γ）以上となるように条件付き確率を計算する。図７に示すように、撹乱係数生成部１２は、前述した「何れかの」レコード（r）の属性値が第１の値（au）となる確率（Pr(A=au)）と、属性値が匿名化後に第１の値（au）から第２の値（avとする）に遷移する確率である第１の遷移確率（後述するqu,v）と、当該レコード（r）の属性値が、m個の取り得る各属性値（aw，w=1,2,…,m）となる各確率（Pr(A=aw)，w=1,2,…,m）と、m個の取り得る各属性値（aw，w=1,2,…,m）が匿名化後に第２の値（av）に遷移する確率である第２の遷移確率（後述するqw,v，w=1,2,…,m）に基づいて、条件付き確率（Pr(A=au|Y=y)）を計算し、第１、または第２の遷移確率（qu,vまたはqw,v）に基づいて撹乱係数（後述するρ）を生成する（Ｓ１２）。データ攪乱部１４は、撹乱係数（ρ）と、パーソナルデータセットに基づいて、匿名化データを生成し、出力する（Ｓ１４）。
【００２３】
以下、ステップＳ１２について詳細に説明する。ベイズの定理より、
【００２４】
【数４】
0006445415.tif 000005
【００２５】
が成り立つ。すなわち、匿名化データyを開示する前に、あるレコードのAの属性値がawと推定できる確率Pr(A=aw)と、当該レコードのAの属性値がawであるときに匿名化データがyとなる確率Pr(Y=y|A=aw)が分かれば、式（４）の値を求めることができる。そして何れかのレコード（好適には、全てのレコード）について式（４）の値を求め、その最大値が式（２）を満たし、かつ最小値が式（３）を満たすように匿名化データyを作成すればよい。
【００２６】
匿名化は例えば以下の撹乱手法を用いる。あるレコードのAの属性値を第１の値（au）としたとき、匿名化後の属性値が第２の値（av）となる確率（第１の遷移確率）を撹乱係数ρと、属性値の取り得る値の個数mを用いて、
【００２７】
【数５】
0006445415.tif 000006
【００２８】
とする。ただし、撹乱係数ρは0以上1以下の実数とする。第２の遷移確率も同様とする。すなわち、撹乱係数生成部１２は、式（２）および式（３）を満たすような撹乱係数ρの値を生成すればよい。
【００２９】
Pr(A=aw)の値は、特定のレコードの属性値の推定を試みる攻撃者の背景知識（事前知識）と考える。すなわち、撹乱係数生成部１２は、Pr(A=aw)の値を予め設定された攻撃者の事前知識に基づいて計算する。例えば、攻撃者が特定のレコードの属性値について事前に何も分からないものと設定した場合、撹乱係数生成部１２は、属性値の分布が一様分布に従うものとして、各確率（Pr(A=aw)，w=1,2,…,m）を取得してもよい。この場合、攻撃者が属性値の分布は一様であると仮定したものと設定し、例えばPr(A=aw)=1/m、あるいはこれに類似の値とすることができる。また、攻撃者が元のパーソナルデータセットにおける各属性値（aw，w=1,2,…,m）の頻度を知っているものと設定した場合、撹乱係数生成部１２は、パーソナルデータセットにおける各属性値（aw，w=1,2,…,m）の頻度に基づいて、各確率（Pr(A=aw)，w=1,2,…,m）を取得してもよい。
【００３０】
最後にPr(Y=y|A=aw)の値について説明する。あるレコードrの属性Aの値がawであるときに匿名化データがyとなる確率を求める。式（２）および式（３）を最も満たしにくい匿名化データyは、yの属性Aの値が最も偏っている場合、すなわち全てのレコードの属性Aの値がすべて等しい場合である。yの属性Aの値が最も偏っている例について図８に例示した。図８に示すようなyについてPr(Y=y|A=aw)を求める。各レコードの属性Aの値は独立と仮定し、yの全レコードの属性Aの値を第２の値（av）とし、yにおいてレコードr以外のレコードの属性Aの値が全て第２の値（av）となる確率をθとする（図８参照）。すると式（４）は以下の式（６）のように変形できる。
【００３１】
【数６】
0006445415.tif 000007
【００３２】
式（６）は、ステップＳ１２に登場する、何れかのレコードの属性値が第１の値となる確率（Pr(A=au)）、第１の遷移確率（qu,v）、何れかのレコードの属性値が各属性値となる各確率（Pr(A=aw)，w=1,2,…,m）、第２の遷移確率（qw,v，w=1,2,…,m）を用いた表現となっていることに注意する。式（６）に式（５）を代入し、攻撃者の背景知識Pr(A=aw)を決めてやることで式（２）および式（３）を満たす撹乱係数ρを決定することができる。
【００３３】
図８の例、および式（６）では、匿名化データyの属性Aの値が最も偏っている場合に注目した式変形を行ったが、上記とは異なるアプローチをとることもできる。具体的には、元のパーソナルデータセットが上記指標（式（２）および式（３））を最も満足しにくい場合として、元のパーソナルデータセットの属性値を全て等しい値（atとする）とした場合を考える。この場合、匿名化データyの期待値における属性値の頻度の割合は、式（５）によりqt,vで与えられる。従ってこの場合、撹乱係数生成部１２は、
【００３４】
【数７】
0006445415.tif 000008
【００３５】
により、条件付き確率を計算する。式（７）においても、ステップＳ１２に登場する、何れかのレコードの属性値が第１の値となる確率（Pr(A=au)）、第１の遷移確率（qu,v）、何れかのレコードの属性値が各属性値となる各確率（Pr(A=aw)，w=1,2,…,m）、第２の遷移確率（qw,v，w=1,2,…,m）が用いられていることに注意する。さらには、元のパーソナルデータセットの属性値の分布がある種の条件を満たすと仮定し、当該分布から匿名化データyの期待値における属性値の頻度の割合を求め、それを基に式（７）同様に条件付確率を求めても良い。この場合、ある種の条件を満たすように元のパーソナルデータセットを加工し、当該加工データを匿名化すれば良い。
【００３６】
なお本明細書では、パーソナルデータセットの匿名化を前提に説明を進めたが、匿名化に用いるデータは必ずしもパーソナルな性質を有していなくてもよい。本明細書に開示した発明は、データセット全般の匿名化に用いることができる。
【００３７】
＜補記＞
本発明の装置は、例えば単一のハードウェアエンティティとして、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ハードウェアエンティティの外部に通信可能な通信装置（例えば通信ケーブル）が接続可能な通信部、ＣＰＵ（Central Processing Unit、キャッシュメモリやレジスタなどを備えていてもよい）、メモリであるＲＡＭやＲＯＭ、ハードディスクである外部記憶装置並びにこれらの入力部、出力部、通信部、ＣＰＵ、ＲＡＭ、ＲＯＭ、外部記憶装置の間のデータのやり取りが可能なように接続するバスを有している。また必要に応じて、ハードウェアエンティティに、ＣＤ−ＲＯＭなどの記録媒体を読み書きできる装置（ドライブ）などを設けることとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
【００３８】
ハードウェアエンティティの外部記憶装置には、上述の機能を実現するために必要となるプログラムおよびこのプログラムの処理において必要となるデータなどが記憶されている（外部記憶装置に限らず、例えばプログラムを読み出し専用記憶装置であるＲＯＭに記憶させておくこととしてもよい）。また、これらのプログラムの処理によって得られるデータなどは、ＲＡＭや外部記憶装置などに適宜に記憶される。
【００３９】
ハードウェアエンティティでは、外部記憶装置（あるいはＲＯＭなど）に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてメモリに読み込まれて、適宜にＣＰＵで解釈実行・処理される。その結果、ＣＰＵが所定の機能（上記、…部、…手段などと表した各構成要件）を実現する。
【００４０】
本発明は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、上記実施形態において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
【００４１】
既述のように、上記実施形態において説明したハードウェアエンティティ（本発明の装置）における処理機能をコンピュータによって実現する場合、ハードウェアエンティティが有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記ハードウェアエンティティにおける処理機能がコンピュータ上で実現される。
【００４２】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等を、光磁気記録媒体として、ＭＯ（Magneto-Optical disc）等を、半導体メモリとしてＥＥＰ−ＲＯＭ（Electronically Erasable and Programmable-Read Only Memory）等を用いることができる。
【００４３】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【００４４】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００４５】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、ハードウェアエンティティを構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【図１】
0006445415.tif 000009
【図２】
0006445415.tif 000010
【図３】
0006445415.tif 000011
【図４】
0006445415.tif 000012
【図５】
0006445415.tif 000013
【図６】
0006445415.tif 000014
【図７】
0006445415.tif 000015
【図８】
0006445415.tif 000016