Skip to main content

Homomorphic Encryption Library, Framework, Toolkit and Accelerator: A Review

Abstract

Homomorphic encryption ensures secure computation on encrypted data without the need for decryption beforehand. It enables the secure offloading of computations to untrusted servers. This paper provides a comprehensive description of multiple methods for conducting secure computations, along with the appropriate approaches and tools needed for successful implementation. Various strategies are outlined for selecting a suitable homomorphic encryption (HE) library, assisting developers and researchers in determining the most suitable library for their projects. To begin with, the paper presents a comparison of homomorphic encryption libraries based on different parameters. Additionally, it outlines the steps involved in choosing the right framework for effective implementation, comparing them based on various parameters. The Framework discussed in the paper supports a range of homomorphic encryption libraries and provides detailed information about them. Furthermore, the paper surveys three different homomorphic encryption accelerators and compares them to determine which one would maximize bootstrapping throughput when implemented. Lastly, the Fully Homomorphic Encryption-IBM toolkit is discussed. This toolkit supports the development of resources, primarily involved in the flow of messages. The paper concludes that secure computation is achievable by implementing the appropriate tools, considering their performance and implementation limitations. Moreover, the selection of the appropriate library, framework, and accelerator depends on the specific demands and requirements of the implementation chosen by the developer.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3

Data Availability

The data used to support the findings of this study are included within the article.

