Tableau Symmetry in Polyalphabetic Ciphers
Gary J. Shannon
Created Aug 14, 2010
Updated Aug 15, 2010
What is Tableau Symmetry
When you look at a polyalphabetic tableau other than a simple Vigenere tableau, in other words, a tableau with keyed or mixed alphabets, there seems to be little or no order to the placement of the letters. But even though it is not visible on the surface, hidden order often lurks within the tableau; order that can be exploited to help solve the cipher.
Not every tableau has symmetry. A tableau could be created with each row completely random and unconnected in any way with the previous row or following row. Any symmetry in such a tableau would be coincidental. But most tableaus are not built that way. Elijah Cross posting on the Crypto Forum describes a method of encryption using the distances between the plaintext and key letters in a keyed alphabet. It doesn't sound like a cipher that uses a tableau, yet all the possible combinations of keys and plaintext letters can be worked out in advance and put into a tableau. Since the method of creating the tableau is regular and orderly the resulting tableau will have full symmetry.
Here is a sample of the "Elijah 3 Cipher" tableau using an alphabet keyed with MARIO.

Notice that this tableau is not as regular as a Vigenere tableau. Not all the letters move down the page in neat diagonals. Instead they sometimes skip around seemingly at random from one row to the next.
Using that tableau lets look at exactly what symmetry means in this context. Bear in mind that the same symmetries hold true for the simpler Vigenere tableau and other shifted alphabet tableaus using mixed or keyed alphabets.

Symmetrical to What?
When we think of symmetry we think of symmetry around a point or a line. A butterfly is symmetrical about a line drawn from head to tail. A pinwheel is symmetrical around a point in the center. So for the word "symmetry" to have any meaning we must know what our point of reference is. In this case, our point of reference will be any pair of like letters from the tableau.
Let's start by picking a Z somewhere near the upper left corner of the tableau. We could pick any letter at all, and we could pick it anywhere within the tableau, so there is nothing special about Z or about the upper left corner.
Having picked that Z we highlight the row and column in which that Z is found:

Next, we find another Z in the tableau. Any Z will do, and it can be anywhere in the tableau. Then we highlight the row and column of that Z as well:

Notice that these two Zs now form two opposite diagonal corners of a rectangle. Now let's look at any letter along one of the highlighted lines. We will choose the highlighted lines going through the Q that forms the lower left corner of the rectangle. At random, we pick the I found above the Q in the vertical highlighted line. Now looking to the right we find that this I is opposite the H in the parallel highlighted line. This is half of the symmetry. The other half is when we go back to the corner with the Q and scan right looking for the other I, the one in the horizontal highlighted line. We find it over to the right, outside the highlighted rectangle.

Now this is the magical part. From that I on the horizontal highlight, scan up to the upper horizontal highlight and check the letter there. We find an H, just like the H that we found in the vertical highlight earlier. That is symmetry.
For every letter in the horizontal highlight from corner Q and for that same letter in the vertical highlight from corner Q, the same letters will be paired up with each other in the parallel highlighted line. In the vertical from Q we find that W pairs with O on the opposite vertical and horizontally, W also pairs with O on the horizonatal above it. And that holds true from the opposite (upper right) corner with the D, but not from either of the Z corners that form the pivot point of our symmetry. Symmetries from the two pivot corners would only duplicate symmetries from the other two corners anyway, so nothing is lost.
This example is not a special case either. No matter what pair of letters you choose from anywhere in the tableau, when you draw the highlighted lines and check letters from either of the other diagonal corners you will find that symmetry holds in every case for every letter in the entire tableau.
For the math-minded, for the first copy of each of the 26 letters there are 25 more that can be paired with it. For the second copy there are only 23 that can be paired without creating duplicate pairings, so in total there are ( 25 + 24 + 23 + ... + 2 + 1 ) = N(N+1)/2 = 325 rectangles for each letter, giving 26 X 325 = 8,450 rectangles. Each rectangle has 25 horizontal letters to check and 25 vertical letters to check, so there are a total of 8,450 X 50 = 422,500 symmetrical letter pairs in the entire tableau.
But what do you do if there are no letter that matches the corner you want to use? How do you find the other corner for your rectangle? Look at this tableau with a missing Z:

