elliptic curve cryptography on fpgas how fast can we go
play

Elliptic curve cryptography on FPGAs: How fast can we go with a - PowerPoint PPT Presentation

Elliptic curve cryptography on FPGAs: How fast can we go with a single chip? Kimmo Jrvinen Department of Information and Computer Science Aalto University, Finland kimmo.jarvinen@aalto.fi ERSA 2011, Las Vegas, NV, USA, July 1821, 2011


  1. Elliptic curve cryptography on FPGAs: How fast can we go with a single chip? Kimmo Järvinen Department of Information and Computer Science Aalto University, Finland kimmo.jarvinen@aalto.fi ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011

  2. Introduction Contents 1. What we are computing 2. How we do it and what kind of optimizations are used 3. The results which show that this is the fastest published ECC implementation Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 2/20

  3. Introduction Contents 1. What we are computing 2. How we do it and what kind of optimizations are used 3. The results which show that this is the fastest published ECC implementation ◮ Explaining ECC requires some math but I try to keep it in minimum; See the paper for exact definitions and equations if you’re interested Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 2/20

  4. Introduction Contents 1. What we are computing 2. How we do it and what kind of optimizations are used 3. The results which show that this is the fastest published ECC implementation ◮ Explaining ECC requires some math but I try to keep it in minimum; See the paper for exact definitions and equations if you’re interested ◮ Work that is based on several of my previous publications. Especially, K. Järvinen: “Optimized FPGA-based elliptic curve cryptography processor for high-speed applications,” Integration—the VLSI Journal, to appear Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 2/20

  5. Introduction Fast cryptography with FPGAs ◮ FPGAs very good platforms for cryptography 1 Example Architecture efficiency: Reprogrammability allows optimizing for specific parameters because if parameters change, we can change the design 1 Wollinger et al., ACM Trans. Embed. Comput. Syst. 3(3):534-574, 2004 Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 3/20

  6. Introduction Fast cryptography with FPGAs ◮ FPGAs very good platforms for cryptography 1 Example Architecture efficiency: Reprogrammability allows optimizing for specific parameters because if parameters change, we can change the design ◮ In this work, we fix the curve to a standardized curve NIST K-163 (both the curve and the underlying finite field is fixed) 1 Wollinger et al., ACM Trans. Embed. Comput. Syst. 3(3):534-574, 2004 Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 3/20

  7. Preliminaries (mathematical background) Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 4/20

  8. Public-key cryptography ◮ The encryption key y is derived from the decryption key x in a one-way manner ◮ Hence, y can be public if x remains private Example ◮ Exponentiation: y = g x mod p ◮ y = 3 x mod 19 0 1 2 3 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 g = 3 Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 5/20

  9. Public-key cryptography ◮ The encryption key y is derived from the decryption key x in a one-way manner ◮ Hence, y can be public if x remains private Example ◮ Exponentiation: y = g x mod p ◮ y = 3 x mod 19 0 1 2 3 3 4 5 6 7 8 9 9 10 11 12 13 14 15 16 17 18 g 2 g = 3 Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 5/20

  10. Public-key cryptography ◮ The encryption key y is derived from the decryption key x in a one-way manner ◮ Hence, y can be public if x remains private Example ◮ Exponentiation: y = g x mod p ◮ y = 3 x mod 19 0 1 2 3 3 4 5 6 7 8 8 9 9 10 11 12 13 14 15 16 17 18 g 3 g 2 g = 3 Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 5/20

  11. Public-key cryptography ◮ The encryption key y is derived from the decryption key x in a one-way manner ◮ Hence, y can be public if x remains private Example ◮ Exponentiation: y = g x mod p ◮ y = 3 x mod 19 0 1 2 3 3 4 5 5 6 7 8 8 9 9 10 11 12 13 14 15 16 17 18 g 3 g 2 g = 3 Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 5/20

  12. Public-key cryptography ◮ The encryption key y is derived from the decryption key x in a one-way manner ◮ Hence, y can be public if x remains private Example ◮ Exponentiation: y = g x mod p ◮ y = 3 x mod 19 0 1 2 3 3 4 5 5 6 7 8 8 9 9 10 11 12 13 14 15 15 16 17 18 g 3 g 2 g = 3 Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 5/20

  13. Public-key cryptography ◮ The encryption key y is derived from the decryption key x in a one-way manner ◮ Hence, y can be public if x remains private Example ◮ Exponentiation: y = g x mod p ◮ y = 3 x mod 19 0 1 2 3 3 4 5 5 6 7 7 8 8 9 9 10 11 12 13 14 15 15 16 17 18 g 3 g 2 g = 3 Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 5/20

  14. Public-key cryptography ◮ The encryption key y is derived from the decryption key x in a one-way manner ◮ Hence, y can be public if x remains private Example ◮ Exponentiation: y = g x mod p ◮ y = 3 x mod 19 0 1 2 2 3 3 4 5 5 6 7 7 8 8 9 9 10 11 12 13 14 15 15 16 17 18 g 3 g 2 g = 3 Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 5/20

  15. Public-key cryptography ◮ The encryption key y is derived from the decryption key x in a one-way manner ◮ Hence, y can be public if x remains private Example ◮ Exponentiation: y = g x mod p ◮ y = 3 x mod 19 0 1 2 2 3 3 4 5 5 6 6 7 7 8 8 9 9 10 11 12 13 14 15 15 16 17 18 g 3 g 2 g = 3 Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 5/20

  16. Public-key cryptography ◮ The encryption key y is derived from the decryption key x in a one-way manner ◮ Hence, y can be public if x remains private Example ◮ Exponentiation: y = g x mod p ◮ y = 3 x mod 19 0 1 2 2 3 3 4 5 5 6 6 7 7 8 8 9 9 10 11 12 13 14 15 15 16 17 18 18 g 3 g 2 g = 3 Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 5/20

  17. Public-key cryptography ◮ The encryption key y is derived from the decryption key x in a one-way manner ◮ Hence, y can be public if x remains private Example ◮ Exponentiation: y = g x mod p ◮ y = 3 x mod 19 0 1 2 2 3 3 4 5 5 6 6 7 7 8 8 9 9 10 11 12 13 14 15 15 16 16 17 18 18 g 3 g 2 g = 3 Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 5/20

  18. Public-key cryptography ◮ The encryption key y is derived from the decryption key x in a one-way manner ◮ Hence, y can be public if x remains private Example ◮ Exponentiation: y = g x mod p ◮ y = 3 x mod 19 0 1 2 2 3 3 4 5 5 6 6 7 7 8 8 9 9 10 10 11 12 13 14 15 15 16 16 17 18 18 g 3 g 2 g = 3 Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 5/20

  19. Public-key cryptography ◮ The encryption key y is derived from the decryption key x in a one-way manner ◮ Hence, y can be public if x remains private Example ◮ Exponentiation: y = g x mod p ◮ y = 3 x mod 19 0 1 2 2 3 3 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 13 14 15 15 16 16 17 18 18 g 3 g 2 g = 3 Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 5/20

  20. Public-key cryptography ◮ The encryption key y is derived from the decryption key x in a one-way manner ◮ Hence, y can be public if x remains private Example ◮ Exponentiation: y = g x mod p ◮ y = 3 x mod 19 0 1 2 2 3 3 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 13 14 14 15 15 16 16 17 18 18 g 3 g 2 g = 3 Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 5/20

  21. Public-key cryptography ◮ The encryption key y is derived from the decryption key x in a one-way manner ◮ Hence, y can be public if x remains private Example ◮ Exponentiation: y = g x mod p ◮ y = 3 x mod 19 0 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 11 12 13 14 14 15 15 16 16 17 18 18 g 3 g 2 g = 3 Kimmo Järvinen: How fast is elliptic curve cryptography with a single FPGA? ERSA 2011, Las Vegas, NV, USA, July 18–21, 2011 5/20

Recommend


More recommend