This is an implementation of the DES algorithm for the CSE825 Computer and Network Security graduate-level class at Michigan State University.
A good outline of the algorithm can be found here: https://page.math.tu-berlin.de/~kant/teaching/hess/krypto-ws2006/des.htm
As part of the assignment, we had to write our own implementation of the DES encryption algorithm, encrypt a secret message, and trade with another group to decrypt theirs as they decrypt ours.
There is as such code for both encryption and brute force decryption (albiet on a smaller search space than the full bitstring).
This was a partnered project with Darius Nafar, a PhD candidate at MSU. The code quality is a bit haphazard on account of it being a group endeavor originally on a google collab ipynb.
Enjoy :)