AES(Advanced Encryption Standard)는 현재 가장 널리 사용되는 대칭키 블록 암호이지만, 이 역시 다양한 암호 분석(Cryptanalysis) 기법의 공격 대상이 될 수 있습니다. AES에 적용될 수 있는 대표적인 암호 분석 공격 유형을 하나씩 살펴보겠습니다.
1. 선형 암호 분석 공격 (Linear Cryptanalysis)
선형 암호 분석은 암호의 구성 요소에 대한 아핀 근사(affine approximation)를 찾는 데 기반합니다. 이 기법은 함수 블록의 입력과 출력 사이에 존재하는 높은 확률의 선형 관계를 이용하려고 시도합니다.
블록 암호에 대한 접근 방식에서는 선형 평문 패턴 집합과 선형 암호문 패턴 집합을 키 비트의 선형 집합과 연관 지어 분석합니다. 선형 암호 분석의 핵심 목표는 전체 경우의 50%보다 확연히 많거나 적은 빈도로 성립하는 관계를 찾아내는 것입니다.
2. 차분 암호 분석 공격 (Differential Cryptanalysis)
차분 암호 분석은 함수 블록의 입력 차분과 출력 차분 사이의 관계를 이용하는 기법입니다. 암호화 알고리즘 분석 시에는 서로 고정된 차이를 가지는 평문 패턴들을 선별하여 사용합니다.
차분 암호 분석의 주요 목표는 '특성(characteristics)'을 찾는 것입니다. 특성이란 특정 키가 주어졌을 때, 평문 패턴 그룹 내의 특정 차이가 암호문 쌍에서 특정 차이로 이어질 확률이 높은 경우를 의미합니다.
차분 공격은 평문 쌍들을 활용해 여러 후보 서브키(subkey)에 확률을 부여하는 방식으로 진행됩니다. 이 확률은 암호 해독자가 해당 알고리즘의 특성에 대해 얼마나 잘 알고 있는지에 따라 달라지며, 충분히 많은 시행을 반복하면 올바른 키를 도출할 수 있습니다.
요컨대 차분 암호 분석에서 공격자는 선택한 일부 평문들의 변화와, 각 평문을 암호화했을 때 나타나는 출력값의 차이를 분석함으로써 키의 일부를 찾아낼 수 있습니다.
3. 부메랑 공격 (Boomerang Attack)
Wagner가 제안한 부메랑 공격은 고전적인 차분 암호 분석의 발전된 형태로 볼 수 있습니다. 기존 차분 분석이 고정된 차이를 가진 쌍(pair) 단위로 작동한다면, 부메랑 공격은 4중항(quadruple) 단위의 데이터를 대상으로 한다는 점이 특징입니다.
공격자는 평문 4중항을 정교하게 선별하고, 이에 상응하는 암호문 4중항과 중간 상태(middle state)들 간의 상관관계를 확보합니다. Wagner는 이 공격 기법을 활용해 당시 덜 알려져 있던 여러 블록 암호를 공격할 수 있음을 보여주었습니다.
4. 절단 차분, 스퀘어 공격 및 보간 공격
절단 차분 (Truncated Differentials)
절단 차분은 차분 값의 일부만 결정된 형태를 다루는 차분 암호 분석의 일반화된 기법입니다. 이러한 부분 차분들은 차분 쌍들을 여러 그룹으로 묶어 처리할 수 있게 하며, 이 속성은 공격 성공의 난이도를 크게 낮춰주는 통계적 정보를 제공합니다.
스퀘어 공격 (Square Attack)
스퀘어 공격은 Square 블록 암호를 대상으로 처음 제안된 공격을 일반화한 기법입니다. 이 공격에서는 특정한 성질을 만족하도록 평문들의 '멀티셋(multiset)'을 신중하게 선별합니다.
선별된 멀티셋을 알고리즘에 적용한 뒤, 여러 라운드를 거치며 이 멀티셋이 어떻게 전파되는지를 추적합니다. 이러한 성질이 라운드가 진행되는 동안에도 유지되는 양상을 분석하면 알고리즘의 수학적 동작을 파악할 수 있고, 이를 통해 키 비트 일부를 추론할 수 있습니다.
보간 공격 (Interpolation Attack)
보간 공격은 암호를 고차 다항식으로 모델링하는 기법입니다. 이렇게 구성한 다항식을 풀어 키에 의존하는 계수들을 도출합니다. 이 접근법은 암호를 정의하는 저차수의 간결한 식이 존재하는 경우에 특히 효율적으로 작동합니다.