An implementation of the Belief Propagation Attack in python.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
Use
make install
to install necessary dependencies from REQUIREMENTS.txt
.
If you have cython
installed, we recommend you run
make cython-build
Otherwise, you can build from the provided .c
files:
make build
Building may take a while! To check whether it has built correctly, run
python belief_propagation_attack/main.py
If this simulates an attack, you're good to go.
WIP: run
make test
and see what happens.
- Python 2.7 - The language used
- networkx - Used to simulate the factor graph
- cython - To speed up some of the bottlenecked functions (
arrayXOR
)
Please don't. I'll update this once I've finished my PhD.
- Joey Green - All work - JustJoeyGreen
This project is licensed under the University of Bristol Open Access Software Licence - see the LICENSE.md file for details
- Elisabeth Oswald for my PhD supervision
- Arnab Roy for suggesting some of the graph reductions
- xkcd for helping me remain sane through my PhD life