{"title":"Modular multiplication for FPGA implementation of the IDEA block cipher","authors":"Jean-Luc Beuchat","doi":"10.1109/ASAP.2003.1212864","DOIUrl":null,"url":null,"abstract":"The IDEA block cipher is a symmetric-key algorithm which encrypts 64 bit plaintext blocks to 64 bit ciphertext blocks, using a 128 bit secret key. The security of IDEA relies on combining operations from three groups: integer addition modulo 2/sup 16/, bitwise exclusive or of two 16 bit words, and modified integer multiplication modulo (2/sup 16/ + 1) which is the critical arithmetic operation of the block cipher. This is devoted to the study of efficient implementations of this operator on Virtex-II and Virtex-E devices. We investigate three algorithms based on a multiplication with a subsequent modulo correction which are particularly well suited for FPGA devices embedding small multiplier blocks. An IDEA processor based on such operators achieves a throughput of 8.5 Gb/s on a Xilinx XC2V1000-6 device. We also describe a new FPGA implementation of a modulo (2/sup n/ + 1) multiplier proposed by R. Zimmermann. The area of this operator is roughly twice smaller than that of previous FPGA implementations.","PeriodicalId":261592,"journal":{"name":"Proceedings IEEE International Conference on Application-Specific Systems, Architectures, and Processors. ASAP 2003","volume":"11 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2003-06-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"23","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings IEEE International Conference on Application-Specific Systems, Architectures, and Processors. ASAP 2003","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ASAP.2003.1212864","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 23
Abstract
The IDEA block cipher is a symmetric-key algorithm which encrypts 64 bit plaintext blocks to 64 bit ciphertext blocks, using a 128 bit secret key. The security of IDEA relies on combining operations from three groups: integer addition modulo 2/sup 16/, bitwise exclusive or of two 16 bit words, and modified integer multiplication modulo (2/sup 16/ + 1) which is the critical arithmetic operation of the block cipher. This is devoted to the study of efficient implementations of this operator on Virtex-II and Virtex-E devices. We investigate three algorithms based on a multiplication with a subsequent modulo correction which are particularly well suited for FPGA devices embedding small multiplier blocks. An IDEA processor based on such operators achieves a throughput of 8.5 Gb/s on a Xilinx XC2V1000-6 device. We also describe a new FPGA implementation of a modulo (2/sup n/ + 1) multiplier proposed by R. Zimmermann. The area of this operator is roughly twice smaller than that of previous FPGA implementations.