Skip to main content

A Scalable Implementation of Fully Homomorphic Encryption Built on NTRU

  • Conference paper
  • First Online:
Financial Cryptography and Data Security (FC 2014)

Part of the book series: Lecture Notes in Computer Science ((LNSC,volume 8438))

Included in the following conference series:

Abstract

In this paper we report on our work to design, implement and evaluate a Fully Homomorphic Encryption (FHE) scheme. Our FHE scheme is an NTRU-like cryptosystem, with additional support for efficient key switching and modulus reduction operations to reduce the frequency of bootstrapping operations. Ciphertexts in our scheme are represented as matrices of 64-bit integers. The basis of our design is a layered software services stack to provide high-level FHE operations supported by lower-level lattice-based primitive implementations running on a computing substrate. We implement and evaluate our FHE scheme to run on a commodity CPU-based computing environment. We implemented our FHE scheme to run in a compiled C environment and use parallelism to take advantage of multi-core processors. We provide experimental results which show that our FHE implementation provides at least an order of magnitude improvement in runtime as compared to recent publicly known evaluation results of other FHE software implementations.

Sponsored by the Defense Advanced Research Projects Agency (DARPA) and the Air Force Research Laboratory (AFRL) under Contract No. FA8750-11-C-0098. The views expressed are those of the authors and do not necessarily reflect the official policy or position of the Department of Defense or the U.S. Government. Distribution Statement “A”. (Approved for Public Release, Distribution Unlimited.)

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Alperin-Sheriff, J., Peikert, C.: Practical bootstrapping in quasilinear time. In: Canetti, R., Garay, J.A. (eds.) CRYPTO 2013, Part I. LNCS, vol. 8042, pp. 1–20. Springer, Heidelberg (2013)

    Google Scholar 

  2. Bos, J.W., Lauter, K., Loftus, J., Naehrig, M.: Improved security for a ring-based fully homomorphic encryption scheme. In: Stam, M. (ed.) IMACC 2013. LNCS, vol. 8308, pp. 45–64. Springer, Heidelberg (2013)

    Google Scholar 

  3. Brakerski, Z., Vaikuntanathan, V.: Efficient fully homomorphic encryption from (standard) LWE. In: FOCS, pp. 97–106 (2011)

    Google Scholar 

  4. Butenhof, D.: Programming with POSIX (R) Threads. Addison-Wesley Professional, Reading (1997)

    Google Scholar 

  5. Chen, Y., Nguyen, P.Q.: BKZ 2.0: better lattice security estimates. In: Lee, D.H., Wang, X. (eds.) ASIACRYPT 2011. LNCS, vol. 7073, pp. 1–20. Springer, Heidelberg (2011)

    Google Scholar 

  6. Cheon, J.H., Coron, J.-S., Kim, J., Lee, M.S., Lepoint, T., Tibouchi, M., Yun, A.: Batch fully homomorphic encryption over the integers. In: Johansson, T., Nguyen, P.Q. (eds.) EUROCRYPT 2013. LNCS, vol. 7881, pp. 315–335. Springer, Heidelberg (2013)

    Google Scholar 

  7. Cousins, D.B., Rohloff, K., Peikert, C., Schantz, R.: SIPHER: scalable implementation of primitives for homomorphic encryption - FPGA implementation using Simulink. In: Fifteenth Annual Workshop on High Performance Embedded Computing (HPEC), HPEC ’11 (2011)

    Google Scholar 

  8. Cousins, D.B., Rohloff, K., Peikert, C., Schantz, R.: An update on scalable implementation of primitives for homomorphic encryption - FPGA implementation using simulink. In: Sixteenth Annual Workshop on High Performance Embedded Computing (HPEC), HPEC ’12 (2012)

    Google Scholar 

  9. Doroz, Y., Hu, Y., Sunar, B.: Homomorphic AES evaluation using NTRU. Cryptology ePrint Archive, Report 2014/039 (2014). http://eprint.iacr.org/

  10. Gentry, C.: A fully homomorphic encryption scheme. Ph.D. thesis, Stanford University, Stanford, CA, USA, 2009. AAI3382729

    Google Scholar 

  11. Gentry, C.: Fully homomorphic encryption using ideal lattices. In: Proceedings of the 41st Annual ACM Symposium on Theory of Computing, STOC ’09, pp. 169–178. ACM, New York (2009)

    Google Scholar 

  12. Gentry, C., Halevi, S.: Implementing gentry’s fully-homomorphic encryption scheme. In: Paterson, K.G. (ed.) EUROCRYPT 2011. LNCS, vol. 6632, pp. 129–148. Springer, Heidelberg (2011)

    Google Scholar 

  13. Gentry, C., Halevi, S.: HElib (2014). https://github.com/shaih/HElib

  14. Gentry, C., Halevi, S., Lyubashevsky, V., Peikert, C., Silverman, J., Smart, N.: Personal communication (2011)

    Google Scholar 

  15. Gentry, C., Halevi, S., Smart, N.P.: Homomorphic evaluation of the AES circuit. In: Safavi-Naini, R., Canetti, R. (eds.) CRYPTO 2012. LNCS, vol. 7417, pp. 850–867. Springer, Heidelberg (2012)

    Google Scholar 

  16. 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)

    Google Scholar 

  17. Lindner, R., Peikert, C.: Better key sizes (and attacks) for LWE-based encryption. In: Kiayias, A. (ed.) CT-RSA 2011. LNCS, vol. 6558, pp. 319–339. Springer, Heidelberg (2011)

    Google Scholar 

  18. López-Alt, A., Tromer, E., Vaikuntanathan, V.: On-the-fly multiparty computation on the cloud via multikey fully homomorphic encryption. In: STOC, pp. 1219–1234 (2012)

    Google Scholar 

  19. Lyubashevsky, Vadim, Peikert, Chris, Regev, Oded: On ideal lattices and learning with errors over rings. In: Gilbert, Henri (ed.) EUROCRYPT 2010. LNCS, vol. 6110, pp. 1–23. Springer, Heidelberg (2010)

    Google Scholar 

  20. MAGMA. V2.18-11 (2012). http://magma.maths.usyd.edu.au/magma/

  21. MATLAB. R2012b. The MathWorks Inc., Natick, Massachusetts (2012)

    Google Scholar 

  22. Micciancio, D., Regev, O.: Lattice-based cryptography. In: Bernstein, D.J., Buchmann, J., Dahmen, E. (eds.) Post-Quantum Cryptography, pp. 147–191. Springer, Heidelberg (2009)

    Google Scholar 

  23. Naehrig, M., Lauter, K., Vaikuntanathan, V.: Can homomorphic encryption be practical? In: Proceedings of the 3rd ACM Workshop on Cloud Computing Security Workshop, CCSW ’11, pp. 113–124. ACM, New York (2011)

    Google Scholar 

  24. Perl, H., Brenner, M., Smith, M.: Poster: an implementation of the fully homomorphic Smart-Vercauteren cryptosystem. In Proceedings of the 18th ACM Conference on Computer and Communications Security, CCS ’11, pp. 837–840. ACM, New York (2011)

    Google Scholar 

  25. Shoup, V.: NTL: a Library for doing number theory. Courant Institute, New York University, New York, NY (2012). http://shoup.net/ntl/

  26. van de Pol, J.: Quantifying the security of lattice-based cryptosystems in practice. In: Mathematical and Statistical Aspects of Cryptography (2012)

    Google Scholar 

  27. Wang, W., Hu, Y., Chen, L., Huang, X., Sunar, B.: Accelerating fully homomorphic encryption on GPUs. In: Proceedings of the IEEE High Performance Extreme Computing Conference (2012)

    Google Scholar 

  28. Wu, D., Haven, J.: Using homomorphic encryption for large scale statistical analysis (2012)

    Google Scholar 

