Warmblood Stallions of N.A. Photo Gallery: N.A. Stallion Testing 2010
A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International...
-
Upload
david-houston -
Category
Documents
-
view
221 -
download
0
Transcript of A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International...
![Page 1: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/1.jpg)
A Compact and Efficient FPGA Implementation of DES Algorithm
Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept 2004
**ENG6090(4)**
Reconfigurable Computing Systems
![Page 2: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/2.jpg)
References• Wilcox,D et al:A DES ASIC suitable for network encryption at 10Gbs
and beyond. In: CHESS 99• Patterson,C: High performance DES encryption in Virtex FPGA using
Jbits. In: Field programmable custom computing machines,FCCM’00 • Swankoski.E et al:A Parallel Architecture for Secure FPGA Symmetric
Encryption.In:18th International Parallel and Distributed Processing Symposium,2004
• Wollinger,T:How secure are FPGAs in Cryptographic applications. In:IACR,2003
• Stallings,W:Cryptography and NetworkSecurity:Principles and Practice. Prentice Hall
• Wong,K: A single chip implementation of DES algorithm. In:IEEE Globecomm Communication Conf.,Australia, 1998
• www.nist.gov
![Page 3: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/3.jpg)
Outline
• Introduction to Cryptography
• Why Cryptographic Algorithms on FPGAs
• DES Algorithm
• DES ASIC Implementation
• DES Implementation using JBits
• DES Implementation on FPGAs
• Summary
![Page 4: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/4.jpg)
Cryptography
• Process of transforming data,using keys, to protect its intelligence and unauthorized use
• Cryptography and tamper resistance hardware first used for military application
• ATM- the “killer application” which pushed technology into commercial mainstream
![Page 5: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/5.jpg)
Cryptography cont’d..
• Technology advances have increased the number of embedded systems in various computing devices
• PDAs, GSM mobile phone identification etc have pushed towards low cost crypto-processors
• Security of data important for military and commercial applications
![Page 6: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/6.jpg)
Cryptographic algorithms on FPGA
• Algorithm Agility-Can be reprogrammed easily for different application
• Changing Protocols-Algorithms can be updated, protocols can be changed as standards evolve
• Architecture efficiency-Implementations can be optimized for specific parameter set
![Page 7: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/7.jpg)
Cryptographic algorithms on FPGA cont’d..
• Resource efficiency-Can use run time reconfiguration to configure only certain parts
• Throughput- Can offer higher throughputs as compared to CPU’s
• Development cost-Less design time, can be reprogrammed without additional time/cost penalty
![Page 8: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/8.jpg)
Cryptographic algorithms on FPGA cont’d..
• Ease of experimenting with different architectures without long fabrication waits
• Unit cost is also not very significant
![Page 9: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/9.jpg)
DES algorithm
• Data Encryption Standard is one of the commonly used block cipher algorithm
• It encrypts/decrypts 64-bit blocks using permutations and substitutions
• 64-bit key is passed through initial permutation to obtain a new 56-bit key
![Page 10: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/10.jpg)
DES cont’d..
• 64-bit plaintext is permuted to get initial left half and right half of 32 bits
• Right half of first round is obtained by passing the text and keys through 16 rounds
• In each round, in the first step,permuted 32-bit right half is XORed with 48-bit subkey
![Page 11: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/11.jpg)
DES cont’d..
• The 48-bit output of first stage is transformed into 32-bit by using 8 S-boxes
• In the last stage, this 32-bit result is permuted to right half of this stage
• This new right half becomes the left half for next iteration
![Page 12: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/12.jpg)
DES cont’d..
DES Algorithm
![Page 13: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/13.jpg)
DES Implementations
• Recent DES implementations
![Page 14: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/14.jpg)
DES ASIC implementation
• Fully pipelined design thereby increasing the throughput
• 0.6 micron,105MHz,6.5Watts
![Page 15: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/15.jpg)
DES Jbits implementation
• Hardware-Software approach allowing high speeds and throughput
• Sub-key generation moved to software
• Saves slices required for 48 XORs per round and key input IOBs
• Can be reconfigured at run time
• 0.22 micron, 168MHz, 3.2 Watts
![Page 16: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/16.jpg)
DES Jbits implementation cont’d..
Single DES round (1)Unoptimized, (2)Optimized for Jbits implementation
![Page 17: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/17.jpg)
DES on FGPA
• Implements parallel and pipelined approach
• Critical path delay is significantly reduced
• Sub-keys are pre computed and stored in memories
• The main difference in this approach is the parallel implementation of S-boxes
![Page 18: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/18.jpg)
DES on FGPA cont’d..
DES implementation on FPGA
• Fixed permutations do not occupy much resources which can be implemented by changing wires
![Page 19: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/19.jpg)
DES on FGPA cont’d..
• 64-bit input divided in RIN and LIN
• Before next clock cycle old right half is input to REGB and new left is input to REGA
• T/A factor is high indicating higher Mbits/s and less area used
![Page 20: A Compact and Efficient FPGA Implementation of DES Algorithm Saqib, N.A et al. In:International Conference on Reconfigurable Computing and FPGAs, Sept.](https://reader035.fdocuments.us/reader035/viewer/2022062321/56649e2c5503460f94b1b595/html5/thumbnails/20.jpg)
Summary• Different applications need fast processing,
higher bandwidths, less area etc
• These constrained systems implemented on FPGAs for their obvious advantages
• Use parallelism and pipelining to maximize performance
• Critical path delay, area, power consumption are some of the important parameters to be optimized