PCT
The experimental code of Private Contact Tracing using SGX.
Overview of the components.
preliminary experiment
SOTA software-based approach vs hardware-based approach in PSI
experiment/
Setup
OS: Ubuntu
-
prepare CPU with Intel SGX instruction set. Docker and docker-compose are needed.
-
Clone Rust SGX SDK
$ git clone https://github.com/apache/incubator-teaclave-sgx-sdk
- Clone this repository
$ git clone https://github.com/ylab-public/PCT
$ cd PCT
- Set environment variables in
.env
.
RUST_SDK_ROOT=/path/to/incubator-teaclave-sgx-sdk
PCT_DIR=/path/to/PCT
- Wake up docker container including AESM service
$ bin/up
build
$ bin/in
[docker-inside]$ make clean && FEATURE="fsa gp10" make
run
[docker-inside]$ bin/app 1000000 data/sample/client.json data/sample/central.json true
random data generator (python3)
$ python script/generator-script-name
Other materials
- SDK
- Experimental dataset source