This code is designed to help learn how Rijndael-like sboxes work.
Given a bitstring representation oif an irreducible polynomial, sboxgen will generate an encryption and decryption sbox.
To install:
- Git clone the repo.
- Create a virtual environment e.g on linux
python3 -m venv <virtualenv_name> - Cd into the cloned repo
- Install requirements using
pip install -r requirements.txt
To run the project simply:
python3 gensbox.py --irreducible-polynomial <100101011>
where the 0s and 1s are a representation of an irreducible polynomial in the field GF(2^8).
Some irreducible polynomials in GF(2^8)
x^8+x^4+x^3+x+1
x^8+x^4+x^3+x^2+1
x^8+x^5+x^3+x+1
x^8+x^6+x^3+x^2+1