Currently, this project is still in the development phase.
The goal of this project is to test the FHE (Fully Homomorphic Encryption) libraries.
created by @hyerinshelly.
Our tool is written in Scala3, so you need to install the Scala3 compiler and build tools. You can find the installation instructions here.
$ git clone https://github.com/Maokami/fhetest.git
Insert the following commands to ~/.bashrc (or ~/.zshrc):
export FHETEST_HOME="<path to the fhetest directory>"
export PATH="$FHETEST_HOME/bin:$PATH"
This tool uses the T2-FHE-Compiler-and-Benchmarks with some modifications. So you need to install the submodules.
$ cd $FHETEST_HOME && git submodule update --init
You can install the FHE libraries(SEAL, OpenFHE) by running the build.sh
script in the T2 directory.
$ cd $FHETEST_HOME/src/main/java/T2-FHE-Compiler-and-Benchmarks/
$ chmod +x .circleci/build_libs.sh
$ .circleci/build_libs.sh
Because the T2 project requires some dependencies, you should install them first.
$ apt install cmake make build-essential g++ clang autoconf javacc patchelf openjdk-8-jdk maven m4 tar lzip libfftw3-dev
Now, you can build the project by sbt.
# build the T2 project and the fhetest project
$ sbt buildT2 && sbt assembly
If you want to know more about the commands, you can run the following command:
$ fhetest help
# Usage: fhetest <command> [options]
# Commands:
# ...