Здавалка
Главная | Обратная связь

Краткие теоретические сведения



Основы криптографии и криптоанализа

 

Большинство средств защиты информации базируется на использовании криптографических шифров и процедур шифрования - расшифрования.

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

Криптография – обеспечивает сокрытие смысла сообщения с помощью шифрования и открытие его расшифрованием, которые выполняются по специальным алгоритмам с помощью ключей (название образовано от греческих слов crypto – шифрую и graf - пишу).

Криптоанализ – занимается вскрытием шифра без знания ключа (проверка устойчивости шифра).

Криптология – наука, состоящая из двух ветвей: криптографии и криптоанализа.

Процедура преобразования исходного сообщения (называемого открытым текстом) к нечитабельному виду называется шифрованием, Сам преобразованный текст называется шифрограммой. Получение открытых данных по зашифрованным без знания алгоритма расшифрования называется дешифрованием.

В соответствии со стандартом ГОСТ 28147-89 под шифром понимают совокупность обратимых преобразований множества открытых данных на множество зашифрованных данных, задаваемых ключом и алгоритмом преобразования.

Как видно из определения, в шифре можно выделить два основных элемента – это ключ и алгоритм.

Ключ – конкретное секретное состояние некоторых параметров алгоритма криптографического преобразования данных, обеспечивающее выбор только одного варианта из всех возможных для данного алгоритма.

Алгоритм (функция, уравнение) шифрования – соотношение, описывающее процесс образования зашифрованных данных из открытых.

В криптографии используются следующие основные алгоритмы шифрования:

· алгоритм замены (подстановки) – символы шифруемого текста заменяются символами того же или другого алфавита в соответствии с заранее обусловленной схемой замены;

· алгоритм перестановки – символы шифруемого текста переставляются по определенному правилу в пределах некоторого блока этого текста;

· гаммирование – символы шифруемого текста складываются с символами некоторой случайной последовательности;

· аналитическое преобразование – преобразование шифруемого текста по некоторому аналитическому правилу (формуле).

Сам шифр или принцип шифрования стали считать известными противнику и доступными для предварительного изучения. Противнику неизвестен ключ, от которого существенно зависят применяемые преобразования информации. Задача противника – определить ключ, после чего можно легко прочитать зашифрованные на этом ключе сообщения.

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

Таким образом, криптостойкость – это характеристика шифра, определяющая ее стойкость к дешифрованию.

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

Одной из возможных атак на алгоритм шифрования является лобовая атака, т.е. простой перебор всех возможных ключей. Если множество ключей достаточно большое, то подобрать ключ нереально. При длине ключа n бит количество возможных ключей равно 2n. Таким образом, чем длиннее ключ, тем более стойким считается алгоритм для лобовой атаки.

Если противник располагает открытым текстом и соответствующим ему зашифрованным текстом, он может получить ключ и попробовать применить его к другим зашифрованным текстам. Этот метод называется крипто-анализом с известным открытым текстом. Для того, чтобы получить пару «открытый текст — зашифрованный текст» против­ник может вынудить отправителя сообщения зашифровать определенную информацию (например, в истории разведки не раз применялся прием, когда с этой целью нарочно ор­ганизовывалась утечка информации).

При анализе зашифрованного текста противник часто применяет статистические методы анализа текста.

Кроме того, противник может делать предположе­ния о словах, которые могут встречаться в тексте исходного сообщения (особенно про­дуктивны попытки угадать первое слово), и, пробуя эти слова, вычислять фрагменты воз­можного ключа.

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

Считается, что криптографическая схема вычислительно безопасна, если:

1. Цена расшифровки сообщения больше цены самого сообщения.

2. Время, необходимое для расшифровки сообщения, больше срока жизни сообщения.

Процессы шифрования и расшифрования осуществляются в рамках некоторой криптосистемы.

Криптографическая система — это система обеспечения информационной безопас­ности сети или АИС, использующая криптографические средства.

По алгоритму шифрования криптосистемы делятся на две большие группы: симметричные(традиционнное шифрование) и асимметричные (шифрование с открытым ключом).

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

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

В правительственных и военных системах связи используют лишь симметричные алгоритмы, так как нет строго математического обоснования стойкости систем с открытыми ключами, как, впрочем, не доказано и обратное.

По размеру обрабатываемых блоков в процессе шифрования все криптосистемы разделяются на две группы: поточные и блочные.

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

Обычно используется "исключающее ИЛИ", называемое также сложением по модулю 2 и реализуемое в ассемблерных программах командой XOR. Для расшифровывания та же гамма накладывается на зашифрованные данные.

Как правило, используют гамму, получаемую с помощью генератора псевдослучайных чисел (ПСЧ).

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







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.