This repository provides two types of SEAL
- source files are placed in
native/origin/ - to install this,
chmod 777 ./install_origin.sh
sudo ./install_origin.sh- Install path is
${home}/myseal_origin
- source files are placed in
native/sgx/ - (prerequisite) SGXSDK should be installed in
/opt/intel/sgxsdk - to install this,
cmake -S . -B build_sgx -DSEAL_BUILD_DEPS=OFF -DSEAL_USE_MSGSL=OFF -DSEAL_USE_ZSTD=OFF -DSEAL_USE_ZLIB=OFF -DSEAL_USE_CXX17=OFF -DSEAL_USE_INTRIN=OFF -DSEAL_USE_EXPLICIT_BZERO=OFF -DSEAL_SRC_PATH=sgx -DCMAKE_INSTALL_PREFIX=~/myseal_sgx- Then modify
build_sgx/CMakeCache.txt(CMakeLists.txt will be updated soon),- Set
CMAKE_CXX_FLAGS:STRING=-nostdinc -fvisibility=hidden -fpie -fstack-protector -I/opt/intel/sgxsdk/include -I/opt/intel/sgxsdk/include/libcxx -I/opt/intel/sgxsdk/include/tlibc -nostdinc++ - Set
CMAKE_C_FLAGS:STRING=-nostdinc -fvisibility=hidden -fpie -fstack-protector -I/opt/intel/sgxsdk/include -I/opt/intel/sgxsdk/include/libcxx -I/opt/intel/sgxsdk/include/tlibc - Set
CMAKE_INSTALL_OLDINCLUDEDIR:PATH=/opt/intel/sgxsdk/include
- Set
- continue,
cmake --build build_sgx
sudo cmake --install build_sgx- Install path is
${home}/myseal_sgx
- Add
set_coeffmethod in PublicKey, SecretKey, Plaintext, Ciphertext and DynArray - Add
ct_data,pt_datastruct inciphertext.handplaintext.h, respectively - Remove features related to BFV scheme
- [Modified version] Remove features related to iostream, Serialization
- [Modified version] Remain functions only related to encryption&decryption