See https://tod-theses.github.io/tod_attack_miner/.
Staged filtering:
- stats mode: for all collisions, each stage checks this collision and potentially stores a label (eg SAME_SENDER)
- run mode: for all remaining, unlabelled, collisions, each stage checks this collision and potentially stores a label
The filter implementations can be the same for both modes, only the execution differs. The run mode will be more performant. The stats mode could be nice for analysis and statistics in the paper.
See CONTRIBUTING.md for installation instructions.
We also use a postgres database, which you can run with eg docker run --rm --name miner_postgres -p 5432:5432 -e POSTGRES_PASSWORD=password postgres
After installing and creating the database, you can run it as following:
$ python -m tod_attack_miner --help
#or
$ tod_attack_miner --help