기본 콘텐츠로 건너뛰기

라벨이 정보보호인 게시물 표시

차등 정보보호 - 2. 재식별 위험의 정량적 접근

차등 정보보호 - 2. 재식별 위험의 정량적 접근 재식별 위험, 어떻게 측정할 수 있을까? 데이터가 공개될 때 우리가 느끼는 '왠지 모를 불안감’을 숫자로 측정할 수 있다면 어떨까요? 놀랍게도, 프라이버시 보호 기술은 그 막연한 불안감을 구체적인 '위험도’로 계산하고 관리하는 것을 목표로 합니다. 그 실마리는 ' 한 개인의 정보가 전체 결과에 미치는 영향 ’을 살펴보는 데 있습니다. 데이터베이스에 내 정보가 추가됨으로 인해 통계 결과가 크게 달라진다면, 역으로 그 결과를 통해 나를 특정하기 쉬워진다는 의미입니다. 반대로 내 정보가 추가되어도 결과에 거의 변화가 없다면, 나는 수많은 데이터 속에 안전하게 숨을 수 있습니다. 즉, 재식별 위험을 낮추려면 개인의 정보가 결과에 미치는 영향(차이)을 최소화해야 합니다. 상황 1: N명의 데이터베이스 → 통계 결과 A 상황 2: (N+1)명의 데이터베이스 (내 정보 추가) → 통계 결과 B (A와 차이가 큼) 이러한 결과의 차이를 통제할 수 있다면, 우리는 재식별 위험을 관리할 수 있게 됩니다. 그렇다면 구체적으로 어떻게 그 차이를 줄일 수 있을까요? 해결책: '그럴듯한 부인’을 위한 확률적 장치 "마리화나를 피운 적이 있습니까?"와 같이 매우 민감한 질문에 답변해야 하는 상황을 상상해 봅시다. 모든 사람이 진실만을 답한다면, 특정인의 답변은 곧 그의 민감한 정보가 됩니다. 이때 '차등 정보보호(Differential Privacy)'라는 개념이 해법을 제시합니다. 핵심은 답변에 의도적인 노이즈(noise), 즉 무작위성을 섞는 것입니다. 예를 들어, 응답자에게 다음과 같은 규칙을 따르도록 하는 것입니다. 동전을 던집니다. 앞면이 나오면 무조건 진실을 말합니다. 뒷면이 나오면 다시 동전을 던져서, 그 결과에 따라 “예” 또는 "아니오"로 답합니다. (진실과 무관하게) 이...

차등 정보보호 - 12. 라플라스 노이즈에서 프라이버시 손실 관계식 유도

