Abstract
The Number Theoretic Transform (NTT) technique is widely used to implement cryptographic schemes based on the Ring Learning With Errors problem(RLWE), since it provides efficient algorithm for multiplication of polynomials over the finite field. However, the module in NTT must be big enough such that the finite field has some special root of unity, which makes the corresponding schemes a bit less efficient. At Inscrypt 2018, Zhou et al. proposed a technique called Preprocess-then-NTT to relax the constraint for the modulus while keeping NTT work, at the cost of time complexity. In this paper, we improve the Preprocess-then-NTT technique by mixing it with Karatsuba multiplication such that the time complexity is better than the original NTT algorithm asymptotically. The claim was also verified in our experiments. As a result, our new algorithm not only relaxes the constraint for modulus but also improves efficiency in practice. In addition, we also present some advantages and applications of our new algorithm.
This work is supported by National Key Research and Development Program of China (No. 2018YFA0704705, 2020YFA0712300), National Natural Science Foundation of China (No. 62032009).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Alkım, E., Bilgin, Y.A., Cenk, M.: Compact and simple RLWE based key encapsulation mechanism. In: Schwabe, P., Thériault, N. (eds.) LATINCRYPT 2019. LNCS, vol. 11774, pp. 237–256. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-30530-7_12
Bernstein, D.J.: Multidigit multiplication for mathematicians (2001). http://cr.yp.to/papers.html#m3
Bos, J.W., Costello, C., Naehrig, M., Stebila, D.: Post-quantum key exchange for the TLS protocol from the ring learning with errors problem. In: 2015 IEEE Symposium on Security and Privacy, pp. 553–570. IEEE (2015)
Bos, J., et al.: CRYSTALS-Kyber: a CCA-secure module-lattice-based KEM. In: IEEE European Symposium on Security and Privacy, pp. 353–367. IEEE (2018)
Brakerski, Z., Gentry, C., Vaikuntanathan, V.: Fully homomorphic encryption without bootstrapping. In: Innovations in Theoretical Computer Science, pp. 309–325 (2012)
Cook, S., Aanderaa, S.: On the minimum computation time of functions. Trans. Am. Math. Soc. 142, 291–314 (1969)
Cooley, J.W., Tukey, J.W.: An algorithm for the machine calculation of complex Fourier series. Math. Comput. 19(90), 297–301 (1965)
Hoffstein, J., Pipher, J., Silverman, J.H.: NTRU: a ring-based public key cryptosystem. In: Buhler, J.P. (ed.) ANTS 1998. LNCS, vol. 1423, pp. 267–288. Springer, Heidelberg (1998). https://doi.org/10.1007/BFb0054868
Karatsuba, A.: Multiplication of multidigit numbers on automata. Sov. Phys. Dokl. 7, 595–596 (1963)
Karatsuba, A.A., Ofman, Y.: Multiplication of many-digital numbers by automatic computers. In: Doklady Akademii Nauk, vol. 145, pp. 293–294. Russian Academy of Sciences (1962)
Liang, Z., et al.: Number theoretic transform: generalization, optimization, concrete analysis and applications. In: Wu, Y., Yung, M. (eds.) Inscrypt 2020. LNCS, vol. 12612, pp. 415–432. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-71852-7_28
Lyubashevsky, V.: Lattice signatures without trapdoors. In: Pointcheval, D., Johansson, T. (eds.) EUROCRYPT 2012. LNCS, vol. 7237, pp. 738–755. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-29011-4_43
Lyubashevsky, V., Micciancio, D., Peikert, C., Rosen, A.: SWIFFT: a modest proposal for FFT hashing. In: Nyberg, K. (ed.) FSE 2008. LNCS, vol. 5086, pp. 54–72. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-71039-4_4
Lyubashevsky, V., Peikert, C., Regev, O.: On ideal lattices and learning with errors over rings. In: Gilbert, H. (ed.) EUROCRYPT 2010. LNCS, vol. 6110, pp. 1–23. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-13190-5_1
Lyubashevsky, V., Seiler, G.: NTTRU: truly fast NTRU using NTT. IACR Trans. Cryptogr. Hardw. Embed. Syst. 2019(3), 180–201 (2019)
Moenck, R.T.: Practical fast polynomial multiplication. In: Proceedings of the Third ACM Symposium on Symbolic and Algebraic Computation, pp. 136–148. ACM (1976)
Nussbaumer, H.J.: Fast polynomial transform algorithms for digital convolution. IEEE Trans. Acoust. Speech Sig. Process. 28, 205–215 (1980)
Pan, Y., Li, H., Xie, T., Liu, Z., Yang, Z., Zhu, Y.: TALE: a lattice-based public key encryption scheme (2020). https://sfjs.cacrnet.org.cn/upload/5db41c6543be3.rar
Pöppelmann, T., Alkim, E., Ducas, L., Schwabe, P.: NewHope: algorithm specifications and supporting documentation (version 1.0.3). NIST Post-Quantum Cryptography Standardization Process (2019)
Regev, O.: On lattices, learning with errors, random linear codes, and cryptography. J. ACM (JACM) 56(6), 34 (2009)
Shor, P.W.: Algorithms for quantum computation: discrete logarithms and factoring. In: 35th Annual Symposium on Foundations of Computer Science - FOCS, pp. 124–134 (1994)
Langlois, A., Stehlé, D.: Worst-case to average-case reductions for module lattices. Des. Codes Crypt. 75(3), 565–599 (2014). https://doi.org/10.1007/s10623-014-9938-4
Toom, A.: The complexity of a scheme of functional elements realizing the multiplication of integers. Dokl. Akad. Nauk SSSR 3(3), 496–498 (1963)
Zhou, S., et al.: Preprocess-then-NTT technique and its applications to Kyber and NewHope. In: Guo, F., Huang, X., Yung, M. (eds.) Inscrypt 2018. LNCS, vol. 11449, pp. 117–137. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-14234-6_7
Zhu, Y., Liu, Z., Pan, Y.: When NTT meets Karatsuba: preprocess-then-NTT technique revisited. Cryptology ePrint Archive: Report 2019/1079 (2019). https://eprint.iacr.org/2019/1079.pdf
Acknowledgements
Thank the anonymous referees very much for their helpful comments. Thank Prof. Yunlei Zhao very much for his valuable suggestions on improving this paper and directing us to Nussbaumer’s trick [17]. Thank Renzhang Liu for his help on the programming.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Zhu, Y., Liu, Z., Pan, Y. (2021). When NTT Meets Karatsuba: Preprocess-then-NTT Technique Revisited. In: Gao, D., Li, Q., Guan, X., Liao, X. (eds) Information and Communications Security. ICICS 2021. Lecture Notes in Computer Science(), vol 12919. Springer, Cham. https://doi.org/10.1007/978-3-030-88052-1_15
Download citation
DOI: https://doi.org/10.1007/978-3-030-88052-1_15
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-88051-4
Online ISBN: 978-3-030-88052-1
eBook Packages: Computer ScienceComputer Science (R0)