초록
Camellia 암호는 NTT사 및 미쓰비시 전자회사에서 공동으로 2000년도에 개발되었다. Camellia는 128비트 메시지 블록 크기와 128비트, 192비트 및 256비트 키(Key)에 대한 암호화 방식을 규정하고 있다. 본 논문은 키 스케줄용 레지스터 설정과 기존의 라운드 연산 블록을 통합한 수정된 라운드 연산 블록을 제안하였다. 키 생성과 라운드 연산에 필요한 총 16개의 ROM을 단지 4개의 이중포트 ROM만을 사용하여 구현하였다. 또한 메시지 버퍼를 제공하여 키 생성을 위한 KA와 KB 값이 도출되면 대기 시간없이 즉시 암호화나 복호화가 수행될 수 있도록 하였다. 제안한 Camellia 블록 암호 알고리즘을 Verilgo-HDL을 사용하고 설계하고, Virtex4 디바이스상에 구현하였으며, 최대 동작 주파수는 184.898MHz이다. 128비트 키 모드에서 최대 처리율은 1.183Gbps이며, 192비트 및 256비트 키 모드에서 최대 처리율은 876.5Mbps이다. 본 논문에서 설계된 암호 프로세서는 스마트 카드, 인터넷뱅킹, 전자상거래 및 위성 방송 등과 같은 분야의 보안 모듈로 응용이 가능할 것으로 사료된다.
Camellia was jointly developed by Nippon Telegraph and Telephone Corporation and Mitsubishi Electric Corporation in 2000. Camellia specifies the 128-bit message block size and 128-, 192-, and 256-bit key sizes. In this paper, a modified round operation block which unifies a register setting for key schedule and a conventional round operation block is proposed. 16 ROMs needed for key generation and round operation are implemented using only 4 dual-port ROMs. Due to the use of a message buffer, encryption/decryption can be executed without a waiting time immediately after KA and KB are calculated. The suggested block cipher Camellia algorithm is designed using Verilog-HDL, implemented on Virtex4 device and operates at 184.898MHz. The designed cryptographic core has a maximum throughput of 1.183Gbps in 128-bit key mode and that of 876.5Mbps in 192 and 256-bit key modes. The cryptographic core of this paper is applicable to security module of the areas such as smart card, internet banking, e-commerce and satellite broadcasting.