AES Implementation in MIPS Assembly
This was a side project for COE 301: Computer Organization Lab in the Spring of 2018.
Seven students and I have worked to implement Advanced Encryption Standard (AES) Encryption and Decryption algorithms on MIPS CPU.
AES is widely used in secure communication between devices especially in the use of transferring data in the Internet.
Implementing AES in Assembly allows for greater optimization in the code rather than relying on the compiler for optimizations.
The picture below shows the original image before encryption, the encrypted image, and the decrypted image, respectively.

Demo Video: