Substitution Cipher Toolkit Code
Substitution cipher toolkit (en/decryption + automatical cracking)
Status: Beta
Brought to you by:
ma_boehm
File | Date | Author | Commit |
---|---|---|---|
SubstCipherToolkit | 2014-03-01 |
![]() |
[94170e] new revision number for 0.1.0b |
data | 2014-03-01 |
![]() |
[b63f7d] restructured folder structure in data directory |
.gitignore | 2014-02-19 |
![]() |
[9313ce] added public folder to .gitignore |
License.txt | 2014-02-19 |
![]() |
[33e7e3] License + Readme added |
Readme.txt | 2014-03-01 |
![]() |
[92b801] Readme: uninstall old versions first |
Capabilities of the program =========================== - gather language statistics - encrypt and decrypt texts using substitution cipher - automatically crack encrypted texts Starting the program ==================== For starting the program start the executable file "setup.exe" in the SubstCipherGUI folder. After the first execution of this executable file you can start the GUI also from the start menu. If you already have an earlier version of the program installed, you first have to uninstall the old version. Introduction ============ OK, let's get started. 1) Language statistics The first thing we need are language statistics for a given language. In the dialog shown at the beginning select "Gather language statistics". Then click on "Add files" and choose some sample texts. You can choose more than one file in the dialog. I have provided some english and german texts in the "data/texts" folder which you can use. After having added all files click on "Calculate language statistics". Choose a file name for the language statistics file. After having done this, the language statistics are shown to you. 2) Encrypting/Decrypting a file Now we want to encrypt a specific file. For doing this, we need a key. In the initial dialog click on "Manage Keys" and create a random key by clicking on the corresponding button. Then save the key to the disk. We will use the key right away. Now, in the initial dialog again, click on "Encrypt text with key". First choose the key file just created, then select a file with the text to be encrypted (can be again a text file from the "data/texts" folder, or a text file with your own text). Finally, choose where the encrypted text should be stored. Decrypting an encrypted text is just as easy. Only click on "Decrypt text with key" instead of "Encrypt text with key". 3) Cracking encrypted text Now to the highlight: Let's crack an encrypted text automatically! In the initial dialog, choose "Crack encrypted text". The program prompts you to select a language statistics file to be used for cracking. Choose a language statistics file for the language that you expect is the original language of the encrypted text. In the following, we want to crack an English text, so choose the English language statistics file created in step 1). Having done this, load the encrypted text via clicking on the "Load encrypted text" button. I've provided a sample encrypted text which you can use in the "data/encrypted/english" folder. Now click on the "Start cracking" button. You can see that the decrypted text, the key, and the similarity value change. After some time, the automatical cracker finishes when it cannot improve the decrypted text any more. You will now have a readable decrypted text. Some letters are still incorrect, but you can now edit the key to remove the last errors. Done!