Github : Github
Hello, everyone. I present HIENAA.jl (HE Implementation for Encrypted Numbers Arithmetic and Algorithms), which is a pure Julia implementation of a variety of FHE schemes, such as BGV/BFV/CKKS. For a quick recap, FHE is a special encryption scheme that enables an arbitrary circuit evaluation on encrypted data without decryption.
However, the current code and interface are not yet of a production quality and need a lot of improvements and optimisations in terms of algorithms and backends. Still, it has some advanced functionalities(SIMD packing, matrix multiplication, polynomial evaluation…). My personal goal is to make the speed of this library comparable to the current existing HE libraries. Currently, the NTT(Number Theoretic Transform) and Barrett / Montgomery reductions in HIENAA’s backend show a better performance than existing HE implementations.
Any idea /contribution to improving the library is welcome! Thanks.