Skip to content

kaist-plrg/fhetest

Repository files navigation

FHETEST

Currently, this project is still in the development phase.

The goal of this project is to test the FHE (Fully Homomorphic Encryption) libraries.

Overall structure

fhetest_structure

created by @hyerinshelly.

Installation Guide

Our tool is written in Scala3, so you need to install the Scala3 compiler and build tools. You can find the installation instructions here.

Download this project

$ git clone https://github.com/Maokami/fhetest.git

Environment Setting

Insert the following commands to ~/.bashrc (or ~/.zshrc):

export FHETEST_HOME="<path to the fhetest directory>"
export PATH="$FHETEST_HOME/bin:$PATH"

Install the submodules

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

Install the FHE libraries

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

Build the project

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:
# ...

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published