Skip to main content

An utility to protect user privacy

Project description

Fawkes

Fawkes is a privacy protection system developed by researchers at SANDLab, University of Chicago. For more information about the project, please refer to our project webpage. Contact us at fawkes-team@googlegroups.com.

We published an academic paper to summarize our work "Fawkes: Protecting Personal Privacy against Unauthorized Deep Learning Models" at USENIX Security 2020.

NEW! If you would like to use Fawkes to protect your identity, please check out our software and binary implementation on the website.

Copyright

This code is intended only for personal privacy protection or academic research.

We are currently exploring the filing of a provisional patent on the Fawkes algorithm.

Usage

$ fawkes

Options:

  • -m, --mode : the tradeoff between privacy and perturbation size. Select from low, mid, high.
  • -d, --directory : the directory with images to run protection
  • -g, --gpu : the GPU id when using GPU for optimization
  • --batch-size : number of images to run optimization together
  • --format : format of the output image.

when --mode is custom:

  • --th : perturbation threshold
  • --max-step : number of optimization steps to run
  • --lr : learning rate for the optimization
  • --feature-extractor : name of the feature extractor to use
  • --separate_target : whether select separate targets for each faces in the diectory.

Example

fawkes -d ./imgs --mode low

Tips

  • The perturbation generation takes ~60 seconds per image on a CPU machine, and it would be much faster on a GPU machine. Use batch-size=1 on CPU and batch-size>1 on GPUs.
  • Turn on separate target if the images in the directory belong to different people, otherwise, turn it off.
  • Run on GPU. The current Fawkes package and binary does not support GPU. To use GPU, you need to clone this, install the required packages in setup.py, and replace tensorflow with tensorflow-gpu. Then you can run Fawkes by python3 fawkes/protection.py [args].

How do I know my images are secure?

We are actively working on this. Python scripts that can test the protection effectiveness will be ready shortly.

Quick Installation

Install from PyPI:

pip install fawkes

If you don't have root privilege, please try to install on user namespace: pip install --user fawkes.

Citation

@inproceedings{shan2020fawkes,
  title={Fawkes: Protecting Personal Privacy against Unauthorized Deep Learning Models},
  author={Shan, Shawn and Wenger, Emily and Zhang, Jiayun and Li, Huiying and Zheng, Haitao and Zhao, Ben Y},
  booktitle="Proc. of USENIX Security",
  year={2020}
}

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

fawkes-0.3.0.tar.gz (26.1 kB view details)

Uploaded Source

Built Distribution

fawkes-0.3.0-py3-none-any.whl (27.2 kB view details)

Uploaded Python 3

File details

Details for the file fawkes-0.3.0.tar.gz.

File metadata

  • Download URL: fawkes-0.3.0.tar.gz
  • Upload date:
  • Size: 26.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.6.7

File hashes

Hashes for fawkes-0.3.0.tar.gz
Algorithm Hash digest
SHA256 b8a195c0bcc863759bdfbe9d301735993250a54b894c6dda6d111b252b5f6e1b
MD5 87d153c252882b2f3a3bd1dd28a6960e
BLAKE2b-256 72fa6640638615f6a11d46987c02909daa8353348408174c653b16b3fa711dfc

See more details on using hashes here.

File details

Details for the file fawkes-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: fawkes-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 27.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.6.7

File hashes

Hashes for fawkes-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a071a46b3d4c81c6b2fb0fd7a0bbdf5280eb8af2a398c85dd597b3e95395ac2c
MD5 1a2fb5d1a2f083895cb163da0b939c7c
BLAKE2b-256 c16d43473376d92a83d21f4d1b705181716d7b08dcc58e898ab9a25267159e58

See more details on using hashes here.

Supported by

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