• 個人データの統計量を公開したときに、それからどれだけ個人の情報を推測可能か?
• 秘匿性に関する順序(右ほど秘匿性が高い)
• 決定的なクエリ応答 ≤差分プライバシー ≤完全な秘匿性
• 流れ
• 完全な秘匿性を定義する
• しかしそれは全く意味がない
• 逆に全く秘匿性がないケースも考える
• 多少情報は漏れてもよいと妥協したとき(弱い秘匿性)有用なものは何だろう
• → 差分プライバシー
概要
2/15
• 統計データベース(DB)の構成
• データ収集者Cが個人からデータを収集
• クエリの発行
• データ利用者UはCに統計解析を依頼する
• 統計量の公開
• Cはクエリに応じた統計量をUに提供する
• 例
• 年齢、出身地、疾患などを記録したDB
• クエリ「30代で肺癌に罹患した男性の数」
• 答え「2」
統計量の公開におけるプロセス
3/15
• 前ページの状態で
• クエリ:「Aを除いた人で肺癌を罹患した人数」
• 「1」ならAは肺癌
• たとえば攻撃者の知識が「Aは30代+東京」
• P=「Aさんが肺癌」
• 「30代+東京+肺癌」「30代+全国+肺癌」「東京+肺癌」などのクエリでPであると推測できる確率は変化する
• やりたいこと
• 自由度の高いクエリに対応するとき次のリスクを制御したい
• 様々な背景知識を持つ攻撃者がいる
• 対話的クエリに対応する
統計量公開におけるプライバシー
4/15
• 独立性検定
• 「遺伝的特徴Aを持つ」と「肺癌に罹患」の独立性検定
• 分割表
• 検定統計量Tが大きいほどAの有無と肺癌の罹患率に相関
• 例1:Xが自分の遺伝情報と肺癌の既往歴を提供
• 疫学者Yはたくさんの人から情報を収集し「Aと肺癌の有無は関係する」という論文Zを出版
• 問1-1 : XがAを持ち、肺癌を罹患していたときYの出版はXのプライバシー侵害か?
• No. Xが自分の情報を提供していなくてもYはほぼ同じ確率でZを得られるはず
検定量の公開とプライバシー(1/2)
Aを持つ Aを持たない
肺癌あり 𝑛1𝐴 𝑛1𝑎
肺癌なし 𝑛2𝐴 𝑛2𝑎
5/15
• 問1-2
• XがAを持ち、肺癌には罹患していない
• 保険会社WにXが自分はAを持っていることを伝えた
• このときWはZの結果を見てXの保険料を値上げしたプライバシーの侵害か?
• No.
• ただし倫理的な問題はある
• 遺伝情報に基づく差別的な扱いを禁止する遺伝情報差別法(アメリカ)
検定量の公開とプライバシー(1/2)
6/15
• SNP(一塩基多型)
• Single Nucleotide Polymorphism
• ゲノム塩基配列の中で割と変異しやすい特定の1個の塩基
• GWAS(ゲノムワイド関連解析)
• Genome-Wide Association Study
• 遺伝的特徴と形質(疾患や体質など)の関連を網羅的に調査
• 数十万個のSNPそれぞれにたいする特徴を数十万個保持
• International HapMap
• GWASの(SNPと罹患)の頻度分布を公開
• Homerさんたちの結果
• Aさんの1万個のSNPに対して、対応する頻度分布が公開されたらAさんがGWASサンプルに含まれるか決定できる
遺伝情報における例
7/15
• Aは自分の数十万個のSNPとある疾患既往歴を提供
• AのSNPの提供を受けたBは検定によりXがある疾患を罹患しているか否かを推定
• プライバシーの侵害か?
• Yes. AがSWAPに参加していなければ推測されなかった
• 「肺癌に罹患するリスクの予測」
• (今のところ)プライバシーの侵害ではない
• 「肺癌に罹患したという事実の予測」
• プライバシーの侵害
• GWASに関する分割表の公開を取りやめた
問
8/15
• ワンタイムパッド(OTP)における完全秘匿性
• 2個の入力に対する暗号文の分布が同じ
• 鍵𝑘 ← 𝐺𝑒𝑛(1𝑛),入力𝑥, 𝑥′ ∈ 0,1 𝑛,暗号文𝑦 = 𝐸𝑛𝑐 𝑥, 𝑘
• 任意の𝑥, 𝑥′ ∈ 0,1 𝑛, 𝑆 ⊆ 0,1 𝑛についてPr
𝑦=𝐸𝑛𝑐 𝑥,𝑘 ,𝑘←𝐺𝑒𝑛 1𝑛𝑦 ∈ 𝑆 = Pr
𝑦=𝐸𝑛𝑐 𝑥′,𝑘 ,𝑘←𝐺𝑒𝑛 1𝑛(𝑦 ∈ 𝑆)
• これを同じ定式化をしてみる
• 統計DBに対するクエリ応答の完全秘匿性とは
• 2個のDBに対する統計クエリの分布が同じ
• DBの集合を𝒟, クエリの出力全体を𝑌とする
• クエリ𝑞: 𝒟 → 𝑌は決定的なので確率algo 𝑚:𝑌 → 𝑌を導入
• 任意の𝐷,𝐷′ ∈ 𝒟, 𝑆 ⊆ 𝑌についてPr 𝑚 𝑞, 𝐷 ∈ 𝑆 = Pr(𝑚 𝑞, 𝐷′ ∈ 𝑆)
• ここでPr 𝑚 𝑞, 𝐷 ∈ 𝑆 = Pr𝑧←𝑚 𝑦 ,𝑦←𝑞 𝐷
(𝑧 ∈ 𝑆)
定式化に向けて
9/15
• 前述の定義ではクエリ応答は𝐷に依存してはいけない
• 𝐷と無関係な値を返す必要がある
• 使い物にならない
• OTPではよかったのに何故?
• OTPとの相違点
• OTP
• 復号者とそれ以外の攻撃者は秘密鍵𝑘を持つか否かで違う
• 統計DB
• クエリの利用者と攻撃者に情報の違いがない
• 「利用者に𝐷に関する統計情報を与え、個別の情報について完全秘匿性を達成することは不可能」(C. Dwork, 2006)
• ある意味当たり前
完全秘匿の不可能性
10/15
• クエリからDBを推測できる
• 𝑦 ← 𝑞 𝐷 , 𝑧 ← 𝑚 𝑦 に対しPr 𝑧 = 𝑚 𝑞,𝐷 = 1となる𝐷が存在
• このとき別の𝐷′について Pr 𝑧 = 𝑚 𝑞,𝐷′ = 0
• よって
Pr 𝑧 = 𝑚 𝑞,𝐷
Pr 𝑧 = 𝑚 𝑞,𝐷′= ∞
• 完全秘匿と秘匿性が全くないときの中間を考える
秘匿性が全くないケース
11/15
• ある定数𝑐 > 1が存在し任意の𝐷,𝐷′ ∈ 𝒟,応答値の集合𝑆 ⊆ 𝑌について
𝛾 𝐷, 𝐷′ ≔Pr 𝑚 𝐷, 𝑞 ∈ 𝑆
Pr 𝑚 𝐷′, 𝑞 ∈ 𝑆≤ 𝑐
• 𝛾(𝐷, 𝐷′)はここだけの定義(本には無い)
• 𝑚:𝒟 × 𝑄 → 𝑌 : (プライバシー)メカニズム
• 統計クエリの値を受け取り、秘匿性を実現するための関数
• 𝛾(𝐷, 𝐷′)が有限となる必要十分条件
Pr 𝑦 = 𝑚 𝑞, 𝐷 ≠ 0 ⇔ Pr 𝑦 = 𝑚 𝑞, 𝐷′ ≠ 0
弱い秘匿性
12/15
• 𝑚が完全にランダムなら意味がない
• 近い値はそれなりに近い値になって欲しい
• DBに”距離”𝑑(𝐷, 𝐷′)を導入
• 𝐷と𝐷′が似ているほど𝛾(𝐷, 𝐷′)は小さくなってほしい
• 改良された弱い秘匿性の定義
• ある定数𝜖 > 0が存在し任意の𝐷,𝐷′ ∈ 𝒟,応答値の集合𝑆 ⊆ 𝑌について
𝛾 𝐷,𝐷′ =Pr 𝑚 𝐷, 𝑞 ∈ 𝑆
Pr 𝑚 𝐷′, 𝑞 ∈ 𝑆≤ exp(𝜖𝑑 𝐷, 𝐷′ )
有用性を考慮する
13/15
• 距離の定義
• 𝐷,𝐷′のうち同一でないレコードの数を𝑑(𝐷, 𝐷′)とする
• 𝑑 𝐷,𝐷′ = 0なら𝐷 = 𝐷′
• 詳しい定義は後述
• 𝑚が𝜖差分プライバシーを満たすとはz
• ある定数𝜖 > 0が存在し𝑑 𝐷,𝐷′ = 1となる任意の𝐷,𝐷′ ∈ 𝒟,
応答値の集合𝑆 ⊆ 𝑌について
𝛾 𝐷, 𝐷′ =Pr 𝑚 𝐷, 𝑞 ∈ 𝑆
Pr 𝑚 𝐷′, 𝑞 ∈ 𝑆≤ exp(𝜖)
• 𝑚はDBの一人のデータを変えたぐらいではクエリ出力の分布をあまり変えない(プライバシー)メカニズム
• このとき、ある応答値が与えられたとき𝐷と𝐷′のどちらのDBから得られたものかは分からない
差分プライバシー
14/15