언론보도

[언론보도][KAIST 정보보호대학원 릴레이 칼럼-2] 블록 암호 운영 모드의 안전성 한계와 표준화 동향
작성일2024-07-01

블록 암호 운영 모드의 취약성 보완하는 다양한 신규 운영 모드 설계하고 표준화 논의 필요
산업계 전반에 널리 쓰이게 해 잠재적인 보안사고 예방하고 암호 프로토콜의 효율성 높여야

 

[보안뉴스= 이주영 KAIST 정보보호대학원 교수] 스마트폰, 클라우드 서비스 등이 널리 확산되면서 대중은 메신저, SNS 등 다양한 방식으로 서로 소통하는데, 대부분의 서비스는 주고 받는 메시지나 저장되는 데이터에 대한 암호화 기능을 제공한다. 여기에 사용되는 암호 알고리즘은 데이터의 기밀성(privacy)을 보호하는 수단으로서 암호화에 사용된 키를 알지 못하는 공격자는 암호문이 주어져도 평문에 대한 정보를 조금도 알아낼 수 없게끔 설계된다. 대부분 공개키 암호로 세션키가 설정되면, 이후 통신 및 저장되는 데이터는 효율성이 우수한 대칭키 암호 알고리즘으로 암호화된다.

 

 

한편, 데이터 통신에서 기밀성 못지않게 중요한 성질이 무결성(integrity)이다. 이는 평문 데이터가 위조 또는 변조되지 않았음을 보장하는 성질로서, 전자서명 알고리즘 또는 메시지 인증 코드(MAC)를 사용함으로써 확보되는데, MAC의 경우 송·수신자가 대칭키를 나눠 갖고, 이를 사용하여 메시지마다 짧은 길이의 태그를 생성하고, 이를 메시지에 붙여서 양측이 메시지의 무결성을 확인한다.

현재 가장 널리 쓰이는 대칭키 암호 알고리즘은 AES 블록 암호이다. AES는 1999년에 NIST 표준으로 제정됐고, 오랜 시간 많은 분석과 안전성 검증을 거쳐 현재 무선 네트워크, 인터넷 보안 프로토콜, 클라우드 암호화 등 다양한 분야에 널리 사용되고 있다. AES 블록암호는 비밀키를 사용하여 한 번에 128비트의 데이터 ‘블록’을 암호화한다. 실제로는 일정하지 않은 크고 작은 양의 데이터가 암호화되어야 하므로, AES 등 블록 암호를 사용해서 가변 길이의 데이터를 암호화하는 방식이 필요한데, 이를 암호 운영 모드라 부른다. 안전성 목적에 따라 다양한 암호 운영 모드가 설계되고, 표준화됐는데, 무결성을 제공하는 MAC 운영 모드로서 CMAC, OMAC, GMAC, PMAC 등이 제안됐고, 기밀성을 제공하는 운영모드로 CBC, CFB, OFB CTR 모드 등이 표준화됐다. 대부분의 통신은 메시지의 기밀성과 무결성이 모두 요구되므로, 인증 암호화 운영 모드를 사용하는데, CCM, GCM, OCB 등이 표준화되어 널리 사용되고 있다.

블록암호 운영모드의 연구는 2000년대 이후 상당히 광범위하고 깊게 발전되어 높은 안전성과 효율성을 제공하는 다양한 방식이 설계되고 표준화됐다. 또한 기반 블록 암호의 안전성을 가정했을 때, 정해진 공격 모델에서 증명 가능한 안전성도 제공됐다. 그러나 그만큼 분석 기법 또한 다양한 각도에서 발전했으며, 특히 계산 및 통신 자원이 극도로 제한되거나(IoT), 다수의 사용자가 동일한 암호 알고리즘을 사용하거나(SNS), 엄청나게 많은 데이터 암호화가 요구되는(데이터센터) 극한 환경에서 다양한 공격들이 제안되고 있다. 이러한 공격들은 대개 운영 모드 구조의 근본적인 한계 또는 기존 안전성 모델이 담아내지 못하는 취약성에 기인한다. 몇 가지 예를 들면, 다음과 같다.

