암호 기술의 기초와 응용
1 GiB = 2³⁰바이트, 1 EiB = 2⁶⁰바이트로 한다. 블록 길이가 64비트인 블록 암호(3DES 등)를 CBC 모드로 사용하여, 하나의 키로 대량의 데이터를 암호화한다. 암호문 블록을 무작위 64비트 값으로 간주할 때, 생일 역설에 의해 같은 암호문 블록 쌍이 나타날 확률을 무시할 수 없게 되는 데이터양의 기준은?
- A약 4 GiB
- B약 32 GiB
- C약 128 EiB
정답과 해설 보기
정답: B. 약 32 GiB
64비트 블록의 값은 2⁶⁴가지이므로, 생일 역설에 의해 약 2^(64/2) = 2³²개의 블록을 암호화하면 같은 값의 쌍이 나타날 확률을 무시할 수 없게 됩니다(2³²개에서 약 39%). 1블록은 8바이트이므로 데이터양은 2³² × 8 = 2³⁵바이트 = 32 GiB입니다. CBC 모드에서 암호문 블록이 일치하면 대응하는 두 평문 블록의 XOR을 알게 되며, 2016년에 공표된 Sweet32 공격에서는 3DES로 보호된 장시간의 HTTPS 통신에서 Cookie를 꺼낼 수 있음이 밝혀졌습니다. 블록 길이가 128비트인 AES에서는 기준이 2⁶⁴블록까지 넓어집니다.