Introduction
The Pollux cipher hides a message inside a stream of digits by first converting it to Morse code, then replacing each dot, dash, and separator with a digit from a 10-symbol key. Because several digits can stand for the same Morse symbol, the same plaintext encodes differently each time, which flattens the frequencies that a codebreaker would otherwise exploit. It is a staple of puzzle hunts and Science Olympiad CodeBusters. This tool encrypts and decrypts Pollux in your browser. Enter a key, paste your text, and the output appears instantly.
What this tool does
- Encrypts by converting plaintext to Morse code, then substituting each dot, dash, and separator with a digit from its key pool.
- Decrypts by mapping each digit back to its Morse symbol, reconstructing the Morse stream, and decoding it to text.
- Accepts a 10-character key that assigns each digit 0-9 to a dot, a dash, or a separator (x).
- Validates that the key covers all three symbols and rejects ambiguous keys.
- Produces different ciphertext on each encryption thanks to random digit selection within each pool.
How this tool works
The key is a 10-character string where position d maps digit d to a Morse symbol: a dot (`.`), a dash (`-`), or a separator (`x`). For example, the key `x...x--xxx` assigns digits 1, 2, 3 to dots, digits 5, 6 to dashes, and digits 0, 4, 7, 8, 9 to separators. The tool requires at least one digit per symbol.
For encryption, the tool converts your plaintext to a Morse stream using `x` as the separator between letters and `xx` between words. It walks the stream and, for each symbol, picks a random digit from that symbol's pool. The output is a digit string that looks like an arbitrary number. For decryption, each digit maps back to its symbol, the Morse stream is reconstructed, and the tool decodes it to text. All processing happens client-side.
How the Pollux cipher works
Pollux is a homophonic substitution built on top of Morse code. Plain Morse is trivially decodable by anyone with the international table, because the dot-dash structure is visible. Pollux hides that structure by replacing the three Morse symbols (dot, dash, separator) with digits drawn from three pools. Since there are ten digits and only three symbols, each symbol gets several digits, which is the homophonic trick: the same letter can be encoded many ways, so simple frequency counting fails.
The American Cryptogram Association catalogues Pollux alongside other Morse-based ciphers like Fractionated Morse and Morbit. The standard ITU Morse code is defined in ITU-R M.1677. The key insight for breaking Pollux is that there are only three symbol classes, so a paired-frequency analysis of the digits can separate dots from dashes from separators once enough ciphertext is collected, after which the Morse decodes normally.
Because encoding picks digits randomly within each pool, encrypting the same message twice produces different ciphertexts. This defeats known-plaintext attacks that rely on matching repeated outputs. For a related Morse-based cipher that works on triples of Morse symbols, see the fractionated Morse cipher tool, and for the underlying code, see the Morse code translator.
How to use this tool
- Type or paste your plaintext into the input field.
- Enter a 10-character key using only dot (.), dash (-), and x (separator), one symbol per digit 0-9.
- Keep the mode on Encrypt to produce a digit ciphertext, or switch to Decrypt and paste digits to recover the text.
- On decrypt, non-digit characters in the input are ignored, so spaces or dashes in the ciphertext are skipped.
- Use Swap to feed the output back as input and flip the mode in one click.
Real-world examples
Encoding a CodeBusters challenge answer
A Science Olympiad team encodes the answer "MEET AT NOON" with the key `x...x--xxx`. The tool converts the text to Morse, replaces each dot, dash, and separator with a random digit from the matching pool, and outputs a digit string like `2130516982...`. Each run produces different digits, so the team can practice decoding varied ciphertexts with the same key.
Decoding with a known key
A puzzle hunter receives the digit string `382015947...` and the key `x...x--xxx`. They paste it into the decoder, the tool maps each digit back to its Morse symbol, reconstructs the Morse stream, and decodes it to readable text. Non-digit characters in the input are ignored, so formatting does not break the decode.
Testing an invalid key
A user enters the key `x...x---x` (only 9 characters) and the tool reports that the key must be exactly 10 characters. They enter `.....-----x` and the tool reports that the key must assign at least one digit to dots, dashes, and separators. The validation catches mistakes before they produce garbage output.
Comparison with similar methods
| Method | Complexity | Typical use |
|---|---|---|
| Plain Morse code | Direct dot-dash encoding | Telegraphy, signal flags |
| Pollux | Homophonic digit substitution on Morse | Puzzle hunts, CodeBusters |
| Fractionated Morse | Morse triples to letters via a key | ACA Morse cipher |
| Morbit | Pairs of Morse symbols to digits | ACA Morse variant |
Limitations or considerations
Pollux is a puzzle cipher with no modern security value. The key space is small: there are only so many ways to partition ten digits into three non-empty pools, and a paired-frequency analysis separates the pools from enough ciphertext. The Morse structure itself is public, so once the pools are identified the message decodes trivially. Encoding is non-deterministic, which helps slightly against known-plaintext attacks but does not change the underlying weakness. Use this tool for education, puzzles, and competition practice only.
Frequently asked questions
What does the key string mean?
It is 10 symbols long, one per digit 0-9. Each symbol is a dot (.), a dash (-), or a separator (x). Position 0 maps digit 0, position 1 maps digit 1, and so on. The key `x...x--xxx` means digits 1, 2, 3 are dots, digits 5, 6 are dashes, and the rest are separators.
Why does the same message encode differently each time?
Because each Morse symbol has a pool of several digits, and the encoder picks one at random from that pool. So the same plaintext produces different digit strings on each run. This is the homophonic property that flattens frequency analysis. Decoding is deterministic given the key.
How is Pollux different from Fractionated Morse?
Pollux replaces each individual Morse symbol (dot, dash, separator) with a digit. Fractionated Morse groups Morse symbols into triples and substitutes each triple with a letter using a keyed alphabet. Pollux outputs digits; Fractionated Morse outputs letters.
Can Pollux be broken without the key?
Yes, with enough ciphertext. A paired-frequency analysis of the digits separates them into the three pools (dots, dashes, separators), after which the Morse decodes normally. The small number of possible pool partitions makes brute force feasible too. It is a puzzle cipher, not a secure one.
Conclusion
Pollux is a homophonic substitution that disguises Morse code as an innocent-looking digit stream, using a 10-symbol key to map digits to dots, dashes, and separators. Enter a key and a message above to see the randomised digit output. For the underlying code, try the Morse code translator, and for a letter-outputting Morse cipher, see the fractionated Morse cipher tool.