Steganography Encryption Algorithm Project

In our related class we study cybersecurity, we learn about the history of encryption with ancient ciphers notably the caesar and vigenere cipher as well as the systems that are used in modern day like ChaCha20 and AES. We also study theories like symmetric and asymmetric encryption. One such method of encryption is steganography, which is placing a hidden message inside the code for pixels of a digital image. In this unit we ended up having to make our own encryption algorithm and make our own image using our encryption algorithm to hide a message of our choosing. 

 

The image I chose to make for the project was a starry night sky, it used a lot of black and white colored tiles, with green and brown tiles taking up space here and there. Overall it was a simple image, however this made it extremely easy to decrypt because one could see blatantly where the differences were all one had to do was look at the hex code for the image and you can see where the letters are because you start to notice the same codes used over and over again when suddenly you see something different you immediately know that it is a hidden letter. My encryption algorithm was not as simple as the image, how I encrypted my message was as follows: Step 1: use the Caesar Cipher with a key of 19. Step 2: give each letter a number value based on their new place in the alphabet (num).  Step 3: multiply each value by 9 then add 21 then subtract 16 to each value. Step 4: Hide the new number in the first 15 hexcodes; the digits will be hidden in every other hexcode digit. No digit ends in zero.

 

Overall, this project was really interesting, it gave us a physical representation of some of the algorithms we may use.  I learned more about the weaknesses of symmetric encryption, but also why we use more mathematics in encryption. If I had the chance to do the project again I would do a more complex image, one that could potentially hide the message better, I could also come up with a more creative encryption algorithm that would make the project a lot more difficult to decrypt.