차등 정보보호(Differential Privacy)는 데이터셋에 포함된 특정 개인의 정보 유무가 분석 결과에 미치는 영향을 제한하여 개인의 프라이버시를 수학적으로 보장하는 강력한 기술입니다. 이는 질의 결과에 의도적인 '노이즈'를 추가함으로써 달성됩니다. 이때 추가되는 노이즈의 양을 결정하는 핵심 개념이 바로 전역 민감도(Global Sensitivity)입니다. 차등 정보보호와 전역 민감도의 정의 차등 정보보호(ε-Differential Privacy)는 알고리즘 $M$이 비슷한 두 데이터베이스(단 한 명의 개인 정보만 차이 나는)에 대해 거의 동일한 결과를 출력하도록 보장하는 개념입니다. 수학적으로는 다음과 같이 정의됩니다. $$ Pr[M(D) \in S] \le e^\epsilon \cdot Pr[M(D') \in S] $$ 여기서 $D$와 $D'$는 이웃 데이터베이스, $S$는 가능한 출력 결과의 집합, 그리고 ε(엡실론)은 프라이버시 손실(privacy loss)을 나타내는 매개변수입니다. ε 값이 0에 가까울수록 프라이버시 보호 수준이 높아집니다. 전역 민감도($\Delta f$)는 질의 함수 $f$가 이웃 데이터베이스에 적용될 때 나타날 수 있는 결과값의 최대 변화량을 의미합니다. 이는 데이터셋 자체와는 무관하게 오직 질의 함수에 의해서만 결정됩니다. $$ \Delta f = \max_{D, D'} \|f(D) - f(D')\|_1 $$ 전역 민감도는 차등 정보보호를 구현하기 위해 추가해야 할 노이즈의 크기를 결정하는 데 핵심적인 역할을 합니다. 전역 민감도 적용 사례: 질병 보유자 수 계산 특정 질병(예: 당뇨병)을 앓고 있는 환자 수를 계산하는 간단한 시나리오를 통해 전역 민감도를 구체적으로 살펴보겠습니다. 데이터베이스 ($D$): 병원의 환자 기록 목록 질의 함수 ($f$): 데이터베이스에서 '당뇨병' 진단을 받은 환자의 수를 계산하는 함수 (COUNT 질의) 이 질의 함수의 전역...

차등 정보보호 - 8. 임의화 응답에서 프라이버시 손실 관계식 유도(스피너만 사용)

차등 정보보호 - 8. 임의화 응답에서 프라이버시 손실 관계식 유도(스피너만 사용) 차등 정보보호(Differential Privacy)의 임의화 응답(Randomized Response) 기법에서 사용하는 스피너 모델은 사용자의 실제 답변을 확률적으로 바꾸어 프라이버시를 보호합니다. 스피너의 밝은 면이 차지하는 비율은 프라이버시 보호 수준, 즉 프라이버시 손실(Privacy Loss)과 직접적인 관계를 맺습니다. 스피너 모델의 작동 방식 먼저 스피너 모델이 어떻게 작동하는지 이해해야 합니다. 사용자가 “예” 또는 "아니오"로 답해야 하는 민감한 질문이 있다고 가정해 보겠습니다. 진실 응답 : 사용자는 스피너를 돌리기 전에 질문에 대한 자신의 실제 답변(‘예’ 또는 ‘아니오’)을 마음속으로 정합니다. 스피너 돌리기 : 스피너가 밝은 면(p의 비율)에 멈추면, 사용자는 자신의 실제 답변을 그대로 말합니다. 스피너가 어두운 면(1-p의 비율)에 멈추면, 사용자는 실제 답변의 반대 값을 말합니다. 정의를 임의화 응답에 적용하기 차등 정보보호의 일반적인 정의를 스피너를 사용하는 임의화 응답 모델에 적용해 보겠습니다. 알고리즘 M : 스피너를 돌려 답변을 결정하는 임의화 응답 절차입니다. 인접 데이터셋 D1,D2 : D1: 개인의 실제 답변이 '예(Yes)'인 경우 D2: 개인의 실제 답변이 '아니오(No)'인 경우 결과 O : 공격자가 관찰하는 것은 응답자가 최종적으로 보고한 답변입니다. 프라이버시가 가장 많이 유출되는 최악의 시나리오인 '예(Yes)'라고 응답한 경우를 가정합니다. 이제 차등 정보보호의 정의에 이 요소들을 대입합니다. P ( 보고된 답변 = ′ 예 ′ ∣ 실제 답변 = ′ 예 ′ ) P ( 보고된 답변 = ′ 예 ′ ∣ 실제 답변 = ′ 아니 오 ′ ) ≤ e ϵ \frac{P\left(보고된\ 답변='...

차등 정보보호 - 7. 임의화 응답에서 프라이버시 손실 관계식 유도(스피너+동전 사용)

차등 정보보호 - 7. 임의화 응답에서 프라이버시 손실 관계식 유도(스피너+동전 사용) 차등 정보보호(Differential Privacy)의 임의화 응답(Randomized Response) 기법에서 사용하는 스피너 모델은 사용자의 실제 답변을 확률적으로 바꾸어 프라이버시를 보호합니다. 스피너의 밝은 면이 차지하는 비율은 프라이버시 보호 수준, 즉 프라이버시 손실(Privacy Loss)과 직접적인 관계를 맺습니다. 스피너 모델의 작동 방식 먼저 스피너 모델이 어떻게 작동하는지 이해해야 합니다. 사용자가 “예” 또는 "아니오"로 답해야 하는 민감한 질문이 있다고 가정해 보겠습니다. 진실 응답 : 사용자는 스피너를 돌리기 전에 질문에 대한 자신의 실제 답변(‘예’ 또는 ‘아니오’)을 마음속으로 정합니다. 스피너 돌리기 : 스피너가 밝은 면(p의 비율)에 멈추면, 사용자는 자신의 실제 답변을 그대로 말합니다. 스피너가 어두운 면(1-p의 비율)에 멈추면, 사용자는 동전을 던지는 것과 같이 50% 확률로 ‘예’, 50% 확률로 ‘아니오’ 중 하나를 무작위로 선택하여 답합니다. 정의를 임의화 응답에 적용하기 차등 정보보호의 일반적인 정의를 스피너를 사용하는 임의화 응답 모델에 적용해 보겠습니다. 알고리즘 M : 스피너를 돌려 답변을 결정하는 임의화 응답 절차입니다. 인접 데이터셋 D1,D2 : D1: 개인의 실제 답변이 '예(Yes)'인 경우 D2: 개인의 실제 답변이 '아니오(No)'인 경우 결과 O : 공격자가 관찰하는 것은 응답자가 최종적으로 보고한 답변입니다. 프라이버시가 가장 많이 유출되는 최악의 시나리오인 '예(Yes)'라고 응답한 경우를 가정합니다. 이제 차등 정보보호의 정의에 이 요소들을 대입합니다. P ( 보고된 답변 = ′ 예 ′ ∣ 실제 답변 = ′ 예 ′ ) P ( 보고된 답변 = ′ 예 ′ ∣ 실제 답변 ...

차등 정보보호 - 3. 차등의 의미 및 수학적 정의

차등의 의미 차등 정보보호(Differential Privacy)에서 '차등(differential)'이라는 단어는 '차이(difference)'를 의미하며, 데이터베이스에 특정 개인의 데이터가 포함되거나 포함되지 않았을 때, 또는 변경되었을 때 발생하는 ' 결과의 차이를 제어 '하는 기술의 핵심 개념을 직접적으로 나타냅니다. 이 용어는 2006년 컴퓨터 과학자 신시아 드워크(Cynthia Dwork)가 발표한 논문 "Differential Privacy"에서 처음으로 공식화되었습니다. 이 개념의 핵심은 데이터베이스에 대한 질의(query) 결과가 특정 개인의 데이터 유무, 또는 변경에 따라 크게 달라지지 않도록 보장하는 것입니다. 즉, 데이터베이스에서 한 사람의 정보를 추가, 삭제, 또는 변경하더라도 분석 결과에 미치는 영향(차이)이 거의 없도록 만드는 것이 목표입니다. 이는 데이터에 임의의 노이즈(noise)를 추가하여 달성되며, 이 노이즈의 크기는 개인 데이터의 유무나 변경에 따른 결과값의 차이를 감출 수 있을 만큼 크지만, 전체 데이터의 통계적 유의미성은 해치지 않을 만큼 작게 설정 됩니다. 수학적 정의 어떤 무작위화 알고리즘 M이 ε-차등 정보보호를 만족한다는 것은, 단 하나의 데이터만 다른 임의의 두 인접 데이터셋 D1과 D2에 대해, 알고리즘 M이 출력할 수 있는 모든 결과의 집합 S에 속하는 특정 결과 O가 나올 확률이 다음 부등식을 만족한다는 의미입니다. $$ \frac {P(M\left({D}_1\right)=O)} {P(M\left(D_2\right)=O)} \le {e}^{\epsilon} $$ 알고리즘 M: 데이터를 입력받아 무작위화된 결과를 출력하는 함수 인접 데이터셋 D1, D2: 단 한 사람의 정보만 다른 데이터셋 결과 O: 알고리즘이 출력하는 값 ε(엡실론): 프라이버시 손실(Privacy Loss). 이 값이 작을수록 프라이버시 보호 수준이 높습니다.

차등 정보보호 - 5. 인접 데이터셋의 두 가지 주요 정의

차등 정보보호 - 5. 인접 데이터셋의 두 가지 주요 정의 차등 정보보호에서 인접 데이터셋(Adjacent Datasets)은 단 한 사람의 데이터만 다른 두 개의 데이터셋을 의미합니다. 이 개념은 "어떤 한 개인이 데이터셋에 포함되거나 포함되지 않더라도, 분석 결과가 거의 바뀌지 않아야 한다"는 차등 정보보호의 핵심 아이디어를 수학적으로 정의하는 기준이 됩니다. 인접 데이터셋의 두 가지 주요 정의 인접 데이터셋을 정의하는 방식에는 크게 두 가지가 있으며, 사용 사례에 따라 구분됩니다. 1. 비제한적 인접성 (Unbounded Adjacency) - 추가/삭제 가장 일반적인 정의입니다. 두 데이터셋 D1과 D2는 한 개의 레코드(데이터 행)를 추가하거나 삭제해서 서로를 만들 수 있을 때 '인접’하다고 말합니다. 수학적 표현: ∣D1ΔD2∣=1 여기서 Δ는 대칭차(Symmetric Difference)를 의미합니다. 즉, 한쪽에만 있고 다른 쪽에는 없는 원소의 개수가 1개라는 뜻입니다. 예시: 100명의 환자 데이터가 담긴 데이터셋 D1이 있다고 가정해 봅시다. D2: D1에서 특정 환자 A의 데이터를 삭제한 99명의 데이터셋 D3: D1에 새로운 환자 B의 데이터를 추가한 101명의 데이터셋 이때, (D1, D2)는 인접 데이터셋이고, (D1, D3)도 인접 데이터셋입니다. 이 정의는 데이터셋의 전체 크기가 바뀔 수 있는 전역 민감도(Global Sensitivity) 모델에서 주로 사용 됩니다. 2. 제한적 인접성 (Bounded Adjacency) - 대체 두 데이터셋의 크기(레코드 수)는 동일하지만, 단 하나의 레코드 내용만 다를 때 '인접’하다고 말합니다. 수학적 표현: 데이터셋 D1과 D2는 크기가 같고, 단 하나의 인덱스 i에서만 D1[i] ≠ D2[i]를 만족합니다. 예시: 100명의 설문조사 응답 데이터셋 D1이 있습니다. D2: D1에...

차등 정보보호 - 6. 질의 함수와 전역 민감도

"전역 민감도(Global Sensitivity)는 데이터셋 자체와는 무관하게, 오직 질의(query) 함수에 의해서만 결정된다"는 말의 의미를 차근차근 설명해 드리겠습니다. 1. 간단한 비유로 시작하기 학교 선생님이 학생들의 키를 조사한다고 상상해 봅시다. 선생님은 두 가지 질문(질의)을 할 수 있습니다. 질의 1: "우리 반 학생은 총 몇 명인가요?" (COUNT 질의) 질의 2: "우리 반 학생들의 키(cm)를 모두 더하면 얼마인가요?" (SUM 질의) 이때, '민감도'란 "학생 한 명이 전학을 오거나 갔을 때, 질문의 답이 얼마나 크게 변할 수 있는가?"를 의미합니다. 질의 1 (COUNT)의 경우: 학생 한 명이 추가되거나 빠지면, '총 학생 수'는 언제나 정확히 1만큼 변합니다. 우리 반에 어떤 학생들이 있는지, 그들의 키가 몇인지는 전혀 중요하지 않습니다. 이 질의의 민감도는 항상 1입니다. 질의 2 (SUM)의 경우: 학생 한 명이 추가된다고 상상해 봅시다. 만약 새로 온 학생의 키가 150cm라면 합계는 150만큼 변합니다. 만약 농구 선수처럼 키가 200cm인 학생이 온다면 합계는 200만큼 변합니다. 이 변화량은 '데이터셋에 추가될 수 있는 사람의 키 최댓값'에 따라 달라집니다. 만약 우리가 키의 범위를 0cm ~ 220cm로 제한한다면, 이 질의의 민감도는 최악의 경우(키가 220cm인 학생이 추가되는 경우) 220이 됩니다. 현재 학생들의 키가 몇인지 와는 상관없이, '키의 합계를 구한다'는 질의 자체가 가진 '최대 변동 가능성' 입니다. 이 비유에서 알 수 있듯이, 민감도는 '현재 데이터가 어떤가'가 아니라 '질의 자체가 가진 특성'에 의해 결정됩니다. 2. 전역 민감도의 정의와 핵심 아이디어 이제 조금 더 전문적으로 살펴보겠습니다. 이웃 데이터셋 (Neigh...

차등 정보보호 - 9. 임의화 응답 원본 통계치 추정 공식 🎲(스피너+동전 사용)

임의화 응답은 개인의 민감한 정보에 '노이즈'를 추가하여 프라이버시를 보호하면서도 전체 통계의 유의미성을 확보하는 차등 정보보호 기술입니다. 이 페이지는 다중 선택 응답 환경에서 임의화 응답이 어떻게 동작하는지 시뮬레이션합니다. 각각의 선택 항목에 대하여 독립적으로 임의화 응답을 적용하는 것이므로 단일 선택 문제와 같은 기술을 사용한다고 보시면 됩니다. ​ 작동 원리 ⚙️: 정해진 프라이버시 손실(ε)에 따라 스피너의 밝은 면의 비율(p)을 아래와 같이 정합니다. $p=\frac{\combi{e}^{\varepsilon }-1}{\combi{e}^{\varepsilon }+1}$ p = e ϵ − 1 e ϵ + 1 ​ ​ 1단계 (응답자): 각 응답자는 스피너를 돌리기 전에 질문에 대한 자신의 실제 답변('예' 또는 '아니오')을 마음속으로 정합니다. 그리고 스피너를 돌립니다. 스피너가 밝은 면에 멈추면, 응답자는 자신의 실제 답변을 그대로 말합니다. 스피너가 어두운 면에 멈추면, 응답자는 동전을 던지는 것과 같이 50% 확률로 '예', 50% 확률로 '아니오' 중 하나를 무작위로 선택하여 답합니다. 2단계 (분석가): 분석가는 보고된 응답들을 수집합니다. 개별 응답은 진실인지 거짓인지 알 수 없지만, 전체 응답으로부터 원본 통계치를 추정할 수 있습니다. 3단계 (추정): 수집된 응답으로부터 원본 응답 비율(π true )을 추정하는 공식은 다음과 같습니다. 여기서 π noisy 는 노이즈가 포함된 응답에서 '예'라고 답한 비율, n은 총 응답자 수, p는 진실 응답 확률입니다. $\pi _{estimated}=\frac{\combi{\pi }_{noisy}-0.5\times \left(1-p\right)}{p}$ π e s t i m a t e d ​ = π n o i s y ​ − 0 . 5 × ( 1 − p ) p ​ ​ 위 공식으로 추정된 비율에 총 응답자 수 n...