References

  1. Mahato GK, Chakraborty SK. A compartive review on homomorphic encryption for cloud security. IETE Journal of Research. Taylor and Francis. 2021;1-10.

  2. Yousuf H, Lahzi M, Salloum SA, Shaalan K. Systematic review on fully homomorphic encryption scheme and its application. Recent Advances in Intelligent Systems and Smart Applications. 2021;537-551.

  3. Dhiman S, Nayak S, Mahato GK, Ram A, Chakraborty SK. Homomorphic Encryption based Federated Learning for Financial Data Security. 4th International Conference on Computing and Communication Systems. IEEE. I3CS. 2023;1-6.

  4. Acar A, Aksu H, Uluagac AS, Conti M. A survey on homomorphic encryption schemes: Theory and implementation. ACM Comput Surv. 2018;51(4):1–35.

    Article  Google Scholar 

  5. Alloghani M, Alani MM, Al-Jumeily D, Baker T, Mustafina J, Hussain A, Aljaaf AJ. A systematic review on the status and progress of homomorphic encryption technologies. J Informn Security Appl. 2019;48: 102362.

    Google Scholar 

  6. Takeshita J, Koirala N, McKechney C, Jung T. HEProfiler: An In-Depth Profiler of Approximate Homomorphic Encryption Libraries; 2022.

  7. Natarajan D, Dai W. SEAL-embedded: A homomorphic encryption library for the internet of things. IACR Transactions on Cryptographic Hardware and Embedded Systems. 2021;756-779.

  8. Huang J, Wu D. Cloud Storage Model Based on the BGV Fully Homomorphic Encryption in the Blockchain Environment. Security and Communication Networks. 2022;2022.

  9. Aydin F, Karabulut E, Potluri S, Alkim E, Aysu A. RevEAL: single-trace side-channel leakage of the SEAL homomorphic encryption library. In Design, Automation Test in Europe Conference & Exhibition. IEEE. 2022;1527-1532.

  10. Lee E, Lee JW, Kim YS, no JS. Optimization of homomorphic comparison algorithm on rns-ckks scheme. IEEE Access. 2022;10:26163–76.

    Article  Google Scholar 

  11. Chen H, Iliashenko I, Laine K. When heaan meets fv: a new somewhat homomorphic encryption with reduced memory overhead. In IMA International Conference on Cryptography and Coding (pp. 265-285). Springer, Cham; 2021.

  12. Moon S, Lee Y. An efficient encrypted floating-point representation using HEaaN and TFHE. Security and Communication Networks; 2020.

  13. Brenna L, Singh IS, Johansen HD, Johansen D. TFHE-rs: A library for safe and secure remote computing using fully homomorphic encryption and trusted execution environments. Array. 2022;13: 100118.

    Article  Google Scholar 

  14. Jiang L, Lou Q, Joshi N. MATCHA: A Fast and Energy-Efficient Accelerator for Fully Homomorphic Encryption over the Torus. arXiv preprint arXiv:2202.08814; 2022.

  15. Ferrara M, Tortora A. A CONCRETE approach to torus fully homomorphic encryption. Cryptology ePrint Archive; 2022.

  16. Halevi S, Shoup V. Design and implementation of HElib: a homomorphic encryption library. Cryptology ePrint Archive; 2020.

  17. github HElib. https://github.com/homenc/HElib. Accessed Sept; 2022.

  18. Aguilar Melchor C, Kilijian MO, Lefebvre C, Ricosset T. A comparison of the homomorphic encryption libraries HElib, SEAL and FV-NFLlib. In International Conference on Security for Information Technology and Communications (pp. 425-442). Springer, Cham; 2018.

  19. github FV-NFLlib. https://github.com/CryptoExperts/FV-NFLlib. Accessed Sept; 2022.

  20. Halevi S, Polyakov Y, Shoup V. An improved RNS variant of the BFV homomorphic encryption scheme. In Cryptographers’ Track at the RSA Conference (pp. 83-105). Springer, Cham; 2019.

  21. github PALISADE lattice cryptography library. https://git.njit.edu/palisade/PALISADE. Accessed Sept; 2022.

  22. Chillotti I, Gama N, Georgieva M, Izabachène M. TFHE: fast fully homomorphic encryption over the torus. J Cryptol. 2020;33(1):34–91.

    Article  MathSciNet  MATH  Google Scholar 

  23. github concrete. https://github.com/zama-ai/concrete-core. Accessed Sept; 2022.

  24. Mouchet C, Bossuat JP, Troncoso-Pastoriza J, Hubaux JP. Lattigo: A multiparty homomorphic encryption library in go. In WAHC 2020-8th Workshop on Encrypted Computing & Applied Homomorphic Cryptography; 2020.

  25. Bajard JC, Eynard J, Hasan MA, Zucca V. A full RNS variant of FV like somewhat homomorphic encryption schemes. In International Conference on Selected Areas in Cryptography (pp. 423-442). Springer, Cham; 2016.

  26. github lattigo. https://github.com/tuneinsight/lattigo. Accessed Sept; 2022.

  27. github lattigo. https://pkg.go.dev/github.com/ldsec/lattigo/v2. Accessed Sept; 2022.

  28. Gomathisankaran M, Tyagi A, Namuduri K. HORNS: A homomorphic encryption scheme for Cloud Computing using Residue Number System. In 2011 45th Annual Conference on Information Sciences and Systems. 2011;1-5. IEEE.

  29. Ouyang Y, Rohde PP. A general framework for the composition of quantum homomorphic encryption & quantum error correction. arXiv preprint arXiv:2204.10471Xing, Bin Cedric, Mark Shanahan, and Rebekah Leslie-Hurd. "Intel® software guard extensions (Intel® SGX) software support for dynamic memory allocation inside an enclave." Proceedings of the Hardware and Architectural Support for Security and Privacy 2016 (2016): 1-9. (2022)

  30. Chielle E, Mazonka O, Gamil H, Tsoutsos NG, Maniatakos M. E3: A framework for compiling C++ programs with encrypted operands. Cryptology ePrint Archive; 2018.

  31. Brenner M, Dai W, Halevi S, Han K, Jalali A, Kim M, Sunar B. A standard API for RLWE-based homomorphic encryption. Homomorphic Encryption Standardization; 2017.

  32. github E3. https://github.com/momalab/e3. Accessed Sept; 2022.

  33. Chillotti I, Gama N, Georgieva M, Izabachene M. Faster fully homomorphic encryption: Bootstrapping in less than 0.1 seconds. In international conference on the theory and application of cryptology and information security. 2016;3-33. Springer, Berlin, Heidelberg.

  34. Viand A, Jattke P, Hithnawi A. Sok: Fully homomorphic encryption compilers. In 2021 IEEE Symposium on Security and Privacy (SP) (pp. 1092-1108). IEEE; 2021.

  35. github SHEEP. https://github.com/alan-turing institute/SHEEP. Accessed Sept; 2022.

  36. Chowdhary S, Dai W, Laine K, Saarikivi O. EVA Improved: Compiler and Extension Library for CKKS. In Proceedings of the 9th on Workshop on Encrypted Computing & Applied Homomorphic Cryptography (pp. 43-55); 2021.

  37. github IBM-FHE Toolkit. URL: https://www.ibm.com/blogs/research/2020/06/ibm-releases-fully-homomorphicencryption-toolkit-for-macos-and-ioslinux-and-android-coming-soon. Accessed Sept; 2022.

  38. github IBM-FHE Toolkit. https://github.com/IBM/fhe-toolkit-linux. Accessed Sept; 2022.

  39. github IBM-FHE Toolkit.https://www.ibm.com/blogs/research/2020/07/homomorphic-encryption-comes-to-linux-on-ibm-z/. Accessed Sept; 2022.

  40. Kim S, Kim J, Kim MJ, Jung W, Kim J, Rhu M, Ahn JH. Bts: An accelerator for bootstrappable fully homomorphic encryption. In Proceedings of the 49th Annual International Symposium on Computer Architecture (pp. 711-725); 2022.

  41. Migliore V, Real MM, Lapotre V, Tisserand A, Fontaine C, Gogniat G. Hardware/software co-design of an accelerator for FV homomorphic encryption scheme using Karatsuba algorithm. IEEE Trans Comput. 2016;67(3):335–47.

    Article  MathSciNet  MATH  Google Scholar 

  42. Roy SS, Mert AC, Kwon S, Shin Y, Yoo D. Accelerator for Computing on Encrypted Data. Cryptology ePrint Archive; 2021.

  43. Zhang N, Gamil H, Brinich P, Reynwar B, Al Badawi A, Neda N, Franchetti F. Towards Full-Stack Acceleration for Fully Homomorphic Encryption; 2022.

  44. Riazi MS, Laine K, Pelton B, Dai W. HEAX: An architecture for computing on encrypted data. In Proceedings of the Twenty-Fifth International Conference on Architectural Support for Programming Languages and Operating Systems (pp. 1295-1309); 2020.

  45. Han M, Zhu Y, Lou Q, Zhou Z, Guo S, Ju L. coxHE: A software-hardware co-design framework for FPGA acceleration of homomorphic computation. In 2022 Design, Automation & Test in Europe Conference & Exhibition (DATE) (pp. 1353-1358). IEEE; 2022.

  46. Al Badawi A, Veeravalli B, Mun CF, Aung KMM. High-performance FV somewhat homomorphic encryption on GPUs: An implementation using CUDA. IACR Transactions on Cryptographic Hardware and Embedded Systems, 70-95; 2018.

  47. Bos JW, Lauter K, Loftus J, Naehrig M. Improved security for a ring-based fully homomorphic encryption scheme. In IMA International Conference on Cryptography and Coding (pp. 45-64). Springer, Berlin, Heidelberg; 2013.

  48. Cheon JH, Kim A, Kim M, Song Y. Homomorphic encryption for arithmetic of approximate numbers. In International conference on the theory and application of cryptology and information security (pp. 409-437). Springer, Cham; 2017.

  49. Samardzic N, Feldmann A, Krastev A, Devadas S, Dreslinski R, Peikert C, Sanchez D. F1: A fast and programmable accelerator for fully homomorphic encryption. In MICRO-54: 54th Annual IEEE/ACM International Symposium on Microarchitecture (pp. 238-252); 2021.

  50. Feldmann A, Samardzic N, Krastev A, Devadas S, Dreslinski R, Peikert C, Sanchez D. F1: A fast and programmable accelerator for fully homomorphic encryption. In Proceedings of the 54th annual IEEE/ACM international symposium on Microarchitecture (MICRO-54); 2021.

  51. Cheon JH, Kim A, Kim M, Song Y. Homomorphic encryption for arithmetic of approximate numbers. In International conference on the theory and application of cryptology and information security (pp. 409-437). Springer, Cham; 2017.

  52. Mert AC, Kwon S, Shin Y, Yoo D, Lee Y, Roy SS. Medha: Microcoded Hardware Accelerator for computing on Encrypted Data. Cryptology ePrint Archive; 2022.

  53. Roy SS, Mert AC, Kwon S, Shin Y, Yoo D. Accelerator for Computing on Encrypted Data. Cryptology ePrint Archive; 2021.

  54. Takeshita J, Reis D, Gong T, Niemier M, Hu XS, Jung T. Algorithmic acceleration of B/FV-Like somewhat homomorphic encryption for compute-enabled RAM. In International Conference on Selected Areas in Cryptography (pp. 66-89). Springer, Cham; 2020.

  55. Zhai Y, Ibrahim M, Qiu Y, Boemer F, Chen Z, Titov A, Lyashevsky A. Accelerating encrypted computing on intel gpus. In 2022 IEEE International Parallel and Distributed Processing Symposium (IPDPS) (pp. 705-716). IEEE; 2022.

  56. Mahato GK, Chakraborty SK. Privacy Protection of Edge Computing Using Homomorphic Encryption. In Pattern Recognition and Data Analysis with Applications (pp. 395-407). Springer, Singapore; 2022.

  57. github SEAL. https://github.com/microsoft/SEAL. Accessed May; 2023.

  58. github TFHE. https://github.com/tfhe/tfhe. Accessed May; 2023.

  59. github HElib. https://github.com/homenc/HElib. Accessed May; 2023.

  60. github FV-NFLlib. https://github.com/CryptoExperts/FV-NFLlib/blob/master/LICENSE. Accessed May; 2023.

  61. Palisade. https://palisade-crypto.org/. Accessed May; 2023.

  62. github Concrete. https://github.com/zama-ai/concrete. Accessed May; 2023.

  63. github Lattigo. https://github.com/tuneinsight/lattigo. Accessed May; 2023.

  64. github E3. https://github.com/momalab/e3. Accessed May; 2023.

  65. github SHEEP. https://github.com/alan-turing-institute/SHEEP. Accessed May; 2023.

  66. Roy SS, Mert AC, Kwon S, Shin Y, Yoo D. Accelerator for computing on encrypted data. Cryptology. ePrint Archive; 2021.

  67. Feldmann A, Samardzic N, Krastev A, Devadas S, Dreslinski R, Eldefrawy K, Genise N, Peikert C, Sanchez D. F1: A fast and programmable accelerator for fully homomorphic encryption (extended version). (arXiv preprint arXiv:2109.05371); 2021.

  68. Mert AC, Kwon S, Shin Y, Yoo D, Lee Y, Roy SS. Medha: Microcoded hardware accelerator for computing on encrypted data. (arXiv preprint arXiv:2210.05476); 2022.

  69. Gorantala S, Springer R, Purser-Haskell S, Lam W, Wilson R, Ali A, Astor EP, Zukerman I, Ruth S, Dibak C, Schoppmann P. A general purpose transpiler for fully homomorphic encryption. (arXiv preprint arXiv:2106.07893); 2021.

  70. github Cingulata. https://github.com/CEA-LIST/Cingulata/wiki. Accessed August; 2023.

  71. github FHE C++ transpiler. https://github.com/topics/transpiler?l=c%2B%2B. Accessed August; 2023.

  72. Al Badawi A, Bates J, Bergamaschi F, Cousins DB, Erabelli S, Genise N, Halevi S, Hunt H, Kim A, Lee Y, Liu Z. Openfhe: Open-source fully homomorphic encryption library. Encrypted Computing and Applied Homomorphic Cryptography.(pp. 53-63); 2022.

Download references

Funding

No funding was received for conducting this study.

Author information

Authors and Affiliations

Authors

Contributions

All the authors contributed equally to this work.

Corresponding author

Correspondence to Swarnendu Kumar Chakraborty.

Ethics declarations

Conflict of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

This article is part of the topical collection “Research Trends in Communication and Network Technologies” guest edited by Anshul Verma, Pradeepika Verma and Kiran Kumar Pattanaik.

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and Permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Dhiman, S., Mahato, G.K. & Chakraborty, S.K. Homomorphic Encryption Library, Framework, Toolkit and Accelerator: A Review. SN COMPUT. SCI. 5, 24 (2024). https://doi.org/10.1007/s42979-023-02316-9

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s42979-023-02316-9

Keywords