초록
경량 암호기술 표준인 ISO/IEC 29192-2에서 블록암호 표준으로 지정된 초경량 블록암호 알고리듬 PRESENT의 하드웨어 구현에 대해 기술한다. 암호 전용 코어와 암호/복호 기능을 갖는 두 종류의 PR80 크립토 코어를 80 비트의 마스터키를 지원하도록 설계하였다. 설계된 PR80 크립토 코어는 블록암호의 기본 ECB (electronic code book) 운영모드를 수행하며, 마스터키 재입력 없이 평문/암호문 블록들을 연속적으로 처리할 수 있도록 설계되었다. PR80 크립토 코어는 Verilog HDL을 사용하여 소프트 IP로 설계되었으며, Virtex5 FPGA에 구현하여 정상 동작함을 확인하였다. 설계된 코어를 $0.18{\mu}m$ 공정의 CMOS 셀 라이브러리로 합성한 결과, 암호 전용 코어와 암호/복호 코어는 각각 2,990 GE와 3,687 GE로 구현되어 적은 게이트를 필요로 하는 IoT 보안 응용분야에 적합하다. 암호 전용 코어와 암호/복호 코어의 최대 동작 주파수는 각각 500 MHz와 444 MHz로 평가되었다.
A hardware implementation of ultra-lightweight block cipher algorithm PRESENT that was specified as a block cipher standard for lightweight cryptography ISO/IEC 29192-2 is described in this paper. Two types of crypto-core that support master key size of 80-bit are designed, one is for encryption-only function, and the other is for encryption and decryption functions. The designed PR80 crypto-cores implement the basic cipher mode of operation ECB (electronic code book), and it can process consecutive blocks of plaintext/ciphertext without reloading master key. The PR80 crypto-cores were designed in soft IP with Verilog HDL, and they were verified using Virtex5 FPGA device. The synthesis results using $0.18{\mu}m$ CMOS cell library show that the encryption-only core has 2,990 GE and the encryption/decryption core has 3,687 GE, so they are very suitable for IoT security applications requiring small gate count. The estimated maximum clock frequency is 500 MHz for the encryption-only core and 444 MHz for the encryption/decryption core.