Оценка качества шифра (на основе некоторого шифрованного текста) должна проводиться при условии, что о данном шифре известно все, кроме использованного ключа.
Правило Кирхгофа гласит, что стойкость шифра (криптосистемы) обеспечивается секретностью ключа, а не секретностью алгоритма шифрования.
Такой подход отражает очень важный принцип технологии защиты информации: защищенность системы не должна зависеть от секретности чего-либо такого, что невозможно быстро изменить в случае утечки секретной информации.
Стойкость криптографического алгоритма необходимо рассматривать относительно пары «атака-цель»
Классификация различных типов атак на криптографические алгоритмы:
· атака с известным шифртекстом (ciphertext-only attack).
· атака с известным открытым текстом (known plaintext attack).
· простая атака с выбором открытого текста (chosen-plaintext attack).
· адаптивная атака с выбором открытого текста (adaptive-chosen-plaintext attack).
· атака с выбором шифртекста (chosen-ciphertext attack).
· атака с выбором ключа (chosen-key attack). иногда Называется силовой атакой.
Для того чтобы алгоритм считался абсолютно стойким (по Шеннону), он должен удовлетворять следующим условиям:
· длина ключа и длина открытого сообщения должны быть одинаковы;
· ключ должен использоваться только один раз;
· выбор ключа из ключевого пространства должен осуществляться равновероятно.
Единственным таким шифром является какая-нибудь форма так называемой ленты однократного использования, в которой открытый текст «объединяется» с полностью случайным ключом такой же длины.
Рассмотрим самые распространенные на сегодняшний день причины осуществления успешных атак на алгоритмы шифрования:
· наличие статистической структуры исторически сложившихся языков.
· наличие вероятных слов.
Следует учесть, что существует ряд методов, позволяющий сделать зашифрованные сообщения практически непригодными для статистического анализа и анализа посредством вероятных слов.
При построении стойких шифров необходимо использовать два основных принципа – рассеивание и перемешивание.
Рассеивание предполагает распространение влияния одного знака открытого текста на множество знаков шифротекста, что позволяет скрыть статистические свойства открытого текста.
Перемешивание предполагает использование таких шифрующих преобразований, которые усложняют восстановление взаимосвязи статистических свойств открытого и шифротекста.
Развитием принципа рассеивания стал принцип запутывания, в котором влияние одного символа ключа распространяется на множество символов зашифрованного сообщения.
Наиболее часто при этом используют традиционные шифры перестановки и замены.
При многократном чередовании простых перестановок и замен, управляемых достаточно длинным секретным ключом, можно получить очень стойкий шифр с хорошим рассеиванием и перемешиванием.
Большинство существующих стандартов шифрования построены в полном соответствии с данной методологией
КЛАССИФИКАЦИЯ МЕТОДОВ КРИПТОГРАФИЧЕСКОГО ПРЕОБРАЗОВАНИЯ ИНФОРМАЦИИ
Классификация методов шифрования (криптоалгоритмов):
1. По типу ключей:
а) симметричные криптоалгоритмы;
б) асимметричные криптоалгоритмы;
2. По способу преобразования:
а) методы замены;
б) методы перестановки;
б) аналитические методы;
в) шифры гаммирования;
г) комбинированные методы.
Под симметричными криптографическими системами понимаются такие криптосистемы, в которых для шифрования и дешифрования используется один и тот же ключ, хранящийся в секрете.
Криптографический алгоритм является симметричным, если для шифрования и дешифрования используется один и тот же ключ, который является закрытым.
Основным недостатком симметричного шифрования является то, что секретный ключ должен быть известен и отправителю, и получателю.
В ассиметричных криптосистемах (с открытым ключом) для зашифровки используется один ключ, а для расшифровки – другой ключ. Первый ключ является открытым и может быть опубликован для использования всеми пользователями системы. Для дешифровки получатель информации использует секретный ключ.
Симметричные алгоритмы можно разделить по размеру блока информации:
а) потоковые шифры;
б) блочные шифры;
в) составные.
Поточные шифры – за один раз обрабатывается один элемент данных (бит или буква).
Блочные шифры – за один шаг обрабатывается группа элементов данных. (например, 64 бит).
Блочные шифры – один блок открытого текста заменяется одним блоком закрытого текста.
Шифры перестановки – изменяют только порядок следования символов или других элементов исходного текста.
При шифровании перестановкой символы шифруемого текста переставляются по определенному правилу в пределах блока этого текста.
При шифровании заменой символы шифруемого текста заменяются символами того же или другого алфавита с заранее установленным правилом замены.
Шифрование гаммированием заключается в том, что символы шифруемого текста складываются с символами некоторой случайной последовательности, именуемой гаммой шифра.
Стойкость шифрования определяется в основном длиной (периодом) неповторяющейся части гаммы шифра. Поскольку с помощью ЭВМ можно генерировать практически бесконечную гамму шифра, то данный способ является одним из основных для шифрования информации в автоматизированных системах.
Шифрование аналитическим преобразованием заключается в том, что шифруемый текст преобразуется по некоторому аналитическому правилу (формуле).
Например, можно использовать правило умножения вектора на матрицу, причем умножаемая матрица является ключом шифрования (поэтому ее размер и содержание должны храниться в секрете), а символами умножаемого вектора последовательно служат символы шифруемого текста.
К шифрам, используемым для криптографической защиты информации, предъявляется ряд требований: