24-ENTRY BINARY ENCODING • I/J + U/V COMBINED • CODEBUSTERS

Baconian Cipher

Learn the 24-entry Baconian alphabet from the binary system itself, then decode five-symbol groups without needing another reference.

FamilyTwo-symbol / binary-style encoding
Alphabet convention24 entries • I/J share • U/V share
Text structure5 positions per letter • A=0 • B=1
01 • OVERVIEW

What is the Baconian Cipher?

The Baconian cipher represents each plaintext letter with five positions that can each be in one of two states. We normally call those states A and B. That makes the system behave like five-bit binary: A acts like 0 and B acts like 1.

In a puzzle, those two states might appear as A/B, 0/1, two fonts, two shapes, two colors, or any other pair of distinguishable symbol classes. The surface appearance can change; the five binary choices underneath are what matter.

Looking for the Baconian cipher table? The complete 24-entry Baconian alphabet is below, including the shared I/J and U/V entries. If you want to see why the A/B patterns count in this order, open the Baconian binary visualizer, then practice Baconian problems.
Codebusters convention used on this site

The Daily Cipher now uses a 24-entry Baconian alphabet for Science Olympiad-style practice: I and J share one code, and U and V share one code. That means there are 24 alphabet entries numbered 0 through 23. Exact tournament rules and supplied resource sheets still take precedence.

Starting from zero?

You do not need to know binary first. The next section shows exactly why AAAAA, AAAAB, AAABA, and the rest appear in that order.

02 • FOUNDATIONS

What you need to know

  • Each plaintext letter uses exactly five A/B positions.
  • Treat A as binary 0 and B as binary 1.
  • From left to right, the five positions have place values 16, 8, 4, 2, 1.
  • The 24-entry alphabet combines I/J and U/V, so five-bit values 24 through 31 are not assigned new letters.

Binary before Baconian

Binary counting works like decimal counting, except each place can only be 0 or 1. The rightmost place changes every count. When it goes from 1 back to 0, it carries one into the place to its left.

Position1st2nd3rd4th5th
Binary weight168421
Baconian stateA=0 / B=1A=0 / B=1A=0 / B=1A=0 / B=1A=0 / B=1

So decimal 2 is binary 00010. Replace 0 with A and 1 with B and you get AAABA, which is C because C is entry 2.

Beginner glossary

TermMeaning
BiliteralUsing two distinguishable forms or symbol classes.
BitOne binary position that can be 0 or 1; in Baconian it becomes A or B.
CarryWhen a 1 rolls back to 0 and advances the binary position to its left.
A/B patternA five-position sequence such as AAABA.
Shared entryOne Baconian pattern representing either I/J or either U/V.
Group boundaryThe division after every five symbols. Losing it shifts every later decode.
03 • COMPLETE REFERENCE

Baconian cipher table and 24-letter alphabet

This is the table used by The Daily Cipher's Baconian engine and practice generator.

Letter(s)A/B patternBinaryValue
AAAAAA000000
BAAAAB000011
CAAABA000102
DAAABB000113
EAABAA001004
FAABAB001015
GAABBA001106
HAABBB001117
I/JABAAA010008
KABAAB010019
LABABA0101010
MABABB0101111
NABBAA0110012
OABBAB0110113
PABBBA0111014
QABBBB0111115
RBAAAA1000016
SBAAAB1000117
TBAABA1001018
U/VBAABB1001119
WBABAA1010020
XBABAB1010121
YBABBA1011022
ZBABBB1011123
Two shared codes: I and J both use ABAAA. U and V both use BAABB. When decoding, language context tells you which letter was intended.

How the table is generated

Start at value 0 and count upward in five-bit binary. Convert every 0 to A and every 1 to B. Because the alphabet has 24 entries, the used values stop at 23: 10111 = BABBB = Z. The binary states 24–31 still exist mathematically, but they do not create extra Baconian letters in this convention.

Reference rule: if you can read binary, you can rebuild the whole table instead of memorizing 24 unrelated patterns.
04 • ENCRYPTION

How encryption works

1

Normalize shared letters

For lookup purposes, treat J like I and V like U. You still keep the intended plaintext spelling as the answer.

2

Find the 24-entry index

Example: K comes after the shared I/J entry, so K is value 9, not value 10.

