Abstract
In the digital world, public-key cryptography is ubiquitous. Current public-key crypto schemes like RSA or Diffie-Hellmann are in widespread use and they represent an indispensable asset of our technological toolbox. However, the discovery of Shor’s algorithm and the rapid progression in the field of quantum computers became a painful reminder of our alerting dependency on such technologies. At the same time, this realization started a demand for new cryptographic algorithms withstanding the power of quantum computers. The National Institute of Standards and Technology (NIST) aimed to satisfy this urge by initiating a standardization process in 2017 with a call for proposals of post-quantum key exchange mechanisms and signature algorithms. One of the submissions that made it to the second round is the key encapsulation mechanism BIKE.
This work investigates various techniques to achieve an efficient and secure implementation of BIKE on embedded devices. We show that it is possible for BIKE to run on a Cortex-M4 microcontroller using reduced data representation and adequate decoding algorithms. Our implementation achieves a performance of 6 million cycles for key generation, 7 million cycles for encapsulation, and 89 million cycles for decapsulation for BIKE-1.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Aguilar-Melchor, C., et al.: Hamming Quasi-Cyclic (HQC), November 2017. Submission to the NIST post quantum standardization process (2017)
Aragon, N., et al.: Bike: Bit Flipping Key Encapsulation (2018). http://bikesuite.org/files/BIKE.pdf. Accessed 18 Nov 2019
Bernstein, D.J., et al.: Classic McEliece: conservative code-based cryptography (2017). Submission to the NIST post quantum standardization process (2017)
Brent, R.P., Gaudry, P., Thomé, E., Zimmermann, P.: Faster multiplication in GF(2)[x]. In: van der Poorten, A.J., Stein, A. (eds.) ANTS 2008. LNCS, vol. 5011, pp. 153–166. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-79456-1_10
Brent, R.P., Gaudry, P., Thomé, E., Zimmermann, P.: InriaForge: gf2x: Project home (2018). https://gforge.inria.fr/projects/gf2x/. Accessed 18 Nov 2019
Gallager, R.G.: Low-density parity-check codes. IRE Trans. Inf. Theory 8(1), 21–28 (1962)
Gay, O.: Fast software implementation in C of the FIPS 180–2 hash algorithms SHA-224, SHA-256, SHA-384 and SHA-512 (2018). https://github.com/ogay/sha2. Accessed 18 Nov 2019
McEliece, R.J.: A public-key cryptosystem based on algebraic coding theory. JPL DSN Progress Report 44 (1978)
Kannwischer, M.J., Rijneveld, J., Schwabe, P., Stoffelen, K.: pqm4: testing and benchmarking NIST PQC on ARM Cortex-M4. Cryptology ePrint Archive, Report 2019/844 (2019). https://eprint.iacr.org/2019/844
kokke. Small portable AES128/192/256 in C (2018). https://github.com/kokke/tiny-AES-c. Accessed 18 Nov 2019
Montgomery, P.L.: Five, six, and seven-term Karatsuba-like formulae. IEEE Trans. Comput. 54(3), 362–369 (2005)
Moody, D.: The ship has sailed: the NIST post-quantum cryptography “competition”. In: Invited talk at ASIACRYPT 2017, Hongkong (2017)
Moody, D.: Round 2 of NIST PQC competition. Invited talk at PQCrypto 2019, Chongqing, China (2019)
Moses, T.: Quantum Computing and Cryptography - Their impact on cryptographic practice. Technical report, Entrust, Inc. (2009). https://www.entrust.com/wp-content/uploads/2013/05/WP_QuantumCrypto_Jan09.pdf
Niederreiter, H.: Knapsack type cryptosystems and algebraic coding theory. Prob. Control Inf. Theory 15(2), 159–166 (1986)
NIST. Post-Quantum Cryptography: NIST’s Plan for the Future. Technical report, NIST (2016). https://csrc.nist.gov/csrc/media/projects/post-quantum-cryptography/documents/pqcrypto-2016-presentation.pdf
NIST. Call for Proposals - Post-Quantum Cryptography—CSRC. Technical report, NIST (2017). https://csrc.nist.gov/Projects/Post-Quantum-Cryptography/Post-Quantum-Cryptography-Standardization/Call-for-Proposals
NIST. Post-Quantum Cryptography - Workshops and Timeline. Technical report, NIST (2017). https://csrc.nist.gov/Projects/Post-Quantum-Cryptography/Workshops-and-Timeline
NIST. PQC Standardization Process: Second Round Candidate Announcement. Technical report, NIST (2019). https://csrc.nist.gov/News/2019/pqc-standardization-process-2nd-round-candidates
NIST. Status Report on the First Round of the NIST Post-Quantum Cryptography Standardization Process. Technical report, NIST (2019). https://csrc.nist.gov/publications/detail/nistir/8240/final
Ouzan, S., Be’ery, Y.: Moderate-density parity-check codes. CoRR, abs/0911.3262 (2009)
Schwabe, P., Stoffelen, K.: All the AES you need on Cortex-M3 and M4. In: Avanzi, R., Heys, H. (eds.) SAC 2016. LNCS, vol. 10532, pp. 180–194. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-69453-5_10
Shor, P.: Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer. Technical report, AT&T Research (1996). https://arxiv.org/abs/quant-ph/9508027
Shoup, V.: NTL: A library for doing number theory (2018). https://www.shoup.net/ntl/. Accessed 18 Nov 2019
Stehlé, D., Zimmermann, P.: A binary recursive Gcd algorithm. In: Buell, D. (ed.) ANTS 2004. LNCS, vol. 3076, pp. 411–425. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-24847-7_31
von Maurich, I.: Efficient implementation of code- and hash-based cryptography. Ph.D. thesis, Ruhr University Bochum, Germany (2017)
von Maurich, I., Güneysu, T.: Lightweight code-based cryptography: QC-MDPC McEliece encryption on reconfigurable devices. In: Design, Automation & Test in Europe Conference & Exhibition, DATE 2014, Dresden, Germany, 24–28 March 2014, pp. 1–6 (2014)
von Maurich, I., Güneysu, T.: Towards side-channel resistant implementations of QC-MDPC McEliece encryption on constrained devices. In: Mosca, M. (ed.) PQCrypto 2014. LNCS, vol. 8772, pp. 266–282. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-11659-4_16
von Maurich, I., Oder, T., Güneysu, T.: Implementing QC-MDPC McEliece encryption. ACM Trans. Embedded Comput. Syst. 14(3), 44:1–44:27 (2015)
Weimerskirch, A., Paar, C.: Generalizations of the Karatsuba algorithm for efficient implementations. IACR Cryptology ePrint Archive, 2006:224 (2006)
Acknowledgement
This work was supported in part through DFG Excellence Strategy grant 39078197 (EXC 2092, CASA), and by the Federal Ministry of Education and Research of Germany through the QuantumRISC project (16KIS1038).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
A Decoding Algorithms
A Decoding Algorithms
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Bischof, M., Oder, T., Güneysu, T. (2020). Efficient Microcontroller Implementation of BIKE. In: Simion, E., Géraud-Stewart, R. (eds) Innovative Security Solutions for Information Technology and Communications. SecITC 2019. Lecture Notes in Computer Science(), vol 12001. Springer, Cham. https://doi.org/10.1007/978-3-030-41025-4_3
Download citation
DOI: https://doi.org/10.1007/978-3-030-41025-4_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-41024-7
Online ISBN: 978-3-030-41025-4
eBook Packages: Computer ScienceComputer Science (R0)