AES 암호화는 FIPS 197이라고도 하는 고급 암호화 표준(AES)에서 승인된 128비트, 192비트 또는 256비트 대칭 암호화 알고리즘을 사용하여 전자 정보를 숨기는 단계를 정의합니다.
1990년대에 미국 정부는 전 세계적으로 사용할 암호 알고리즘을 표준화할 것을 요구했습니다. 이를 고급 암호화 표준(AES)이라고 합니다.
여러 제안이 제출되었고 여러 토론 끝에 Rijndael로 알려진 알고리즘이 채택되었습니다. Rijandael은 Joan Daemen과 Vincent Rijmen에 의해 발명되었습니다. 새로운 알고리즘이 등장해야 하는 필요성은 사실 DES의 인식된 약점 때문이었습니다.
DES의 56비트 키는 철저한 키 검색에 따라 더 이상 공격에 대해 안전한 것으로 간주되지 않으며 64비트 블록도 약한 것으로 취급되었습니다. AES는 128비트 키가 있는 128비트 블록을 기반으로 합니다.
AES 구조를 정의하는 동안 다음과 같은 점이 있습니다 -
-
이 구조의 특징은 feistel 구조가 아니라는 것입니다. feistel 구조에서 데이터 블록의 절반은 데이터 블록의 나머지 절반을 변경하는 데 사용되므로 절반이 교환됩니다.
-
Rijandael과 같은 AES 결선 진출자 중 두 명은 Feistel 구조가 필요하지 않지만 대체 및 순열을 사용하여 각 라운드 동안 전체 데이터 블록을 병렬로 처리합니다.
-
입력으로 지원되는 키는 44개의 32비트 단어 w[i] 배열로 확장됩니다. 각 라운드의 라운드 키 역할을 하는 4개의 고유한 단어(128비트)가 있습니다.
-
여러 단계가 사용되며, 순열 중 하나와 대체 중 3개 -
-
대체 바이트 − 블록의 바이트 단위 대체를 구현하기 위해 S-box로 사용됩니다.
-
행 이동 - 단순 순열.
-
열 혼합 − GF(28)에 대한 산술 사용을 생성하는 대체.
-
둥근 키 추가 - 디퓨즈 키 부분과 현대 블록의 부드러운 비트 XOR.
-
-
암호화 및 복호화 모두에 대해 암호는 추가 라운드 키 단계로 시작하여 4단계를 모두 포함하는 9개의 라운드와 3단계 중 10번째 라운드가 이어집니다.
-
키 사용을 생성하는 라운드 키 스테이지만 추가할 수 있습니다. 이러한 이유로 암호는 라운드 추가 키 단계로 시작하고 끝납니다. 시작 또는 종료 시 적용되는 다른 단계는 키에 대한 지식 없이 되돌릴 수 있으므로 보안이 추가되지 않습니다.
-
추가 라운드 키 단계는 vernam cipher의 한 형태이며 그 자체로는 위험하지 않습니다. 다른 세 단계는 혼란, 확산 및 비선형성을 지원하지만 키가 필요하지 않기 때문에 자체적으로 보안을 지원하지 않습니다.