This is a C++ library and it is meant to model QIF - Quantitative Information Flow.
It can be used to model systems and measure their entropies, vulnerabilities and information leakages.
This library models the basics of QIF such as probability distributions, informational channels, gain functions, hyper-distributions, and some functions to measure information flow.
The documentation is available in HTML format. To access the documentation, download the folder doc-html and inside it open the file index.html in a browser.
-
GNU GCC project C and C++11 compiler - Available on most UNIX distributions. For more details access GCC documentation.
-
GNU ar. Available on most UNIX distributions. For more details access ar documentation.
-
GNU make. Available on most UNIX distributions. For more details access make documentation.
To use the library follow these steps:
-
Clone this repository;
-
Copy the folder
qifto your project's directory; -
Open the folder
qifin the terminal and typemaketo compile all the modules. A binary file namedqif.awill be generated; -
Include the library in your C++ project using
#include "qif/qif.hpp"; -
Compile your project adding
qif/qif.ain the command line used to compile your C++ project.
Example:
$ g++ main.cpp qif/qif.aFollowing the steps above you will be able to use all the classes and functions from this library.
[1] Alvim M.S; Chatzikokolakis K; McIver A; Morgan C; Palamidessi C; Smith G.S. The Science of Quantitative Information Flow. Springer, 1 edition, 2019.