Tool to crypt/decrypt the bifid cipher. The bifid cipher uses coordinates of letters and mixes them in order to get new coordinates. This tommographic process is described in Cryptography Elementary Treaty by Delastelle.

Bifid Cipher - dCode

Tag(s) : Polygrammic 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 crypt/decrypt the bifid cipher. The bifid cipher uses coordinates of letters and mixes them in order to get new coordinates. This tommographic process is described in Cryptography Elementary Treaty by Delastelle.

**Bifid** encryption requires a grid (or a keyword to generate the grid) and (optional) a number N which will serve as a period/block length (otherwise take N=1).

__Example:__ Encrypt the plain message DCODE with the grid (generated with the word SECRET):

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

1 | S | E | C | R | T |

2 | A | B | D | F | G |

3 | H | I | K | L | M |

4 | N | O | P | Q | U |

5 | V | W | X | Y | Z |

Encryption first consists in splitting letters in blocks of size N. This text-splitting is not mandatory, but simplifies encryption/decryption for long texts.

__Example:__ A period of length N=3 for DCODE gives DCO,DE (if the block is incomplete, it does not matter)

For a non splitted encryption, imagine a period size of N=1 (or a period size equal to or greater than the number of letters in the plain message)

For each letter of the block, write the coordinates of the letters (row, column) in a table.

__Example:__ Take the first block DCO. D=(2,3), C=(1,3), O=(4,2) and write it in a table:

D | 2 | 3 |

C | 1 | 3 |

O | 4 | 2 |

To get new coordinates, read the numbers of the table vertically by columns.

__Example:__ The vertical reading gives 2,1,4,3,3,2 or the coordinates (2,1),(4,3),(3,2).

Replace the coordinates with the corresponding letters in the grid.

__Example:__ (2,1) for A, (4,3) for P and (3,2) for I.

These steps are repeated for each block.

__Example:__ The final encrypted message is APIAI

**Bifid** decryption begins identically to encryption.

__Example:__ The message DBAKS has been encrypted with a period N=3 and the grid (generated with the word MESSAGE):

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

1 | M | E | S | A | G |

2 | B | C | D | F | H |

3 | I | K | L | N | O |

4 | P | Q | R | T | U |

5 | V | W | X | Y | Z |

The message is split into period/block of size N

__Example:__ The message is decomposed in block of 3: DBA,KS

Each letter is associated with its position in the grid as coordinates (row, column)

__Example:__ The letters of the block D,B,A have the respective coordinates (2,3),(2,1),(1,4).

Write the coordinates on 2 lines (and thus N columns, eventually except the last block)

__Example:__

2 | 3 | 2 |

1 | 1 | 4 |

Then, read vertically by columns

__Example:__ You get 2,1,3,1,2,4 or (2,1),(3,1),(2,4).

The new coordinates are then associated with the corresponding letters in the grid.

__Example:__ You find the plain letters (2,1)=B, (3,1)=I and (2,4)=F

These steps are repeated for each block.

__Example:__ The plaintext message is **BIFID**.

The message has a low coincidence index around 0.04 to 0.05.

If the grid is 5x5 then it can have at most 25 distinct characters.

**Bifid** means 'that is cut in half lengthwise', which applies to the **Delastelle** cipher: the coordinates are cut in 2 during the encryption and decryption steps.

With a period of 1, the encryption or decryption algorithm has no effect (because the principle of column writing and row reading does not produce a shuffling effect)

**Delastelle** described this process in 1902.

dCode retains ownership of the source code of the script Bifid Cipher 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 Bifid Cipher script for offline use on PC, iPhone or Android, ask for price quote on contact page !

bifid,delastelle,cipher,felix,marie,civil,coordinates,grid

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

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

Feedback

▲