Skip to main content

Codebusters - Columnar Transposition

Last reviewed October 12, 2026

On this page(9 sections)
Type: Inquiry
Divisions: B, C
Participants: Up to 3
Approx. Time: 50 minutes
Allowed Resources: Writing utensils only: no notes and no calculator. The supervisor hands out a resource sheet (the Div B sheet adds an Atbash table).

A columnar transposition does not change any letter. It only moves letters to new positions. You write the message in rows under a keyword, then read the grid out by columns in the alphabetical order of the keyword's letters. Letter frequencies therefore look like normal English, so a frequency table tells you nothing; you have to find the structure. Under the 2027 rules, Codebusters B and C both list this cipher as cryptanalysis of the Complete Columnar Transposition, always with a crib, so the job at the table is to find the column order that makes the crib appear. You are never given the keyword; the answer you write is the decoded plaintext.

What the rules cover

The 2027 rules manual lists Columnar as a cryptanalysis question in both divisions: B section 3.e.vii, C sections 3.e.viii (Regional) and 3.f.v (State and National). Paraphrased:

LevelDivision BDivision C
RegionalCryptanalysis of a ciphertext in 9 columns or fewer, crib at least (columns − 1) lettersSame: 9 columns or fewer, crib at least (columns − 1) letters
State & NationalSame as Regional (all Regional types carry over; no larger grid)Regional version, plus a version in 11 columns or fewer with a crib at least (columns − 3) letters

Other Codebusters rules that matter here:

  • Unplaced crib. Every other crib-based question must show where the crib sits; Columnar is the one named exception (B 3.j, C 3.j).
  • Scoring. The answer is the plaintext. Two or fewer errors earn full credit; each further error costs 100 points, never below zero.
  • Special bonus. Any question that is not an Aristocrat, Patristocrat or Xenocrypt can be one of the (up to three) special bonus questions, so a Columnar can carry it. The bonus (150, 400 or 750 points for one, two or three) counts only a solve with zero penalty points. At least one bonus question must be a Homophonic in 2027.
  • Timing bonus. Only the first question, an Aristocrat, is timed, so Columnar never affects it.
  • Resources. Writing utensils only: no notes, no calculator. The supplied resource sheet holds nothing for Columnar.
  • Format. Paper or computer-based; a paper packet is single-sided so teammates can split pages. A Columnar page is a good one to hand to a single partner.

How the cipher works

Three quantities drive everything. Let L be the keyword length, which is also the number of columns. Let N be the number of letters, ignoring spaces and punctuation. Let R be the number of rows, which is N ÷ L rounded up.

A grid of ten columns headed by the keyword J A N E A U S T E N, with a rank number under each letter. Plaintext is written in rows below, and the last row stops after six letters.
The keyword ranks set the read-out order: the two A columns are 1 and 2, the E columns 3 and 4, and so on. Ties go left to right. The last row is short, so the columns on the right end one row earlier.Credit: Noughtautobahn, CC BY-SA 4.0, via Wikimedia Commons · source

Encryption

  1. Write the plaintext letters in rows of L letters, left to right, under the keyword.
  2. Rank the keyword letters from A to Z. For repeated letters, the one further left gets the smaller rank.
  3. Read the columns in rank order: first the column with rank 1, then rank 2, and so on. Each column is read top to bottom.
  4. Write the letters you read out as one continuous ciphertext. Spaces and punctuation are dropped before you start.

Decryption

  1. Count N and L, and compute R.
  2. Work out each column's height (see the formula below).
  3. Rank the keyword letters as before. Cut the ciphertext into L pieces in rank order, each as long as its column's height.
  4. Put each piece back in its original column (the keyword position, not its rank).
  5. Read the grid row by row, left to right, to recover the plaintext.

Worked example: full grid

Encrypt SCIENCE OLYMPIAD with keyword TIGER.

  1. Strip spaces: N = 15 letters. L = 5, so R = 3 and r = 0. Every column has height 3.
  2. Rank the keyword: E (position 4) is rank 1, G (3) is 2, I (2) is 3, R (5) is 4, T (1) is 5.
  3. Write the grid, five letters per row:
TIGER
Row 1SCIEN
Row 2CEOLY
Row 3MPIAD
  1. Read by rank. Column 4 (E): E L A. Column 3 (G): I O I. Column 2 (I): C E P. Column 5 (R): N Y D. Column 1 (T): S C M.
  2. Ciphertext: ELAIOICEPNYDSCM.

