Skip to main content

Codebusters - Homophonic

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).

The Homophonic cipher replaces each letter with a two-digit number, but unlike a plain number substitution it gives every letter four possible numbers. Those interchangeable numbers are called homophones ("same sound"): different ciphertext symbols that all stand for the same plaintext letter. Rotating among them hides the common letters from frequency counts. Homophonic is new to Codebusters in 2027, it appears in both divisions, and every exam must use it for at least one special bonus question.

What the rules cover

Both divisions use the same cipher and keyword rule (four different letters); they differ in how many keyword letters you are handed.

LevelTaskDivision BDivision C
RegionalCryptanalysis: decrypt with a crib whose letters reveal keyword lettersCrib reveals at least 3 keyword letters (3.e.xii)Crib reveals at least 2 keyword letters (3.e.xi)
State and NationalEverything from Regional, plus decrypting when keyword letters are given directlyAt least 3 letters given (3.f.vi)At least 2 letters given (3.f.vii)
All levelsAt least one special bonus question uses Homophonic3.i3.i
All levelsThe crib's position on the ciphertext is clearly marked3.j3.j

The event format is the same in both divisions under the 2027 rules: up to three students, about 50 minutes, writing utensils only, no notes and no calculator. The resource sheet carries Morse, letter frequencies, Porta and Baconian tables (plus Atbash in Division B), but no Homophonic table, so you build the table yourself on the packet.

How the cipher works

The cipher uses the American Cryptogram Association (ACA) layout:

  • The plaintext alphabet has 25 letters, with I and J sharing one column. Write it in normal order: A B C D E F G H I K L M N O P Q R S T U V W X Y Z.
  • Under the alphabet sit four rows of numbers. Row 1 holds 01–25, row 2 holds 26–50, row 3 holds 51–75 and row 4 holds 76–00, where 00 stands for 100.
  • The keyword has four different letters, one per row. Each row starts its numbering (01, 26, 51 or 76) under its keyword letter, counts up one column at a time to the right, and wraps from Z back to A.

Every letter has one number per row, four in all, and every number belongs to exactly one letter, so decryption is never ambiguous.

The row comes straight from the size of the number, which is the cipher's biggest weakness.

Building the table

  1. Write the 25-letter alphabet across the top.
  2. For row 1, find the first keyword letter and write 01 under it. Continue 02, 03 … to the right, wrapping to A after Z, until you reach 25.
  3. Repeat for rows 2, 3 and 4 with the next keyword letters, starting at 26, 51 and 76. The last number in row 4 is written 00.

Encryption, step by step

  1. Replace every J with I and drop spaces and punctuation (unless the question keeps word breaks).
  2. Build the table from the keyword.
  3. For each plaintext letter, pick any of its four numbers.
  4. Write the numbers as two-digit groups (01, not 1).

Decryption, step by step

  1. Note each row's keyword letter (or build the table).
  2. For each number, find its row from its size, then count from that row's keyword letter.
  3. Restore word breaks from context.

Worked example: encrypting MEET AT NOON with the keyword FISH

Rows 1 to 4 start under F, I, S and H. Written sideways (one line per letter, so it fits a phone screen), the table is:

LetterRow 1 (F)Row 2 (I)Row 3 (S)Row 4 (H)
A21435994
B22446095
C23456196
D24466297
E25476398
F01486499
G02496500
H03506676
I/J04266777
K05276878
L06286979
M07297080
N08307181
O09317282
P10327383
Q11337484
R12347585
S13355186
T14365287
U15375388
V16385489
W17395590
X18405691
Y19415792
Z20425893

Check before trusting the table: every row should end (25, 50, 75 or 00) one letter before its keyword letter.

To show the homophones, this example cycles through rows 1, 2, 3, 4, 1, 2 … :

PosPlainRowNumber
1M107
2E247
3E363
4T487
5A121
6T236
7N371
8O482
9O109
10N230

The ciphertext is 07 47 63 87 21 36 71 82 09 30. The two Es became 47 and 63, the two Ts 87 and 36, and the two Os 82 and 09.

Worked example: decrypting the same message with the formula

Decoding three of the numbers without the table:

  • 63: it is between 51 and 75, so row 3 (keyword letter S). Position p = 63 − 50 = 13. Moving 12 places right from S gives T, U, V, W, X, Y, Z, A, B, C, D, E, so the letter is E.
  • 87: row 4 (keyword letter H). p = 87 − 75 = 12. Moving 11 places from H gives I, K, L, M, N, O, P, Q, R, S, T, so T. Note that the count skips J.
  • 09: row 1 (keyword letter F). p = 9. Moving 8 places from F gives G, H, I, K, L, M, N, O, so O.

