Implementations from scratch done while studying some FHE papers; do not use in production.
arith
: contains $\mathbb{Z}_q$, $R_q=\mathbb{Z}q/(X^N+1)$, $R=\mathbb{Z}/(X^N+1)$, $\mathbb{T}{Q}/(X^N +1)$ arithmetic implementations, together with the NTT implementation.gfhe
: (gfhe=generalized-fhe) contains the structs and logic for RLWE, GLWE, GLev, GGSW, RGSW cryptosystems, and modulus switching and key switching methods, which can be used by concrete FHE schemes.bfv
: https://eprint.iacr.org/2012/144.pdf scheme implementationckks
: https://eprint.iacr.org/2016/421.pdf scheme implementationtfhe
: https://eprint.iacr.org/2018/421.pdf scheme implementationcargo test --release