동형 암호 (Homomorphic Encryption)

암호화된 상태에서의 연산 기술.

동형 암호는 암호문에서 직접 연산을 수행할 수 있게 하는 암호화 기술로, 원래의 평문에서 수행된 연산의 결과와 동일한 결과를 복호화하여 얻을 수 있는 암호화된 결과를 생성합니다. 이 속성은 클라우드 컴퓨팅 및 아웃소싱된 연산과 같이 데이터 개인 정보 보호가 중요한 애플리케이션에 특히 유용합니다. 왜냐하면 제3자가 데이터를 전혀 복호화할 필요 없이 민감한 데이터를 처리할 수 있기 때문입니다. 동형 암호에는 부분 동형 암호(PHE), 어느 정도 동형 암호(SHE), 완전 동형 암호(FHE) 등 다양한 유형이 있습니다. FHE는 암호문에 대한 임의의 수의 덧셈 및 곱셈 연산을 허용하는 가장 강력한 유형입니다.

        graph LR
  Center["동형 암호 (Homomorphic Encryption)"]:::main
  Pre_asymmetric_encryption["asymmetric-encryption"]:::pre --> Center
  click Pre_asymmetric_encryption "/terms/asymmetric-encryption"
  Pre_lattice_based_cryptography["lattice-based-cryptography"]:::pre --> Center
  click Pre_lattice_based_cryptography "/terms/lattice-based-cryptography"
  Rel_zero_knowledge_proof["zero-knowledge-proof"]:::related -.-> Center
  click Rel_zero_knowledge_proof "/terms/zero-knowledge-proof"
  Rel_secure_multi_party_computation_smpc["secure-multi-party-computation-smpc"]:::related -.-> Center
  click Rel_secure_multi_party_computation_smpc "/terms/secure-multi-party-computation-smpc"
  Rel_confidential_computing["confidential-computing"]:::related -.-> Center
  click Rel_confidential_computing "/terms/confidential-computing"
  classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
  classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
  classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
  classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
  linkStyle default stroke:#4b5563,stroke-width:2px;

      

🧒 5살도 이해할 수 있게 설명

🔒 숫자들을 넣은 잠긴 상자가 있다고 상상해 보세요. 상자를 열어 숫자를 더하거나 곱하는 대신, 특별한 기계가 잠긴 상자에서 직접 그 수학 문제를 풀 수 있습니다. 마침내 상자를 열면, 안의 숫자들은 정확한 답이 됩니다!

🤓 Expert Deep Dive

동형 암호(HE)는 암호화된 데이터에 대한 함수 계산을 허용하는 암호학의 패러다임입니다. 이는 클라우드 서비스 제공업체와 같은 제3자가 복호화 키에 액세스할 필요 없이 암호화된 데이터를 처리하여 데이터 개인 정보를 보호할 수 있음을 의미합니다. 주요 유형에는 부분 동형 암호(PHE), 어느 정도 동형 암호(SHE), 완전 동형 암호(FHE)의 세 가지가 있습니다.

PHE 스킴은 한 종류의 연산(덧셈 또는 곱셈)만을 무제한으로 지원합니다. 예로는 Paillier(가산) 및 ElGamal(곱셈)이 있습니다.

SHE 스킴은 제한된 수의 덧셈 및 곱셈 연산을 모두 지원합니다. PHE보다 다재다능하지만 수행할 수 있는 연산의 복잡성에는 여전히 제약이 있습니다.

FHE 스킴은 중요한 발전으로, 임의의 수의 덧셈 및 곱셈 연산을 모두 허용합니다. 이를 통해 암호화된 데이터에 대해 계산 가능한 모든 함수를 실행할 수 있습니다. FHE의 주요 과제는 역사적으로 평문에서의 연산에 비해 상당한 계산 오버헤드와 성능 저하였습니다. BGV, BFV, CKKS, TFHE와 같은 최신 FHE 스킴은 이러한 오버헤드를 줄이는 데 상당한 발전을 이루어 안전한 클라우드 컴퓨팅, 개인 머신러닝, 기밀 데이터 분석과 같은 분야에서 실용적인 애플리케이션에 점점 더 적합해지고 있습니다.

🔗 관련 용어

📚 출처