Автор работы: Пользователь скрыл имя, 03 Февраля 2013 в 18:34, доклад
Первым документально зафиксированным в письменности шифром является шифр Цезаря, хотя существуют свидетельства о наличии простейших устройств шифрования и у древних греков в V—VI веках до нашей эры. Историки относят к шифрованным даже некоторые письмена еще более древних цивилизаций — Месопотамии и Египта, хотя в то время сам факт письменного изложения уже являлся барьером для большой части населения. В те времена использование своего, несоответствующего общепринятому, идеографического или слогового письма было почти 100% гарантией сохранности сообщения в секрете.
Асимметричные криптоалгоритмы были изначально разработаны как блочные. Теоретически возможно создание поточных асимметричных систем, но практическую ценность подобные схемы вряд ли имеют. Целью шифрования на открытом ключе является конфиденциальность некого определенного послания, поэтому этап накопления в буфере (а именно — в программах пересылки сообщений) и блочность структуры тут налицо. Общая схема классификаций шифров приведена на рисунке 7.
Рисунок
7. Общая схема классификации
Алгоритмы шифрования
Тайнопись
Шифрование с ключом
Симметричные
Асимметричные
Поточные шифры
Блочные шифры
5. Практическая стойкость шифров
Как было указано, абсолютная стойкость шифра достигается только в том случае, когда размер ключа равняется или превышает размер исходного текста. В этом случае, какой бы большой объем зашифрованного текста не перехватил злоумышленник, для него останется неизвестным, какой именно исходный текст был зашифрован, если он не владеет ключом шифрования.
Если же размер ключа меньше, чем объем исходного текста, то подобной непредсказуемости не остается из-за того, что любой национальный язык избыточен по своей структуре. Любой человек может практически сразу же сказать относительно небольшого отрывка текста, возможен (осмыслен) ли он для родного ему языка или нет.
Подобные же (хотя и гораздо более примитивные, чем человеческое мышление) алгоритмы-тесты есть в распоряжении дешифровальщиков. Ключ считается подобранным, если в результате дешифрования в послании получилась часть осмысленной фразы. Таким образом, любой шифр, у которого длина ключа меньше длины передаваемого текста, не является абсолютно стойким — его можно всегда вскрыть хотя бы полным перебором всех возможных ключей до появления в результате дешифрования осмысленной фразы. Здесь можно говорить только о практической стойкости шифра.
Практически стойким называется шифр, если не существует более результативных методов атаки на него, кроме как полным перебором всех возможных ключей (а она существует всегда). Каким видам атак должен противостоять стойкий шифр?
Атака на основе шифртекста — это попытка злоумышленника выяснить либо исходный текст, либо ключ шифрования по определенному (достаточно большому) объему зашифрованных данных. Злоумышленнику почти всегда больше всего хотелось бы, конечно, произвести успешную атаку на основе шифртекста, поскольку для нее не требуется никаких дополнительных действий. Но как раз за долгую историю развития криптографии разработчики научились делать шифры особенно стойкими к данному виду атаки.
Атака на основе известного открытого текста — ситуация, когда злоумышленник знает и исходный, и получившийся в ходе преобразований над ним зашифрованный текст, и хочет узнать ключ шифрования. Дело в том, что в реальной практике злоумышленник в 99% случаев знает какую-либо дополнительную информацию об исходном тексте. Если это файл определенного формата — то известна структура его заголовка и шаблон формирования, если это письмо — предположительно известно его начато ("здравствуйте", "добрый день") и конец ("с уважением" и т. д.), если это стандартный бланк в электронном виде (например, банковский платеж) — известны практически все поля, кроме нескольких.
В этом случае при успешной атаке злоумышленник на основе известных ему мест открытого текста и зашифрованного аналога получает ключ и декодирует сообщение целиком. Именно поэтому стойкость шифров к подобной атаке, т. е. невосстановимость относительно ключа, является столь же важной целью при их разработке, как и защита от первого типа атаки.
Атака на основе выбранного открытого текста является модификацией предыдущей атаки в том случае, когда злоумышленник, являясь, например, одним из равноправных, но недобросовестным пользователем системы, может навязывать службе шифрования, какую информацию необходимо передать по криптоканалу.
В этом
случае он формирует какое-либо сообщение
(корректное, но с необходимыми ему
характеристиками) и заставляет систему
шифрования произвести криптопреобразование.
Результат шифрования перехватывается,
на основе полученной информации делаются
какие-либо вычисления или предположения
и исходя из них, формируется очередное
сообщение для дальнейшего
Относительно любого конкретного алгоритма невозможно утверждать, что таких методов не существует. Однако, если в течение долгого периода (скажем, десяти лет) на какой-либо шифр не найдено ни одного способа взлома (а криптоаналитики всего мира постоянно занимаются исследованием и старых и современных алгоритмов), то он считается надежным шифром. Необходимо, правда, помнить, что в любой момент определенный шифр может покинуть семейство надежных шифров с открытием какой-либо новой математической теоремы или метода криптоанализа, и так было уже не раз.
Например, после доказательства Э. Берлекампом и Дж. Месси теоремы о том, что при перехвате 2xN бит шифрующей последовательности линейного регистра сдвига всегда можно восстановить его внутреннюю структуру, линейные регистры сдвига покинули класс надежных шифров и применяются только как составные элементы более сложных криптоалгоритмов. До сих пор не существует теории, позволяющей генерировать надежные на 100% практически стойкие шифры.
Итак, в отношении надежных шифров вырисовывается следующая картина: злоумышленник не может взломать шифр кроме как перебором всех ключей, а, следовательно, чем больше их множество, тем больше времени потребуется на их полный перебор. В этом смысле размер ключа (в случае насыщенного двоичного представления — логарифм по основанию 2 от количества возможных вариантов — log2A) является основной категорией вычислительной стойкости шифра. Самый хороший шифр с ключом длиной в 16 бит (65 536 вариантов ключа) будет взломан обычным домашним компьютером за несколько минут. На ключ длиной в 32 бита (4 млрд. вариантов) ему потребуются дни или недели, но шифр все же будет взломан.
Ключи в 60—80 бит могут быть взломаны только сетью мощных ЭВМ или же специализированными процессорами с параллельной обработкой, находящимися на вооружении государственных служб. Ключи длиной более 128 бит в современных надежных шифрах не взламываются полным перебором на современном уровне развития ЭВТ.
Рекомендованной длиной ключей,
применяемых в коммерческих целях,
считается ключ 192 бита, в государственных
— 256 бит. Запас сделан на несколько
десятков лет столь же бурного
экспоненциального роста