본문 바로가기

독학으로 하는 정보보안

AES 암호 알고리즘 쉽게 설명해드림

 

AES 암호 알고리즘

 

AES(Advanced Encryption Standard)암호 알고리즘

대칭형, 블럭 암호화 알고리즘

 

1. 키 확장 (Key Expansion): 사용자가 제공한 초기 키로부터 라운드 키를 생성한다. (128비트, 192비트 또는 256비트의 키를 사용할 수 있다.) (128비트는 10 라운드, 192비트는 12 라운드, 256비트는 14라운드)

 

2.  라운드 키 추가 (AddRoundKey): 각 라운드에서 생성된 라운드 키를 상태 행렬과 XOR 연산한다.

 

3. SubBytes 변환: 상태 행렬의 각 바이트를 S-box에 대응하는 값으로 치환한다.

 

4.  ShiftRows 변환: 상태 행렬의 각 행을 왼쪽으로 순환 이동한다.
(
첫 번째 위치부터 행의 위치가 증가되는 수 만큼 상태행렬의 각 행을 왼쪽으로 이동함)

 

5. MixColumns 변환: 상태 행렬의 각 열을 특정 행렬과의 행렬 곱셈 연산을 통해 변환한다.

(상태행렬에서 각 열을 가져와 새로운 열로 변환)

(마지막 라운드에서는 수행 안함)

 

6. 최종 출력: 모든 라운드가 완료된 후, 최종 상태 행렬이 암호화된 데이터로 출력된다.