AES무작정 해킹 공부/Cryptography2022. 8. 21. 00:37
Table of Contents
SPN
- 곱 암호의 일종으로, S-Box를 사용하는 치환과 P-Box를 사용하는 순열을 여러 라운드에 걸쳐 반복한다.
- 페이스텔 구조와 달리 라운드마다 입력 전체에 라운드 함수를 적용하므로, 같은 수의 라운드를 사용할 때 SPN이 페이스텔 구조에 비해 두 배의 암호학적 안전성을 갖는다고 한다.
AES 구조
- AES는 DES가 취약해진 뒤, NIST가 새로 공모한 블록 암호의 표준 알고리즘으로 SubBytes, ShiftRows, MixColumns, AddAroundKey로 암호화 및 복호화가 이루어짐.
- AES는 라운드마다 128비트 크기의 블록을 암호화하는 블록 암호다.
- 키의 길이는 128, 192, 256 비트 중 하나 선택 가능.
- 라운드 수는 키의 길이에 따라 10, 12, 14로 결정.
- AES는 암호화할 때, 가장 먼저 각 블록을 4행 4열의 상태 배열로 재구성한다.
- State의 각 칸에는 8비트가 저장된다.
AES 라운드 함수
- SubBytes : State의 각 바이트를 S-Box를 참조하여 치환하는 함수.
- ShiftRows : State의 각 행을 구성하는 바이트들을 쉬프트하는 함수로 이 함수는 4가지 함수 중 유일하게 순열 역할을 수행한다.
- MixColumns : 열 단위로 치환을 수행하는 함수
- AddRoundKey : 키 생성 함수로 생성된 라운드 키의 state를 각 바이트별로 XOR 한다. 복호화할 때는 XOR의 성질을 이용하여 동일한 키를 state에 XOR한다.
'무작정 해킹 공부 > Cryptography' 카테고리의 다른 글
해시함수 & MAC (2) | 2022.10.12 |
---|---|
블록암호 [ 운영모드 ] (0) | 2022.08.21 |
DES 알고리즘 (0) | 2022.08.21 |
@startonebyone :: 계속 로딩중
로딩중.....(버퍼링)
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!