암호 분석 (Cryptanalysis)
암호 분석(cryptanalysis, 암호 해독)은 암호 알고리즘과 암호 프로토콜을 분석해, 키를 모르는 상태에서 암호문으로부터 평문을 복원하거나 키 자체를 알아내는 방법, 또는 그보다 약한 정보라도 얻어 내는 방법을 연구하는 분야입니다. 암호를 설계하는 암호 작성술(cryptography)과 함께 암호학(cryptology)을 이루며, 새로운 암호가 실제로 안전한지 검증하는 데 꼭 필요합니다.
공격 모델
암호 분석은 공격자가 무엇을 알고 있는지에 따라 구분합니다.
- 암호문 단독 공격: 공격자는 암호문만 가지고 있습니다.
- 기지 평문 공격: 일부 평문과 그에 대응하는 암호문의 쌍을 알고 있습니다.
- 선택 평문 공격: 공격자가 고른 평문의 암호문을 얻을 수 있습니다.
- 선택 암호문 공격: 공격자가 고른 암호문의 복호 결과를 얻을 수 있습니다.
현대 암호는 가장 강한 모델에서도 안전하도록 설계하는 것을 목표로 합니다.
주요 기법
- 수학적 분석: 암호의 수학적 구조에서 약점을 찾습니다. 블록 암호에 대한 차분 분석과 선형 분석, 공개 키 암호에 대한 소인수분해·이산 로그 알고리즘이 대표적입니다.
- 무차별 대입 공격: 올바른 키를 찾을 때까지 가능한 모든 키를 시도합니다. 키 길이가 충분하면 현실적인 시간 안에 끝나지 않으므로, 이 공격보다 빠른 방법이 발견되면 암호가 “깨졌다”고 말합니다.
- 사이드 채널 공격: 알고리즘 자체가 아니라 구현에서 새어 나오는 단서, 예를 들어 처리 시간이나 전력 소비 패턴을 분석해 키를 추정합니다.
암호 분석이 중요한 이유
- 암호화 알고리즘의 강도 검증: 자물쇠를 쓰기 전에 설계의 약점을 찾는 것과 같습니다. AES나 SHA-3 같은 표준도 공개 경쟁에서 여러 해 동안 암호 분석을 거친 뒤 채택되었습니다.
- 보안 시스템의 취약점 발견: 시스템이 어떻게 뚫릴 수 있는지 이해해야 더 강한 방어를 설계할 수 있습니다.
- 수사와 데이터 복구: 적법한 절차에 따라 범죄 수사에서 암호화된 정보에 접근하거나, 키를 잃어버린 데이터를 복구하는 데 쓰이기도 합니다.
암호 분석의 실제 예
- Enigma 해독: 제2차 세계 대전 중 영국 블레츨리 파크의 암호 분석가들은 독일의 Enigma 기계로 암호화된 통신을 해독했습니다. 암호 분석의 역사에서 가장 잘 알려진 사례입니다.
- 취약한 알고리즘의 퇴출: MD5와 SHA-1에 대한 충돌 공격이 발견된 뒤, 이 해시 함수들은 전자 서명 등 보안 용도에서 단계적으로 사용이 중단되었습니다.
암호 분석은 악의적인 목적으로 쓰일 수도 있지만, 주로 더 안전한 암호를 만들고 디지털 데이터를 보호하는 데 기여하는 연구 분야입니다.
이 글은 학습을 위한 일반 정보이며 투자 권유나 법률 자문이 아닙니다. 가상자산은 가격 변동이 크고 원금 손실 위험이 있습니다.