암호 기술의 기초와 응용
AES-GCM에서 사용하는 96비트 논스(IV)에 대한 설명으로 올바른 것은?
- A비밀로 할 필요는 없고 카운터로 만들어도 되지만, 같은 키로 같은 값을 두 번 사용해서는 안 된다
- B공격자에게 알려지면 평문이 새어 나가므로, 키와 마찬가지로 비밀로 하여 보관해야 한다
- C매번 무작위로 골라야 하며, 1씩 증가하는 카운터로 만들면 안전성이 손상된다
정답과 해설 보기
정답: A. 비밀로 할 필요는 없고 카운터로 만들어도 되지만, 같은 키로 같은 값을 두 번 사용해서는 안 된다
GCM의 논스에 요구되는 것은 같은 키 아래에서 값이 겹치지 않는(유일한) 것입니다. 비밀로 할 필요는 없으며, 송신 횟수를 세는 카운터로 만들어도 조건을 충족합니다. 같은 키로 같은 논스를 사용하면 CTR 모드와 마찬가지로 평문의 XOR이 새어 나갈 뿐만 아니라 인증에 사용하는 값도 구해져, 태그를 위조당할 우려가 있습니다. 무작위로 논스를 고르는 경우에는 우연한 중복을 피하기 위해 하나의 키로 암호화하는 횟수에 상한이 정해져 있습니다(NIST SP 800-38D에서는 2^32회).