The code is this repository is the implementation of the Master's thesis "Safeguarding PoS Consensus: A Comparative Analysis of Proposer Protection Mechanisms Against Various Attack Vectors", developed at the Brno University of Technology, Faculty of Information Technology in 2025, authored by Ing. Tereza Burianová and supervised by Ing. Martin Perešíni.
Run the following command to build the code:
cargo build --release
The binary can be found in the target/release directory. The usage of the binary is following:
Options:
-c, --cfg <CONFIG> Sets the filename of the configuration file in folder config
-o, --out <OUTPUT> Sets the name of the simulation run for later identification in the results folder
-s, --seed <SEED> Sets the randomness seed for the simulation
-h, --help Print help
-V, --version Print version
Alternatively, the included script can be used to automatically run the simulation with seeds in the stats/seeds.txt file:
./stats/seeds_runs.sh <CONFIG>
The statistics and graphs in the thesis were obtained using the statistics.ipynb Jupyter notebook.