Download references

Acknowledgement

The authors wish to acknowledge the helpful feedback and guidance of Prof. Chris Peikert in preparing the material discussed in this paper.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Kurt Rohloff .

Editor information

Editors and Affiliations

A Experimental Results

A Experimental Results

Table 3. Encryption Runtime (ms) vs. Depth of computation supported and ring dimension for \(p=2\).
Table 4. EvalAdd Runtime (ms) vs. Depth of computation supported and ring dimension for \(p=2\).
Table 5. ComposedEvalMult Runtime (ms) vs. Depth of computation and Ring Dim. for \(p=2\).
Table 6. Decryption Runtime (ms) vs. Depth of computation supported and Initial Ring Dim. for \(p=2\).
Table 7. Bootstrapping Runtime (s) vs. Ring dimension for \(p=2\).

Rights and permissions

Reprints and permissions

Copyright information

© 2014 IFCA/Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Rohloff, K., Cousins, D.B. (2014). A Scalable Implementation of Fully Homomorphic Encryption Built on NTRU. In: Böhme, R., Brenner, M., Moore, T., Smith, M. (eds) Financial Cryptography and Data Security. FC 2014. Lecture Notes in Computer Science(), vol 8438. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-44774-1_18

Download citation

  • DOI: https://doi.org/10.1007/978-3-662-44774-1_18

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-662-44773-4

  • Online ISBN: 978-3-662-44774-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics