HardwareSoftware Codesign of RSA for Optimal Performance vs

  • Slides: 11
Download presentation
Hardware-Software Codesign of RSA for Optimal Performance vs. Flexibility Trade-off Malik Umar Sharif, Rabia

Hardware-Software Codesign of RSA for Optimal Performance vs. Flexibility Trade-off Malik Umar Sharif, Rabia Shahid, Marcin Rogawski, and Kris Gaj George Mason University USA Supported in part by NIST/U. S. Department of Commerce under Grant No. 60 NANB 15 D 058

Primary Designers & Co-Authors Malik Umar Sharif Rabia Shahid Ph. D Students in the

Primary Designers & Co-Authors Malik Umar Sharif Rabia Shahid Ph. D Students in the Cryptographic Engineering Marcin Rogawski Former Ph. D Student Cadence Design Systems San Jose, CA

Cryptography at Crossroads Traditional Cryptography Transition Period RSA Elliptic Curve Cryptosystems (existing standards) Attacks

Cryptography at Crossroads Traditional Cryptography Transition Period RSA Elliptic Curve Cryptosystems (existing standards) Attacks using Complete collapse quantum computers Trusted resistance classical computers Post-Quantum Cryptography Hash-based Code-based Lattice-based Multivariate (emerging standards Trusted resistanc Limited trust 3

Solutions for the Transition Period Traditional Scheme (e. g. , RSA) Post-Quantum Scheme (e.

Solutions for the Transition Period Traditional Scheme (e. g. , RSA) Post-Quantum Scheme (e. g. , NTRU) Maximum flexibility with the choice of parameters and key s Hardware acceleration crucial because of high-computational complexity 4

Why RSA? The oldest and most trusted public key scheme Baseline for evaluation of

Why RSA? The oldest and most trusted public key scheme Baseline for evaluation of post-quantum cryptosystems Shamir Rivest Adleman MIT, 1977 Simple description: Encryption and decryption equivalent to modular exponentiation, Y=XE mod N 5

Basic Operations of RSA Mod Exp Mod Mul Modular Exponentiation: Y = XE mod

Basic Operations of RSA Mod Exp Mod Mul Modular Exponentiation: Y = XE mod N Modular Multiplication: C = A∙B mod Typical operand sizes: 512 -2048 bits 6

Our Platform – Zynq-7000 & Zed. Board Processing System (PS) – ARM based Microprocessor

Our Platform – Zynq-7000 & Zed. Board Processing System (PS) – ARM based Microprocessor Syste Software in C based on RELIC (Efficient LIbrary for Crypto • Free • Optimized for embedded systems Programmable Logic (PL) – a 28 nm Artix-7 -based reconfigura Hardware in VHDL based on architecture by Orup-Suzuki • DSP-unit based • Optimized for maximum clock frequency 7

Design Options Software in C Hardware in VHDL Mod Exp Mod Mul Most Flexible

Design Options Software in C Hardware in VHDL Mod Exp Mod Mul Most Flexible Least Efficient Best Balanced Most Efficient Least Flexible 8

Features of our Solution Three modular exponentiation schemes: • Left-to-Right (L 2 R), Mod

Features of our Solution Three modular exponentiation schemes: • Left-to-Right (L 2 R), Mod Exp • Right-to-Left (R 2 L) • Sliding Window (SLID) Mod Mul selected at run time Four operand sizes: • 512, 1024, 1536, 2048 bits selected at run time Maximum flexibility and scalability 9

Speed-up vs. Software Based on RELIC 48. 48 57. 67 53. 62 53. 6

Speed-up vs. Software Based on RELIC 48. 48 57. 67 53. 62 53. 6 57. 65 46. 25 42. 91 45. 47 36. 33 28. 51 28. 42 Left-to-Right 22. 47 Right-to-Left 512 1024 1536 Sliding Window 2048 10

Future Work • Implementation of selected post-quantum cryptographic alg on Zynq using the similar

Future Work • Implementation of selected post-quantum cryptographic alg on Zynq using the similar software/hardware co-design approa • Implementation of the hardware portions using High-Level Syn Poster: 3: 30 -4: 15 pm http: //cryptography. gmu. edu 11