- 표준 블록 암호 AES를 비롯하여 128비트 블록 암호를 넌스와 카운터를 사용하는 암호화 운영 모드로 사용할 경우, 최대 64GB의 데이터만 암호화할 수 있다. 또한 128비트 블록 암호 기반 운영 모드의 이론적인 안전성은 데이터 복잡도 기준 최대 64비트까지만 보장된다. 따라서 대용량 데이터를 암호화하는 환경에서는 잦은 주기로 비밀키를 변경해야 한다.

- 인증 암호화(Authenticated Encryption) 운영 모드에 사용되는 넌스(nonce)가 부주의하게 생성되거나, 작은 엔트로피 소스에서 추출될 경우, 비밀키 또는 메시지가 유출될 수 있다.

- 인증 암호화 운영 모드의 복호화 알고리즘에 위변조된 암호문이 입력될 경우, 전통적인 안전성 모델에서는 거절(reject) 메시지가 출력된다고 가정하나, 메모리 자원 등이 부족한 경량 환경에서는 위변조가 판정되기 전에 일부 복호화된 평문 블록이 출력되어 공격자가 이 정보를 사용할 TN 있다.

- 하나의 암호문이 서로 다른 키에 의하여 서로 다른 (유효한) 평문으로 복호화되는 경우, 주요 암호 프로토콜의 보안 취약점으로 이어질 수 있다. 몇 년 전, 페이스북(Facebook)에서 첨부 이미지를 조작하는 공격이 발표됐으며, 패스워드 기반 암호 알고리즘에 대한 전수 조사의 시간을 획기적으로 단축하는 공격도 발표된 바 있다.

128비트 블록 암호 기반 운영 모드에서 제공되는 64비트 안전성을 생일 상한이라 부른다. 최근 생일 상한을 초과하는 안전성을 제공하는 암호화 운영 모드가 다양하게 제안되고, 넌스의 재사용에도 안전성이 급격하게 저하되지 않는 새로운 운영 모드에 대한 연구 또한 활발하지만, 이들은 대체로 기존 운영 모드 대비 효율성이 떨어진다는 한계를 갖고 있다.

이와 같이 현재 표준 블록 암호 운영 모드가 현장 개발자들이 기대하는 안전성 개념을 제공해주지 못하게 되면서 2023년 10월 블록 암호 운영 모드에 대한 NIST 워크숍이 20여년 만에 다시 개최됐다. 이 모임에서는 현재 제안된 표준 암호화 방식을 전면 재점검하고, 그동안 발견된 운영 모드의 취약성 및 안전성 모델에 대해 논의하고, 향후 표준화 필요성을 검토했다. 현재 대부분 표준 블록 암호의 크기인 128비트보다 더 큰 블록을 암호화하는 신규 블록 암호의 필요성도 제기됐다.

 

이번 워크숍은 향후 블록 암호 운영 모드에 대한 새로운 표준화 논의로 이어질 것으로 예상되며, 국내에서도 최근 논의되는 취약성을 보완하는 다양한 신규 운영 모드를 설계하고 표준화 등을 통해 산업계 전반에 널리 쓰이게 함으로써 잠재적인 보안 사고를 예방하고 암호 프로토콜의 전반적인 효율성을 높여야 할 것이다.

한편, 우수한 신규 암호 운영 모드가 제안되더라도, 레거시 환경에 적용하는 데는 현실적인 이유로 많은 저항이 따르게 된다. 1990년대 말에 AES가 표준으로 제정된 뒤에도 20여년 가까이 TDES가 표준에 남아있었던 점을 보면 쉽게 알 수 있다. 따라서 현재 다양한 응용 환경에서 널리 사용되는 표준 암호 운영 모드에 대한 최소한의 수정으로 이들이 적절한 안전성을 제공하게끔 할 수 있는지 분석해야 할 것이다.


[글_이주영 KAIST 정보보호대학원 교수(hicalf@gmail.com)]
(원문보기 : https://www.boannews.com/media/view.asp?idx=128376&page=1&kind=5 )