LDP Toolbox is a Python package for analyzing, comparing, and visualizing Local Differential Privacy (LDP) protocols and their trade-offs between utility, privacy, and attackability.
This toolbox provides:
- 📊 Interactive dashboards powered by Dash
- ⚙️ Protocol implementations for frequency estimation tasks
- 🗂️ Visual tools to compare utility loss (e.g., MSE, KL-divergence), attackability, and privacy budget ε
- 📈 Upload your own data to explore privacy-utility trade-offs
LDP Toolbox is available on PyPI. Install it with:
pip install ldp-toolbox
After installation, you can launch the dashboard in two ways:
Run directly from the terminal:
ldp-toolbox
Alternatively, you can run it as a module:
python -m ldp_toolbox.toolbox.app
Or if you prefer, you can embed the app in your own code:
from ldp_toolbox.toolbox.app import app
if __name__ == "__main__":
app.run(debug=True)
ldp_toolbox/
protocols/
— Core LDP protocol implementationstoolbox/
— Dash front-end app (assets/
,pages/
,app.py
)
Example datasets (data/
) are provided in this repository for demonstration and local testing, but are not shipped with the PyPI package.
A recorded demonstration video is available at: Demo
LDP-Toolbox is a work in progress, and we expect to release new versions frequently, incorporating feedback and code contributions from the community.
- Fork this repo.
- Create a feature branch.
- Submit a pull request.
- Haoying Zhang: haoying.zhang [at] inria [dot] fr
- Abhishek K. Mishra: abhishek.mishra [at] inria [dot] fr
- Héber H. Arcolezi: heber.hwang-arcolezi [at] inria [dot] fr
This project is licensed under the MIT License.