- 128비트 SEED 암호 알고리즘의 고속처리를 위한 하드웨어 구현
- ㆍ 저자명
- 전신우,정용진
- ㆍ 간행물명
- 通信情報保護學會論文誌
- ㆍ 권/호정보
- 2001년|11권 1호|pp.13-23 (11 pages)
- ㆍ 발행정보
- 한국정보보호학회
- ㆍ 파일정보
- 정기간행물| PDF텍스트
- ㆍ 주제분야
- 기타
본 논문에서는 우리 나라 128 비트 블록 암호 알고리즘 표준인 SEED를 하드웨어로 구현하였다. 먼저 하드웨어 구 현 측면에서 SEED를 같은 비밀키 블록 암호 알고리즘으로 AES 최종 후보 알고리즘인 MARS, RC6, RIJNDAEL, SERPENT, TWOFISH와 비교 분석하였다. 동일한 조건하에서 분석한 결과, SEED는 MARS, RC6, TWOFISH보다는 암호 화 속도가 빨랐지만, 가장 빠른 RIJNDAEL보다는 약 5배정도 느렸다. 이에 속도 측면에서 우수한 성능을 가질 수 있는 고속 SEED 구조를 제안한다. SEED는 동일한 연산을 16번 반복 수행하므로 1라운드를 Jl 함수 블록, J2 함수 블록, key mixing 블록을 포함한 J3 함수 블록의 3단계로 나누고, 이를 파이프라인 시켜 더 빠른 처리 속도를 가지도록 하였다. G 함수는 구현의 효율성을 위해 4개의 확장된 4바이트 SS5-box 들의 xor로 처리하였다. 이를 Verilog HDL을 사용하여 ALTERA FPGA로 검증하였으며, 0.5um 삼성 스탠다드 셀 라이 브러리를 사용할 경우 파이프라인이 가능한 ECB 모드의 암호화와 ECB, CBC, CFB 모드의 복호화 시에는 384비트의 평문을 암복호화하는데 총 50클럭이 소요되어 97.1MHz의 클럭에서 745.6Mbps의 성능을 나타내었다. 파이프라인이 불 가능한 CBC, OFB, CFB 모드의 암호화와 OFB 모드의 복호화 시에는 동일 환경에서 258.9Mbps의 성능을 보였다.
This paper implemented into hardware SEED which is the KOREA standard 128-bit block cipher. First, at the respect of hardware implementation, we compared and analyzed SEED with AES finalist algorithms - MARS, RC6, RIJNDAEL, SERPENT, TWOFISH, which are secret key block encryption algorithms. The encryption of SEED is faster than MARS, RC6, TWOFISH, but is as five times slow as RIJNDAEL which is the fastest. We propose a SEED hardware architecture which improves the encryption speed. We divided one round into three parts, J1 function block, J2 function block J3 function block including key mixing block, because SEED repeatedly executes the same operation 16 times, then we pipelined one round into three parts, J1 function block, J2 function block, J3 function block including key mixing block, because SEED repeatedly executes the same operation 16 times, then we pipelined it to make it more faster. G-function is implemented more easily by xoring four extended 4 byte SS-boxes. We tested it using ALTERA FPGA with Verilog HDL. If the design is synthesized with 0.5 um Samsung standard cell library, encryption of ECB and decryption of ECB, CBC, CFB, which can be pipelined would take 50 clock cycles to encrypt 384-bit plaintext, and hence we have 745.6 Mbps assuming 97.1 MHz clock frequency. Encryption of CBC, OFB, CFB and decryption of OFB, which cannot be pipelined have 258.9 Mbps under same condition.