If there enough other letters in the tableau, all is not lost. You can find any existing symmetry, like the C-Q symmetry in the example below, and use it to identify the row and column of the missing letter.

Notice that this symmetry had one of the Qs and one of the Cs on the highlighted line and the other off the line. If you find two Cs or Qs that are both on the highlighted line that will work too, it will just identify a different corner, one that does not match your original corner, but the other two corners will match each other. In this example, with one copy of each letter on the line and one off the line you get to fill in the missing letter, the Z. If both copies of one letter were on the line you could not fill in the missing Z because it would be the other two corners that matched. If either of the other corners is filled you could, however, fill in its opposite member.
In the example below, both Cs are on the highlighted line and both Qs off. If this is the case the corner found does not match the original Z corner, but notice that the other two corners both have matching Gs, and either of those two Gs were mssing you would be able to fill in the missing one.

In practise such monkey bussiness to find a mising corner is not necessary, because if you can find two other matching letters, as in the Qs and Cs in the above axample, you can simply use those pairs as your corners and all the same symmetries will be found from those two corners. Each symmetry can be fouhnd in multiple ways as shown later in the partial tableau example.
Partial Tableaus
Of course most polyalphabetic ciphers don't use the entire tableau. Typically they use a short keyword or key phrase as an index into the tableau rows. Suppose we used the key phrase ROAST PIG. Then instead of getting the whole tableau, in the proper sequence, we would get only part of the tableau, and in the wrong sequence. How does that affect symmetry?

Picking two Ns (lower left and upper right) we check out the highlights from corner O and find that the symmtery, C and V in this case, is still intact. In fact we can swap rows around, take rows out, swap columns around, and take columns out and still not break the symmetry, as long as when we swap we move the entire row or the entire column as a unit.
The shortened tableau does not have "complete symmetry", however, because there are some letters in each row that are not matched in any column due to the lack of a complete set of rows.
Putting Symmetry to Work
Suppose we've just begun to work on the cryptogram that uses the ROAST PIG tableau shown above. So far we've discovered a couple of the ciphertext letters for plaintext e and for plaintext t. Those have been inserted into the tableau in the e and t columns.

Since we are lucky enough to have two Qs to work with we can pick them as the corners of our first rectangle and see what happens:

Notice that nice symmetry for the I and L just above the top horizontal highlight. Here we are working from the upper left corner of the rectangle, even though that corner has no assigned value. But something is missing. For the symmetry to be complete we need the other L in the tableau. And it needs to be in the correct place:

By placing the L as indicated above we not only complete the symmetry, but we get another letter closer to the solution, a letter, by the way, that we got for free without even looking back at the ciphertext.
As mentioned above, each symmetry can be found in multiple ways, but for any symmetry to be found there must be at least two pairs of matching letters. In the above exmaple we had a pair of Qs and a pair of Is. Without both pairs there would have been no symmtery to find. In fact, we could just as easily have used the pair of Is as our corners:

The missing L will be found either way.
As the cryptogram gets closer to solution and the tableau begins to fill up a little more you will find more and more opportunities to use symmetry to fill in the blanks. It's even possible that beyond a certain point the rest of the cryptogram can be solved with symmetries alone, without even looking back at the ciphertext.
Using Symmetry for Exclusion
A more subtle and indirect way of using symmetry is to be able to say for sure which letters may not be at a certain place in the tableau. For example, in this tableau:

Because of the R in the upper left corner of the highlighted rectangle we know with absolute certainty that the empty slot at the lower right corner of the highlighted rectangle cannot possibly contain R. If we can find enough symmetries that involve that single slot we might even be able to discover what letter must go there by a process of elimination. Remember that this is only true because the other two corners do match. In any rectangle with matching corners, only one set of corners may match.