Tool to decrypt/encrypt unsing the Nihilist cipher. The Nihilist Cipher is a variant of Polybius square, since it is a super-encryption of it.

Nihilist Cipher - dCode

Tag(s) : Cryptography, Substitution Cipher

dCode is free and its tools are a valuable help in games, puzzles and problems to solve every day!

You have a problem, an idea for a project, a specific need and dCode can not (yet) help you? You need custom development? *Contact-me*!

This page is using the new English version of dCode, *please make comments* !

Sponsored ads

Tool to decrypt/encrypt unsing the Nihilist cipher. The Nihilist Cipher is a variant of Polybius square, since it is a super-encryption of it.

The Nihilist cipher is an over-encryption of the Polybius square. It uses a grid (usually 5x5 = 25 cells) that is filled with letters of the alphabet (often a deranged alphabet). For a 5x5 grid, the 26-letter latin alphabet do not fit, you have to choose a letter to omit, often the J, V or W are omitted. The grid has digit headers for its rows and columns (typically 1 to 5).

Example:

\ | 1 | 2 | 3 | 4 | 5 |
---|---|---|---|---|---|

1 | A | B | C | D | E |

2 | F | G | H | I | J |

3 | K | L | M | N | O |

4 | P | Q | R | S | T |

5 | U | V | X | Y | Z |

To encrypt a text, it is necessary to replace each letter of the initial text, by its coordinates in the grid. Generally, the coordinates [row, column] (and more rarely [column, line]) are used. A numerical code consisting of pairs of digits is obtained.

Example: A is therefore coded 11 (because in row 1, column 1), E becomes 15 (row 1, column 5).

Example: Consider the message to be encrypted: KREMLIN, which is therefore encoded 31,43,15,33,32,24,34

The particularity of the Nihilist cipher in relation to the Polybius cipher is its over-encryption. The nihilists use a key that is added for each couple of digits previously created.

To keep only 2 digits, subtract 100 from the amounts that would be greater than 100.

Example: The key VODKA, which is coded 52,35,14,31,11, is added (value after value) to the encrypted text.

Example:

Plain Message | K | R | E | M | L | I | N |

Coded (Message) Letters | 31 | 43 | 15 | 33 | 32 | 24 | 34 |

Key (repeated) | V | O | D | K | A | V | O |

Coded (Key) Letters | 52 | 35 | 14 | 31 | 11 | 52 | 35 |

Final Message (Addition) | 83 | 78 | 29 | 64 | 43 | 76 | 69 |

Example: The final encrypted message is 83782964437669

Decryption requires to know the grid and the over-encryption key.

Example: Consider the encrypted message 577066392880, the key CODE and the grid

\ | 1 | 2 | 3 | 4 | 5 |
---|---|---|---|---|---|

1 | A | B | C | D | E |

2 | F | G | H | I | J |

3 | K | L | M | N | O |

4 | P | Q | R | S | T |

5 | U | V | X | Y | Z |

To decrypt, the coded key is subtracted from each pair of 2 digits and each number obtained is replaced by the corresponding letter with these coordinates in the grid.

Example: The key CODE is coded with the grid 13,35,14,15, it is then subtracted from the message:

Coded Message | 57 | 70 | 66 | 39 | 28 | 80 |

Coded Key (repeated) | 13 | 35 | 14 | 15 | 13 | 35 |

Subtraction | 44 | 35 | 52 | 24 | 15 | 45 |

Letter in the Grid | S | O | V | I | E | T |

Example: The plain message is SOVIET.

The message is composed of an even number of digits.

In the general case of using a 5x5 grid with coordinates from 1 to 5, the message is composed of numbers between 0 and 100 except for values between 11 and 21 inclusive, which never appear in this case during the encryption process.

dCode analyzes the pairs of digits of the message to extract the potential additions that formed them. It is then possible to find all the possible combinations and to deduce the potential keys with the grid.

Assuming that the over-encryption key is known, it is possible to decode normally with a basic / random grid. The result will then be a mono-alphabetic substitution of the original message. Use dCode's monoalphabetic substitution tool to decrypt the message almost automatically.

It is possible to make several variants:

**Inversion of coordinates**: rather than using [row, column], it is possible to use [column,row].

**Change of coordinates names**: the digits from 1 to 5 can very well be mixed or replaced by other digits.

**Multiple keys**, it is possible to use several keys, summed successively, but this only extends the process time and does not complicate a brute-force attack.

The Russian nihilist movement is described in the history textbooks as between 1855 and 1885.

dCode retains ownership of the source code of the script Nihilist Cipher. Except explicit open source licence (indicated Creative Commons / free), any algorithm, applet, snippet, software (converter, solver, encryption / decryption, encoding / decoding, ciphering / deciphering, translator), or any function (convert, solve, decrypt, encrypt, decipher, cipher, decode, code, translate) written in any informatic langauge (PHP, Java, C#, Python, Javascript, etc.) which dCode owns rights can be transferred after sales quote. So if you need to download the Nihilist Cipher script for offline use, for you, your company or association, see you on contact page !

nihilist,russia,polybius,tsar,ussr

Source : http://www.dcode.fr/nihilist-cipher

© 2017 dCode — The ultimate 'toolkit' to solve every games / riddles / geocaches. dCode