Определение языка сообщения
В живых языках буквы в текстах встречаются с разной частотой, другими словами, можно построить диаграммы распределения частот символов, характерные для каждого языка. Производится так называемая частотная селекция, текст сообщения анализируется как поток символов и высчитывается частота встречаемости (вес) каждого символа. Иногда таблицу для удобства нормализуют: веса делят на общее количество символов в обработанном сообщении. При анализе можно абстрагироваться от букв и их семантической нагрузки, взяв только номера символов и рассчитывая таблицу частот по номерам. Это позволит обойти наличие нескольких, временами несовместимых кодировок. Для принятия решения полученная таблица распреде-
ления сравнивается с эталонными таблицами и по близости к тому или иному распределению делается предположительный вывод о языке сообщения. Для анализа минимальная длина текста должна равняться длине трех алфавитов, что для русского языка составляет около сотни символов.
Таблица встречаемости букв в распространенных европейских языках | |||||||||
Английский Французский Немецкий Испанский Итальянский | |||||||||
Е | 12,86 | Е | 17,76 | Е | 19,18 | Е | 14,15 | I | 12,04 |
Т | 9,72 | S | 8,23 | N | 10,20 | А | 12,90 | Е | 11,63 |
А | 7,96 | А | 7,68 | I | 8,21 | О | 8,84 | А | 11,12 |
7,77 | N | 7,61 | S | 7,07 | S | 7,64 | О | 8,92 | |
N | 7,51 | Т | 7,30 | R | 7,01 | I | 7,01 | N | 7,68 |
R | 7,03 | I | 7,23 | Т | 5,68 | R | 6,95 | Т | 7,07 |
Взлом шифров
Вычисление статистических весов одиночных символов можно применить для взлома шифров однозначной замены. Здесь априори должен быть известен язык сообщения. Для подобного взлома сначала вычисляется частота встречаемости каждого символа зашифрованного сообщения и сравнивается с эталонной диаграммой. Если «веса» близки, можно сделать предположение о том, что это и есть та или иная буква. Далее исследуются слова, состоящие из двух или трех букв. Если в них есть уже открытые буквы, то, допуская, что это предлоги, можно определить недостающие, закрытые, буквы. Криптоаналитик должен хорошо владеть языком и быть подкованным в литературе языка оригинала.
Для взлома более сложных шифров анализ усложняется. Рассматривается предыстория символа, т.е. зависимость частоты появления от предыстории. Анализируются цепочки символов, по два символа (биграмма), по три (триграмма) и т.д. Для анализа биграмм вычисляется вероятность Pij появления символа j при
условии, что перед ним находится знак i. Это также носит название марковости первого порядка — по фамилии петербургского математика XIX в., предложившего данный метод анализа.
Такие системы лингвистического анализа применяются для взлома сложных шифров методом грубой силы, или, как еще это называют, методом полного перебора паролей. Программа перебирает все возможные пароли из заданного диапазона и проводит автоматический анализ полученных текстов на осмысленность. Осмысленные варианты расшифрованных текстов выводятся для анализа человеком.
Дата добавления: 2016-07-09; просмотров: 539;