This repository contains the Secure Oracle implementation for the PRIVATEER framework, leveraging Town Crier technology on a Hyperledger Besu permissioned blockchain. It facilitates the secure, tamper-proof exchange of trustworthiness evidence while maintaining strict confidentiality for sensitive operational data.
Deploy both the TownCrier and Application contracts on your preferred network.
cd Town-Crier
./scripts/sgx-enter.sh
# in docker
cmake -DCMAKE_INSTALL_PREFIX=/tc /code
cd /code
make -j && make install
apt install nano
nano /tc/conf/config-privatenet-sim
(and update with the tc contract address)
Open a different terminal and run:
docker commit tc-devel my-tc:with-code (to prepare the docker image)
On the first terminal:
exit
docker run --name tc-devel -p 8123:8123 -it my-tc:with-code /usr/bin/env bash
# in docker
/tc/bin/tc -c /tc/conf/config-privatenet-sim
To run the relay:
cd python-relay
pip3 install web3 eth-account eth-abi grpcio grpcio-tools
(update all the configs within the file)
python3 relay.py
You can use the Dockerfile as a guidance for setting up a local dev environment, if you want.