Анализ стойкости алгоритмов

Анализ стойкости алгоритмов Криптография

Несмотря на многовековую историю криптографии и криптоанализа, до сих пор не существует математического аппарата, позволяющего доказать, что ключ шифрования определенного алгоритма невозможно найти более эффективно, чем полным перебором ключевого пространства. Скорее всего, такой математический аппарат не будет разработан и в обозримом будущем. Однако прежде чем использовать любой криптографический алгоритм, необходимо получить подтверждение его надежности.

Читайте: Как заработать на инвестициях в искусственный интеллект? Краудфандинг Daisy от компании EndoTech. Обзор и отзывы о смарт-контракте

Алгоритмы шифрования с открытым ключом, как правило, позволяют свести задачу взлома шифра к хорошо известной математической проблеме, такой как разложение большого числа на простые сомножители или вычисление дискретного логарифма в конечном поле. Пока математическая проблема не имеет эффективного решения, алгоритм будет оставаться стойким. Как только эффективное решение будет найдено, стойкость всех криптографических алгоритмов и протоколов, использующих данную математическую проблему, резко снизится. Так что разработчикам и пользователям криптосистем, основанных на математической проблеме, остается лишь надеяться, что эффективное решение не существует или никогда не будет найдено. К их счастью, значительных предпосылок к близкому прорыву в этих областях математики пока нет.

Для симметричной криптографии автор алгоритма может привести соображения, которыми он руководствоватся при разработке шифра, но этого явно недостаточно. Требуется некая процедура, если не гарантирующая стойкость, то хотя бы дающая высокую степень уверенности, что алгоритм не будет взломан злоумышленником.

На настоящий момент основным методом проверки криптографической стойкости алгоритмов является экспертная оценка. Новый алгоритм открыто публикуется, и все желающие получают возможность попытаться найти в нем слабые места. Если кому-то из криптоаналитиков удается обнаружить серьезные недостатки, алгоритм отправляется в мусорную корзину. Если же на протяжении значительного периода времени (обычно нескольких лет) никому не удалось отыскать уязвимости в алгоритме, то он может занять почетное место среди других алгоритмов шифрования, рекомендуемых к применению на практике. Именно так проводятся сейчас конкурсы на выбор алгоритма для национального стандарта шифрования.
Проверить надежность нового алгоритма без привлечения криптографической общественности под силу разве что таким организациям, как АНБ. А любой другой разработчик, желающий сохранить алгоритм в тайне, может оказаться в ситуации, когда через некоторое время используемый алгоритм перестает быть секретным и вскоре появляется эффективный метод его вскрытия. Именно поэтому современная криптография, в большинстве случаев, является открытой — вероятность взлома хорошо исследованного алгоритма значительно ниже, чем алгоритма, державшегося долгое время в секрете.

Оцените статью
Добавить комментарий