| Welcome to Crypto. We hope you enjoy your visit. You're currently viewing our forum as a guest. This means you are limited to certain areas of the board and there are some features you can't use. If you join our community, you'll be able to access member-only sections, and use many member-only features such as customizing your profile, sending personal messages, and voting in polls. Registration is simple, fast, and completely free. Join our community! If you're already a member please log in to your account to access all of our features: |
| Shift Cipher Cracker | |
|---|---|
| Topic Started: Sep 11 2005, 05:14 PM (214 Views) | |
| Revelation | Sep 11 2005, 05:14 PM Post #1 |
|
Administrator
![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
This weekend I made a shift cipher cracker (Caesar's cipher). It will skip non-alphabetic characters and there is an option to include spaces. The file is 22kb. Download it here. Here is the source:
So never post a caesar cipher challenge again
|
|
RRRREJMEEEEEPVKLWENFNVJKEEEEEAOLKAFKLXCFZAASDJXZTTTTTTTLSIOWJXMOKLAFJNNKFNXN RAGRBAQEMHIGDJVDSEOXVIYCELFHWLELJFIENXLRATALSJFSLCYTKLASJDKMHGOVOKAJDNMNUITN RRRRLJVEEEEECLYVYHNVPFTAEEEEEMWLMEIRNGLARWJAKJDFLWNTIERJMIPQWOTZEOCXKNUBNXCN RJIRPOWEANFUSNCZVDVZNMSFEKLOEPZLDKDJWSAAAAAAAOERHJCTNCKFRIMVKSOFOMKMANREWNBN RZUDRGXEEEEENFQIDVLQNCKNEEEEEDGLLLLLLAWIOSNCDARLODMTOEJXMILDFJROTKJSDNLVCZNN | |
![]() |
|
| insecure | Sep 11 2005, 10:32 PM Post #2 |
|
Elite member
![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
Your shift cipher cracker brute-forces 25 different shifts, which is fine for an alphabet ciphertext. Consider, however, a shift cipher which works over the whole range of an octet rather than merely over 26 alphabetic letters. For this, you'd need 255 iterations. And if the shift affected two-octet chunks, you'd have to iterate 65535 times to guarantee a decrypt - and this would be a bit of a nuisance to sort through manually. A more elegant solution (if we may assume that the plaintext is English text) would be to frequency-analyse the decrypt. Not great for short plaintexts, admittedly. A less elegant, but perhaps more robust, solution springs to mind - that of spell-checking the decrypt. A decrypt that has a reasonable percentage of correctly-spelled words could be displayed, with other decrypts being suppressed. It seems to me that, even allowing for quite a few spelling errors, this method would produce a "shortlist" very quickly, from which you could select the correct decrypt. |
![]() |
|
| 1 user reading this topic (1 Guest and 0 Anonymous) | |
| « Previous Topic · General · Next Topic » |





![]](http://209.85.122.85/static/1/pip_r.png)



2:29 PM Nov 26