Decrypt ELAIOICEPNYDSCM with keyword TIGER.

  1. N = 15, L = 5, so R = 3, r = 0. Each column has height 3.
  2. Cut the ciphertext into five pieces of three letters in rank order: ELA, IOI, CEP, NYD, SCM.
  3. Assign them to ranks: ELA goes to E (column 4), IOI to G (column 3), CEP to I (column 2), NYD to R (column 5), SCM to T (column 1).
  4. Read the grid row by row: S C I E N / C E O L Y / M P I A D.
  5. Plaintext: SCIENCEOLYMPIAD.

Worked example: short grid

Decrypt URSLEEBBIER with keyword PEAR.

  1. N = 11, L = 4, so R = 3 and r = 3. The first three keyword positions (P, E, A) have height 3, and the fourth (R) has height 2.
  2. Rank the keyword: A (position 3) is rank 1, E (2) is rank 2, P (1) is rank 3, R (4) is rank 4. Heights in rank order are therefore 3, 3, 3, 2.
  3. Cut the ciphertext: URS (rank 1, column 3), LEE (rank 2, column 2), BBI (rank 3, column 1), ER (rank 4, column 4).
  4. Place by column and read by row:
PEAR
Row 1BLUE
Row 2BERR
Row 3IES(blank)
  1. Plaintext: BLUEBERRIES.

Solving with a crib

You get the ciphertext and an unplaced crib (a word or phrase in the plaintext), never the keyword. Turn the crib into constraints on which ciphertext block is which column.

Step 1: pick the column count. Let N be the ciphertext length. In a complete grid L must divide N, so list the divisors of N between 2 and 9 (up to 11 for Division C State and National only). A 36-letter text allows 2, 3, 4, 6 or 9 columns. The crib length also limits you: under the (columns − 1) rule, a crib of 6 letters is only legal for grids of 7 columns or fewer; under the Division C State and National (columns − 3) rule it allows up to 9 columns.

Step 2: cut the ciphertext into blocks. With R = N ÷ L, each column is one block of R consecutive ciphertext letters. You do not yet know which block is which column.

Step 3: place the crib. A crib of at least L − 1 letters covers all but at most one column of a row, or wraps from the end of one row into the next. (With the Division C State and National L − 3 crib, up to three columns of a row may stay uncovered, so the crib pins fewer columns.) Crib letters in the same row sit at the same offset inside their blocks. For a trial offset t (0 to R − 1), read letter t of every block and see which blocks can supply the crib letters in order. A crib letter found at offset t in only one block fixes that block, and consecutive crib letters tell you which blocks are neighbors.

Step 4: fill in the order. Once a run of columns is pinned, try the few remaining blocks in the gaps and read the rows. Real words appear quickly when the order is right.

Step 5: check. Decode the whole message in the proposed order and copy it carefully. Two or fewer wrong letters is still full credit with no penalty points, which also keeps a special bonus; a third error adds a 100-point penalty and loses the bonus. Aim for zero to keep a margin.

Common mistakes

  • Using frequency to start. Letter counts match English because nothing was substituted. A frequency table cannot tell you the column count; the divisors of N and the crib can.
  • Wrong rank for repeated keyword letters. Repeated letters rank left to right. In BOOK, the order is B (rank 1), K (2), then the left O (3) and the right O (4).
  • Forgetting the short grid. If N is not a multiple of L, some columns are one row shorter. Decoding with equal heights scrambles the last letters of every row.
  • Assuming the crib is marked. For this cipher the rules do not mark where the crib goes. Do not spend time looking for a labeled crib.
  • Cutting it close on a bonus question. If the Columnar is marked as a special bonus question, the bonus needs a solve with no penalty points, so a third error costs both 100 points and the bonus. Recheck every row.
  • Submitting the keyword instead of the plaintext. For this cipher the answer is the decoded plaintext. Scoring counts errors in that plaintext, so a correct keyword with a wrong text earns nothing.

How tournaments test this

No archived tournament questions for this cipher are available yet, so there are no counts to report. The 2027 rules fix the format: a ciphertext, an unplaced crib of a stated minimum length, a column limit by division and level, and a plaintext answer. Practice 9-column grids first; Division C State and National competitors should then drill 10- and 11-column grids with shorter cribs.

Test yourself

References and further reading

  • Science Olympiad, 2027 Codebusters B and C rules: Division B sections 3.e.vii, 3.i, 3.j and 4; Division C sections 3.e.viii, 3.f.v, 3.i, 3.j and 4 (scope, crib placement, special bonus and scoring).
  • SciOly Wiki, Codebusters (linked for reference only).
  • Wikipedia, Transposition cipher, for background on the columnar family.