동형암호 (Homomorphic Encryption)

고급암호학수정일

동형암호(homomorphic encryption)는 암호문 상태 그대로 덧셈이나 곱셈 같은 연산을 할 수 있고, 그 결과를 복호화하면 원래 평문에 같은 연산을 한 결과가 나오는 암호 방식입니다. 데이터를 맡긴 서버가 내용을 보지 못한 채 계산만 대신해 주는 '프라이버시 보호 아웃소싱'을 가능하게 합니다.

자세히 알아보기

지원하는 연산 범위에 따라 세 단계로 나뉩니다.

  • 부분 동형암호(PHE): 한 종류의 연산만 무제한으로 지원합니다. 교과서적 RSA와 엘가말은 곱셈, 파이예(Paillier)는 덧셈에 대해 동형입니다.
  • 제한적 동형암호(SHE, somewhat homomorphic)·레벨 동형암호: 덧셈과 곱셈을 모두 지원하지만 연산할수록 암호문 안의 '잡음'이 커져 정해진 깊이까지만 계산할 수 있습니다.
  • 완전 동형암호(FHE): 임의의 계산을 지원합니다. 2009년 크레이그 젠트리가 잡음을 주기적으로 줄이는 '부트스트래핑'으로 처음 구성했습니다.

현대의 실용 방식은 대부분 격자 기반(RLWE 등)입니다. 정수 연산용 BFV·BGV, 근사 실수 연산용 CKKS, 불 회로와 빠른 부트스트래핑에 강한 TFHE가 대표적이며, 격자 기반이므로 양자 컴퓨터 공격에도 강할 것으로 기대됩니다. 단점은 성능입니다. 평문 계산보다 수천~수백만 배 느리고 암호문도 훨씬 크며, 계산 결과의 정확성은 따로 보장하지 않으므로 필요하면 영지식 증명 등과 결합합니다.

블록체인·암호화폐에서는

  • 기밀 스마트 컨트랙트: 퍼블릭 블록체인은 모든 상태가 공개된다는 한계가 있습니다. 동형암호로 잔액·입찰가·투표를 암호화한 채 컨트랙트가 계산하게 하는 연구와 프로젝트(예: Zama의 fhEVM 계열)가 진행 중입니다.
  • 영지식 증명과의 차이: 영지식 증명은 '계산이 맞았음'을 비밀을 드러내지 않고 증명하는 기술이고, 동형암호는 '아무도 데이터를 보지 못한 채 계산하는' 기술입니다. 두 기술은 경쟁 관계라기보다 보완 관계입니다.
  • 부분 동형성의 활용: 기밀 거래에 쓰이는 페다슨 약정, 엘가말 기반 투표 집계처럼 덧셈 동형성만 이용하는 방식은 이미 실제 시스템에 쓰이고 있습니다.

쉽게 말하면

잠긴 상자에 손만 넣을 수 있는 장갑을 달아, 상자를 열지 않고 안의 물건을 조립하게 하는 것과 같습니다.

예시

파이예 암호에서 E(5) × E(7)을 계산해 복호화하면 5 + 7 = 12가 나옵니다. 서버는 5와 7도, 12도 알지 못합니다.

같은 방식으로 여러 사람의 암호화된 투표를 모두 곱한 뒤 한 번만 복호화하면 개별 표를 공개하지 않고 찬성표의 총합만 얻을 수 있습니다.

이 글은 학습을 위한 일반 정보이며 투자 권유나 법률 자문이 아닙니다. 가상자산은 가격 변동이 크고 원금 손실 위험이 있습니다.