암호 기술의 기초와 응용

디피-헬먼 키 교환에서는 소수 p와 생성원 g를 공개하고, A 씨와 B 씨가 각각 비밀 값 a, b를 골라 g^a mod p와 g^b mod p를 서로 보낸다. 도청자가 이렇게 공개된 값을 모두 보더라도 공유 비밀 g^(ab) mod p를 구할 수 없다고 생각되는 이유로 올바른 것은?

  1. Ag^a mod p로부터 a를 구하는 문제(이산 로그 문제)는 p가 크면 효율적으로 풀 수 없다고 생각되기 때문에
  2. Bg^a mod p와 g^b mod p는 보내기 전에 상대의 공개 키로 다시 암호화되므로 도청자는 읽을 수 없기 때문에
  3. C공유 비밀은 두 사람이 미리 만나서 정한 암호 문구로부터 만들기 때문에
정답과 해설 보기

정답: A. g^a mod p로부터 a를 구하는 문제(이산 로그 문제)는 p가 크면 효율적으로 풀 수 없다고 생각되기 때문에

g^a mod p를 계산하는 것은 빠른 데 비해, 결과로부터 a를 구하는 것은 p가 충분히 크면 현실적인 시간 안에는 할 수 없다고 생각됩니다(이산 로그 문제). 도청자는 g^a mod p와 g^b mod p를 볼 수 있어도 a나 b를 모르면 g^(ab) mod p를 만들 수 없습니다. 한편 A 씨는 B 씨의 값을 a제곱하고, B 씨는 A 씨의 값을 b제곱하기만 하면 둘 다 같은 g^(ab) mod p를 얻습니다. 타원 곡선 위에서 같은 일을 하는 것이 ECDH이며, 타원 곡선 위의 이산 로그 문제의 어려움에 기반합니다.

이 분야 연습하기 분야로 돌아가기

암호 기술의 기초와 응용의 다른 문제

  1. 디피-헬먼 키 교환을 작은 수로 확인한다. p = 23, g = 5로 하고, A 씨는 비밀 값 a = 6, B 씨는 비밀 값 b = 15를 고른다. A 씨는 A = g^a mod p를, B 씨는 B = g^b mod p를 서로 보낸다. 두 사람이 얻는 공유 비밀은?
  2. 인증을 하지 않는 디피-헬먼 키 교환의 약점과 그 대책의 조합으로 올바른 것은?
  3. NIST SP 800-57의 표에서 128비트 대칭 키 암호(AES-128)와 같은 정도의 안전성 기준으로 여겨지는 RSA 암호의 키 길이(n의 비트 수)와 타원 곡선 암호의 키 길이의 조합은?
  4. TLS에서 서버 인증서의 개인 키가 나중에 유출되더라도 그 이전에 기록된 통신은 복호화되지 않는 성질(전방향 안전성)을 얻을 수 있는 키 교환 방법은?
  5. ECDSA 디지털 서명에서는 서명마다 비밀 난수 k를 사용한다. k의 취급에 대한 설명으로 올바른 것은?