Tool to decrypt / encrypt by homophonic substitution. The homophonic number consists of replacing each letter of the alphabet by several substitutes in order to prevent cryptanalysis by frequency analysis.

Homophonic Cipher - dCode

Tag(s) : Homophonic Substitution 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 by homophonic substitution. The homophonic number consists of replacing each letter of the alphabet by several substitutes in order to prevent cryptanalysis by frequency analysis.

The **homophonic** substitution cipher uses a correspondence table between the letters / characters of the plain message and one or more letters / numbers / groups of characters. Consequently, the same letter may have several possible encryption and the same message will possibly have several possible encrypted versions.

The objective aimed at by the use of several correspondences for the letters of the plain message is to prevent an attack by frequency analysis, possible on mono-alphabetic (and also polyalphabetic) substitutions. Consequently, it is clever to use a number of correspondence per letter proportional to the frequency of the letter in the language of the plain message.

__Example:__ ABC is coded with multiple matches: A(45,96,17), B(37,60), C(05,88) as 45,60,88 or 96,60,05 or 96,37,05 etc.

In order to simplify the work of the message receiver, use groups of numbers / letters of fixed length (here 2 digits).

Use the correspondence table to transform each character / group of characters in the plain message.

__Example:__ '34,25,10 'has been coded with these multiple correspondances: A(87,34,11), B(25,80), C(10,55), the plain message is ABC

By taking 100 numbers, the ideal match is approximately equal to the frequency of each letter in the English language (expressed as a percentage rounded to the nearest unit)

E | 12 | T | 9 | A | 8 | O | 7 |
---|---|---|---|---|---|---|---|

I | 7 | N | 7 | S | 6 | H | 6 |

R | 6 | L | 4 | D | 4 | C | 2 |

U | 2 | M | 2 | W | 2 | F | 2 |

G | 2 | Y | 2 | P | 2 | B | 2 |

V | 1 | K | 1 | J | 1 | X | 1 |

Q | 1 | Z | 1 |

Using the pieces of a Scrabble game is a good idea.

Well done, the frequency of characters in a homophonically encrypted message is close to that of a perfectly random text, its index of coincidence too.

If the correspondances are proportional to the frequency of characters in the language of the plain message, then it is impossible to use frequency analysis or coincidence index techniques.

From a portion of known or assumed text, it is possible to guess a few correspondences of some characters but it is often insufficient to decipher the whole message.

dCode retains ownership of the online 'Homophonic Cipher' tool source code. Except explicit open source licence (indicated CC / Creative Commons / free), any algorithm, applet or snippet (converter, solver, encryption / decryption, encoding / decoding, ciphering / deciphering, translator), or any function (convert, solve, decrypt / encrypt, decipher / cipher, decode / encode, translate) written in any informatic language (PHP, Java, C#, Python, Javascript, Matlab, etc.) no data, script or API access will be for free, same for Homophonic Cipher download for offline use on PC, tablet, iPhone or Android !

Please, check our community Discord for help requests!

homophonic,substitution,several,many,replacement,letter

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

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

Feedback

▲