SEED 블록 암호화 알고리즘 ( SEED Block Encryption Algorithm )
2011. 6. 9. 17:19ㆍ카테고리 없음
SEED 블록 암호화 알고리즘 ( SEED Block Encryption Algorithm )
SEED는 정보통신 및 정보보호의 비밀성 서비스를 제공하기 위하여 한국정보보호 진흥원이 주과니 되어 1998년 개발, 공개하여 한국 표준 암호 방식으로 선정한 128비트 블록 암호 방식이다. SEED는 암호 방식의 입력으로 평문 128비트와 암호화 키 128비트가 입력되어 128비트의 암호문을 출력한다.
@ 암호화 과정
@ S-Box
SEED 블록 암호화 알고리즘
SEED 블록 암호화 알고리즘
* 현재는 SEED 블록 암호화 알고리즘 대신 최근에 개발한 ARIA 알고리즘을 사용하는 추세이다.
@ 암호화 과정
- F 함수의 출력 64비트는 좌측 64비트 L0와 비트별로 XOR을 거쳐서 R1이 된다. 다시 우측 64비트 R1과 암호화 보조키 K2가 F 함수에 입력된다. F 함수의 출력 64비트는 좌측 64비트 L1과 XOR을 거쳐서 R2가 된다.
- 16라운드를 지난 후 마지막 단에서 L과 R을 한번더 바꿔준다.
@ f 함수 SEED 블록 암호화 알고리즘
- Feistel 구조를 갖는 블록 암호화 알고리즘은 f 함수의 특성에 따라 구분될 수 있다. SEED의 F 함수는 수정된 64비트 Feistel 형태로 구성 된다. f 함수는 각 32비트 블록 2개를 입력으로 받아, 32비트 블록 2개를 출력한다. 즉, 암호화 과정에서 64비트 블록과 64비트 라운드 키를 f 함수의 입력으로 처리하여 64비트 블록을 출력한다. ( C,D는 R이 나뉜것, K0,K1은 암호화 보조키가 나뉜것)
@ G 함수
@ S-Box
SEED 블록 암호화 알고리즘
@ 보조키 생성 알고리즘 (라운드 키)
SEED 블록 암호화 알고리즘
* 현재는 SEED 블록 암호화 알고리즘 대신 최근에 개발한 ARIA 알고리즘을 사용하는 추세이다.