Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

数式を使わないプライバシー保護技術

3,497 views

Published on

数式を使わずにプライバシー保護の数理モデルと技術を説明するという難題に挑戦してみました。
 プライバシー保護入門という本を書きました。平易に書いたつもりだったのですが、後半の章には数式が出ており、数理的なことが苦手な方や、文系の方には、とりつきにくい内容になっていたようです。
そこで、プライバシー保護技術の数理モデルを数式を使わずに直感的に理解できるスライドを作ろうと思い立って、まとめたスライドです。法律、制度に関係する仕事をされている方にもエッセンスを理解していただけるとありがたいです。

Published in: Law
  • Hello! Get Your Professional Job-Winning Resume Here - Check our website! https://vk.cc/818RFv
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

数式を使わないプライバシー保護技術

  1. 1. 数式を使わない プライバシー保護技術の概観 中川裕志
  2. 2. 反省してます プライバシー保護入門 (カバーは右図)という本を書 きました。 平易に書いたつもりだったのですが、後半の章には数 式が出ており、数理的なことが苦手な方や、文系の方 には、とりつきにくい内容になっていたようです。 各章第1節だけは直感的な説明はしたのですが、 やはり数式拒否感は強いらしく。。。。 そこで、プライバシー保護技術の数理モデルを数式を 使わずに直感的に理解できるスライドを作ろうと思い 立ちました。 その結果が次にページ以降です。
  3. 3. 扱っている内容 • プライバシー保護技術の大雑把な項目概要 を次のページの図にしました。 – このスライドの内容の目次になります。 • 各項目の詳細は個別項目で説明します。
  4. 4. 誰のプライバシー? 質問者 DB中に個人データがある個人 質問の改変 準同型公開 鍵暗号 Private IR ダミー混ぜ 意味保存し た変換 質問分解 秘密計算: 質問者の公開鍵 で質問、DBとも暗 号化し、暗号化し たままで検索 方法? 何に細工をする? DB 応答するか どうか 質問監査 応答 雑音加算 差分プライバシー =雑音の大きさの 数理モデル 決定的 vs 確率的 同じ属性値 を持つ人が 多数いるよ うに変形 k-匿名化 l-多様化 t-近接性 anatomy 仮名化:個人IDを乱数化 1/k-匿名化、 無名化 プライバシー保護技術 見取り絵図
  5. 5. 誰のプライバシー? 質問者 DB中に個人データがある個人 質問の改変 準同型公開 鍵暗号 Private IR ダミー混ぜ 意味保存し た変換 質問分解 秘密計算: 質問者の公開鍵 で質問、DBとも暗 号化し、暗号化し たままで検索 方法? 何に細工をする? DB 応答するか どうか 質問監査 応答 雑音加算 差分プライバシー =雑音の大きさの 数理モデル 決定的 vs 確率的 同じ属性値 を持つ人が 多数いるよ うに変形 k-匿名化 l-多様化 t-近接性 anatomy 仮名化:個人IDを乱数化 1/k-匿名化、 無名化 プライバシー保護技術 見取り絵図
  6. 6. 情報検索における質問者の プライバシー保護: Private Information Retrieval
  7. 7. 情報検索における 利用者プライバシー保護の動機  プライバシー保護というとデータベース中の個人情報の保護 ばかりに注目が集まりますが、それだけではありません! • Knowledge-based scheme to create privacy-preserving but semantically-related queries for web search engines – David Sanchez, Jordi Castella-Roca, Alexandre Viejo – Information Sciences, http://dx.doi.org/10.1016/j.ins.2012.06.025 • 米国では、インターネット企業は利用者プロファイルを法執行当局に販売 している。犯罪、紛争に関して – 例えば、AOLは1月あたり、1000件の要求、 – Facebookは1日当たり10から20要求に応えている。 – 米国Yahooは会員のアカウント、電子メール、を1件当たり30から40ドルで売り渡している。 • こういった販売はインターネット業者にとってかなりの収入であるが、利用者へ の見返りはないのです。 • さらに悪徳業者が盗み出す可能性も大いにあり得ます。 • こんな事情なので、検索エンジンに利用者は、自分のアイデンティを検索エン ジンに知られないようにする技術を研究し実用化する必要が出てきています。
  8. 8. 検索エンジンから 保護したい情報は何か? Anonymity:検索質問から質問者を推定されたくな い  Tor (onion routing)で保護  複数人の質問者を混ぜて検索する方法 Obfuscation(曖昧化):質問者は知られるが、検索 質問を保護 保護したいのは : – 検索質問を構成する単語集合 – 抽象的には検索意図 – Web検索の場合が多い
  9. 9. 質問者の発信位置を匿名化 • 位置情報を使ったサービス(地図表示など) において、個人の発信位置をサービスプロバ イダに知られたくないという需要あります。 • 信頼できる仲介者:Tursted Third Party:TPPを 介する方法 • 位置情報を利用する • ユーザ TTP サービスプロバイダ 利用者ID,位置情報 応答 TPPが変換した利用者ID, 位置情報 応答
  10. 10. 位置情報をグループに紛れさせる • 信頼できる仲介者:Tursted Third Party:TPPがいない場合は信頼できる利用者で グループを作ってサービスを利用 • L(n)はID=nの利用者の位置情報。IDはスマホ番号 • ID=1から順に位置情報を追加してk人目がサービス要求 • ただし、リクエストを受け取った利用者のID(=m)だけ記憶しておき、結果の集合 (下の図では[Res(1),Res(2),Res(3),Res(4)])をID=mに送り返す。注:①…⑧ • 次の利用者に送るとき、L(n)の順番を入れ替えると、利用者同士でもResと利用者 の対応は分からないようにできます。 – (順番入れ替えは自分だけ持っているので、自分に対応するResだけは認識できる。) • k-匿名化のような効果があります。 ID=1 ID=2 ID=3 ID=4 [1,L(1)] [L(1),2,L(2)] [L(1),2,L(2),3,L(3)] サービスリクエストリスト [L(1),L(2),L(3),L(4),4] サービス結果リスト [Res(1),Res(2), Res(3),Res(4)] [Res(1),Res(2), Res(3),Res(4)] [Res(1),Res(2), Res(3),Res(4)] [Res(1),Res(2), Res(3),Res(4)] 位置情報を用いる サービスプロバイ ダ ① ② ③ ④ ⑤ ⑥⑦ ⑧
  11. 11. 質問者の検索意図を検索エンジンから保護したい データベース検索で質問者の検索質問(検索意図)も保護し たい 企業研究者の研究開発における検索質問では、その検索質 問が存在すること自体を隠したい – 例:化合物AとBのペアが質問であること自体。このペアを知られ ると、企業の開発目的が推定されてしまいます。 • どの会社かは重要ではないかも。 データベース データベース中 のプライバシー 保護したい 検索質問 検索者のプライバシー保護 したい 企業研究者の研究開発にお ける検索質問は企業秘密
  12. 12. 以上の例を参考にして、 要因を分析しなおしてみると: 保護したい情報、質問の長さと構造、保護手法 • 保護したい情報 – 質問者を識別する情報 • インターネットID、氏名 • 質問者の質問を発信した場所の位置情報 • 質問した時刻 – 質問内容 • 次のスライド – 質問があったこと自体
  13. 13. 以上の例を参考にして、 要因を分析しなおしてみると: 保護したい情報、質問の長さと構造、保護手法 • 質問の長さと構造 – 単語の場合 – 1単語 – 2単語以上の単語集合 – 構造を持つ単語集合: 順序のある列、あるいは文 – 位置情報、数値情報などデータの場合
  14. 14. 以上の例を参考にして、 要因を分析しなおしてみると: 保護したい情報、質問の長さと構造、保護手法 • 質問内容の保護手法 – 文を単語分割して別々の質問に分解 • 別々の質問への応答たちから、適切な結果を切り出す作 業が必要 – 質問に紛らわしい単語(ノイズ)を混ぜる – 質問の単語を意味的に類似した別単語で置き換え • これらは、Obfuscationとも言われます。
  15. 15. 検索エンジンに質問者の真の質問Rを 見破られない方法の概観 質問者のプロファイル:X=第iトピックの 生起確率𝑝𝑖からなる多項分布で表される ダミー 質問生 成:DGS Internet 意味分類 アルゴリ ズム R,R,R D,R,D,D,R R:真の質問 D:ダミー質問 :DGSが生成 Q,Q,Q 検索エンジンには 同じような質問Q に見える 意味分類 アルゴリ ズム プロファイ ル精錬器 X Y ダミー質問 分類器 プロとダミーの ループで学習したZ Q、Q ダミーと して廃棄 Q、Q 真の質 問として プロファ イル更新 検索エンジン (攻撃者でもある)質問者 YはXの 推定値
  16. 16. 前のページの図の補足説明  質問者は真の質問Rにダミー質問生成:DGSで生成し たダミーDを混ぜて、(R+D)Qとして検索エンジン(= 攻撃者)に送ります。  検索エンジンは、送られてきた質問Qをから質問者の 質問プロファイルZを学習し、このプロファイルを利用し て、真の質問とダミーを分類します。  したがって、質問者はダミーを見破られないようにした い。また、自分のプロファイルも検索エンジンに推定さ れないようにしたいので、ダミー質問を混ぜたり、別の 単語で置き換えたりするわけです。
  17. 17. 誰のプライバシー? 質問者 DB中に個人データがある個人 質問の改変 準同型公開 鍵暗号 Private IR ダミー混ぜ 意味保存し た変換 質問分解 秘密計算: 質問者の公開鍵 で質問、DBとも暗 号化し、暗号化し たままで検索 方法? 何に細工をする? DB 応答するか どうか 質問監査 応答 雑音加算 差分プライバシー =雑音の大きさの 数理モデル 決定的 vs 確率的 同じ属性値 を持つ人が 多数いるよ うに変形 k-匿名化 l-多様化 t-近接性 anatomy 仮名化:個人IDを乱数化 1/k-匿名化、 無名化 プライバシー保護技術 見取り絵図
  18. 18. 秘密計算による検索
  19. 19. 元データ べース 暗号化 データ ベース 暗号化さ れた回答 質問者の公開鍵で暗号 化: 元データベースが大きい と、この計算時間が莫大 質問者 公開鍵暗号の公開鍵と 秘密鍵を持っています。 質問者の公開鍵で 暗号化された質問 質問者の秘密鍵で 回答を復号 準同型公開鍵暗号により 暗号化したまま検索を行 う 公開鍵 準同型公開鍵暗号は暗号化したままで、加算 (乗算)が行えます。
  20. 20. N フィンガープリント フィンガープリント表現された化 合物データベース:元の化合物 データベースがフィンガープ リント化でずいぶん小さくな ります。上の化合物Xを加 法準同型暗号化 2ba34… と公開鍵K データベースをKで暗号化し、 暗号化したままTversky係数を 用いて判定式を計算 暗号化された判定式 復号鍵で判定 式を復号化し てXとの類似 度を入手 企業などの研究者 0 1 1 0 1 1 ・ ・ ・ 0 1 1 ・ ・ ・ 0 0 1 ・ ・ ・ 1 0 1 ・ ・ ・ 産総研で開発された化合物検索の質問秘匿システム
  21. 21. 誰のプライバシー? 質問者 DB中に個人データがある個人 質問の改変 準同型公開 鍵暗号 Private IR ダミー混ぜ 意味保存し た変換 質問分解 秘密計算: 質問者の公開鍵 で質問、DBとも暗 号化し、暗号化し たままで検索 方法? 何に細工をする? DB 応答するか どうか 質問監査 応答 雑音加算 差分プライバシー =雑音の大きさの 数理モデル 決定的 vs 確率的 同じ属性値 を持つ人が 多数いるよ うに変形 k-匿名化 l-多様化 t-近接性 anatomy 仮名化:個人IDを乱数化 1/k-匿名化、 無名化 プライバシー保護技術 見取り絵図
  22. 22. 仮名化
  23. 23. 仮名化は一種類ではない: 更新頻度により、個人識別性が変化 仮名 体重 A123 60.0 A123 65.5 A123 70.8 A123 68.5 A123 69.0 仮名 体重 A123 60.0 A123 65.5 B432 70.8 B432 68.5 C789 69.0 仮名 体重 A123 60.0 B234 65.5 C567 70.8 X321 68.5 Y654 69.0 体重 60.0 65.5 70.8 68.5 69.0 同じ • 仮名変更なし • 個人識別性大 • 健康、医療な ど継続的観察 が必要な場合 は仮名変更は しない 仮名 更新 更新 頻度 大 • 仮名変更あり • 1人のデータがk 個の仮名に分割 •  1/k - 匿名化 • 更新頻度が高く なると個人識別 性が下がるが、 データの価値減 少 • データごと 仮名変更 • 同一人のデー タであると分 からない。個 人識別性 低 い 無名化 全部、同一の個人のデータですが
  24. 24. • 仮名更新なし仮名化は – 擬似ID以外の部分の個人データが長期に集積して、個人 の一意的絞り込みが容易であるうえに – 特定個人識別も可能性が高いので、同意なし第3者提供 がいかがなものかというのは理解できます。 – 条文からみると個人IDを乱数に変更しても個人識別性は 残るので匿名加工情報には該当しないと読めます。 – 実質的な話: • 擬似ID以外の個人データが擬似ID化しなければ 仮名と個人IDの対応表が揃わなければ個人識別できないです • 一方、無名化は個人IDを削除しているので、条文の解 釈上も匿名加工情報になるであろうかと。 仮名化は更新頻度が高くなると一律に 匿名加工情報でないと割り切っていいのだろうか?
  25. 25. 1レコードの長さに関する留意点 仮名 場所1 場所2 場所3 … A123 港区 渋谷 麻布 … A123 お台場 豊洲 新橋 … A123 … … …. …. A123 xy yz zw … A123 • 仮名変更なし • 個人識別性大 • 長期の滞在場 所が分かると 容易照合性あ り • 仮名消去しても長 期の滞在場所が分 かると容易照合性 あり 無名化 場所1 場所2 場所3 … 港区 渋谷 麻布 … お台場 豊洲 新橋 … … … …. …. xy yz zw … 1行(1レコード)の情報も容易照合性が失われる程度に 短く切断する必要があります。
  26. 26. 無名化 個人ID削除なので 匿名加工情報 更新なし 1データ毎 仮名の更新頻度 仮名化(更新なし) 匿名加工情報ではない 疑似IDなどから個人識 別、同定だからか 匿名加工情報匿名加工情報でない どこかに匿名加工情報 の可否を決める分岐点 があるのではないか?
  27. 27. 医療では継続性の価値が高い • 頻繁な仮名変更は匿名化の強化に役立ちます • が、データ主体である個人の継続的な個人デー タが重要である場合には、データの価値を損な います。 – 例えば、医療データにおいては、特定の個人の医療 データあるいは健康データを継続的に収集し、分析 することによって病気を特定したり、処方薬を選定し たりすることが効果的あるいは必要です。 – とはいえ、医療関係者も仮名の変更を全く拒否して いるわけではないらしい。 – 疾病毎など変更しても役立つケースあり
  28. 28. 仮名更新頻度とデータ利用可値の関係 • 仮名の更新頻度とデータ利用可値は下の図のよう な関係があります。 • ただし、応用分野によって更新頻度が高くてもそこ そこの価値がある場合もあります。 • 次のスライドに簡単に思いつくケーススタディをまと めてみました。 利用価値 更新頻度 更新なし 低い 高い 1データ毎更新 大雑把ですが、各色の例は 交通 購買 医療
  29. 29. 情報カテゴリー 仮名の更新頻度 利用価値 医療情報 更新なし 患者個人の長期病歴や生活習慣とかか る病気の関係を分析できる 更新あり 個人の追跡調査できず。ただし、短期間 の流行把握は可能 運転履歴 更新なし 個人ID収集も同意あり個人の車の状態 を把握して修理アドバイスや運転癖の指 摘できる 個人ID収集も同意なし車と運転癖との 関連のデータ分析
  30. 30. 情報カテゴリー 仮名の更新頻度 利用価値 運転履歴 低頻度 交通流の長期的傾向把握(都市設計など に使える) 1ヶ月単位くらいだと、曜日毎の交通流把 握が可能で、交通規制などに役立つかも しれない 高頻度 短い時間の間の交通流の把握のみ 購買履歴 更新なし 個人ID収集も同意あり行動ターゲッティ ング広告 個人ID収集も同意なし不明 低頻度 個人の長期間にわたる購買傾向。例えば 春にXを買った人は夏にYを買う傾向があ るというようなデータマイニング 高頻度 個人の短期的な購買傾向把握 1データ毎に更新 特定の品物の売れ行き調査
  31. 31. 仮名化でできることは? • 前のスライドの例にあるように、仮名化データでできること はおおよそ統計処理 • 当然、個人のプロファイリングにも使えない – プロファイルの類型をデータマイニングして統計データとみなし、 別のところから得た個人情報と照合してターゲット広告は可能 か? • 一度、統計情報化はされているわけだが – 個人情報保護委員会が決めるのかなあ。。。 – プロファイリングそのものをしたいときには、やっぱり同意を得 て、個人情報そのものを使うしかないですね。 – 仮名化されたデータのトレーサビリティはかなり難しい。トレー サビリティは名簿屋対策だが、名簿屋以外への負担が大きい。 その負担を立法者は意識していたのでしょうか。。。
  32. 32. 誰のプライバシー? 質問者 DB中に個人データがある個人 質問の改変 準同型公開 鍵暗号 Private IR ダミー混ぜ 意味保存し た変換 質問分解 秘密計算: 質問者の公開鍵 で質問、DBとも暗 号化し、暗号化し たままで検索 方法? 何に細工をする? DB 応答するか どうか 質問監査 応答 雑音加算 差分プライバシー =雑音の大きさの 数理モデル 決定的 vs 確率的 同じ属性値 を持つ人が 多数いるよ うに変形 k-匿名化 l-多様化 t-近接性 anatomy 仮名化:個人IDを乱数化 1/k-匿名化、 無名化 プライバシー保護技術 見取り絵図
  33. 33. k-匿名化、l-多様化、t-近接性
  34. 34. 動機  個人識別子だけを消せば匿名化できるのでしょうか?  否!  公開データからプライバシー情報を推測できる可能性あります。 Link Attackと呼びます。  匿名化の崩壊(あるいは「プライバシー保護入門 第5章)を参 照していただくとよいと思います。  医療分野では病名などの機微情報のデータベースの個々のレコード と個人名の対応表がない状況を連結不可能匿名性と呼び、匿名化 の基準にしています。  対応表がある場合は連結可能匿名化と呼びます。  これは、個人の医療情報を医療機関の外部に出さないというシステ ムであるために安全と考えられます。  ただし、医療機関間、あるいは介護ホームなど医療関連機関でも使 われる場合はもう少し検討が必要でしょう。
  35. 35. Link Attack の古典的例 • Sweeney [S01a] によれば、マサチューセッツ州知事の医療記録が 公開情報から特定可能です – MA では、収集した医療データを匿名化して公開している(下図左円 内 – 一方、選挙の投票者名簿は公開 (下図右円内) • 両者をつきあわせると • 6 人が知事と同じ生年月日 • うち3 人が男 • うち1 人が同じzipcode • よって、知事の医療記録が特定できてし まいます。 • 1990年の the US 1990 census dataによれば – 87% の人が (zipcode, 性別, 生年月日)によって一意特定可能です  この状況を改善するために k-匿名化が提案されました。 [S01a]より
  36. 36. k-匿名化
  37. 37. • データ処理業者が収集した個人データをLink Attack から保護するには2つ の方法があります。 – 方法1: 全データからランダムサンプリングしたデータベースを使ってマイニン グ処理、あるいは第3者に渡すのが有力です。 – 方法2: 全データから、疑似ID(住所、年齢、性別など)の情報を粗くして、同じ 疑似IDの人がk人以上いるように変換します。これを k-匿名化 と呼びます。 – 下の図右側では、疑似IDの記述を粗くして、k=3のk-匿名化すなわち 3-匿名化 されています。つまり、「おばあさん」、「お嬢さん」、「少年」の各3人ずつはその 中で区別できません。 3-匿名化されたデータベース 疑似IDの精度を粗 くして、同じ疑似ID の人が3人以上い るように変換
  38. 38. 疑似IDを粗くする例 • 以下の例で考えてみましょう。 • 個人情報の属性 – 個人IDそのもの(explicit identifiers) は削除:匿名化 – 疑似ID(quasi identifiers:QI)は個人特定に利用可能 – 機微情報となるデータベースの属性(病名)の値は知られたくない(保護した い) 個人ID 疑似ID 機微情報 名前 誕生日 性別 Zipcode 病名 太朗 21/1/79 男 53715 風邪 花子 10/1/81 女 55410 肺炎 光子 1/10/44 女 90210 気管支炎 次郎 21/2/84 男 02174 ねんざ 明菜 19/4/72 女 02237 エイズ プライバシー保護の目標は、個人を疑似IDから特定できないようにすること 削除
  39. 39. 識別と特定 • 混乱しやすい用語の定義をしておきます  特定:あるデータベースの疑似IDと外部のデータベー スを突き合わせると、個人IDが一意に分かり、個人を 特定できてしまうこと  識別:疑似IDを調べると、ある疑似IDを持つ人は1人で あることが分かること 識別できなければ特定はできない 識別も特定もできない場合(非識別非特定) 識別できたが特定はできない場合(識別非特定) 39
  40. 40. k-匿名性(k-anonymity) • k-匿名性によるプライバシー保護, Sweeney and Samarati [S01, S02a, S02b] • k-匿名性: 疑似IDを変形して個人を他のk-1 人に紛れさせ、 個人を識別できなくする方法です – つまり、 匿名化されたデータ ベース においては、疑似IDの組み合わせ (年齢、郵便番号、性別など) の値が同一の個人は少なくとも k 人存 在することを保証 – よって、Link Attackでも個人特定の確率は 1/k になります • 実現方法 – 属性の一般化 あるいは ある属性を持つレコードを削除 – 当面はデータの値に雑音加算することは考えません • プライバシーとデータマイニングにおける有用性のトレードオフとして – 必要以上に疑似IDを変形しないことが重要です
  41. 41. k-匿名化 の例 匿名化手法:=疑似識別子の変形法 • 一般化 – 例えば、対象分野のデータは抽象度によって階層化されてい るなら、上の階層のデータを公開 • 削除 – 特異性のあるデータ項目は削除(個別セルごと、レコードごと、 属性ごと) 誕生日 性別 Zipcode 21/1/79 男 53715 10/1/79 女 55410 1/10/44 女 90210 21/2/83 男 02274 19/4/82 男 02237 誕生日 性別 Zipcode group 1 */1/79 人 5**** */1/79 人 5**** 削除されます 1/10/44 女 90210 group 2 */*/8* 男 022** */*/8* 男 022** 元データ 2-匿名化されたデータ
  42. 42. 種々の一般化 • 全分類階層での一般化(大域的一般化精度低下大) – 一般化に使う分類階層の全てに対して一般化します – if 弁護士とエンジニアが専門家として一般化されるthen 同時に演奏家と画家 も芸術家として一般化 • 専門家 芸術家 • 弁護士 エンジニア 演奏家 画家 • 部分木 の一般化(大域的一般化) – 一般化に使う分類階層の部分木だけを一般化します – 法律家、エンジニアは一般化しても、演奏家と画家は一般化しないこ ともあり、無駄な一般化を避けています • 専門家 芸術家 • 弁護士 エンジニア 演奏家 画家 42
  43. 43. 種々の一般化 • 兄弟の片方のみ一般化(大域的一般化) – 弁護士は専門家に一般化されてもエンジニアはそのまま • 専門家 芸術家 • 弁護士 エンジニア 演奏家 画家 • 個別データ単位の一般化(局所的一般化精度低下 小) – 階層構造に当てはまるデータ全部に一般化を適用するの ではなく、 – 個別レコードないし特定のレコードデータ集合に対してだ け一般化します。 • 例えば、太郎さん(弁護士)は専門家と一般化されますが、花子さ ん(弁護士)は弁護士のままということが起きます。 43
  44. 44. この図は分割のよるk-匿名化の方法を図示します (k=2) 成功例と失敗例 incognito の例 2 個の疑似識別子属性, 7 個のデータ点 zipcode sex group 1 w. 2 tuples group 2 w. 3 tuples group 3 w. 2 tuples どのグループも1個だけ で、2- 匿名性でない どのグループも2個以上いるの で、2-匿名性 上の図では、1人のデー タを で表しています。
  45. 45. 属性を分割する順番にも いろいろあります 各次元を順次一様に 一般化 incognito [LDR05] 各次元を個別に一般化 mondrian [LDR06] 多次元まとめて一般化 topdown [XWP+06] 一般化の強さ
  46. 46. Mondrianという方法では、横軸の属 性と縦軸の属性を交互に分割します 2-匿名性 両方のグループ内の人数 ができるだけ等しくなるよう に分割
  47. 47. グループの周囲長が短くなるような グループ化 がまとまりが良い まずい一般化 長い箱 データマイニングの精度が 低い 良い一般化 正方形に近い データマイニングの精度が 高い
  48. 48. Topdown split algorithm 最も遠い2点を種にして開始 • これはヒューリスティックです • 種から2グループへ成長させます 各データ点を調べ、近くの種(あるいは種から 成長したグループ)に周囲長が最小になる 点を追加して新しいグループとします 右図では、全ての点は、元々は赤と緑に分離さ れていなかったが、矢印に示すような流れ で2グループに分離されました。 ①② ③ ③ ② ①
  49. 49. k-匿名性の問題点 • 4-匿名性 の例(右側のデータベース) • 均質性による攻撃: 最終グループは全員 「がん」なので、外部データベースと突 き合わせると、識別されていなくても「がん」だと分かります。 • 背景知識による攻撃: 第1グループで、日本人が1人いたことが知られたとしましょう。 日本人は心臓疾患にかかりにくいことが知られているので感染症だと分かります id Zipcode 年齢 国籍 病名 1 13053 28 ロシア 心臓病 2 13068 29 US 心臓病 3 13068 21 日本 感染症 4 13053 23 US 感染症 5 14853 50 インド がん 6 14853 55 ロシア 心臓病 7 14850 47 US 感染症 8 14850 49 US 感染症 9 13053 31 US がん 10 13053 37 インド がん 11 13068 36 日本 がん 12 13068 35 US がん id Zipcode 年齢 国籍 病名 1 130** <30 ∗ 心臓病 2 130** <30 ∗ 心臓病 3 130** <30 ∗ 感染症 4 130** <30 ∗ 感染症 5 1485* ≥40 ∗ がん 6 1485* ≥40 ∗ 心臓病 7 1485* ≥40 ∗ 感染症 8 1485* ≥40 ∗ 感染症 9 130** 3∗ ∗ がん 10 130** 3∗ ∗ がん 11 130** 3∗ ∗ がん 12 130** 3∗ ∗ がん 匿名化データ 4-匿名性 データ
  50. 50. l-多様性
  51. 51. • 各グループにおいて 機微情報の値がうまく管理されること が目的です。つまり、 – 均質性による攻撃を防ぐ – 背景知識攻撃を防ぐ l-多様性 (簡単な定義) あるグループが l-多様性を持つとは、 そのグループ内では機微情報に関して、少 なくとも l 種類のデータ値が存在する • グループ内にl種類の機微な値があり、できるだけ均等に出現することが 望ましいという直感を実現します
  52. 52. 52 名前 年齢 性別 病名 一郎 65 男 インフルエンザ 次郎 30 男 胃炎 三子 43 女 肺炎 四郎 50 男 インフルエンザ 五子 70 女 肺炎 六夫 32 男 インフルエンザ 七子 60 女 インフルエンザ 八郎 55 男 肺炎 九美 40 女 鼻炎 一郎 インフル 六夫 インフル 七子 インフル 四郎 インフル 三子 肺炎 五子 肺炎 八郎 肺炎 次郎 胃炎 九美 鼻炎 病名の頻 度順に並 んだ部分 データベー スに分解し ます l-多様化のアルゴリズム その1 •機微情報(下のデータベースでは病名) 毎にを 部分データベースに 分割して
  53. 53. 53 一郎 インフル 六夫 インフル 七子 インフル 四郎 インフル 三子 肺炎 五子 肺炎 八郎 肺炎 次郎 胃炎 九美 鼻炎 一郎 インフル 七子 インフル 三子 肺炎 八郎 肺炎 九美 鼻炎 六夫 インフル 四郎 インフル 五子 肺炎 次郎 胃炎 2つのグループはいずれも3種類の病名(機微情報)を含む:3-多様性 病名の頻度順に 並んだDB l-多様化のアルゴリズム その2 •大きい順に l 個の部分データベース(左側)からデータを引き出して、 右側にグループを形成
  54. 54. Anatomy • グループ化したデータを疑似IDの表と機微情報データの表に分割。対応 付けはグループIDだけ。グループ内では個人の区別無し • 3-多様性 54 グループ ID 病名 頻度 1 インフル 2 1 肺炎 2 1 鼻炎 1 2 インフル 2 2 肺炎 1 2 胃炎 1 名前: 匿名化 する QI: 年齢 QI: 性別 グルー プID 一郎 65 男 1 七子 60 女 1 三子 43 女 1 八郎 55 男 1 九美 40 女 1 六夫 32 男 2 四郎 50 男 2 五子 70 女 2 次郎 30 男 2 これらの2つの表から データマイニングする 個別の値は一般化されないので精度高
  55. 55. t-近接性
  56. 56. 56  年収(百万円単位)毎の人数の例で考えて見ましょう。  例1  この例を2グループに分けてみます。  ただし、他の疑似IDを調整してk-匿名性は満たしているとします。  グループ1,2とも500万円、1000万円の2種類の年収の人が入っている ので、2-多様性は満たしています。  しかし、各グループとも年収の違う人が1名だけなので、他の情報源があると、その 人を特定されやすくなっています。 年収 人数 グループ1 500万円 99人 1000万円 1人 グループ2 500万円 1人 1000万円 99人 年収 人数 500万円 100人 1000万円 100人
  57. 57. 57  例1  この例では、理想的には以下のようにグループ分けしたいところです。  もちろん、他の疑似IDを調整してk-匿名性は満たしているとします。  これであれば、他の情報によっても、グループ内の個人は特定さ れにくいです。  つまり、グループ内の年収毎の人数が、元のデータベース(例1) に近いことが望ましいことになります。 年収 人数 グループ1 500万円 50人 1000万円 50人 グループ2 500万円 50人 1000万円 50人 年収 人数 500万円 100人 1000万円 100人
  58. 58. 58  例2  1グループ内に全て種類の年収額を残らず入れるのが難しかったと します。そこで、下のような2つの方法を考えます。(全体の1部分だ け表示しています)  統計学で良く使われる2つの分布の間の違い(カルバックライブラー 情報量)では、方法1のグループ1と方法2のグループは差がつきま せん。  でも、直感的には、年収の偏りが酷い方法1のグループ1はうれしくな さそうです。  これは要するに、元の例2に分布から離れているからです。 年収 (万円) 200 300 400 500 600 700 800 900 1000 人数 10 10 10 10 10 10 10 10 10 年収(万 円) 200 300 400 500 600 700 800 900 1000 方法1の グループ1 人数 10 10 10 0 0 0 0 0 0 方法2の グループ1 人数 0 0 10 0 0 10 0 0 10
  59. 59.  そこで、例1や例2で示したような元の分布にできるだけ近いような分布 になるようなグループに分割したくなります。  そのために、グループを作るとき、元の分布から移動する労力の少ない 分布にするというアイデアを用います。  元の分布が場所毎の土砂の量だとしましょう。  すると、労力は、運ぶ土砂の重さ X 土砂の移動距離 になります。  こんな事情なので、この労力はEarth Mover’s distance(EMD)と呼ばれます。  元のデータから新しいグループを作るときに、必要なこの労力の総和が小さいほど良 い分布と考えます。  t-近接性とは、この労力の総和が t 以下 という条件を付けたグループ 化の方法です。  具体的なアルゴリズムは難しいので省略しますが、数理モデルに興味のある方は拙著 「プライバシー保護入門」第6章をごらんください。 59
  60. 60. k-匿名性,l-多様性,t –近接性 を組み合わせるには • k-匿名性,l-多様性,t –近接性 はバラバラに実現しているだけでは意味が薄 いので、全部を満たすようにしたいところです。 • したがって、以下のような方法が考えられます。 1. まずk-匿名化してグループ分割を行う 2. 次にグループ毎にl-多様性をチェックする 3. if l-多様性 を満たさない 4.  1.に戻って、k-匿名化で別のグループ化を行う 5. 次にグループ毎にt –近接性をチェックする 6. if t –近接性 を満たさない 7.  1.に戻って、k-匿名化で別のグループ化を行う 8. 以上を繰り返して、 k-匿名性,l-多様性,t –近接性をすべて満たすグループ分けを探し出 す。 • 当然、 k-匿名性,l-多様性,t –近接性をすべて満たすのは難しいので、妥協が 必要になるかもしれないです。 – 妥協とは、kを小さくする、 lを小さくする、 tを大きくすることを意味します。 – ただし、データの精度が下がり、データベースの価値が下がるので、塩梅は難しいことに留 意されたいところ。
  61. 61. 誰のプライバシー? 質問者 DB中に個人データがある個人 質問の改変 準同型公開 鍵暗号 Private IR ダミー混ぜ 意味保存し た変換 質問分解 秘密計算: 質問者の公開鍵 で質問、DBとも暗 号化し、暗号化し たままで検索 方法? 何に細工をする? DB 応答するか どうか 質問監査 応答 雑音加算 差分プライバシー =雑音の大きさの 数理モデル 決定的 vs 確率的 同じ属性値 を持つ人が 多数いるよ うに変形 k-匿名化 l-多様化 t-近接性 anatomy 仮名化:個人IDを乱数化 1/k-匿名化、 無名化 プライバシー保護技術 見取り絵図
  62. 62. 差分プライバシー
  63. 63. 差分データ 差分プライバシーとしてはややmisleadingですが • 上の宝石店個人の買い上げDBに最高額を質問します。(赤数字の単位は万円) • 3月10日までは買い上げ最高額=6万円だったのに、3月11日には100万円。 • の来店と買い上げを観察したり、あるいは何かの方法で知っている人が、最 高額を質問し、6万円 100万円という変化を知ると、 の買い上げ額、あるい は金持ち度合を知ることができます。 •  など顧客のプライバシーが侵害されます。 データベース:D(宝石店お買 い上げデータ:3月10日まで) 5 7 1 4 2 36 データベース:D(宝石店お買 い上げデータ:3月11日まで) 5 7 1 4 2 36 3月11日に 来店したこ とが知られ ている男 100
  64. 64. 差分データ 差分プライバシーとしてはややmisleadingですが • 前ページで示した のプライバシー漏洩は、 • D(3月10日)とD(3月11日)という2つのデータベースの差分が知られてしまうこ とにより発生します。 • ですから、 D(3月10日)とD(3月11日)の差分が質問で見破られないように、応 答に少し細工をする仕掛け:これが差分データのプライバシー保護 • 差分プライバシーとは、この考え方の一般化です。 – 隣接するデータベースの差が質問で分からないようにする数理モデル データベース:D(宝石店お買 い上げデータ:3月10日まで) 5 7 1 4 2 36 データベース:D(宝石店お買 い上げデータ:3月11日まで) 5 7 1 4 2 36 3月11日に 来店したこ とが知られ ている男 100
  65. 65. 簡単な例 データベース:D データベース:D’ 上のデータベースD,D’はデータが1個 だけ異なります。 外部からデータベースに質問をして得た応答からD,D’が異なることが分からない ように、応答に雑音を加算する方法が差分プライバシーです。  例:男女の人数をD,D’に質問することにします。  まともに応答すると、 Dの応答は 男4人、女3人  D’の応答は 男5人、女3人  D’のほうが1人男が多い の存在に気づくチャンスが生まれます。
  66. 66. 簡単な例:つづき データベース:D データベース:D’  D’のほうが1人男が多い の存在に気づくチャンスが生まれます。  そこで応答に雑音を加えます。Dの応答には(男の人数に+1)、 D’の応答には(男の人数に-1)  すると、 Dの応答は(男5,女3)、 D’の応答は(男4,女3) となり、 の存 在自体が応答からは分からなくなります。  存在自体が分からないというのは非常に強いプライバシー保護ですね。
  67. 67. 雑音の大きさ  では、いったいどのくらいの大きさの雑音加えたらよいのだろう?  上の図でX00 というのは年収(百万円単位)とする。  すると、Dの場合、年収の最高額は800万円、 D’の場合は1500万円。  年収の最高額を質問されると、 D’には高収入者 がいることが判明。  そこで、これを隠すために雑音を加えるとなると、1500万円ー800万円=700 万円くらいの大きさの雑音にしないとだめ。  つまり、 質問対象の属性(この場合は年収)の差の最大値を目安にした乱数に しなければならない。  この最大値を差分プライバシーでは 感度(sensitibity)と呼ぶ。 データベース:D データベース:D’ 1500 500 700 600 800 200 300600 500 700 600 800 200 300600
  68. 68. 簡単に言えば、差分プライバシーとは 一番類似したデータベースのペアにおいて、 つまり、1人分のレコードだけしか違わないペア 質問された属性の値に差の最大値くらいの大きさ の雑音を、質問への応答に加算する仕掛けのこと。  属性の差の最大値くらいとは、平均値、分散ともその最大値に比例するよう な確率分布にしたがう雑音という意味です。  なお、比例と言っても、比例して大きな雑音にすれば、プライバシー保護能 力はあがりますが、元のデータの有用性が失われます。  一方、小さな雑音にすると、データの有用性は失われませんが、プライバ シー保護能力は下がります。  したがって、この比例係数の選び方にいろいろ工夫が必要なところです。さ すがに、ここから先は数式が必要です。
  69. 69. 合成定理 • 当たり前のことですが、 二つの属性の各々に対して別々に雑音1,雑音 2を加え、差分プライバシーを実現すると、  データベースへの質問応答から得られる有用 性は 雑音1+雑音2 に比例して低下します。 このことの一般化を差分プライバシーでは仰々しくも「合成 定理」と呼びます。
  70. 70. サンプリングしたら? • 全データからランダムサンプリングしたデータベースの場合 • 差分プライバシーは、 の存在が質問で知られないようするの が目的 • 下の図の右側データベースのようにサンプリングされていると、サン プリングのために既に がいるかいないか分かりにくくなっている。 • したがって、同じプライバシー保護性能にするために加える雑音は サンプリング率に比例して小さなものでよい。 全員のデータベース サンプリング された データベース ある割合で少数 をランダムサン プル ?
  71. 71. 誰のプライバシー? 質問者 DB中に個人データがある個人 質問の改変 準同型公開 鍵暗号 Private IR ダミー混ぜ 意味保存し た変換 質問分解 秘密計算: 質問者の公開鍵 で質問、DBとも暗 号化し、暗号化し たままで検索 方法? 何に細工をする? DB 応答するか どうか 質問監査 応答 雑音加算 差分プライバシー =雑音の大きさの 数理モデル 決定的 vs 確率的 同じ属性値 を持つ人が 多数いるよ うに変形 k-匿名化 l-多様化 t-近接性 anatomy 仮名化:個人IDを乱数化 1/k-匿名化、 無名化 プライバシー保護技術 見取り絵図
  72. 72. 質問監査 • データベース側はデータベース中の個人デー タを守るために、場合によっては質問に対し て答えないという方法もあります。 • では、どんな場合に回答を拒否すればよいの でしょうか? – これに応えるのが質問監査です。
  73. 73. 簡単な回答拒否の例:合計 • 質問1:太郎、次郎、三郎の年収の合計は? – 回答1:2000万円です • 質問2:太郎、次郎の年収の合計は? – 回答2:1400万円です –  と答えてしまうと、三郎の年収=600万円とわかるので、 回答拒否しないといけません。 • このように、データベースの個人の年収などの属性値 の合計を質問した場合、それまでの質問回答と合わせ て、個人の属性が一意的にわかる場合は回答拒否し ます。 – 比較的簡単な行列計算で回答してよいかどうかチェックで きます。
  74. 74. 簡単な回答拒否の例:最大値 • 質問1:太郎、次郎、三郎のうち最高額の年収は? – 回答1:900万円です • 質問2:太郎、次郎のうち最高額の年収は? – 回答2:700万円です –  と答えてしまうと、三郎の年収=900万円とわかるので、回答拒否 しないといけません。 – そこで、回答2を拒否したとします。すると、質問者は回答した場合に 誰かの年収が知られるから拒否したとわかります。 – 一意的に年収が知られる三郎ですから、三郎の年収=900万円とわ かります。 • したがって、回答の可否は、このように数手先を読んで決めないと いけないので、非常に難しい数学的モデルになります – このように、確定的に質問の可否を監査する方法は、計算すべき量も 非常に大きく、あまり実用的ではありません。
  75. 75. 確率的な質問監査 • 太郎の年収が 800万円と900万円の間に入 るかどうかという区間の推定では、確率的な監 査になります。 • つまり、太郎らの年収に関するこれまでの質問と 応答が与えられたという条件で、 • 太郎の年収が800万円と900万円の間になる 確率を計算します。 • 確率的な質問監査は – この確率が予め決めておいた閾値より小さければ回 答し、大きければ回答しないという方法です。
  76. 76. 計算はやはりけっこう大変です • これまでの質問と応答のペアがT個あると、このT個 が不等式で表現できます。 – 例:1000万以上ですか? Yes.  年収>1000万 • このような不等式がT本あるとき、それらをすべて満 たす領域の大きさを計算するという確率論の計算に なるので、いろいろ効率の良い方法が使えます。 • それでも、けっこう大変です。
  77. 77. 具体的なシステム設計での懸念 • 個人データを知ろうと攻撃してくる質問者が1名なら、個人 ごとの質問・応答の履歴だけをチェックすればよいので、何 とかなるかもしれません。 • 複数の攻撃者が結託してくる場合、データベースへの過去 の全質問をチェック対象にするのでほぼ禁止的な計算量で しょう。 • 過去N個の質問にだけにチェック対象を絞る方法もあります が、攻撃者がこのNを知ってしまうと危険です。 • なかなか、実用的には使いにくい技術なので、フィットする データベース、応用などを十分に吟味しないといけないで しょう。
  78. 78. 数理モデルや実装に興味のある方は • 実際にシステムを設計し たり、開発したりする場合 • 以上の直感的説明だけで は不足すると思いますの で、 • 拙著の5章から9章をご覧 いただければ幸いです。

×