Processing math: 100%

응용수학/암호학2020. 10. 17. 08:00
반응형

[암호학] 9. 엘 가말 암호



홀수 소수 p에 의해 Zp={0,1,...,p1}은 체이므로 Zp=Zp{0}는 곱셈에 대한 군이고 aZp를 법 p에 대한 원시근이라고 하면 다음이 성립한다.Zp={a0,a1,...,ap1},ap1=1ap2a=ap1=1,a1=ap2임의의 양의 정수 r에 대하여 ar=(a1)r라 하면 모든 정수 s에 대하여 (as)r=asr=(a1)sr이며 이것은 다음의 합동식이 성립함을 뜻한다.aa11(modp),(as)rasr(a1)sr(modp)정리. 홀수 소수 p에 대하여 곱셈군 Zp={1,2,...,p1}에서 aZp를 법 p에 대한 원시근이라 하고, 양의 정수 r에 대하여 d=ar이라 할 때, 양의 정수 k에 대하여 두 함수 E, D를 다음과 같이 정의하자.E:Zp{ak}×ZpE(x)=(ak,xdk)D:{ak}×ZpZp,D(ak,x)=(ak)rxE,D는 일대일 대응이고 E1=D이다. 

증명: 임의의 gZp에 대하여 다음이 성립한다.D(E(g))=D(ak,gdk)=(ak)rgdk=arkarkg=g따라서 두 함수 E,D는 일대일 대응이고 E1=D이다. 


엘 가말(ElGamal) 암호체계는 1985년에 엘 가말이 개발한 것으로 앞의 정리에 기반을 두고 있다. 


엘 가말 암호체계 프로토콜 


1단계: 수신자 A는 충분히 큰 소수 p와 법 p에 대한 원시근 a(2ap2)를 고르고, 1rp2인 정수 r을 선택해dar(modp)1dp1d의 값을 구하고 p,a,d는 공개하고 r은 공개하지 않는다. 

즉, 사용자 A의 공개 키는 p,a,d이고, r은 비공개 키이다. 

2단계: 송신자 U는 평문을 0gp1인 정수 g로 나타낸다. 

3단계: 송신자 U는 1kp1인 정수 k를 임의로 고르고hgdk(modp),0hp1인 정수 h를 구해 암호문 (ak,h)를 A에게 송신한다.

4단계: 수신자 A는 암호문 (ak,h)와 비밀 키 r을 이용해(ak)rh(ak)rgdk(ak)rgarkg(modp)이고 0gp1인 정수 g를 구한다.


2단계에서 s를 임의로 선택하는 이유는 암호문이 노출되는 경우 통계적 분석에 의한 공격의 가능성을 줄이려 하기 때문이다. 평문 g에 대한 암호문 (ak,h)의 길이는 a의 길이의 2배 정도이다. 


홀수 소수 p=37에 대하여 a=2는 법 p에 대한 원시근이고 2를 밑으로 갖는 법 37에 대한 이산로그표는 다음과 같다.


r=31이라 하면d=ar23122(mod37)이고 k=7이라 하면 평문 g=19에 대하여 다음이 성립한다.ak2717(mod37)hgdk192271921(mod37)(ak)r1731175(mod37)(ak)rh175119g(mod37)앞에서 보았듯이 엘 가말 암호체계는 이산로그 문제에 근거를 두고 있다.dar(modp)1dp1이므로 공개된 d를 이용하여 비밀 키 r(1rp2)를 구하는 것은 상당히 어렵다. 

엘 가말 암호체계에서 임의의 정수 k를 선택할 때 여러 개의 평문에 동일한 k를 사용하면 특정한 한 평문의 내용을 알 때 다른 평문의 내용을 모두 알아낼 수 있기 때문에 서로 다른 평문에 대하여 동일한 k를 사용하는 것을 피해야 한다. 


참고자료:

암호학과 부호이론, 박승안, 경문사            

반응형
Posted by skywalker222