K-匿名性
k-匿名化はランダム性を含まないため、攻撃者は個人に対して害意のある推測が可能である。たとえば19歳の愛知県在住の鈴木が上のリストに含まれていることを知っている場合、彼の疾患がガン、心血管疾患、ウイルス感染症のいずれかであるといえる。
k-匿名化は高次元のデータの匿名化には良い方法ではない。例として、4つの時空間点があれば携帯電話の単一性( E 4 {\displaystyle {\mathcal {E}}_{4}} , k-匿名性 k = 1 {\displaystyle k=1} のとき)は95%の割合で満たされるということが示されている。
k-匿名性は不釣合な抑制やそのデータを代表するものではないものによる一般化により、データの結果を歪めることもある 。k-匿名化における抑制や一般化のアルゴリズムを改めることで、こういった歪曲を避けられる。
また、k-匿名性には以下のような再識別を可能にする欠陥が知られている。
下の匿名化した表においては、「名前」のすべての値と「宗教」のすべての値を「*」で置換した。
一般化: この処理では、個々の属性値を広い範囲に置換する。たとえば、年齢の「19歳」は「10代」に、「23歳」は「20代」にといった具合である。
以下に匿名化した表を示す。
同一の準識別子の組み合わせをもつ同値類は4つある。
このデータは「年齢」「性別」「居住県」において2−匿名性を達成している。なぜならば、これらの属性の組み合わせではどの組み合わせにおいても2人以上になるためである。どの準識別子の組み合わせでも、k-匿名性を満たすデータセットにおいてはk人以上のレコードが該当する。
MeyersonとWilliamsは2004年に最適なk-匿名化はNP困難な問題であることを示したが、2005年にBayardo、Agrawalにより示されたk-最適化のようなヒューリスティックな解法はしばしば良い結果を生み出す。 概ねO(log k)の計算量であるという証明のある、k-匿名化問題を解くことができる実用的な近似アルゴリズムがKenigとTassaによって示された。