3

Convert the value to five-bit binary

9 = 01001.

4

Convert 0→A and 1→B

01001 becomes ABAAB, so K = ABAAB.

5

Apply any disguised symbol classes

If the problem uses ● for A and ○ for B, ABAAB becomes ●○●●○.

05 • DECRYPTION

How to decode a Baconian cipher

1

Identify the two classes

Decide which visual state means A and which means B.

2

Normalize to A/B

Convert fonts, shapes, digits, or other paired symbols into one A/B stream.

3

Split into groups of five

One missing or extra symbol shifts every group after it.

4

Look up each group

ABAAA → I/J and BAABB → U/V. Other valid groups map to one letter.

5

Resolve shared letters from context

If the decoded pattern is U/V I/J U/V I/J D, normal English context can reveal VIVID.

06 • COMPETITION WORKFLOW

How to approach Baconian in Codebusters practice

  • Write I/J and U/V together on your reference so you never accidentally use a 26-letter offset.
  • Identify the two symbol classes before decoding; if the result is nonsense, check whether A and B were reversed.
  • Mark boundaries every five symbols before doing table lookups.
  • When a shared code appears, leave it as I/J or U/V until the surrounding word makes the choice clear.

What the problem gives you vs. what you produce

PartWhat to expect
You may be givenA/B directly, or two fonts/symbols/glyph classes hiding A/B.
You must findThe intended plaintext by grouping in fives and decoding with the 24-entry table.
Fastest first moveLabel the two states A/B and draw separators every five positions.
Shared-letter ruleABAAA = I/J and BAABB = U/V; context resolves the final spelling.
Season note: this page teaches the 24-entry convention used by this site's Codebusters practice. The current official Science Olympiad Rules Manual, event resources, and clarifications take precedence for tournament-specific requirements.
07 • CRYPTANALYSIS

How to attack an unknown presentation

  • Look for exactly two recurring visual states. The puzzle can hide them in typography or symbols, but the underlying system is still binary.
  • If you are unsure which state is A, try both assignments. Only one should produce sensible language.
  • If spacing is missing, preserve groups of five from the intended start point.
  • Remember that I/J and U/V are genuine ambiguities in the 24-entry table; do not treat them as evidence that your decode failed.
08 • WORKED PROBLEM

Worked example with both shared entries

Ciphertext
BAABB ABAAA BAABB ABAAA AAABB
Binary values
10011 | 01000 | 10011 | 01000 | 00011
Table lookup
U/V | I/J | U/V | I/J | D
Use English context
V | I | V | I | D
Answer
VIVID
BEGINNER SELF-CHECK

Before moving on, make sure you can answer these without another site:

  • Why do I and J produce the same code?
  • Why is K value 9 instead of 10?
  • What happens mechanically when binary 00111 advances to 01000?
  • Why can a solver still recover VIVID even though U/V and I/J share codes?
09 • ERROR CHECK

Common mistakes

!

Using a 26-letter A–Z table. That shifts K and later letters because J does not receive its own entry.

!

Giving V a separate pattern instead of sharing U/V at BAABB.

!

Reversing which symbol class means A and which means B.

!

Losing one symbol and shifting every later five-symbol boundary.

10 • SPEED

Competition speed strategies

1

Think binary instead of memorizing 24 arbitrary strings: A=0, B=1, weights 16-8-4-2-1.

2

Memorize the two merged anchors: I/J = ABAAA and U/V = BAABB.

3

Mark a separator after every five symbols before decoding a long stream.

11 • QUICK REFERENCE

What to remember under time pressure

Group size5 symbols
Binary ruleA=0 • B=1
Place values16 • 8 • 4 • 2 • 1
I / JABAAA
U / VBAABB
ZBABBB
Used values0–23
Fast reconstruction: write 0 through 23 in five-bit binary and replace 0→A, 1→B. Label value 8 as I/J and value 19 as U/V.
12 • INTERACTIVE LAB

Baconian decoder and binary visualizer

The Baconian visualizer now includes a five-panel mechanical-style binary counter. Press +1 / advance and watch the rightmost bit flip. Whenever a 1 rolls over to 0, the carry moves left—exactly the behavior that produces the sequence AAAAA, AAAAB, AAABA, AAABB, and so on.