디피 헬먼 키 교환은 Bailey Whitfield 와 Martin Hellman 이 1976년 발표한 암호화 알고리즘으로, 인터넷 상에서 만난 적이 없는 두 사람이 도청의 위험에서 안전하게 데이터를 주고 받을 수 있게 고려된 키 교환 알고리즘이다.
앨리스와 밥이 서로 먼 거리에서 데이터를 주고 받고자 한다.
앨리스와 밥은 사전에 소수 p 와 p - 1 사이의 정수 g 를 선택한다.
해당 값은 도청되어도 상관없다.
앨리스는 정수 a 를 지정한다. 해당 정수 a 는 그 누구에게도 공개하지 않는다.
밥도 정수 b 를 지정하고, 해당 정수 b 는 밥만 안다.
앨리스
A = ga mod p
밥
B = gb mod p
앨리스는 A 값을 밥에게 전달하고,
밥은 B 값을 앨리스에게 전달한다.
앨리스
Ba mod p
밥
Ab mod p
위 공식에 따라 계산하면, 앨리스와 밥이 공통된 값을 가진 키를 가지게 된다.
아래 영상에서 조금 더 자세하게 알 수 있다.
Khan Academy
ko.khanacademy.org
출처