I was inspired by the opening speech, particularly the subtopic of quantum computing on password security. I did sone research on complex mathematical cryptography and ended up finding matrices. So, I perused that idea...
What it does
My program has two parts, an encoder and decoder. The encoder program takes a given sentence (Letters Only) and gives each character an assigned numeric value. Then the user enters a nxn matrix of any size, (this Matrix is the key, just check that it does not have a determinant of 0). The program then separates your sentence in numerical form into sections with length n. These sections are then multiplied against the inputted matrices to then output an encoded message. The decoder program takes your "key" and the encrypted message. It then finds the inverse of the "key" and multiplies it against sections of n length of the encrypted message. The returned number is then translated back to a character by a library and properly formatted to return your message.
How we I built it
I built it in a step-by-step process, breaking down the process of encryption little by little and, later conjoining all the smaller parts to make the whole.
Challenges I ran into
The main challenges were writing coding programs that would work with any size matrices, its relatively simple to make a 2x2 and multiply a 2x2 but, to have the program work for any size matrix proved quite the challenge.
Accomplishments that I am proud of
Finishing the Project.
What I learned
Matrices are really annoying, also effective looping within codes.
What's next for Matrices cryptography
The next steps would really be to root out all the possible errors and make the program run more smoothly.