Skip to main content

Privkit is a privacy toolkit that provides methods for privacy analysis. It implements different data types, privacy-preserving mechanisms, attacks, and privacy/utility metrics.

Project description

Privkit Logo

Privkit: A Privacy Toolkit

Privkit is a privacy toolkit that provides methods for privacy analysis. It includes different data types, privacy-preserving mechanisms, attacks, and metrics. The current version is focused on location data and facial data. The Python Package is designed in a modular manner and can be easily extended to include new mechanisms. Privkit can be used to process data, configure privacy-preserving mechanisms, apply attacks, and also evaluate the privacy/utility trade-off through suitable metrics.

See https://privkit.fc.up.pt for a complete documentation.

Citation

If you use privkit in a scientific publication, please consider to cite:

@inproceedings{cunha2024privkit,
  title={Privkit: A Toolkit of Privacy-Preserving Mechanisms for Heterogeneous Data Types},
  author={Cunha, Mariana and Duarte, Guilherme and Andrade, Ricardo and Mendes, Ricardo and Vilela, Jo{\~a}o P},
  booktitle={Proceedings of the Fourteenth ACM Conference on Data and Application Security and Privacy},
  pages={319--324},
  year={2024}
}

Installation

Privkit can be installed through this Github repository or by using pip:

pip install privkit

Then, if needed, you can run the following command to install the dependencies.

pip install -r requirements.txt

Examples

The repository https://github.com/privkit/privkit-tutorials contains practical tutorials of Privkit available as Jupyter Notebooks. This repository aims at promoting the reproducibility of results from research papers.

Getting started

import privkit as pk

data_to_load = [['2008-10-23 02:53:04', 39.984702, 116.318417],
                ['2008-10-23 02:53:10', 39.984683, 116.31845],
                ['2008-10-23 02:53:15', 39.984686, 116.318417]]

location_data = pk.LocationData()
location_data.load_data(data_to_load, datetime=0, latitude=1, longitude=2)

planar_laplace = pk.ppms.PlanarLaplace(epsilon=0.01)
planar_laplace.execute(location_data)

License

Privkit is open source and licensed under the BSD 3-clause license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

privkit-0.1.tar.gz (2.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

privkit-0.1-py2.py3-none-any.whl (80.3 kB view details)

Uploaded Python 2Python 3

File details

Details for the file privkit-0.1.tar.gz.

File metadata

  • Download URL: privkit-0.1.tar.gz
  • Upload date:
  • Size: 2.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.8.10

File hashes

Hashes for privkit-0.1.tar.gz
Algorithm Hash digest
SHA256 40bd86733fdd77d606ba569159d9053c1a7cbf8695fceef74db87b2b12e5a4b2
MD5 60392f549f920437aa82182b4221f928
BLAKE2b-256 761ebc79bbd097251d31b382c71f03613bc2782c7b03cc7fe29729d3ea3b14b9

See more details on using hashes here.

File details

Details for the file privkit-0.1-py2.py3-none-any.whl.

File metadata

  • Download URL: privkit-0.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 80.3 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.8.10

File hashes

Hashes for privkit-0.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 052da4a0cd7e0537f0f280ca3cea9f0e7c4f757d03bab0e58b71aae0213b80a5
MD5 caf3df74675b08a6e4213b3f83c2837c
BLAKE2b-256 991bfeab8e180327646aec12c2c013f6053eac5d7139810d9b16c8d78bbeb4d2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page