Skip to main content

Tiny package designed to support red teams and penetration testers in creating and analyzing adversarial attacks on PyTorch models.

Project description

🔥🛡️⚔️ TorchAdv

TorchAdv is a Python package designed to facilitate the creation and execution of adversarial attacks on PyTorch models. This library aims to provide easy-to-use tools for generating adversarial examples, evaluating model robustness, and implementing state-of-the-art adversarial attack methods.

Features

  • Adversarial Attacks: Implementations of popular adversarial attacks such as FGSM, PGD, and more.
  • Compatibility: Designed to work seamlessly with PyTorch models.
  • Customizable: Easily extendable to include new attack methods or custom functionality.

Installation

Install the package via pip:

pip install torchadv

Usage

Here is a simple example of how to use TorchAdv to perform an FGSM attack on a PyTorch model:

import torch
import torch.nn as nn
import torch.optim as optim
from torchvision import models, transforms
from PIL import Image

from torchadv.attacks import PGD

# Load a pre-trained model
model = models.resnet18(pretrained=True)
model.eval()

# Load an image and preprocess it
transform = transforms.Compose([
    transforms.Resize((224, 224)),
    transforms.ToTensor(),
])
image = Image.open('path_to_image.jpg')
orig = transform(image).unsqueeze(0)

# Define the target label
target_label = torch.tensor([your_target_label])

# Perform the attack
attack = PGD(model)
adv = attack(orig, target_label)

Contributing

Contributions are welcome! If you have any ideas for new features, improvements, or bug fixes, feel free to open an issue or submit a pull request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

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

torchadv-0.0.3.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

torchadv-0.0.3-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file torchadv-0.0.3.tar.gz.

File metadata

  • Download URL: torchadv-0.0.3.tar.gz
  • Upload date:
  • Size: 7.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.3 Darwin/22.6.0

File hashes

Hashes for torchadv-0.0.3.tar.gz
Algorithm Hash digest
SHA256 d76547731d98eda30f53429bfba9a0a8dd73f45f9abd4afd56e013c940d3acb3
MD5 bd94dbba7eb0c69a96c841c062772acb
BLAKE2b-256 ab6b26195eec8e538ea36c789b016f7b2ebf50ad7bae10e96174265ec90b8329

See more details on using hashes here.

File details

Details for the file torchadv-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: torchadv-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 9.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.3 Darwin/22.6.0

File hashes

Hashes for torchadv-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 66608a2de171b04c552e1da901a3da6d54b332d0d2ae3bdb24e5d7370f381cf5
MD5 e206bfeb8a93fe9802460b1723c4cab1
BLAKE2b-256 966486f2aa50247c79d33392ed5545fb7ef2154dd87e7d2e376b3069cf077685

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