Browse Source

README tweaks and SGX_FLAG fix

sshsshy 9 months ago
2 changed files with 16 additions and 10 deletions
  1. 8 3
  2. 8 7

+ 8 - 3

@@ -1,9 +1,14 @@
-To reproduce our experiments:
+For plotting the graphs from the experiment data gathered, our plotter script requires python3, and the python modules numpy and matplotlib.
+To reproduce our experiments:
-1) Run ./ to create the docker images to reproduce XPIR, SealPIR and ZeroTrace microbenchmarks
+1) Run ./ to create the docker images to reproduce XPIR, SealPIR and ZeroTrace microbenchmarks. To build and run the ZeroTrace microbenchmarks, the host machine must have the SGX driver installed on it; refer to for instructions on installing the SGX driver.
+(This takes about 30 mins to complete)
 2) Run ./ to run all the experiments in their respective dockers, populate the plotter folder with the output log files for these libraries and generate the graphs from these output logs.
+(This takes about 15 mins to complete)
@@ -41,7 +46,7 @@ For the XPIR microbenchmark:
-For the ZeroTrace microbenchmark:
+For the ZeroTrace microbenchmark, ensure that the SGX driver is installed on the host machine. Refer to for instructions to do so.
 1) Go to the ZT_docker folder

+ 8 - 7

@@ -1,14 +1,15 @@
-SGX_FLAG=[ -e "/dev/isgx" ]
+test -e "$SGX_DRIVER_FILE"
+if [ $SGX_FLAG ]
   docker run --device /dev/isgx -dt --name zt_container zt_image bash -c "start-aesmd && exec bash"
-  #docker exec -t zt_container bash -c "cd /pir/ && ./"
-  #docker exec -t zt_container bash -c "cd /pir/ && ./"
-  #docker cp zt_container:/pir/log_ZTLSORAM ./plotter
-  #docker cp zt_container:/pir/log_ZTCIRCUITORAM ./plotter
+  docker exec -t zt_container bash -c "cd /pir/ && ./"
+  docker exec -t zt_container bash -c "cd /pir/ && ./"
+  docker cp zt_container:/pir/log_ZTLSORAM ./plotter
+  docker cp zt_container:/pir/log_ZTCIRCUITORAM ./plotter
   docker rm -f zt_container
   echo "Skipping ZeroTrace since the device does not have SGX driver installed."