«Пляшущие человечки» — это один из рассказов про Шерлока Холмса. В нём детектив раскрывает загадочное убийство с помощью шифра, который выглядит как...пляшущие человечки!

Детектив использовал частотный криптоанализ. Это способ расшифрования сообщения на основе знания частоты появления символов в языке, на котором написан незашифрованный текст.
Например, в русском языке чаще всего встречаются буквы "о" (11%) и "е" (8,5%), а реже всего — буква "ф" (0,27%) и твёрдый знак (0,04%). Поэтому в переводе рассказа на русский в зашифрованных посланиях самые часто используемые фигуры человечков соответствуют буквам "о" и "е".
Чем больше объём накопленных шифрограмм, тем ближе в них частотное распределение к среднему. Зная это и перехватив несколько зашифрованных сообщений, можно подобрать отдельные слова (как в кроссворде или "Поле чудес"), а затем с их помощью выяснить, каким фигурам соответствуют другие буквы.
Постепенно так восстановится вся таблица шифрования, что позволит не только читать все новые шифрограммы (пассивная атака), но и создавать их самому (активная атака), вмешиваясь в зашифрованную переписку.
Частотный криптоанализ применим не ко всем шифрам. Так как в произведении использован шифр простой замены (каждая буква открытого текста заменяется на одну и ту же букву по таблице замены), то Шерлоку удалось дешифровать сообщение. Шифры простой замены уязвимы к частотному криптоанализу.
#история_шифров