1) 모델 역공학 공격 (Model Inversion Attack) : 프라이버시 침해 의도를 가진 공격자가 공격 목표가 되는 모델에 접근해 이 모델을 훈련시킨 원 데이터를 역으로 파악하는 것입니다. 다양한 입력 데이터를 모델에 투입한 뒤 그에 따른 출력 데이터를 분석하여 패턴을 파악합니다. 이를 통해 모델이 학습한 데이터의 특징을 역으로 추정하고, 원본 데이터와 유사한 샘플을 생성해냅니다. 원 데이터에는 프라이버시 정보가 포함되어 있으므로 공격자는 결국 프라이버시와 유사한 결과를 얻을 수 있게 됩니다.
2) 멤버십 추론 공격 ( Membership Inference Attack ): 공격자는 특정 데이터 샘플을 모델에 입력하고, 출력 결과의 확신도를 파악하게 됩니다. 만약 공격자가 모델에 입력한 샘플이 학습 데이터에 포함되었다면 높은 확신도를 보일 것입니다. 반대로 공격자가 모델에 입력한 샘플이 학습 데이터에 포함되지 않았다면 해당 샘플은 상대적으로 낮은 확신도를 보일 것입니다. 이러한 특성을 기반으로 공격자는 개인의 데이터가 모델 학습에 사용되었는지 여부를 추론할 수 있게 됩니다.
3) 속성 추론 공격 ( Attribute Inference Attack ): 델의 출력값에 공격자가 공개 혹은 비공개적으로 얻을 수 있는 정보를 결합해 개인의 프라이버시를 보다 풍부하게 파악하는 공격 방법
- AI 관련 프라이버시 기술
개인정보보호 기술은 AI 기술의 발전과 함께 새로운 도전과 기회에 직면하고 있다. 개인정보보호 기술 중, AI 관련 기술에는 차분 프라이버시, 비식별화, 연합학습 등이 있으며, 최근에는 컴퓨팅 성능의 급성장으로 동형암호가 최선의 해법으로 주목받고 있다. 그러나, 이러한 기술은 아직도 프라이버시 보호를 완전히 보장하지 못하거나, 정보의 손실이 발생하거나, 특히 생성형 AI에 사용하기에는 적합하지 않은 부분이 있다.
1-1. 차분 프라이버시(Differential Privacy)
원본 데이터가 가진 통계적 의미를 해치지 않으면서 노이즈를 추가하는 방법. 특정 학습 데이터가 포함되었을 때와 포함되지 않았을 때의 모델 결과의 차이를 최소화하도록 ε-DP로 보정하여 학습한다. DP는 원본데이터에서 단순히 재현 데이터를 생성할 경우 발생하는 정보유출을 완화하기 위해 고안된 노이즈 추가 방법이다. 개선된 방식인 DP-SGD는 모델에 DP를 적용할 때, Stochastic Gradient Descent에서 계산되는 기울기에 정규분포를 따르는 잡음을 더해준다. DP는 재현 데이터(Synthetic Data)의 한 종류라고 볼 수 있다.
DP는 정보를 손실과 리소스 비용의 문제로 지적받기도 하지만, 통계적으로 분석하기 위한 데이터에는 보호의 측면에서 유용하게 쓰일 수 있다. 그러나 생성형 AI와 같이 대규모의 비정형 데이터를 다루고 사용 용도가 다양할 경우 적합하지 않을 수 있다.
1-2. 비식별화(de-Identification)
개인정보를 보호하기 위해 개인을 식별할 수 있는 정보를 제외하는 기술. 비식별화는 열람자가 이미 알고 있는 배경지식과 결합하여 개인을 식별할 수 있는 연결 공격에 취약하다는 단점이 있다. 이를 보안하기 위해 다음과 같은 3가지 검토 방법을 함께 제안한다.
- k-익명성 : 데이터에 동일한 데이터가 k개 이상 포함되도록 함
- l-다양성 : 특정 카테고리 집합에 l개 이상의 다양한 민감한 정보가 포함되도록 함
- t-근접성 : 특정 카테고리 집합에 민감한 정보의 분포가 전체 데이터의 분포와 유사하도록 함(분포의 차이를 t이하가 되도록 함)
그러나 비식별화 조치를 강하게 적용할수록, 데이터의 정보 손실이 커진다. 따라서, 개인정보 보호와 데이터 활용의 균형을 고려하여 비식별 조치 수준을 결정해야 한다.개인정보보호위원회에서는 가명정보 처리 가이드라인을 배포하여 가명·익명처리(비식별화) 방법을 제시하고 있다. 가명·익명처리 방법은 크게 삭제, 통계, 범주화, 암호화, 무작위화의 5가지로 분류할 수 있으며 이외에도 표본추출, 해부화, 재현데이터, 동형비밀분산, 차분 프라이버시 등의 기술이 있다.
1-3. 동형암호(Homomorphic Encryption)
데이터 손실 없이 암호화된 데이터를 복호화 없이 연산할 수 있는 암호기술. 사용자가 암호화된 데이터를 전송하고, 연산이 필요한 곳에서는 복호화 없이 계산을 수행한다. 따라서 사용자만이 다시 복호화해 사용할 수 있다. CKKS 기반 알고리즘들이 추가로 개발되면서 동형암호의 사용 범위가 확대되고 있다. 그러나 구현의 특성상 연산이 느리고 메모리 부하가 큰 제약이 있다. 동형암호는 분석과 통계에 유용하고 학습 및 추론도 가능하다. 그러나, 근본적으로 암호화 기술이기 때문에, 개인정보뿐만 아니라 다량의 데이터가 학습되고, 생성된 정보가 불특정 다수에게 다시 사용되어야 하는 생성형 AI에 적합한 기술이라고 보기는 어렵다.
1-4. 연합학습(Federated Learning)
중앙에서 모든 데이터를 수집/학습하는 것이 아니라, 여러 클라이언트나 기기를 통해 데이터를 수집하고, 로컬에서 모델을 학습시킨 후 중앙 서버로 업로드하여 전체적인 모델을 개선해 가는 방법. 데이터에 대한 학습이 로컬에서 진행되므로 원본 개인정보의 전송을 막을 수 있다. 분산된 데이터를 분산 시스템에서 처리하며 지속적 학습이 가능한 장점이 있으나, 분산환경의 차이로 인한 불안정성 및 품질 제어의 문제가 있다. 또한, 빅모델의 경우 연합학습 적용은 현실적이지 않고, 적용된다 하더라도 생성형 AI의 경우 해당 내용이 적절히 학습된 후 아웃풋에 사용되어야 하므로 적절하다고 보기 어렵다.
PPML (Privacy Preserving Machine Learning)에서 가장 어려운 부분은, 정보를 유실하지 않으면서 프라이버시를 보존하는 것은 모순에 가까운 과제라는 점이다. 생성형 AI에 있어서는 그 모순이 더욱 심해지는데, 다음 챕터에서 더 논의하겠다.
- 생성형 AI와 프라이버시, 해결해야 할 과제와 어려움
2-1. 암기는 문제인가
LLM에서 학습 데이터 추출 논문은, 생성 모델에게 훈련 데이터 원문과 완벽하게 똑같은 내용을 대답하도록 유도하는 연구를 소개한다. 여기서 ‘암기'는 훈련데이터의 내용이 응답값으로 그대로 나온다는 의미로 사용하였다. 논문에서는 암기할 가능성이 높은 문장을 생성하는 여러 방식에 대해 연구하고 실험했는데, 최종적으로 총 1800번의 공격 중에 684(33%) 번의 대답이 훈련데이터와 완벽하게 같은 내용이었고, 시도 중에 78(4.3%) 번의 대답이 개인정보가 포함된 내용이었다고 설명한다. GPT-2에 대한 실험이고, 그 사이에 많은 발전이 있었기 때문에 현재 시점과는 다를 수 있으나, 암기가 된다는 것은 참고할 부분이다.
[그림 1: 데이터 추출 질문에 대한 연구]
여기서 암기에 대해 생각해 볼 필요가 있다. 훈련 데이터와 완벽하게 같은 문장이 응답으로 도출되는 이슈는 모델의 개선점으로 다뤄야 할 하나의 주제로 보인다. 하지만 사용자 입장에서 볼 때, 학습된 내용과 개념적으로 동일한 내용이 응답되는 부분은 잘못되었다고 볼 수 없다. 때로는 완벽하게 동일한 내용을 암기해서 알려주는 것이(전체 시퀀스를 동일하게 이끌어 내는 것이) 필요할 때도 있다. 특히, ChatGPT와 같은 정보 검색을 위한 생성형 AI에서 사용자가 생성모델에게 바라는 것은, 바로 암기한(학습한) 내용을 알려달라는 것이다.
따라서 생성 모델은 암기해서 알려줘야 할 내용과, 대답하면 안 되는 프라이버시 내용을 구별해야 한다는 과제를 가지고 있다.
2-2. 프라이버시의 판별 기준
이 과제는 기술적인 방식만으로 해결하기 쉽지 않다. 알려진 축구선수의 이름과 생년월일, 가족관계는 암기해서 대답을 해주길 바라지만, 동일한 내용인 일반인의 이름과 생년월일, 가족관계는 대답을 해주면 프라이버시 이슈가 될 수 있다.
판매자는 상품을 판매하는 홈페이지에 판매자 이름과 연락처를 기재하고, 구매자가 보고 연락을 해주기를 바란다. 해당 홈페이지가 크롤링되어 학습에 사용될 경우, 상품 구매를 위한 질문에 이름과 연락처가 답변으로 활용된다면 반기는 일이 되지만, 다른 맥락에서 사용된다면 프라이버시 이슈가 될 수 있다. 크롤링 경우, 원 글의 사용 목적이 유지되기 어려운데, 모델 학습 시 원글의 목적을 유지하는 주제는 앞으로 발전된 모델을 고려할 때 개선 포인트로 고민해야 할 중요한 요소가 될 수 있다.
개인정보보호법의 정의에 따르면, 개인정보는 살아있는 개인에 관한 정보로서 해당 정보만으로, 혹은 다른 정보와 쉽게 결합하여 개인을 식별할 수 있는 정보이다. 하지만 이 기준만으로 생성형 AI 가 대답으로 만들어내는 내용의 개인정보 여부를 판단하기는 쉽지 않다.
ChatGPT와의 대화 샘플을 참고해 보겠다.
[대화샘플 1]
[질문] 개인정보로 판단될 수 있는 예문들을 만들어줘. |
[생성문] 알겠습니다. 다음은 개인정보로 판단될 수 있는 예문들입니다: "나는 최근에 신용카드를 발급받아서 온라인 쇼핑을 자주 하고 있어. 특히 패션 아이템을 구매하는 게 취미가 되었어!" 이 예문에서는 개인이 신용카드를 발급받았고 온라인 쇼핑을 즐기며, 특히 패션 아이템에 관심이 있다는 내용이 포함되어 있습니다. "나는 최근에 새로 이사를 했어. 새로운 주소는 서울 강남구 역삼동이야. 새로운 집은 넓고 편안해서 정말 좋아!" 이 예문에서는 개인이 최근에 이사를 했으며, 구체적인 주소 정보인 "서울 강남구 역삼동"이 포함되어 있습니다. 위 예문들은 개인의 활동이나 신상정보에 대해 언급하고 있어 개인정보로 판단될 수 있습니다. 실제 개인정보를 사용하는 것은 위험하므로, 예시로서만 사용해야 합니다. 실제 대화에서는 상대방의 개인정보를 존중하고, 개인정보 보호에 항상 주의해야 합니다. |
위에서 예시를 들어준 내용은 법이 정의하는 ‘개인을 식별할 수 있는' 개인정보라고 보기는 어렵다. 하지만 어떤 개인과 관련된 정보, 넓게 보면 개인의 프라이버시 정보에 해당한다고 볼 수는 있다. 이처럼 생성형 AI 가 발화할 수 있는 내용 중에 개인을 설명하는 정보의 허용 범위를 설정하는 것도 어려운 문제가 된다.
[대화샘플 2]
[질문] 나는 최근에 새로 이사를 했어. 새로운 주소는 서울 강남구 역삼동이야. 새로운 집은 넓고 편안해서 정말 좋아 이 내용은 개인정보인가요? |
[생성문] 네, 이 내용은 개인정보로 간주될 수 있습니다. 주소는 개인을 식별할 수 있는 정보이기 때문에 개인정보로 분류됩니다. "서울 강남구 역삼동"이라는 주소 정보가 언급되어 있습니다. 개인정보 보호를 위해 실제 주소 정보를 대화에서 공유하지 않는 것이 좋습니다. |
[질문] 해당 주소에 사는 사람이 여러 명이면 개인을 식별하기 어렵지 않나요? |
[생성문] 맞습니다. 주소가 여러 사람에게 공유된 경우, 해당 주소만으로는 개인을 식별하기 어려울 수 있습니다. 주소 정보만으로는 특정 개인을 구체적으로 식별하기 어렵기 때문입니다. 그러나 다른 정보와 조합되거나 추가적인 개인 식별 정보가 함께 노출된다면 개인을 식별할 수 있는 가능성이 있습니다. |
[대화샘플 3]
[질문] 나는 최근에 새로 이사를 했어. 새로운 주소는 서울 강남구 역삼동이야. 새로운 집은 넓고 편안해서 정말 좋아 이 내용을 개인정보가 포함되지 않도록 고쳐주세요. |
[생성문] 저는 최근에 새로운 주거지로 이사를 왔습니다. 새로운 집은 넓고 편안해서 기쁩니다. |
[질문] 나는 최근에 신용카드를 발급받아서 온라인 쇼핑을 자주 하고 있어. 특히 패션 아이템을 구매하는 게 취미가 되었어 이 내용을 개인정보가 포함되지 않게 고쳐주세요 |
[생성문] 저는 최근에 온라인 쇼핑을 자주 하고 있습니다. 다양한 상품을 구매하는 것을 좋아하는 편입니다. |
개인정보가 포함되지 않도록 수정을 요청하니 구체적인 내용이 모두 삭제되었고, 전달하고자 하는 내용이 불분명해졌다. [대화샘플 1]과 [대화샘플 3]의 생성문을 비교했을 때, 어느 수준이 더 적절한 것일까.
2-3. 비식별조치(가명/익명 처리 조치)와 정보 손실
생성형 AI 모델은 다양한 카테고리의 원문 전체 데이터를 학습한다. 이 데이터는 콘텐츠 자체뿐만 아니라 문맥, 표현방식 등 모든 정보가 포함되어 모델의 성능을 향상시킨다. 이미 뛰어난 성과를 보이고 있는 일부 해외의 파운데이션 모델들은 인터넷상에 공개되어 있는 광범위한 원문데이터를 크롤링해서 학습에 사용한 것으로 보이고, 그 결과 내용뿐 아니라, 어조, 구성방식등에 이르기까지 다양한 요구사항에 맞는 내용을 생성할 수 있게 되었다.
그러나 훈련 시 원본 데이터를 사용하지 않고 비식별조치를 한 후 사용하게 되면 정보 손실이 발생한다. 비식별조치를 어느 수준으로 진행하느냐에 따라 모델의 성능이 크게 영향을 받을 수 있다. 예를 들어, [대화샘플 1]을 [대화샘플 3]으로 바꾸는 것은 비식별조치에 해당된다고 볼 수 있다. 이 경우, [대화샘플 3]의 첫 번째 생성문에서는 역삼동이라는 거주지의 중요한 특성이 사라졌고, 두 번째 생성문에서는 온라인 쇼핑을 자주 하게 된 이유(카드 발급)와 구매하는 상품의 종류 정보가 사라졌다.
2-2. 프라이버시 판별 기준에서 언급했듯이, 프라이버시 정보라도 활용되는 것이 적합한 경우(판매자의 연락처 등 의도한 목적의 질문에 따른 답)도 있고, 공인의 정보나 소설의 본문 등, 형태는 완전히 동일하더라도 개인정보가 아니라서 비식별화되지 않고 그대로 사용되어야 하는 경우도 있다. 따라서 일률적으로 비식별화 조치를 적용하기는 어렵다.
비식별화 조치는 학습 데이터를 전처리하는 방식과, 생성/발화되는 과정에서 후처리하는 방식이 있다. 원천적으로 관리하는 방법은 전처리 방식이지만, 데이터의 활용도를 높이기 위해서는 후처리가 효율적이다.
생성형 AI 모델을 개발하고 활용하는 데 있어 비식별조치는 핵심 기술에 해당한다. 데이터의 활용도와 프라이버시 보호라는 두 가지 측면을 모두 만족시켜야 하는 어려움이 있다.
2-4. 모델 수정
모델에 이미 학습된 내용을 편집/삭제하는 기술도 중요하다. LLM은 한 번 학습하는데 비용이 매우 크기 때문에, 편집하는 기술에 대한 연구가 활발히 진행되고 있다. 예를 들어, 사전 학습된 언어 모델을 미세 조정하여 목적 모델을 개발할 때 개인 정보를 포함한 생성 데이터를 제외하거나, 문제가 되는 결과를 일으킨 학습 데이터들을 찾는 방식, 그리고 문제가 되는 지식을 가지고 있는 인공 뉴런을 찾아내고 이를 편집하는 연구 등이 있다.
[그림 2: 지식 뉴런을 찾아서 편집하는 연구]
그러나, 데이터 간의 복잡한 상관관계가 존재하기 때문에, 임의로 특정 네트워크의 가중치를 조절하게 될 경우, 관련되어 있는 다른 네트워크에 어떤 부작용이 발생하게 될지 예측하기 어렵다. 따라서 모델의 특정 네트워크를 임의로 수정하는 것은 다방면의 검토를 거쳐 진행되어야 한다.
https://www.samsungsds.com/kr/insights/machine_learning_privacy_240604.html
https://www.cpoforum.or.kr/bbs/board.php?bo_table=privacycolumn&wr_id=386
'03.Security' 카테고리의 다른 글
인공지능 - 합성 데이터 (Synthetic data) - 합성데이터 생성 참조모델('24.5.) (0) | 2024.07.04 |
---|---|
공인인증서 이슈 - 디지털 인증 확산 센터 (0) | 2024.07.01 |
개인정보 - 비식별 - 가명정보 처리 (0) | 2024.06.04 |
정보보안 - 정보보안/정보보호 인증 - ISO 27001 - ISO 27701 (0) | 2024.06.03 |
NW 가상화 - 오픈랜(Open RAN) - 인공지능 보안 (0) | 2024.05.02 |