2013-07-31 5 views
0

DH 키 교환 방식에 대한 설명을 읽었을 때 공개 키와 개인 값을 계산할 때 "그룹"(pg 매개 변수)을 사용해야하는 키 교환기가 합의에 이르렀다는 언급은 없습니다. RFC 5114을 보면 상당히 많은 선택 사항이있는 것처럼 보입니다.Diffie-Hellman 키 교환 중에 어떤 DH 그룹이 사용되는지를 협상하는 것이 일반적입니까?

이 협상이 일반적으로 교환 중에 이루어지는 지 알고 싶습니다. 그렇지 않은 경우, 해당 단계가 포함 된 경우 알고리즘이 다른 방식에 대한 설명이있는 경우 알고 싶습니다.

읽어 주셔서 감사합니다.

+2

이 질문은 security.stackexchange.com 또는 crypto.stackexchange.com –

+0

에 속하기 때문에이 질문은 주제가 아닌 것으로 보입니다. 예, 다른 stackexchange 게시판에 게시해야합니다. 중재자가 한 게시판에서 다른 게시판으로 게시물을 이동할 수 있습니까? – hlh

답변

1

p 및 g 값은 암호화되지 않은 채로 전달하는 것이 안전합니다. 클라이언트/서버가 네트워크에 있으면 클라이언트 또는 서버가 p/g 값을 생성하고 네트워크 소켓을 통해 전달합니다. 각 클라이언트/서버의 비밀 번호가 비밀로 유지되는 한, Diffie-Hellman 교환기는 공격자가 g^(ab) mod p = g^(ba)를 계산해야하므로 안전하다고 말할 수 있습니다. mod p (p 값이 충분히 크다는 가정하에 계산할 수없는 무한한 양의 솔루션으로 이어진다).

자 A는 P, g하는 값을 생성한다 : 다음

본질적 가장 기본적인 D-H 교환 간다. 여기서 g는 기본/생성기이고, p는 소수 (prime modulo)이며, a는 비밀 힘입니다.

파티 B (동시에)가 비밀 값을 생성합니다. b.

갑은 g^개조 쪽

자 A (우리는이 값을, 그 후에 통화) 및 전송 매체를 통해 P, g 및 전송을 계산한다.

자 B는 P, g, A. 수신 국은 B g^B 모드를 P (우리는 그 후 B를이 값을 호출) 계산

.

파티 B는 전송 매체를 통해 B를 전송합니다.

갑은 B.

갑이^개조 P를 B를 계산하고, 상기 공유 비밀을 획득하고 수신한다.

파티 B (동시)는 A^b mod p를 계산하고 공유 된 비밀을 얻습니다.

참고 : p 값이 너무 작 으면 0에서 p - 1까지 반복하는 것이 계산 비용이 적을 수 있지만이 모든 것은 공통 비밀을 생성 한 후에 수행 한 작업에 따라 다릅니다.

+0

귀하의 회신을 보지 못했습니다 - 오랫동안 복용 해 주셔서 죄송합니다. – hlh

+0

@hlh 문제 없습니다! – initramfs