Towards post-quantum security for IoT endpoints with NTRU

The NTRU cryptosystem is one of the main alternatives for practical implementations of post-quantum, public-key cryptography. In this work, we analyze the feasibility of employing the NTRU encryption scheme, NTRUEncrypt, in resource constrained devices such as those used for Internet-of-Things endpoints. We present an analysis of NTRUEncrypt's advantages over other cryptosystems for use in such devices. We describe four different NTRUEncrypt implementations on an ARM Cortex M0-based microcontroller, compare their results, and show that NTRUEncrypt is suitable for use in battery-operated devices. We present performance and memory footprint figures for different security parameters, as well as energy consumption in a resource constrained microcontroller to backup these claims. Furthermore, to the best of our knowledge, in this work we present the first time-independent implementation of NTRUEncrypt.

[1]  Paul C. Kocher,et al.  The intel random number generator , 1999 .

[2]  Johannes A. Buchmann,et al.  Efficiency Improvement for NTRU , 2008, Sicherheit.

[3]  Chris Peikert,et al.  On Ideal Lattices and Learning with Errors over Rings , 2010, JACM.

[4]  Chris Peikert,et al.  Lattice Cryptography for the Internet , 2014, PQCrypto.

[5]  Joseph H. Silverman,et al.  NTRU: A Ring-Based Public Key Cryptosystem , 1998, ANTS.

[6]  Joseph H. Silverman,et al.  Random small Hamming weight products with applications to cryptography , 2003, Discret. Appl. Math..

[7]  William Whyte,et al.  NAEP: Provable Security in the Presence of Decryption Failures , 2003, IACR Cryptol. ePrint Arch..

[8]  Joseph H. Silverman,et al.  NTRU in Constrained Devices , 2001, CHES.

[9]  Daniel Smith-Tone,et al.  Report on Post-Quantum Cryptography , 2016 .

[10]  Johannes A. Buchmann,et al.  Perspectives for cryptographic long-term security , 2006, CACM.

[11]  Ari Singer NTRU Cipher Suites for TLS , 2001 .

[12]  Zhenfei Zhang,et al.  Quantum-Safe Hybrid (QSH) Ciphersuite for Transport Layer Security (TLS) version 1.2 , 2016 .

[13]  H. Silverman Almost Inverses and Fast NTRU Key Creation , 1999 .

[14]  Rasool Jalili,et al.  On Constrained Implementation of Lattice-Based Cryptographic Primitives and Schemes on Smart Cards , 2015, ACM Trans. Embed. Comput. Syst..

[15]  Peter W. Shor,et al.  Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer , 1995, SIAM Rev..

[16]  Moni Naor,et al.  Immunizing Encryption Schemes from Decryption Errors , 2004, EUROCRYPT.

[17]  William Whyte,et al.  Choosing Parameters for NTRUEncrypt , 2017, CT-RSA.

[18]  Sorin A. Huss,et al.  On the Design of Hardware Building Blocks for Modern Lattice-Based Encryption Schemes , 2012, CHES.

[19]  Mariano Monteverde Giacomino NTRU software implementation for constrained devices , 2008 .

[20]  William Whyte,et al.  A quantum-safe circuit-extension handshake for Tor , 2015, IACR Cryptol. ePrint Arch..

[21]  Jung Woo Kim,et al.  Sliding Window Method for NTRU , 2007, ACNS.

[22]  Chris Peikert,et al.  Better Key Sizes (and Attacks) for LWE-Based Encryption , 2011, CT-RSA.

[23]  Chris Peikert,et al.  On Ideal Lattices and Learning with Errors over Rings , 2010, EUROCRYPT.