This is a fast approach for breaking substitution cipher encryption, taken from following research paper: https://www.researchgate.net/publication/266714630_A_fast_method_for_cryptanalysis_of_substitution_ciphers
The dictionary used to generate bigram is in ./book.txt
python3 EncryptionRunner.py
python3 CipherBreakerRunner.py