Baconian Cipher Encoder / Decoder
Encode and decode messages using Francis Bacon’s A/B cipher. Supports classic 24-letter alphabet, 26-letter variant, A/B or 0/1 output, and cover-text steganography helpers.
Example: use “x” and “o” or “.” and “-”.
For decoding, paste A/B or 0/1 sequences. Non-symbol characters are ignored.
Cover Text Steganography Helper
The original Baconian cipher hides A/B symbols inside an innocent-looking cover text, for example by using lowercase for A and UPPERCASE for B. Use this helper to map a Baconian sequence onto a cover sentence.
How the Baconian cipher works
The Baconian cipher, invented by Francis Bacon (1561–1626), is a
steganographic cipher: it hides a secret
message inside an apparently harmless text. Each plaintext
letter is replaced by a group of five symbols, traditionally
A and B. Those symbols are then
encoded visually, for example using different fonts, letter
cases, or spacing.
Step 1 – Map letters to 5-bit patterns
In the original version, Bacon used a 24-letter Latin alphabet where I/J and U/V are merged. Each letter is assigned a unique 5-bit pattern (from 00000 to 10111), which we represent as A/B:
AAAAB → B
AAABA → C
AAABB → D
AABAA → E
AABAB → F
AABBA → G
AABBB → H
ABAAA → I / J
ABAAB → K
ABABA → L
ABABB → M
ABBAA → N
ABBAB → O
ABBBA → P
ABBBB → Q
BAAAA → R
BAAAB → S
BAABA → T
BAABB → U / V
BABAA → W
BABAB → X
BABBA → Y
BABBB → Z
Our calculator supports both this 24-letter table and a 26-letter modern variant. When decoding, you must use the same variant that was used to encode the message.
Step 2 – Encode plaintext to A/B
To encode a message:
- Normalize the text (optionally merge I/J and U/V, remove accents and punctuation).
- For each letter, look up its 5-symbol A/B pattern.
- Optionally group the output into blocks of 5 for readability.
Example (24-letter alphabet, I/J and U/V merged):
H → AABBB
E → AABAA
L → ABABA
L → ABABA
O → ABBAB
Cipher (grouped): AABBB AABAA ABABA ABABA ABBAB
Step 3 – Hide A/B inside a cover text
Historically, the A/B sequence is not sent directly. Instead, it is hidden inside a cover text. For example:
- Case method: A = lowercase, B = UPPERCASE.
- Font method: A = normal font, B = italic or bold.
- Spacing method: A = single space, B = double space.
Our steganography helper lets you map a Baconian sequence onto a cover sentence using either case changes or Markdown-style bold.
Using this Baconian cipher calculator
Encoding
- Select Encode mode.
- Choose the alphabet variant (24 or 26 letters).
- Select the symbol set (A/B, 0/1, or custom symbols).
- Type your plaintext in the Input box.
- Click Run Baconian Cipher to generate the encoded sequence.
- Optionally, copy the output and use the Cover Text Steganography Helper to embed it.
Decoding
- Select Decode mode.
- Choose the same alphabet variant and symbol set that were used to encode.
- Paste the A/B or 0/1 sequence into the Input box. Non-symbol characters are ignored.
- Click Run Baconian Cipher to recover the plaintext.
If the total number of symbols is not a multiple of 5, the last incomplete block is ignored and a warning is shown.
Limitations and security notes
- The Baconian cipher is not secure by modern cryptographic standards.
- It is mainly used for puzzles, geocaching, escape rooms, and educational demonstrations of steganography.
- Anyone who suspects a Baconian cipher can decode it quickly with tools like this one.
FAQ
Why are I/J and U/V sometimes merged?
Bacon worked with a 24-letter Latin alphabet. To fit all letters into 5-bit patterns (25 = 32 possibilities), he merged I with J and U with V. Many historical texts and ciphers follow this convention. Modern variants often keep all 26 English letters, but then the mapping is no longer strictly “original” Bacon.
Can I use other symbols instead of A and B?
Yes. Any two distinct symbols can represent the two states, such
as 0/1, x/o, ./-, or even
emojis. This tool lets you define a custom pair of symbols and
will encode/decode accordingly.
How do I extract A/B from a cover text?
Decide on a rule (e.g., lowercase = A, uppercase = B). Then scan the cover text letter by letter, converting each character into A or B according to your rule. Once you have the A/B sequence, group it into blocks of five and decode with the same alphabet variant.