A fork of https://github.com/openfheorg/openfhe-python to add some missing functionality

Rener Oliveira d86776bfbd Merge pull request #30 from openfheorg/Oliveira_phase2_cryptocontext 1 year ago
include 056fd5fdb9 EvalFastRotationExtWrapper 1 year ago
src 1cc7246745 Merge branch 'Oliveira_phase2_cryptocontext' of github.com:openfheorg/openfhe-python into Oliveira_phase2_cryptocontext 1 year ago
.gitignore 13d1ccf6e4 updated documentation 1 year ago
CMakeLists.txt 748bce12a4 erasing old dec wrapper + refactoring examples 1 year ago
LICENSE 72c9603a08 Initial commit 2 years ago
README.md 8d77844ece updated readme to work with conda 1 year ago

README.md

[Work in Progress] Official Python wrapper for OpenFHE

Table of Contents

Building

Requirements

Before building, make sure you have the following dependencies installed:

Linux

With all the dependencies set up, clone the repository, open a terminal in the repo folder and run the following commands:

mkdir build
cd build
cmake ..  // Alternatively, cmake .. -DOpenFHE_DIR=/path/to/installed/openfhe
make

At this point the .so file has been built. Your exact installation process will depend on your virtual environment.

Conda

conda create -n ${ENV_NAME} python=3.{X} anaconda

where ${ENV_NAME} should be replaced with the name of your environment, and {X} should be replaced with your desired python version. For example you might have conda create -n openfhe_python python=3.9 anaconda

then run

mkdir lib
mv *.so lib
conda develop lib

which creates a lib folder, moves the built .so file into that lib folder, and tells conda where to look for external libraries.

Note You may wish to copy the .so file to any projects of your own, or add it to your system path to source from.

System install

make install  // You may have to run sudo make install

Examples

After that, you can run the examples in the src/pke/examples folder:

python src/pke/examples/simple-integers.py