/sunDP

Useful tools for differential privacy

Primary LanguagePython

[toc]

Introdcution

Useful tools for local differential privacy, which mainly consists of several parts:

  • basis
    • ldplib: local differential privacy library
    • kvlib: key-value library
    • mdlib: missing data library
  • heavy_hitters
    • hadamard_response
    • k_random_response
    • k_subset
    • rappor
  • mean_solutions
    • duchi
    • piecewise

ldplib

The ldplib provides basic randomized functions.

kvlib

Some basic encoding terms:

  • kv: a kv pair denoted as $\langle k, v\rangle$, where $k\in {0,1}, v\in[-1,1]$.
  • kvl: a list of key-value pairs, denoted by $[\langle k_1, v_1\rangle,\langle k_2, v_2\rangle...]$. The kvl is used to represent the $i-$th key-value or to represent a list of key-value pairs of one user.
  • kvt: a $n\times d$ key-value table. A kvt is used to represent the kvl from $n$ users.

The kvlib main contains the following perturbation and analysis algorithms:

heavy_hitters

mean_solutions