The project for the course Data Structures Lab 2021 p4 at the University of Helsinki.
The subject of this project is a cipher cracker that uses frequency analysis. This program can crack ciphers both Ceasar and substitution ciphers. This program assumes that there is spaces between words and the words in the cipher are correct English words (no misspellings etc.) See also, that to work there has to be either enough letters in the cipher to be able to do frequency analysis or the cipher has to be short and/or ideal to crack, for example, many same letters in it.
- The array that saves permutations will eventially become out of memory. When this happens, the program just stops cracking otherwise leading to exception. In the future this being the case, there could be a good time for reducing permutations (leaving those out that have not correct English words at all or just keep those with higher rate of correct words).
- Performance testing automated and documented with different ciphers to see how many differences there can be in the frequencies and how deep can it go still finding a solution. This could be a whole new functionality and solution presented as a graph.
- Userinterface could be better to make the program easier to use.
- And much more!