You are on page 1of 8

Final Project

Presentation
(or how I learned to stop programming and love bash)

Daniel Johnson
What Was This Project?

● This project was an exercise in developing a


decryption method
● It focused on RSA and AES encryption formats
● It required the searching through multiple files
● It helped develop bash scripting skills
What was the Exact Goal of the Project?

● The goal of the project was to create a method to decrypt


a encrypted message
● This message was encrypted with an AES key
● The AES key was encrypted with an RSA key pair
● My personal goal in this project was to only use bash
What Environment did I Work In?

● My OS of choice for this project was Kali Linux running


on a VM
● I programmed my solution within mousepad and the
terminal
● I used no IDE for this project
What was My Approach?

● My approach was to develop a solution entirely in a bash


script
● I utilized the openssl library/commands to perform the
decryption
● I created an all-in-one file to perform the entire decryption
process
● I used what I had learned in the prior milestones for the
project to aid in the final program
What Were the Final Results?

● The overall time taken for the script to run was just over 10
minutes
● The Private key 130 and Session key 34 were the matching pair
for RSA encryption
● The secret message that matched the given hash value was
message90000
● Finally, the secret message itself was “Run while you still
can !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!”
What Was Learned From This Project?

● My Linux skills were increased by this project


● My knowledge of openssl and encryption in general were
increased
● I learned how to script in bash in more detail than I had
known before
● I learned how useful the ‘programmer’s duck’ method can be
for when you’re stuck
What Could Have Been Done Better?

● Overall while I did get results, I think efficiency could have


been better
● The program took a rather long time to run due to limitations
of bash/Linux for multithreading
● Given more time, optimization of the code may have been
possible utilizing subshells in bash
● Utilizing an actual programming language may have
improved performance as well

You might also like