このページの本文へ

コラム

R&Dを最前線で支えるメンバーによる技術情報の発信

【セキュリティ研究員コラム】第2回 k-匿名性

【セキュリティ研究員コラム】第2回 k-匿名性

こんにちは。情報セキュリティの研究を行っている佐藤です。前回は、データの匿名化について簡単に紹介しました。今回は匿名化したデータの安全性の指標に用いられるk-匿名性についてお話したいと思います。

 

k-匿名性のお話を始める前に、少し法律のお話をします。今年の5月(2017年5月30日)に個人情報保護法の改正が行われました。この改正の目的の1つとして、データの利活用の推進があります。本改正により、個人を特定できないようにデータを加工することで、目的外の利用が可能となりました。有効的にデータを利活用することで、便利な世の中にしていくことが目的です。

 

では、どのようなデータ加工を行えば個人を特定できないようになるのでしょうか?残念ながら、明確な指標が提示されていません。こちらについては、データを提供した際のユーザの反応から、徐々に指標が定まってくるのではと思われます。

 

今回のタイトルである「k-匿名性」は、どれだけ個人を特定できないかを示す指標のうちの1つとなります。「k-匿名性」とは、ウィキペディア上では、「個人情報が含まれている公開データの情報で少なくともk-1人を区別することができないとき、公開データはk-匿名性をもつという」とあります。簡単に説明しますと、最低でも同じデータがk個存在するこということです。

 

「k-匿名性」を満たすようにデータを加工することを「k-匿名化」と言います。

 

具体的に見てみましょう。以下のデータが存在あります。

名前 年齢/性別/出身
Aさん 28/男性/神奈川県横浜市
Bさん 32/女性/東京都新宿区
Cさん 38/女性/東京都練馬区
Dさん 30/男性/埼玉県さいたま市
Eさん 24/男性/神奈川県川崎市
Fさん 37/男性/埼玉川越市
Gさん 33/女性/東京都足立区

こちらを以下のようにデータ加工します。

名前 年齢/性別/出身
* 20代/男性/神奈川県
* 30代/女性/東京都
* 30代/女性/東京都
* 30代/男性/埼玉県
* 20代/男性/神奈川県
* 30代/男性/埼玉県
* 30代/女性/東京都

(20代、男性、神奈川県)が2件、(30代、女性、東京都)が3件、(30代、男性、埼玉県)が2件となります。従いまして、このデータの場合は、「2-匿名性」を満たすと言えます。また、このようなデータをk-匿名化されたデータと呼んだりします。

 

では、k-匿名化されたデータは安全なのでしょうか?実は、それだけでは安全とは言えません。

 

少し詳しく見ていきましょう。先ほどの例の「名前」「年齢」などの情報を「属性」と呼びます。「属性」は以下の4種類に分類されます。

(1)識別子

単体で個人の特定が可能な属性。名前、マイナンバーなど。

(2)準識別子

組み合わせることで個人の特定に繋がる属性。年齢、性別、電話番号、位置情報など。

(3)機微情報

他人に知られたくない情報。病名、収入など。

 

k-匿名化ですが、主に識別子、準識別子に対して行われます。従いまして、以下のデータも「2-匿名性」を満たすと言えます。

名前 年齢/性別/出身/病名
* 20代/男性/神奈川県/がん
* 30代/女性/東京都/ノイローゼ
* 30代/女性/東京都/不眠症
* 30代/男性/埼玉県/糖尿病
* 20代/男性/神奈川県/うつ病
* 30代/男性/埼玉県/糖尿病
* 30代/女性/東京都/不眠症

このデータがA病院の患者のデータだったとしましょう。あなたは、20代男性のBさんと30代男性のCさんがA病院に通院していることを知っていたとします。Bさんは「がん」か「うつ病」のどちらかであることがわかります。また、Cさんは「糖尿病」であることがわかります。「k-匿名化」しているはずなのに、他人に知られたくない病名が推測されてしまいます。

 

今回のデータはkの値が2であったため、簡単に推測されました。これからわかるように、kの値として大きい値を使用したのかが大事になります。世の中には、k-匿名化をしているから安全ですと謳っているデータがすでにたくさんあります。しかし、具体的なkの値を示していない場合が多いです。本当に安全なのか心配になりますね。

 

k-匿名化されていれば安全と思うのではなく、どれだけ大きなkの値を使用しているかも意識してみてください。

 

今回は匿名化の安全性の指標の一つである「k-匿名化」のお話でした。次回は、別の指標についてお話ししたいと思います。

ブログ・コラム一覧へ戻る