Keyed Polybius addition

Nihilist Cipher Encoder and Decoder

Build a keyed 5×5 square, turn an additive phrase into coordinates, and encode or decode strictly separated number groups.

01 / Workspace

Encode plaintext

Mode

The selected direction is always applied; the tool does not guess.

0 / 128 letters

Unique letters fill the square first; repeated letters are removed.

0 / 128 letters

Every letter becomes a coordinate; repeats stay and the sequence cycles.

Keys accept ASCII letters and Unicode whitespace only. Whitespace is ignored, case is ignored, and J becomes I.

The 5×5 square cannot retain the original distinction. This choice affects decoded text only.

0 / 15,000 code points

Use ASCII letters and whitespace. Whitespace runs become standalone / tokens; punctuation, digits, accents, emoji, and other scripts are rejected.

Keyboard: Ctrl+Enter or Command+Enter runs the selected mode from either key field or the message field.

Ready to encode.

03 / Result

Encoded numbers

No result yet

Each sum is 22–110 and separated by one ASCII space. A standalone / preserves one normalized word break.

04 / Convention

How this version works

  1. Build the square. Normalize J to I, remove repeated letters from the square key phrase, then append unused letters from ABCDEFGHIKLMNOPQRSTUVWXYZ.
  2. Derive the additive sequence. Read each additive-key letter's row-column coordinate from that same square. Phrase whitespace is ignored, but repeated key letters are retained.
  3. Add or subtract ordinary integers. Encoding adds each plaintext coordinate to the next repeated key coordinate. Decoding subtracts it and accepts only results whose two digits are both 1–5.
  4. Keep only declared formatting. Plaintext whitespace runs become standalone / tokens and decode to single ASCII spaces. A slash does not advance the key. No punctuation or unsupported character is silently discarded.

Known-answer checks

With square key ZEBRAS and additive key ORBIT, DYNAMITE encodes to 65 69 54 47 80 74 59 25.

With those keys, JIG encodes to 74 46 38. Standard decoding returns IIG; choosing J returns JJG because the shared cell cannot identify the originals.

For any accepted input, decoding its encoded form returns uppercase text with J/I and whitespace normalized under the selected rule.

Limits and security

  • This implements the simple English 5×5, row-then-column form. It does not support 6×6 alphabets, reversed coordinates, modulo-100 groups, joined digits, key recovery, or cryptanalysis.
  • Messages are limited to 15,000 Unicode code points, 30,000 UTF-16 code units, and 5,000 letters or numeric groups. Each normalized key is limited to 128 letters.
  • The name is associated with anti-Tsarist groups in late-19th-century Russia; several different systems have also been called Nihilist ciphers.
  • This historical hand cipher has a repeating key and provides no modern confidentiality. Do not use it for passwords, personal records, authentication tokens, or sensitive messages.