I need to crack a Playfair encoded text without knowing the keyword. While searching the internet I found a way to do this using a 'shotgun climbing hill' method. Problem is, I can't decide how to quantify one solution against the other. I'm pretty sure the text is in English.

Any help would be appreciated.


This is encrypted text: http://pastebin.com/pEUXDvq1 .

Thanks for pointing me to pastebin.com.

  • $\begingroup$ Can you post the crypted text? $\endgroup$ – user02138 May 7 '11 at 15:30
  • $\begingroup$ You have to analyse the probability of the letters. $\endgroup$ – Listing May 7 '11 at 15:33
  • 1
    $\begingroup$ e is usually rather typical, then t, then a (check out en.wikipedia.org/wiki/Letter_frequency) $\endgroup$ – Fabian May 7 '11 at 15:34
  • $\begingroup$ I'm sorry, but the text is more than 3,000 characters long. I can mail the text to you if you like, but I don't want to know the answer, I just want to know how it should be cracked (so basically, I would like to know the codeword). $\endgroup$ – KevinDL May 7 '11 at 15:36
  • $\begingroup$ To clarify: I want to know the answer, but the way to decode it is more important than the answer itself. $\endgroup$ – KevinDL May 7 '11 at 15:49

Ok I will give a fairly short answer, as this is homework you should figure out the details :-). To begin with the code is


The decrypted text is a short story which be found on this website (formatted). You can use this as a online tool for decrypting, still you will (of course) lose all formatting and find the position of the spaced of all words on your own. A detailed approach how to break Playfair can be found here, basically it tries to analyse the frequency of the letters which is of course harder when blocks are substituted instead of single characters.

Finally a ready-coded solver written in C can be found here (coded by J.W. Stumpel). I hope that was helpful.

  • $\begingroup$ Thank you for your answer! I had already written a Delphi program to decode the text, but I couldn't figure out where it went wrong. The problem was, I didn't know what operations to use on the starting matrix and what stop criterion to use. $\endgroup$ – KevinDL May 8 '11 at 6:56
  • $\begingroup$ @user3123: I found the solution today, thanks for helping out. Studying the C-source from the link that was given, showed me how to calculate a meaningful stop condition. That helped me a lot because that was the main problem I was struggling with in the first place. $\endgroup$ – KevinDL May 8 '11 at 14:10
  • $\begingroup$ Good job, I am glad that I could help. $\endgroup$ – Listing May 8 '11 at 19:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.