정보 보안 기초

50명의 구성원이 두 사람씩 짝지은 모든 조합에서 다른 구성원에게 내용을 알리지 않고 암호 통신을 하려고 한다. 대칭 키 암호를 사용하는 경우에 필요한 키의 수와 공개 키 암호를 사용하는 경우에 필요한 키의 수(공개 키와 개인 키의 합계)의 조합으로 올바른 것은?

  1. A대칭 키 암호는 1225개, 공개 키 암호는 100개
  2. B대칭 키 암호는 2450개, 공개 키 암호는 100개
  3. C대칭 키 암호는 100개, 공개 키 암호는 1225개
정답과 해설 보기

정답: A. 대칭 키 암호는 1225개, 공개 키 암호는 100개

대칭 키 암호에서는 두 사람의 짝마다 별도의 키가 필요합니다. 같은 키를 3명 이상이 사용하면 다른 구성원도 내용을 읽을 수 있기 때문입니다. n명에서 2명을 고르는 조합의 수는 n(n−1)/2이므로 50명이면 50 × 49 / 2 = 1225개입니다. 공개 키 암호에서는 각자가 공개 키와 개인 키를 하나씩 가지면 누구에게 보낼 때든 상대의 공개 키로 암호화할 수 있으므로, 키는 2n = 2 × 50 = 100개로 충분합니다. 인원이 늘면 대칭 키 암호의 키 수는 인원의 대략 제곱에 비례하여 늘어나는 데 비해, 공개 키 암호는 인원에 비례할 뿐입니다. 이것이 공개 키 암호에서 키 관리가 쉬워지는 이유 중 하나입니다.

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

정보 보안 기초의 다른 문제

  1. 큰 파일을 상대에게 암호화하여 보낼 때 자주 사용되는 하이브리드 암호 방식의 절차로 올바른 것은?
  2. 암호에서 사용되는 해시 함수(암호학적 해시 함수)의 성질로 올바른 것은?
  3. 출력이 256비트인 이상적인 해시 함수에 대해 무차별 대입로 공격할 때 필요한 계산 횟수의 기준으로, '주어진 해시값이 되는 입력을 찾는(역상 공격)' 경우와 '같은 해시값이 되는 서로 다른 두 입력을 아무것이나 찾는(충돌 공격)' 경우의 조합으로 올바른 것은?
  4. 웹 서비스에서 이용자의 비밀번호를 저장할 때, 비밀번호에 이용자마다 다른 무작위 값(솔트)을 더한 뒤 해시값을 계산하여 저장한다. 솔트를 사용하는 주된 목적은?
  5. 비밀번호 저장에 SHA-256 같은 고속 해시 함수를 그대로 사용하지 않고, bcrypt나 Argon2처럼 일부러 계산에 시간이 걸리도록 설계된 방식을 사용하는 것이 권장되는 이유로 올바른 것은?