A Fast FPGA Implementation for Triple DES Encryption Scheme
- 1 IEEE Network Security Research Lab, Department of Electrical/Computer Engineering, The University of Texas Rio Grande Valley, Edinburg, USA
- 2 IEEE Network Security Research Lab, Department of Electrical/Computer Engineering, The University of Texas Rio Grande Valley, Edinburg, USA
Abstract
In cryptography, the Triple DES (3DES, TDES or officially TDEA) is a symmetric-key block cipher which applies the Data Encryption Standard (DES) cipher algorithm three times to each data block. Electronic payment systems are known to use the TDES scheme for the encryption/decryption of data, and hence faster implementations are of great significance. Field Programmable Gate Arrays (FPGAs) offer a new solution for optimizing the performance of applications meanwhile the Triple Data Encryption Standard (TDES) offers a mean to secure information. In this paper we present a pipelined implementation in VHDL, in Electronic Code Book (EBC) mode, of this commonly used cryptography scheme with aim to improve performance. We achieve a 48-stage pipeline depth by implementing a TDES key buffer and right rotations in the DES decryption key scheduler. Using the Altera Cyclone II FPGA as our platform, we design and verify the implementation with the EDA tools provided by Altera. We gather cost and throughput information from the synthesis and timing results and compare the performance of our design to common implementations presented in other literatures. Our design achieves a throughput of 3.2 Gbps with a 50 MHz clock; a performance increase of up to 16 times.
- Barker (2012) Recommendation for the Triple Data Encryption Algorithm (TDEA) Block Cipher. NIST Special Publication, National Institute of Standards and Technology, Gaithersburg, 800-867. https://doi.org/10.6028/NIST.SP.800-67r1
- NIST (1999) Data Encryption Standard (DES). National Institute of Standards and Technology, Gaithersburg. http://csrc.nist.gov/publications/fips/fips46-3/fips46-3.pdf
- Pcisecurity Standards (2017) Official PCI Security Standards Council Site—Verify PCI Compliance, Download Data Security and Credit Card Security Standards. https://www.pcisecuritystandards.org/documents/PCI_DSS_Glossary_v3-2.pdf? agreement=true&time=1496432377875
- Security Standards Council (2016) PCI DSS and PA-DSS Glossary of Terms, Abbreviations, and Acronyms v3.2. https://www.pcisecuritystandards.org/documents/PCI_DSS_v3-2.pdf
- Support Office (2017) Digital Signing and Encryption Settings—Outlook for Mac. https://support.office.com/en-us/article/Digital-signing-and-encryption-settings- 8a6eb21d-0beb-4e66-a63a-2d362966cf77
- Keller, S. (2000) Modes of Operation Validation System for the Triple Data Encryption Algorithm (TMOVS): Requirements and Procedures. National Institute of Standards and Technology, Gaithersburg.
- Yao, J. and Kang, H. (2011) FPGA Implementation of Dynamic Key Management for DES Encryption Algorithm. 2011 International Conference on Electronic and Mechanical Engineering and Information Technology (EMEIT), Harbin, 12-14 August 2011, 4795-4798. https://doi.org/10.1109/EMEIT.2011.6024111
- Altera (2016) Quartus Prime Design Software. https://dl.altera.com/13.0sp1/?edition=web
- John, L. (2016) Altera Parts History. University Of California, Berkeley. http://www-inst.eecs.berkeley.edu/~cs294-59/fa10/resources/Altera-history/Altera- history.html
- Altera (2007) Cyclone II Device Handbook, Volume 1. https://www.altera.com/en_US/pdfs/literature/hb/cyc2/cyc2_cii51002.pdf
- Terasic, N.P. (2016) Altera DE2 Board. https://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=English&Category No=53&No=30
- Fu, L. and Pan, M. (2009) A Simplified FPGA Implementation Based on an Improved DES Algorithm. 3rd International Conference on Genetic and Evolutionary Computing, Guilin, 227-230. https://doi.org/10.1109/WGEC.2009.11
- Arich, T. and Eleuldj, M. (2002) Hardware Implementations of the Data Encryption Standard. The 14th International Conference on Microelectronics, 100-103.