엘가말 암호
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
엘가말 암호는 디피-헬만 키 교환을 사용하여 공유 비밀을 설정하고, 이를 일회용 패드로 메시지를 암호화하는 비대칭 암호 시스템이다. 이 시스템은 키 생성, 암호화, 복호화의 세 단계로 이루어지며, 안전성은 이산 로그 문제의 어려움에 기반한다. 엘가말 암호는 가소성으로 인해 선택 암호문 공격에 취약하며, 이를 보완하기 위해 추가적인 수정이나 패딩 방식이 사용된다. 효율성을 위해 확률적 암호화 방식을 사용하며, 순환군 G의 선택에 따라 안전성이 달라진다. 하이브리드 암호 시스템에서 대칭 키 암호화를 위해 사용되기도 한다.
더 읽어볼만한 페이지
| 엘가말 암호 | |
|---|---|
| 개요 | |
![]() | |
| 유형 | 공개 키 암호 방식 |
| 고안자 | 타히르 엘가말 |
| 발표 | 1985년 |
| 보안 | |
| 보안 기반 | 이산 로그 문제 |
| 상세 정보 | |
| 키 교환 | 디피-헬만 키 교환과 유사 |
| 변형 | 통합 암호화 방식 전자 서명 (엘가말 서명) |
2. 역사
엘가말 암호는 디피-헬만 키 교환 방식을 암호 방식으로 활용할 수 있도록 변형한 것이다. 공유된 난수를 사용하여 일회용 패드(OTP)를 수행하면 암호 통신이 가능하다는 점을 이용했다.[1] 엘가말 암호는 암호이지만, 이와는 별도로 디지털 서명에 응용할 수 있는 엘가말 서명도 발표되었다.[1]
엘가말 암호 알고리즘은 디피-헬만 키 교환을 수행하여 공유 비밀 를 설정하고, 이를 메시지 암호화를 위한 일회용 패드로 사용하는 방식이다. 엘가말 암호화는 키 생성, 암호화, 복호화의 세 단계로 수행된다.
3. 알고리즘
디피-헬만 키 공유 방식으로 공유된 난수를 이용해 일회용 패드를 수행하면 암호 통신이 가능하다. 엘가말 암호는 디피-헬만 키 교환 방식을 암호 방식으로 활용할 수 있도록 변형한 것이다.
3. 1. 키 생성
엘가말 암호에서 키 생성은 다음과 같은 단계로 이루어진다.
1. 차수가 소수 인 순환군 와 이의 한 생성원 를 정한다.
2. 밥은 정수 를 선택한다. ()
3. 을 계산한다.
4. 가 공개 키가 된다. 앨리스는 다음 단계를 따른다.
엘가말 암호는 디피-헬만 키 교환 방식을 암호 방식으로 활용할 수 있도록 변형한 것이다. 평문 공간은 ''G''이고, 암호문 공간은 ''G2''이다.
3. 2. 암호화
앨리스가 밥에게 메시지를 전달하는 절차는 다음과 같다.
밥은 앨리스의 공개 키 (''G'', ''q'', ''g'', ''h'') 하에서 메시지 ''M''을 다음과 같이 암호화한다.
암호문 (''c''1,''c''2)와 평문 ''m''을 모두 알고 있다면 ''c''2 · ''m''-1 = ''s''이므로 공유 비밀 ''s''를 쉽게 찾을 수 있다. 따라서 보안을 향상시키기 위해 모든 메시지에 대해 새로운 ''y''와 새로운 ''s''가 생성된다. 이러한 이유로 ''y''는 임시 키라고도 한다.
디피-헬만 키 교환 방식을 통해 공유된 난수를 사용하여 일회용 패드(OTP)를 수행하면 암호 통신이 가능하다. 엘가말 암호는 이를 이용하여 디피-헬만 키 교환 방식을 암호 방식으로 활용할 수 있도록 변형한 것이다.
엘가말 암호를 정리하면 다음과 같다.3. 3. 복호화
앨리스가 생성한 암호문 가 밥에게 주어졌을 때, 밥은 다음 과정을 통해 복호화를 진행한다.
가 올바른 방법으로 생성된 암호문이라면, 을 만족한다.
4. 안전성
제3자가 공개 키 와 암호문 를 모두 안다고 해도, 여기서 메시지 을 찾으려면 밥만이 아는 비밀 정보인 나 앨리스가 일회용으로 정한 수 를 알아야 한다. 이는 이산 로그 방정식 의 해 를 구하는 것과 같으며, 가 클수록 해를 구하기 어렵다.
엘가말 암호의 안전성은 기저 그룹 의 속성과 메시지에 사용된 패딩 방식에 따라 달라진다. 기저 순환 그룹 에서 계산적 디피-헬만 가정(CDH)이 성립하면 암호화 함수는 일방향 함수가 된다.[2]
만약 에서 결정적 디피-헬만 가정(DDH)이 성립하면 엘가말 암호는 의미적 안전성을 달성한다.[2][3] 의미적 안전성은 계산적 디피-헬만 가정만으로는 보장되지 않는다. 이 가정이 성립한다고 여겨지는 그룹은 결정적 디피-헬만 가정 문서를 참고할 수 있다.
엘가말 암호는 가소성 (암호학)을 가지므로 선택 암호문 공격에 안전하지 않다. 예를 들어 메시지 의 암호문 가 주어졌을 때, 메시지 의 유효한 암호문 를 쉽게 구성할 수 있다.
선택 암호문 안전성을 달성하기 위해서는 추가적인 수정이나 적절한 패딩 방식이 사용되어야 한다. 수정 사항에 따라 DDH 가정이 필요할 수도 있고 그렇지 않을 수도 있다.
엘가말 암호와 관련된 다른 방식들도 제안되었다. 크래머-슈프 암호 시스템은 에 대해 DDH가 성립한다고 가정하면 선택 암호문 공격에 안전하다. 이 증명은 랜덤 오라클 모델을 사용하지 않는다. 또 다른 제안된 방식은 통합 암호화 방식인 DHIES[4]인데, 이 증명에는 DDH 가정보다 더 강력한 가정이 필요하다.
엘가말 암호는 선택 평문 공격에 대해 완전 해독할 수 없다는 것(OW-CPA)과 CDH 가정이 동치이다. 또한, 엘가말 암호가 선택 평문 공격 하에서 Indistinguishability를 갖는다는 것(IND-CPA)과 DDH 가정은 동치이다.
5. 효율성
엘가말 암호는 확률적 암호화 방식이다. 이는 하나의 평문을 여러 개의 가능한 암호문으로 암호화할 수 있음을 의미하며, 일반적으로 엘가말 암호화는 평문에서 암호문으로 크기가 1:2로 확장되는 결과를 낳는다.
엘가말 암호화는 두 번의 지수 연산을 필요로 한다. 그러나 이러한 지수 연산은 메시지와 독립적이므로, 필요하다면 미리 계산해 놓을 수 있다. 복호화는 한 번의 지수 연산과 한 번의 그룹 역원 계산을 필요로 하지만, 이를 한 번의 지수 연산으로 쉽게 결합할 수 있다.
6. 순환군 G의 선택
- 순환군 ''G''에서 위수가 소수인 ''q''를 선택하고, ''q''의 비트수는 ''k''로 한다.
- ''G''의 생성원 ''g''를 선택한다.
- ''x''를 {0,...,q-1}에서 무작위로 선택한다.
- 로 계산한다.
- 를 공개키로 하고, ''x''를 비밀키로 한다.
평문 공간은 ''G''이고, 암호문 공간은 ''G2''이다. ''p''를 소수라고 할 때, ''G'' = 로 설정하면 DDH 가정이 깨지므로 이 방법은 사용하지 않는다.
이 문제를 피하면서 순환군 ''G''를 선택하는 주요 방법은 두 가지가 있다.
- 순환군 ''G''를 의 부분군으로 한다.
- 순환군 ''G''를 타원 곡선 암호에서처럼 타원 곡선 위에서 정의한다.
여기서는 첫 번째 방법을 설명한다.
- 작은 자연수 ''k''와 큰 소수 ''q''에 대해 ''p = kq+1''이 성립하는 소수 ''p''를 찾는다.
- 먼저 소수 ''q''를 선택한 후, ''p = kq + 1''이 소수인지 확인하는 방식으로 진행할 수 있다.
- 를 ''g''의 위수가 ''q''가 되도록 무작위로 선택한다.
- 는 의 부분군이 된다.
''k=2''일 때, ''p = 2q + 1''이 성립하는 소수의 쌍(''p,q'')이 무한히 존재하는지는 소수#미해결 문제에서 언급된 소피 제르맹 문제와 관련하여 아직 풀리지 않은 문제이다.
7. 응용
대부분의 공개 키 시스템과 마찬가지로, 엘가말 암호 시스템은 일반적으로 하이브리드 암호 시스템의 일부로 사용된다. 여기서 메시지 자체는 대칭 암호 시스템을 사용하여 암호화되고, 엘가말은 대칭 키만 암호화하는 데 사용된다. 이는 엘가말과 같은 비대칭 암호 시스템이 동일한 보안 수준에서 대칭 암호 시스템보다 일반적으로 느리기 때문이다. 따라서 임의로 큰 메시지를 대칭 암호로 암호화한 다음, 메시지 크기에 비해 일반적으로 매우 작은 대칭 키만 엘가말로 암호화하는 것이 더 빠르다.
디피-헬만 키 교환 방식을 암호 방식으로 활용할 수 있도록, Diffie-Hellman 키 공유 방식으로 공유된 난수를 사용하여 일회용 패드(OTP)를 수행하는 방식에서 변형되었다.
엘가말 암호는 암호 (cipher)이지만, 이와는 별도로 디지털 서명 (digital signature)에 응용할 수 있는 엘가말 서명도 발표되었다.
용어에 대해서는 암호 용어, 암호 이론 용어를 참조하라.
참조
[1]
논문
A Public-Key Cryptosystem and a Signature Scheme Based on Discrete Logarithms
https://caislab.kais[...]
[2]
웹사이트
Elgamal encryption scheme
https://crypto.cs.ui[...]
University of Illinois at Urbana-Champaign
2008-12-13
[3]
서적
Public Key Cryptography
2006-05-24
[4]
서적
Topics in Cryptology — CT-RSA 2001
2001-01-01
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com
