# How to attack a general polyalphabetic cipher?

I am able to decrypt vigenere cipher text using the index of coincidence and chi test.

However out of interested how do you go about attacking ciphertext that was encrypted using a mix alphabet shifted 26 times?

Also what about a ciphertext that has been encrypted with 26 random alphabets? so each line in the tableau is random.

Googling seems to bring up the basic vigenere, either an example of a link to a resource would be good.

Thanks

-

## 2 Answers

A general polyalphabetical cipher is just a combination of several general monoalphabetical ciphers, each applied on every $n$-th letter of the message.

So the first thing is to find out what $n$ is (i.e. the key length). For this we can use the index of coincidence just like for Vigenere.

Then we can split the message into $n$ parts (columns), and try to break each of it as an individual monoalphabetic cipher, starting with frequency analysis. (We'll have to correlate information from the individual columns to do bigram frequency analysis, too.)

-

This is what i expected, however if you have n splits of the ciphertexts which were encrypted with a general monoalphabetic cipher, carrying standard frequency analysis on each section seems like a right pain as even when you got the correct key it would have to be tested with the original ciphertext.  Is there no simpler solution? as if you had a key lengt of 17 say, that would be 17 random pieces of ciphertext to decrypt, how would you ever know you got the right answer? unless you got a majority of them right? – Lunar Feb 13 '12 at 18:19
@Lunar: If you've got enough ciphertext, you can mostly guess each column of the tableau just by looking at single letter frequencies. The rest will then just be fine tuning. – Ilmari Karonen Feb 17 '12 at 17:08

## Did you find this question interesting? Try our newsletter

email address

Also what about a ciphertext that has been encrypted with 26 random alphabets? so each line > in the tableau is random.

If you mean that you use a repeating sequence of 26 random unique characters as the key, then you break it in much the same way as any other Vigenere cipher - n, in this case, is 26.

If you mean a random key at least as long as the message using 26 random characters, then you won't be able to differentiate successful and unsuccessful decryptions as the message is information-theoretically secure.

-
{"extraction_info": {"found_math": true, "script_math_tex": 0, "script_math_asciimath": 0, "math_annotations": 0, "math_alttext": 0, "mathml": 0, "mathjax_tag": 0, "mathjax_inline_tex": 3, "mathjax_display_tex": 0, "mathjax_asciimath": 0, "img_math": 0, "codecogs_latex": 0, "wp_latex": 0, "mimetex.cgi": 0, "/images/math/codecogs": 0, "mathtex.cgi": 0}, "config": {"markdown_headings": true, "markdown_code": true, "boilerplate_config": {"ratio_threshold": 0.18, "absolute_threshold": 10, "end_threshold": 5, "enable": true}, "remove_buttons": true, "remove_image_figures": true, "remove_link_clusters": true, "table_config": {"min_rows": 2, "min_cols": 3, "format": "github"}, "remove_chinese": true, "remove_edit_buttons": true, "extract_latex": true}, "english_confidence": 0.9466559290885925, "perplexity_flag": "middle"}