Tools for frequency analysis, a cryptanalysis method studying the frequency of letters or groups of characters in a ciphered message.

Frequency Analysis - dCode

Tag(s) : Cryptanalysis

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*!

Frequency analysis is the study of the distribution (and count) of the letters in a text. Analysis of frequencies helps cryptanalysis and decrypting substitution-based ciphers using the fact that some letters apparitions are varying in a given language: in english, letters `E`, `T` or `A` are common while `Z` or `Q` are rare.

Frequency analysis generates an histogram that allows decrypting a text by comparing letters frequencies in a plain text message with letters frequences in a ciphered message.

For some ngrams analyzes, use the **sliding window** mode:

__Example:__ `ABCD` has bigrams AB, CD '(blocks mode)

__Example:__ `ABCD` has bigrams AB, BC, CD '(sliding window mode)

For simple substitution, it can be useful to try replacing the most common letter in the ciphertext by the letter E, the most common letter in English, and so on. This principle is applicable only if the message is relatively long for the frequencies to be statistically significant.

Frequency analysis is less relevant when the message has been encrypted with polyalphabetic encryption (which tends to randomize the frequency of the letters), or when the encryption is homophonic (several different encrypted characters for the same plain letter) or polygrammic (groups of characters replace each letter). In these cases, the analysis does not allow a decoding but allows to filter or find the type of encryption used.

Letters by frequency of appearance in English:

E | 12.7 % | T | 9.1 % | A | 8.2 % |
---|---|---|---|---|---|

O | 7.5 % | I | 7.0 % | N | 6.7 % |

S | 6.3 % | H | 6.1 % | R | 6.0 % |

L | 4.0 % | D | 4.3 % | C | 2.8 % |

U | 2.8 % | M | 2.4 % | W | 2.4 % |

F | 2.2 % | G | 2.0 % | Y | 2.0 % |

P | 1.9 % | B | 1.5 % | V | 1.0 % |

K | 0.8 % | J | 0.2 % | X | 0.2 % |

Q | 0.1 % | Z | 0.1 % |

For comparison purposes, here are letters frequency in French:

E | 17.3 % | P | 3.0 % | A | 8.4 % |
---|---|---|---|---|---|

G | 1.3 % | S | 8.1 % | V | 1.3 % |

I | 7.3 % | B | 1.1 % | N | 7.1 % |

F | 1.1 % | T | 7.1 % | Q | 1.0 % |

R | 6.6 % | H | 0.9 % | L | 6.0 % |

X | 0.4 % | U | 5.7 % | J | 0.3 % |

O | 5.3 % | Y | 0.3 % | D | 4.2 % |

K | 0.1 % | C | 3.0 % | W | 0.1 % |

M | 3.0 % | Z | 0.1 % |

dCode retains ownership of the "Frequency Analysis" source code. Except explicit open source licence (indicated Creative Commons / free), the "Frequency Analysis" algorithm, the applet or snippet (converter, solver, encryption / decryption, encoding / decoding, ciphering / deciphering, translator), or the "Frequency Analysis" functions (calculate, convert, solve, decrypt / encrypt, decipher / cipher, decode / encode, translate) written in any informatic language (Python, Java, PHP, C#, Javascript, Matlab, etc.) and all data download, script, or API access for "Frequency Analysis" are not public, same for offline use on PC, mobile, tablet, iPhone or Android app!

Reminder : dCode is free to use.

The copy-paste of the page "Frequency Analysis" or any of its results, is allowed as long as you cite dCode!

Cite as source (bibliography):

*Frequency Analysis* on dCode.fr [online website], retrieved on 2022-11-28,

analysis,frequency,cryptanalysis,bigram,trigram,ngram,letter,number,english,alphabet,histogram,count,language,character,text,counter

https://www.dcode.fr/frequency-analysis

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

Feedback

## Need Help ?

Please, check our dCode Discord community for help requests!

NB: for encrypted messages, test our automatic cipher identifier!

## Questions / Comments

Feedback and suggestions are welcome so that dCode offers the best 'Frequency Analysis' tool for free! Thank you!