The sgx implementation of paper: Proof of Unlearning: Definitions and Instantiation
-
Install SGX SDK and Driver
Follow the instructions of linux-sgx to build and install SGX SDK and Driver
-
Install SGX SSL Library
Follow the instructions of intel-sgx-ssl to build and install SGX SSL Library
-
Install SGX DNNL Library
Follow the instructions of sgx-dnnl to build and install SGX DNNL Library
-
Data Preparation
cd datasets/purchase && python3 prepare_data.py
-
Data Shard
cd python && python3 distribution.py
-
Build
make SGX_MODE=HW
-
Running Test
python3 python/test.py
-
Data structure implementation and basic data/memory operation is in Enclave/Enclave.cpp
-
Neural Network structure implementation for Purchase Dataset is in Enclave/purchase_arch.cpp
-
Outside operation API implementation is in APP/App.cpp