efficient hardware accelerator for ipsec based on partial
play

Efficient Hardware Accelerator for IPSec based on Partial - PowerPoint PPT Presentation

Introduction Previous Work Methodology Results Summary Efficient Hardware Accelerator for IPSec based on Partial Reconfiguration on Xilinx FPGAs Ahmad Salman Marcin Rogawski Jens-Peter Kaps Cryptographic Engineering Research Group (CERG)


  1. Introduction Previous Work Methodology Results Summary Efficient Hardware Accelerator for IPSec based on Partial Reconfiguration on Xilinx FPGAs Ahmad Salman Marcin Rogawski Jens-Peter Kaps Cryptographic Engineering Research Group (CERG) http://cryptography.gmu.edu Department of ECE, Volgenau School of Engineering, George Mason University, Fairfax, VA, USA Int. Conference on ReConFigurable Computing and FPGAs ReConFig 2011 ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 1 / 26

  2. Introduction Previous Work Methodology Results Summary Outline 1 Introduction 2 Previous Work 3 Methodology 4 Results 5 Summary ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 2 / 26

  3. Introduction Introduction Previous Work Supported Protocols Methodology IPSec Implementations Results FPGA Platforms Summary Introduction Internet Protocol Security (IPSec) provides security against attacks on data transmitted over the Internet. Provides Authentication → Information Source Confidentiality → Encryption Data Integrity → Data alteration ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 3 / 26

  4. Introduction Introduction Previous Work Supported Protocols Methodology IPSec Implementations Results FPGA Platforms Summary Supported Protocols IPSec uses a series of protocols to provide security services The Encapsulating Security Payload (ESP) Protocol. The Authentication Header (AH) protocol. The Internet Key Exchange (IKEv2) protocol in version two. These protocols make use of various cryptographic algorithms. ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 4 / 26

  5. Introduction Introduction Previous Work Supported Protocols Methodology IPSec Implementations Results FPGA Platforms Summary Supported Protocols Protocol Security Service Provided Supported Algorithm ESP confidentiality through AES in CBC or CTR mode encryption and optional and AES-XCBC-MAC-96 data integrity AH connectionless integrity HMAC-SHA1-96, AES- and data origin authenti- XCBC-MAC-96, HMAC- cation SHA-256 IKE negotiates connection pa- Diffie-Hellman scheme in rameters 1024 or 2048 bits groups and AES in PRNG mode Table: IPSec Supported Protocols and Algorithms ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 5 / 26

  6. Introduction Introduction Previous Work Supported Protocols Methodology IPSec Implementations Results FPGA Platforms Summary IPSec Implementations Software Hardware ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 6 / 26

  7. Introduction Introduction Previous Work Supported Protocols Methodology IPSec Implementations Results FPGA Platforms Summary IPSec Implementations ← Flexible Fast → Software Hardware ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 6 / 26

  8. Introduction Introduction Previous Work Supported Protocols Methodology IPSec Implementations Results FPGA Platforms Summary FPGA Platforms Among popular implementations of IPSec in hardware are those that target FPGAs Problem Resource limited devices. More resources = more money. ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 7 / 26

  9. Introduction Introduction Previous Work Supported Protocols Methodology IPSec Implementations Results FPGA Platforms Summary FPGA Platforms Among popular implementations of IPSec in hardware are those that target FPGAs Problem Resource limited devices. More resources = more money. Solution Hardware/Software co-design. Partial Reconfiguration. ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 7 / 26

  10. Introduction Previous Work IPSec FPGA Implementations Methodology IPSec Implementations Results Our Design Summary Implementations using Partial Reconfiguration Authors Embedded Hardware Software Implemen- Processor tation G. Gogniat No AES in Differ- No IPSec et al. ent modes I. Gonzales Microblaze AES, RC4, PR Initia- VOIP SSL et al. IDEA tion I. Gonzales Microblaze 3DES, AES MD5 SSH et al. K. Anjo, DPR-1 AES, DES, HMAC IPSec T. Awashima CAST128,256, MD5 ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 8 / 26

  11. Introduction Previous Work IPSec FPGA Implementations Methodology IPSec Implementations Results Our Design Summary Other Implementations Author Implementation Hardware Software Applica- tion A. Dandalis, AES Finalists MARS, RC6, No IPSec V. Prasanna Rijndael, Ser- pent, Twofish KAME IPSEC Supported No Racoon IPSec Project Algorithms J. Lu, AES, AES, Key Ne- IPSec J. Lockwood HMAC-MD5, HMAC-MD5, gotiation HMAC-SHA1 HMAC-SHA1 Commercial FortiGate, Helion IPSec Products Crypto Accelera- SSH tor 4000 HTTPS ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 9 / 26

  12. Introduction Previous Work IPSec FPGA Implementations Methodology IPSec Implementations Results Our Design Summary Proposed Design Table: Hardware-Software co-design implementation details of proposed IPSec system Implementation In Hardware In Software Application AES CBC, CTR modes ESP MAC-XCBC-96 AH XCBC-PRF-128 IKEv2 SHA-256 HMAC AH MODEXP Pre-Calculations IKEv2 - Round Robin PR trigger scheduling algorithm ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 10 / 26

  13. Introduction System Description Previous Work Partial Reconfiguration Methodology System Hardware Results System Software Summary Methodology Queues ESP Queue AH Queue Output Queue IPSec Network Network coprocessor IKEV2 Queue Scheduling Algorithm Status Figure: Synchronization Circuit Between Hardware and Software ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 11 / 26

  14. Introduction System Description Previous Work Partial Reconfiguration Methodology System Hardware Results System Software Summary Methodology Partial Reconfiguration Partial Reconfiguration (PR) is a process of configuring a portion of the FPGA while the other part is still running. A relatively new technique Altera Stratix V. A PR system is divided into Static region known as Base Region (BR). Dynamic regions known as Partial Reconfigurable Regions (PRR). Reconfigurable Modules (RMs) ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 12 / 26

  15. Introduction System Description Previous Work Partial Reconfiguration Methodology System Hardware Results System Software Summary Methodology Partial Reconfigurable Hardware in the System Embedded IPsec Processor Coprocessor (MB) (PRR) On−chip Peripheral Bus (OPB) Internal Configuration Access Port (ICAP) AES SHA256 MODEXP (RM) (RM) (RM) External Memory ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 13 / 26

  16. Introduction System Description Previous Work Partial Reconfiguration Methodology System Hardware Results System Software Summary Methodology Hardware/Software Synchronization Circuit 32 32 data_in Software Input Reg rst in out WR_ACK src_ready FF IPSec Microblaze rst Co−Processor src_read in out dst_ready RD_ACK FF rst dst_write 32 32 data_out OPB Software Output Reg RST CLK rst rst ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 14 / 26

  17. Introduction System Description Previous Work Partial Reconfiguration Methodology System Hardware Results System Software Summary Methodology System Software Drivers for the hardware peripherals. Internal Control Access Port (ICAP) API initialization. Modes of Operations. Cipher Block Chaining (CBC) mode. Counter (CTR) mode. Hashed Message Authentication Code (HMAC) Calculation Pre-Computations. ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 15 / 26

  18. Introduction System Description Previous Work Partial Reconfiguration Methodology System Hardware Results System Software Summary Methodology Experiment Methodology Implementation of individual cryptographic algorithms in non-PR designs. Creation of the PR design with all three algorithms. Assign Tasks to the system processor through the scheduler. ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 16 / 26

  19. Introduction PR System Previous Work RM Implementations Methodology AES Comparisons Results System Performance Summary PR Implementation Results Table: Summary for Implementations on XC4VFX12 Virtex-4 FPGA Device Utilization Summary PR Design Non-PR Design Static Dynamic Resource Logic Used Used Used Number of Slices 1588 2148 5506 Number of Slice Flip Flops 1566 1008 3906 Number of 4 input LUTs 2059 3600 8140 Number of DSP48 0 3 3 Number of FIFO16/RAMB16s 33 0 0 ReConFig 2011 A. Salman, M. Rogawski, J.-P. Kaps HW Accelerator for IPSec using Partial Reconfig. 17 / 26

Recommend


More recommend