Метки: Криптографическая атака это, криптографическая атака.
Криптоанализ (от др.-греч. κρυπτός — скрытый и анализ) — наука о методах получения исходного значения зашифрованной информации, не имея доступа к секретной информации (ключу), необходимой для этого. В большинстве случаев под этим подразумевается нахождение ключа. В нетехнических терминах, криптоанализ есть взлом шифра (кода). Термин был введён американским криптографом Уильямом Ф. Фридманом в 1920 году.
Под термином «криптоанализ» также понимается попытка найти уязвимость в криптографическом алгоритме или протоколе. Хотя основная цель осталась неизменной с течением времени, методы криптоанализа претерпели значительные изменения, эволюционировав от использования лишь ручки и бумаги до широкого применения вычислительных мощностей специализированных криптоаналитических компьютеров в наши дни. Если раньше криптоаналитиками были большей частью лингвисты, то в наше время это удел «чистых» математиков.
Результаты криптоанализа конкретного шифра называют криптографической атакой на этот шифр. Успешную криптографическую атаку, дискредитирующую атакуемый шифр, называют взломом или вскрытием.
Содержание |
Криптоанализ эволюционировал вместе с развитием криптографии: новые, более совершенные шифры приходили на смену уже взломанным системам кодирования только для того, чтобы криптоаналитики изобрели более изощренные методы взлома систем шифрования. Понятия криптографии и криптоанализа неразрывно связаны друг с другом: для того, чтобы создать устойчивую ко взлому систему, необходимо учесть все возможные способы атак на неё.
Хотя понятие криптоанализ было введено сравнительно недавно, некоторые методы взлома были изобретены десятки веков назад. Первым известным письменным упоминанием о криптоанализе является «Манускрипт о дешифровке криптографических сообщений», написанный арабским учёным Ал-Кинди ещё в 9 веке. В этом научном труде содержится описание метода частотного анализа.
Частотный анализ — основной инструмент для взлома большинства классических шифров перестановки или замены. Данный метод основывается на предположении о существовании нетривиального статистического распределения символов, а также их последовательностей одновременно и в открытом тексте, и в шифротексте. Причём данное распределение будет сохраняться с точностью до замены символов как в процессе шифрования, так и в процессе дешифрования. Стоит отметить, что при условии достаточно большой длины шифрованного сообщения моноалфавитные шифры легко поддаются частотному анализу: если частота появления буквы в языке и частота появления некоторого присутствующего в шифротексте символа приблизительно равны, то в этом случае с большой долей вероятности можно предположить, что данный символ и будет этой самой буквой. Самым простым примером частотного анализа может служить банальный подсчёт количества каждого из встречающихся символов, затем следуют процедуры деления полученного числа символов на количество всех символов в тексте и умножение результата на сто, чтобы представить окончательный ответ в процентах. Далее полученные процентные значения сравниваются с таблицей вероятностного распределения букв для предполагаемого языка оригинала.
В период XV-XVI веков в Европе создавались и развивались полиалфавитные шифры замены. Наиболее известным является шифр французского дипломата Блеза де Виженера, в основу которого легло использование последовательности нескольких шифров Цезаря с различными значениями сдвига. На протяжении трёх веков Шифр Виженера считался полностью криптографически устойчивым, пока в 1863 году Фридрих Касиски не предложил свою методику взлома этого шифра. Основная идея метода Касиски заключается в следующем: если в открытом тексте между двумя одинаковыми наборами символов находится такой блок текста, что его длина кратна длине ключевого слова, то эти одинаковые наборы символов открытого текста при шифровании перейдут в одинаковые отрезки шифротекста. На практике это означает то, что при наличии в шифротексте одинаковых отрезков длиной в три и больше символов, велика вероятность того, что эти отрезки соответствуют одинаковым отрезкам открытого текста. Как применяется метод Касиски: в шифротексте ищутся пары одинаковых отрезков длины три или больше, затем вычисляется расстояние между ними, то есть количество символов, разделяющих стартовые позиции парных отрезков. В результате анализа всех пар одинаковых отрезков мы получим совокупность расстояний d1, d2, d3,… Очевидно, что длина ключевого слова будет делителем для каждого из расстояний и, следовательно, для их наибольшего общего делителя.
Следующий этап развития криптоанализа связан с изобретением роторных шифровальных машин таких как, например, изобретённая Артуром Шербиусом Энигма. Целью таких устройств было минимизировать количество повторяющихся отрезков шифротекста, статистика появления которых использовалась при взломе шифра Виженера. Польским криптоналитикам удалось построить прототип дешифровальной машины для версии Энигмы, используемой Нацистской Германией. Машина получила название "Бомба" за то, что при работе издавала звуки похожие на тиканье часов. Позже она была доработана и взята на вооружение английскими криптоаналитиками.
По мере развития новых методов шифрования математика становилась всё более и более значимой. Так, например, при частотном анализе криптоаналитик должен обладать знаниями и в лингвистике, и в статистике. В то время как теоретические работы по криптоанализу Энигмы выполнялись преимущественно математиками, например, Аланом Матисоном Тьюрингом. Тем не менее благодаря всё той же математике криптография достигла такого развития, что количество необходимых для взлома элементарных математических операций стало достигать астрономических значений. Современная криптография стала гораздо более устойчивой к криптоанализу, чем некогда используемые, устаревшие методики, для взлома которых было достаточно ручки и листа бумаги. Может показаться, что чистый теоретический криптоанализ не способен более эффективно взламывать современные шифры. Тем не менее историк Дэвид Кан в своей заметке к 50-ой годовщине Агентства национальной безопасности пишет:
"В наши дни сотни фирм предлагают множество различных криптосистем, которые невозможно взломать ни одним из известных методов криптоанализа. Действительно, такие системы устойчивы даже к атаке по подобранному открытому тексту, т.е. сравнение открытого текста и соответствующего ему шифротекста не позволяет узнать ключ шифрования, который бы позволил дешифровать другие сообщения. Таким образом, в некотором смысле криптоанализ мёртв. Но это ещё не конец. Криптоанализ может быть и мёртв, но, выражаясь метафорически, с кошки можно снять шкурку несколькими способами."
Далее в своих заметке описывает возросшее значение перехвата данных, закладки жучков, атак по сторонним каналам и квантовых компьютеров как методик, идущих на смену традиционным методам криптоанализа. В 2010 бывший технический директор Управления национальной безопасности Брайан Сноу отметил, что коммерческая криптография уже почти достигла уровня развития технологий, используемых разведывательными службами, и теперь они вместе «очень медленно продвигаются в уже полностью исследованной области».
Тем не менее, криптоанализ пока ещё рано списывать со счетов. Во-первых, неизвестно, насколько эффективны применяемых спецслужбами методы криптоанализа, а во-вторых за годы становления и совершенствования современной компьютерной криптографии было проведено много серьёзных атак и на теоретические, и на практические криптографические примитивы:
Таким образом, хотя наиболее надёжные из современных шифров являются гораздо более устойчивыми к криптоанализу, чем Энигма, тем не менее криптоанализ по-прежнему играет важную роль в обширной области защиты информации.
Брюс Шнайер выделяет 4 основных и 3 дополнительных метода криптоанализа, предполагая знание криптоаналитиком алгоритма шифра:
Основные методы криптоанализа:
Дополнительные методы криптоанализа:
Допустим, криптоаналитик обладает некоторым числом шифротекстов, полученных в результате использования одного и того же алгоритма шифрования. В этом случае криптоаналитик может совершить только атаку на основе шифротекста. Целью криптографической атаки в этом случае является нахождение как можно большего числа открытых текстов, соответствующих имеющимся шифротекстам, или, что ещё лучше, нахождение используемого при шифровании ключа.
Входные данные для подобного типа атак криптоаналитик может получить в результате простого перехвата зашифрованных сообщений. Если передача осуществляется по открытому каналу, то реализация задачи по сбору данных сравнительно легка и тривиальна. Атаки на основе шифротекста являются самыми слабыми и неудобными.
Пусть в распоряжении криптоаналитика есть не только шифротексты, но и соответствующие им открытые тексты.
Тогда существуют два варианта постановки задачи:
Получение открытых текстов играет решающую роль в осуществлении этой атаки. Открытые тексты извлекают из самых различных источников. Так, например, можно догадаться о содержимом файла по его расширению.
В случае взлома переписки можно сделать предположение, что письмо имеет структуру типа:
Следовательно, атака может быть организована путём подбора различных видов «Приветствия» (например, «Здравствуйте!», «Добрый день» и т. д.) и/или «Заключительной формы вежливости» (таких как «С уважением», «Искренне Ваш» и т. п.). Легко заметить, что данная атака сильнее атаки на основе одного лишь шифротекста.
Для осуществления такого типа атаки криптоаналитику необходимо иметь не только какое-то количество открытых текстов и полученных на их основе шифротекстов. Помимо прочего в данном случае криптоаналитик должен обладать возможностью подобрать несколько открытых текстов и получить результат их шифрования.
Задачи криптоаналитика повторяют задачи для атаки на основе открытого текста, то есть получить ключ шифрования, либо создать дешифрующий алгоритм для данного ключа.
Получить входные данные для такого вида атаки можно, например, следующим образом:
При осуществлении атаки подобного типа криптоаналитик имеет возможность подбирать блоки открытого текста, что при определённых условиях может позволить получить больше информации о ключе шифрования.
Атака такого типа является более удобным частным случаем атаки на основе подобранного открытого текста. Удобство атаки на основе адаптивно подобранного открытого текста состоит в том, что помимо возможности выбирать шифруемый текст, криптоаналитик может принять решение о шифровании того или иного открытого текста на основе уже полученных результатов операций шифрования. Другими словами, при осуществлении атаки на основе подобранного открытого текста криптоаналитик выбирает всего один большой блок открытого текста для последующего шифрования, а потом на основе этих данных начинает взламывать систему. В случае организации адаптивной атаки криптоаналитик может получать результаты шифрования любых блоков открытого текста, чтобы собрать интересующие его данные, которые будут учтены при выборе следующих отправляемых на шифрование блоков открытого текста и так далее. Наличие обратной связи даёт атаке на основе адаптивно подобранного шифротекста преимущество перед всеми вышеперечисленными типами атак.
Допустим, что у криптоаналитика имеется временный доступ к дешифрующему средству или устройству. В таком случае за ограниченный промежуток времени криптоаналитик может получить из известных ему шифротекстов соответствующие им открытые тексты, после чего криптоаналитику нужно будет приступать к взлому системы. При осуществлении подобного типа атаки цель взлома — получить ключ шифрования.
Сжато сформулировать эту задачу можно таким образом:
Дано: С1, P1=Dk(С1), С2, P2=Dk(С2), С3, P3=Dk(С3), …, Сn, Pn=Dk(Сn),
где Сn — n-ый имеющийся шифротекст, Pn — соответствующий Сn открытый текст, а Dk — функция дешифрования при помощи ключа k.
Найти: используемый ключ шифрования k.
Интересным может быть тот факт, что атака на основе подобранного шифротекста также может носить название «Атаки в обеденное время» (lunchtime attack) или «Ночной атаки» (midnight attack). Скажем, в названии «Атаки в обеденное время» отражается тот факт, что легитимный пользователь может оставит свой компьютер с функцией дешифрования без присмотра на время обеда, а криптоаналитик может этим воспользоваться.
Вопреки своему названию атака на основе подобранного ключа не подразумевает под собой того, что криптоаналитик занимается простым перебором ключей в надежде найти нужный. Атака такого типа строится на том, что криптоаналитик может наблюдать за работой алгоритма шифрования, в котором используются несколько ключей. Криптоаналитик изначально ничего не знает о точном значении ключей, зато ему известно некоторое математическое отношение, связывающее между собой ключи. Примером тому может служить ситуация, когда криптоаналитик выяснил, что последние 80 битов у всех ключей одинаковы, хотя сами значения битов могут быть неизвестными.
Криптоаналитик может использовать так называемый «человеческий фактор», т.е. пытаться с помощью шантажа, подкупа, пыток или иных способов получить информацию о системе шифрования или даже сам ключ шифрования. Например, дача взятки, как одна из разновидностей бандитского криптоанализа, может носить название «Вскрытие с покупкой ключа». Таким образом методика вскрытия построена на слабости людей как составной части системы защиты информации.
Бандитский криптоанализ считается очень мощным способом взлома системы, а зачастую и наилучшим путём вскрытия шифров.
Tags: Криптографическая атака это, криптографическая атака.