Tool to decrypt/encrypt with Chaocipher, a polyalphabetic encryption algorithm using two evolving disk alphabet at each step.

Chaocipher - dCode

Tag(s) : Poly-Alphabetic Cipher

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

A suggestion ? a feedback ? a bug ? an idea ? *Write to dCode*!

Tool to decrypt/encrypt with Chaocipher, a polyalphabetic encryption algorithm using two evolving disk alphabet at each step.

**Chaocipher** encryption uses two rotating disks on which is written a custom alphabet (originally the 26 letters from A to Z in any order).

The two disks are identical and linked with a kind of gearing (ratio 1:1), if a disk is turned clockwise, the other turns anti-clockwise.

__Example:__ Encrypt DCODE using the two disks:

CHAOBDEFGIJKLMNPQRSTUVWXYZ for the LEFT disk (cipher text) and

CIPHERABDFGJKLMNOQSTUVWXYZ for the RIGHT disk (plain text)

The position 1 in each disk alphabet is called *zenith* and the opposite position on the disk, here 14, is called *nadir*.

For each letter to encrypt, make these 3 steps :

First step : read the cipher letter corresponding to the plain letter (at the intersection of the two disks or at the same rank in the alphabets)

__Example:__ The plain letter D is in front of the cipher letter G.

Second step : make a special permutation of the LEFT disk. This operation is composed of 4 actions:

1. Make a rotation of the alphabet on order to set the cipher letter at the zenith (position 1)

__Example:__ The alphabet becomes GIJKLMNPQRSTUVWXYZCHAOBDEF

2. Extract the letter in position zenith+1 (on the right of zénith) and leave the position empty

__Example:__ Extraction of I.

The alphabet becomes G.JKLMNPQRSTUVWXYZCHAOBDEF

3. Shift all letters from position zenith+2 until nadir (zenith+13) included by shifting them on the left

__Example:__ The alphabet becomes GJKLMNPQRSTUV.WXYZCHAOBDEF

4. Insert the extracted letter at step 2 in the empty hole in position nadir (zenith+13)

__Example:__ The alphabet becomes GJKLMNPQRSTUVIWXYZCHAOBDEF

Third step : make a special permutation of the RIGHT disk. This operation is composed of 4 actions:

1. Make a rotation of the alphabet in order to set the letter immediately to the right of the plain letter to the zenith (the plain letter is in position zenith-1).

__Example:__ The alphabet becomes FGJKLMNOQSTUVWXYZCIPHERABD

2. Extract the letter in position zenith+2 and leave the position empty.

__Example:__ Extraction of J.

The alphabet becomes FG.KLMNOQSTUVWXYZCIPHERABD

3. Shift all letters from position zenith+3 until nadir (zenith+13) included by shifting them on the left

__Example:__ The alphabet becomes FGKLMNOQSTUVW.XYZCIPHERABD

4. Insert the extracted letter at step 3 in the empty hole in position nadir (zenith+13).

__Example:__ The alphabet becomes FGKLMNOQSTUVWJXYZCIPHERABD

The message is obtained after these steps.

__Example:__ Here the cipher message is GZNDZ

Decryption is identical to encryption with its 3 steps. Beware to read the plain letter on the right disk corresponding to the cipher letter on the left disk.

The ciphered message has a low index of coincidence, it is hardly distinguishable.

It is nearly impossible. However it the initial disk order has been defined using deranged alphabets, it is possible to some couples of keywords.

It is possible to change the size of the alphabet, or defining new positions for permutations of the alphabets.

This ciphering has been invented by John F. Byrne in 1918. He is described in his book Silent Years here (link)

dCode retains ownership of the source code of the script Chaocipher online. 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, Matlab, etc.) which dCode owns rights will not be released for free. To download the online Chaocipher script for offline use on PC, iPhone or Android, ask for price quote on contact page !

chaocipher,chao,byrne,john,silent,years,alphabet

Source : https://www.dcode.fr/chao-cipher

© 2020 dCode — The ultimate 'toolkit' to solve every games / riddles / geocaching / CTF.

Feedback

▲