Paper 2018/425

Implementing RLWE-based Schemes Using an RSA Co-Processor

Martin R. Albrecht, Christian Hanser, Andrea Hoeller, Thomas Pöppelmann, Fernando Virdia, and Andreas Wallner

Abstract

We repurpose existing RSA/ECC co-processors for (ideal) lattice-based cryptography by exploiting the availability of fast long integer multiplication. Such co-processors are deployed in smart cards in passports and identity cards, secured microcontrollers and hardware security modules (HSM). In particular, we demonstrate an implementation of a variant of the Module-LWE-based Kyber Key Encapsulation Mechanism (KEM) that is tailored for high performance on a commercially available smart card chip (SLE 78). To benefit from the RSA/ECC co-processor we use Kronecker substitution in combination with schoolbook and Karatsuba polynomial multiplication. Moreover, we speed-up symmetric operations in our Kyber variant using the AES co-processor to implement a PRNG and a SHA-256 co-processor to realise hash functions. This allows us to execute CCA-secure Kyber768 key generation in 79.6 ms, encapsulation in 102.4 ms and decapsulation in 132.7 ms.

Metadata
Available format(s)
PDF
Publication info
A minor revision of an IACR publication in TCHES 2019
Keywords
learning with errorssmart cardimplementation
Contact author(s)
thomas poeppelmann @ infineon com
History
2018-10-16: revised
2018-05-10: received
See all versions
Short URL
https://ia.cr/2018/425
License
Creative Commons Attribution
CC BY

BibTeX

@misc{cryptoeprint:2018/425,
      author = {Martin R.  Albrecht and Christian Hanser and Andrea Hoeller and Thomas Pöppelmann and Fernando Virdia and Andreas Wallner},
      title = {Implementing {RLWE}-based Schemes Using an {RSA} Co-Processor},
      howpublished = {Cryptology {ePrint} Archive, Paper 2018/425},
      year = {2018},
      url = {https://eprint.iacr.org/2018/425}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.