Skip to main content

Red team toolkit for deepfake detection benchmarking

Project description

Laundromatic

Python 3.12+ License Code style: ruff

Red team toolkit for testing deepfake detection system robustness.

Laundromatic applies anti-forensic transformations to images, audio, and video to evaluate how well detection systems perform against adversarial manipulation. It is designed for defensive security research and benchmarking.

Purpose

This toolkit exists to help detection system developers and security researchers:

  • Test robustness: Evaluate how detection systems perform against common evasion techniques
  • Benchmark solutions: Compare vendor solutions under standardised adversarial conditions
  • Identify weaknesses: Discover vulnerabilities before malicious actors exploit them
  • Improve defences: Use findings to strengthen detection capabilities

Intended Users

  • Detection system vendors conducting internal red team exercises
  • Security researchers evaluating deepfake detection robustness
  • Government programmes benchmarking detection solutions (e.g., UK Home Office C581.2)
  • Academic researchers studying anti-forensics and detection evasion

Installation

Requires Python 3.12+.

# Using UV (recommended)
uv sync
uv run laundromatic --help

# Using pip
pip install laundromatic
laundromatic --help

For advanced ML transforms (adversarial perturbations, generative laundering):

uv sync --extra ml
# or
pip install laundromatic[ml]

Quick Start

# Apply blur to an image
laundromatic image blur input.jpg output.jpg --strength 2.0

# Compress audio
laundromatic audio compress input.wav output.mp3 --bitrate 128

# Batch process a folder (apply random transforms to 30% of files)
laundromatic batch transform ./input ./output --percent 30

Python API

from laundromatic.transforms.image import blur, add_noise, compress

# Apply transforms programmatically
blurred = blur(image, strength=2.0)
noisy = add_noise(image, sigma=10)
compressed = compress(image, quality=75)

Available Transforms

Category Transforms
Image blur, noise, compression, resize, crop, rotation, colour shift, EXIF manipulation, and more
Audio compression, noise injection, speed change, pitch shift, codec transcoding
Video frame-level image transforms, recompression, framerate manipulation

Documentation

Full documentation: Coming soon

Responsible Use

This toolkit is intended exclusively for defensive security research, authorised red team exercises, and detection system benchmarking.

Do not use this software to:

  • Evade detection for malicious deepfakes
  • Spread misinformation or disinformation
  • Deceive individuals or organisations
  • Violate any applicable laws or regulations

Users are responsible for ensuring their use complies with all applicable laws, regulations, and ethical guidelines. The authors accept no liability for misuse.

Contributing

Contributions welcome. Please ensure code passes ruff check . and pytest before submitting.

License

License TBD


Built for the UK Home Office Deepfake Detection Challenge (C581.2).

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

laundromatic-0.0.1.tar.gz (129.8 kB view details)

Uploaded Source

Built Distribution

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

laundromatic-0.0.1-py3-none-any.whl (5.6 kB view details)

Uploaded Python 3

File details

Details for the file laundromatic-0.0.1.tar.gz.

File metadata

  • Download URL: laundromatic-0.0.1.tar.gz
  • Upload date:
  • Size: 129.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for laundromatic-0.0.1.tar.gz
Algorithm Hash digest
SHA256 79f72d902006152427133a4782e8ccb518302197e2f7e6a11e9f276ff355d07a
MD5 f99162d8be6426b852c2d0c409deecc2
BLAKE2b-256 299f7fbbdffd2c5190902764c4b7df92aa26ef9f4e3b40d948aaa06925a0bae2

See more details on using hashes here.

File details

Details for the file laundromatic-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: laundromatic-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 5.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.24 {"installer":{"name":"uv","version":"0.9.24","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for laundromatic-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0ae44b6393b5a6d94395681a6844000bc85bc1cd5a9ad649fbe0b6c3643859ec
MD5 67232ecb1a27339b60d38d816d59f534
BLAKE2b-256 60b81a4e8750146d8aae747ddc182a3b5f4e88fb488b8d3010d1431a6d16d498

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