Welcome to AIJack’s documentation!#




AIJack is an easy-to-use open-source simulation tool for testing the security of your AI system against hijackers. It provides advanced security techniques like Differential Privacy, Homomorphic Encryption, and Federated Learning to guarantee protection for your AI. With AIJack, you can test and simulate defenses against various attacks such as Poisoning, Model Inversion, Backdoor, and Free-Rider. We support more than 30 state-of-the-art methods. Start securing your AI today with AIJack.

Key Features#

All-around abilities

AIJack offers flexible API for more than 30 attack and defense algorithms. You can easily experiment various combinations of these methods.

PyTorch-friendly design

AIJack supports many models of PyTorch. You can integrate most attacks and defenses with minimal modifications of the original codes.

Compatible with sklearn

AIJack also supports scikit-kearn so that you can simulate not only deep learning but also other machine learning models.

Fast Implementation

AIJack uses C++ backend for many components like Differential Privacy and Homomorphic Encryption to enhance scalability.

MPI-backend for FL

AIJack supports MPI-backed for Federated Learning so that you can deploy AIJack in your High Performance Computing system.

Extensible

AIJack consists of simple modular APIs. All source codes are available on GitHub. Everyone is welcome to contribute.

Resources#

Tutorial
API Docs
Developer Docs

Installation#

Note

AIJack requires Boost and pybind11.

apt install -y libboost-all-dev
pip install -U pip
pip install "pybind11[global]"

You can install aijack via pip.

pip install aijack

Indices#