-
-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add columnar transposition cipher #344
Add columnar transposition cipher #344
Conversation
Thank you for this contribution. I will have a look into it tomorrow. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good as far as I can tell. Some minor changes would be useful:
- Use blank spaces to fill rows on encryption and decryption instead of random chars
- You could add some hacking functions to the
crack
command, like guessing the key length, because the key must be an integer divider of the message length; Also you could think about implementing bruteforce with a given keylength (This is not mandatory, but would be nice if you have enough time to implement)
I forgot to mention: please add all languages to the stringtable.xml. You can use the english version but please add the tags for all currently supported languages. This is easier for our translators und prevents formatting issues. Thank you. |
I would suggest using '_' or similar special characters, instead of spaces. |
Do it. We will see how it behaves. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me. I will merge this PR.
This PR adds the columnar transposition cipher as an alternative for the already implemented caesar cipher.
So far, it's only an additional algorithm-option for the
crypto
-command and does not have an implementation for thecrack
-command.I added a corresponding wiki-suggestion in the wiki folder; Although the explanation might be a bit complicated.
Looking forward to hearing your thoughts on this! 😄