디피-헬만(Diffie-Hellman) 키 교환

I. 비밀키 교환 알고리즘, 디피-헬만(Diffie-Hellman) 키 교환의 개념

  • 공용 통신망에서 비밀키 공유를 위해 이산대수 계산 복잡성을 이용한 암호 키 교환 알고리즘

 

II. 디피-헬만 키 교환 알고리즘 구성요소 및 절차

가. 디피-헬만 키 교환 알고리즘 구성요소

구분구성요소요소 설명
공개
정보
소수 p– 연산에 사용되는 충분히 큰 소수
원시근 g– 1부터 p – 1 사이의 정수(원시근)
비공개난수 x, y– R1, R2 및 Key 생성 위한 내부 키
이산 대수
계산 난이도
– Key = gxy mod p 기반 Key 교환
– p, g가 알려져도 x, y를 알 수 없음

나. 디피-헬만 키 교환 절차

 

– 디피헬만 키 교환에서 대칭(공유) 키는 K = gxy mod p

 

III. 디피-헬만 키 교환 알고리즘 보안성 확보 방안

– Shor 알고리즘의 양자푸리에 변환으로 소인수분해 문제를 polynomial time 내 해결, 공개키 위협 증가로 인해 suit B 암호화 알고리즘은 모두 양자암호통신 필요

[참고] 중간자 공격 (Man-in-the-Middle Attack)

[참고2] D-H 키 교환 사례
– g = 7이고, p = 23으로 가정 (실제에서는 매우 큰 수 사용)

절차설명
① R1 계산– Alice는 x = 3 선택
– R1 = 73 mod 23 = 21
② R1 전송– Alice는 Bob에게 R1(21) 전송
③ R2 계산– Bob은 y = 6 선택
– R2 = 76 mod 23 = 4
④ R2 전송– Bob은 Alice에게 R2(4) 전송
⑤ R2 기반
K 계산
– K = 43 mod 23 = 18
⑥ R1 기반
K 계산
– K = 216 mod 23 = 18

– ⑤번과 ⑥번의 K 값(공유 키)은 모두 18로 동일
 

One Comment

콘텐츠 사용 시 출처 표기 부탁 드리고, 댓글은 큰 힘이 됩니다^^