The rest decode the same way to MEETATNOON.

Cracking it with a crib

On the exam you never get the whole keyword. Instead, each crib letter over a number gives the keyword letter of that number's row: run the formula backward.

A crib reveals as many keyword letters as there are different rows among its numbers. The 2027 rules guarantee at least 3 (Division B) or at least 2 (Division C).

Worked example: a Division B cryptanalysis

Ciphertext (22 numbers), with the crib GOLD marked over positions 8 to 11:

93 17 75 30 85 39 02 04 45 69 01 86 71 95 36 14 52 99 96 45 23 68

Step 1: keyword letters from the crib.

CribNumberRowpMove p − 1 leftKeyword letter
G04143 left of GD
O4522019 left of OU
L6931918 left of LS
D01110 left of DD

Long left counts are faster as right counts: 19 left equals 25 − 19 = 6 right, and 6 right of O is U. Likewise 18 left of L is 7 right, which is S. The fourth pair repeats row 1 and confirms D. Row 4 is still unknown.

Step 2: decode every number in rows 1–3. Mark row-4 numbers (76 and up) as blanks.

Pos12345678–111213141516171819202122
Number93177530853902crib8671953614529996452368
Letter_URY_HEGOLD_N_ERT__OAK

Sample decodes: 17 is row 1, p = 17, and 16 right of D is U. 75 is row 3, p = 25, and 24 right of S wraps to R.

Step 3: guess a word to unlock row 4. The fragment _URY_HE GOLD _N_ERT__OAK reads as BURY THE GOLD UNDER THE OAK. Position 1 is B over 93: row 4, p = 18, and 17 left of B (8 right) is K. The keyword is DUSK.

Step 4: check the guess on every other row-4 number. 85 → T, 86 → U, 95 → D, 99 → H, 96 → E. All six blanks fit, so the plaintext is BURY THE GOLD UNDER THE OAK.

In Division C the same question might show only a two-row crib, such as ER over 36 14 (rows 2 and 1). You would then decode rows 1 and 2, guess a word to fix row 3, and repeat for row 4.

Solving tactics for tournament conditions

  • Sort by row first. Mark each number's row so you see at a glance which rows the crib covers.
  • Use differences inside a row. Two numbers in the same row that differ by d are letters d apart in the 25-letter alphabet. If 36 is E, then 40 is I (or J) and 45 is O, before you even know the keyword letter.
  • Use the four-different-letters rule. A guessed keyword letter that repeats one you already found is wrong. In Division B this rules out three of the 25 candidates for the last row at once.
  • Look for a real word. If the known keyword letters spell most of a common word, test the obvious missing letter first.
  • Build the full table only when it pays. For a short message the formula is faster; for a long one, fill the table once and read numbers off.

Scoring and the special bonus

Homophonic answers use the general error rule: two or fewer errors earn full credit, and each extra error costs 100 points, never dropping the question below zero. One wrong keyword letter corrupts every number in its row, roughly a quarter of the message.

Homophonic matters most through the special bonus. Up to three questions that are not Aristocrats, Patristocrats or Xenocrypts are marked as special bonus, and the 2027 rules require at least one of them to be Homophonic. A bonus counts only if the question is solved with no penalty points, and the bonus grows quickly: 150 for one, 400 for two and 750 for all three.

Common pitfalls

How tournaments test this

Homophonic is new for 2027, so there are no archived tournament questions yet, but the rules fix each question's shape. At Regional, expect a cryptanalysis question with a marked crib whose numbers cover at least three rows (Division B) or two rows (Division C). At State and National, you may instead be given keyword letters directly and asked to finish the decryption. At least one Homophonic question per exam is a special bonus question.

Practice

References and further reading

  • Science Olympiad, 2027 Codebusters rules for Division B and Division C, at soinc.org. The official rules manual is the authority on scope and scoring.
  • American Cryptogram Association, cryptogram.org, cipher type descriptions, including the Homophonic layout used here (25-letter alphabet, rows 01–25, 26–50, 51–75 and 76–00).
  • Substitution cipher: homophonic substitution, Wikipedia, for the history of homophones as a defense against frequency analysis.