WARNING: Do not deploy this code to production---it is not secure! This implementation is intended only as a prototype. In particular the PyCrypto library has not been approved by the Google ISE team.
One-time setup. You must install R and some other packages:
More one-time setup. You must install the Python cryptography package.
sudo apt-get install build-essential libssl-dev libffi-dev python-dev
sudo pip install cryptography
This generates synthetic data, runs the straight-counting pipeline, runs the Cobalt prototype pipeline, and generates a visualization of the results. You can also run individual steps manually as follows:
This creates an
out directory and generates synthetic data in the file
input_data.csv in the
out directory. This data is the input to both the straight counting pipeline and the Cobalt prototype pipeline.
This script also runs the straight counting pipeline that emits several output files into the
input_data.csvand runs all randomizers on that data. This constitutes the first stage of the Cobalt prototype pipeline. A randomizer emits its data to a csv file in the
r_to_sdirectory and writes data in the
s_to_adirectory and writes final output into the
data.jsusing the Google visualization API.
./visualization/visualization.html in your browser