1 / 12

Implementation of IDEA on a Reconfigurable Computer

Implementation of IDEA on a Reconfigurable Computer. Toan Le Greg Zumbrook. IDEA Algorithm. Block cipher 64-bit block, 128-bit key 8 rounds (plus output transformation) 3 operations: XOR Addition mod 2 16 Multiplication mod 2 16 + 1. Why use IDEA?. Intended as a replacement for DES

genera
Télécharger la présentation

Implementation of IDEA on a Reconfigurable Computer

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Implementation of IDEA on a Reconfigurable Computer Toan Le Greg Zumbrook

  2. IDEA Algorithm • Block cipher • 64-bit block, 128-bit key • 8 rounds (plus output transformation) • 3 operations: • XOR • Addition mod 216 • Multiplication mod 216 + 1

  3. Why use IDEA? • Intended as a replacement for DES • Still secure as the best attack breaks IDEA reduced to 5 rounds (full cipher uses 8 rounds)

  4. SRC-6 Reconfigurable Computer • uP and MAP (Multi-Adaptive Processor) boards • 2128 MB/s xfer between boards • FPGAs on MAP board can be reconfigured as program is run

  5. Carte Programming Environment • Program in HLLs like C or FORTRAN • Compiled code will configure the MAP board when run (no need for VHDL)

  6. Implementation • Using High Level Language (HLL) to describe software • Main program functions • Prepare for data and key • Link with MAP libraries and function files • Data structure • Declare memory banks, move data in and out • Set pointers to a cache aligned

  7. Implementation Parallel structure

  8. Results • Encrypt/Decrypt IDEA both on MAP and Intel CPU • Control the number of bits when performing multiplication or XOR • Parallel code: 19 cycles for one round and 158 clock cycles for a 64-bit input plaintext block

  9. Results • Reconfigurable processor is allocated to the given application • MAP function is called • 8 internal loops for 64-bit input block • The execute time of the MAP function is measured • Compare between execution time of the MAP function and of Intel CPU function

  10. Results • Time to encrypt 5 blocks on CPU: ~121 uS • Time to encrypt 5 blocks on MAP: ~180 mS ???

  11. Results • Time to encrypt 5 blocks on MAP is currently longer than on CPU • This is because the time to transfer the block, key, and results to/from the MAP takes additional time • Encrypting multiple blocks at a time (bulk encryption of large files) should produce more expected results

  12. Enhancement • File I/O functionality • Improve efficiency of MAP functions • Add other encryption schemes to the program • Create application services for end users

More Related