Skip to main content
QUICK REVIEW

[논문 리뷰] Danger of using fully homomorphic encryption: A look at Microsoft SEAL

Zhiniang Peng|arXiv (Cornell University)|2019. 06. 17.
Cryptography and Data Security참고 문헌 2인용 수 4
한 줄 요약

이 논문은 널리 사용되는 완전 동형 암호화(FHE) 라이브러리인 마이크로소프트 SEAL의 심각한 보안 취약점을 폭 드러내며, 실질적인 사용에서 IntegerEncoder의 기능이 암호문 행동을 통해 평문 운영자에 대한 민감한 정보를 泄露할 수 있음을 입증한다. FHE의 이론적 보안성에도 불구하고, 이 논문은 SEAL의 인코딩 체계, 예를 들어 IntegerEncoder가 정보 泄露, CCA 공격, 무결성 문제를 야기할 수 있음을 드러내며, 기초 FHE 원리가 안전하더라도 응용 프로그램을 비실용적으로 만들 수 있음을 보여준다.

ABSTRACT

Fully homomorphic encryption is a promising crypto primitive to encrypt your data while allowing others to compute on the encrypted data. But there are many well-known problems with fully homomorphic encryption such as CCA security and circuit privacy problem. Despite these problems, there are still many companies are currently using or preparing to use fully homomorphic encryption to build data security applications. It seems that the full homomorphic encryption is very close to practicality and these problems can be easily mitigated in implementation. Although the those problems are well known in theory, there is no public discussion of their actual impact on real application. Our research shows that there are many security pitfalls in fully homomorphic encryption from the perspective of practical application. The security problems of a fully homomorphic encryption in a real application is more severe than imagined. In this paper, we will take Microsoft SEAL as an examples to introduce the security pitfalls of fully homomorphic encryption from the perspective of implementation and practical application

연구 동기 및 목표

  • 완전 동형 암호화(FHE)를 실질적으로 구현할 경우 발생할 수 있는 보안 위험을 조사하는 것, 특히 마이크로소프트 SEAL에 초점을 맞추어.
  • FHE 원리가 이론적으로는 안전하더라도 실질적 구현 방식인 SEAL과 같은 구현체에서 인코딩 및 프rotocol 설계로 인해 심각한 취약성이 발생할 수 있음을 입증하는 것.
  • FHE 보안에 대한 일반적인 가정—예를 들어 회로 비밀유지 및 CCA 저항성—이 실제 구현에서는 성립하지 않음을 강조하는 것.
  • SEAL의 인코더 설계, 특히 IntegerEncoder가 평문 운영자에 대한 정보를 泄露함으로써 개인정보 보호 보장을 약화시킬 수 있음을 보여주는 것.
  • 개인정보 보호 응용 프로그램에 FHE 라이브러리를 사용할 때 경계를 요구하며, FHE 배포에 더 강력한 보안 기준이 필요하다고 주장하는 것.

제안 방법

  • BFV 동형 암호화 방식을 중심으로 마이크로소프트 SEAL의 분석에 집중하여 IntegerEncoder 및 BatchEncoder 구성 요소를 검토.
  • 다자간 계산 시나리오(백만장자 문제)를 구성하여 인코딩 선택이 개별 입력에 대한 정보를 어떻게 泄露하는지 입증.
  • 동형 연산(덧셈 및 곱셈)이 암호문에 미치는 영향을 평가하여 서로 다른 평문 쌍이 구별 가능한 암호문을 생성함을 보여줌.
  • SEAL의 IntegerEncoder에서 인코딩 기반 정보 泄露를 억제하기 위해 노이즈 플로oding 기법이 효과가 없음을 확인.
  • FHE에서 인증 암호화의 부재를 탐색하여 공격자가 암호문을 탐지 없이 수정할 수 있음을 입증.
  • 인코딩 泄露를 방지하기 위해 IntegerEncoder가 아닌 BatchEncoder 사용을 제안하며, 후자는 단지 시범 도구로만 간주.

실험 결과

연구 질문

  • RQ1마이크로소프트 SEAL의 IntegerEncoder가 구별 가능한 암호문을 통해 평문 운영자에 대한 정보를 어느 정도 泄露하는가?
  • RQ2실제 구현체인 마이크로소프트 SEAL과 같이 FHE가 이론적으로 보장하는 바에도 불구하고, 왜 회로 비밀 유지 기능을 제공하지 못하는가?
  • RQ3FHE 라이브러리인 SEAL과 같은 환경에서 선택된 암호문 공격(cca)의 실세계적 영향은 무엇인가?
  • RQ4왜 FHE 라이브러리에서 인증 암호화가 부재하는 것이 데이터 무결성에 심각한 보안 결함이 되는가?
  • RQ5노이즈 플로oding과 같은 기존 대응 조치가 FHE 인코딩 체계에서의 정보 泄露를 효과적으로 방지할 수 있는가?

주요 결과

  • 마이크로소프트 SEAL의 IntegerEncoder는 다대일 구조를 띠며, 서로 다른 평문 쌍이 구별 가능한 암호문을 생성함으로써 운영자에 대한 정보를 泄露한다.
  • 최종 복호화 결과가 동일한 경우(예: 합 = 4)에도 불구하고, 입력 값에 따라 중간 암호문이 달라지며(예: (1,3) 대비 (2,2)), 이로 인해 공격자가 원래의 입력을 추론할 수 있다.
  • 논문은 다자간 계산 환경에서 공격자가 단지 합 암호문만 관찰하여도 개별 입력을 재구성할 수 있음을 입증하며, 이는 인코딩 泄露가 개인정보 보호를 약화시킴을 증명한다.
  • 노이즈 플로oding은 이와 같은 泄露를 완화하지 못한다. 구별 가능성은 노이즈 수준이 아니라 인코딩 구조에서 기인하기 때문이다.
  • SEAL과 같은 FHE 라이브러리는 인증 암호화를 제공하지 않아 공격자가 암호문을 탐지 없이 수정할 수 있으며, 이는 데이터 무결성을 해칠 수 있다.
  • 이 보안 위험은 SEAL에 국한되지 않으며, 다른 FHE 라이브러리에도 일반적으로 적용되며, 실질적 FHE 배포에 있어 체계적인 문제를 드러낸다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.