Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы на вопросы - 2011(Криптография).doc
Скачиваний:
2
Добавлен:
25.09.2019
Размер:
634.88 Кб
Скачать

1. Заполнение памяти.

Перебираются все значения k'=(k1,k2..kr), т.е первые r цикловых ключей. На каждом таком ключе k' зашифровываем открытый текст a - Ek' (a)=Ek1Ek2..Ekr(a)=S (т.е. проходим r циклов шифрования вместо h). Будем считать S неким адресом памяти и по этому адресу запишем значение k'. Необходимо перебрать все значения k'.

2. Определение ключа.

Перебираются все возможные k"=(kr+1,kr+2...kh). На получаемых ключах расшифровывается шифротекст b - E-1k"(b)=E-1kh..E-1kr+1(b)=S' . Если по адресу S' не пусто, то достаем оттуда ключ k' и получаем кандидат в ключи (k',k")=k.

Однако нужно заметить, что первый же полученный кандидат k не обязательно является истинным ключом. Да, для данных a и b выполняется Ek(a)=b, но на других значениях открытого текста a' шифротекста b', полученного из a' на истинном ключе, равенство может нарушаться. Все зависит от конкретных характеристик криптосистемы. Но иногда бывает достаточно получить такой "псевдоэквивалентный" ключ. В противном же случае после завершения процедур будет получено некое множество ключей {k',k"...}, среди которых находится истинный ключ.

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

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

  • атака «дней рождения» -метод взлома шифров или поиска коллизий хеш-функций на основе парадокса дней рождения.

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

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

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

Вопрос 7.

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

  • Electronic Codebook (ECB) Каждый блок открытого текста заменяется блоком шифротекста. В ГОСТ 28147—89 называется режимом простой замены.

где i — номера блоков, Ci и Pi — блоки зашифрованного и открытого соответственно, а Ek —функция блочного шифрования. Расшифровка аналогична:

Недостаток ECB, в сравнении c другими режимами шифрования — сохранение статических особенностей открытого текста:

  • 2 Cipher Block Chaining (CBC)

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

C0 = IV

где i — номера блоков, IV — вектор инициализации (синхропосылка), Ci и Pi — блоки зашифрованного и открытого текстов соответственно, а Ek — функция блочного шифрования. Расшифровка:

  • Cipher Feedback (CFB)

Режим обратной связи по шифротексту, режим гаммирования с обратной связью (англ. Cipher Feedback Mode, CFB). Для шифрования следующего блока открытого текста он складывается по модулю 2 с перешифрованным (блочным шифром) результатом шифрования предыдущего блока.

C0 = IV

  • Output Feedback (OFB)

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

Из-за симметрии операции сложения, шифрование и расшифрование похожи:

Oi = Ek(Oi − 1)

O0 = IV

  • Counter Mode (CTR)

Режим Счетчика (Counter Mode-CTR) предполагает возврат на вход соответствующего алгоритма блочного шифрования значения счетчика, накопленного с момента старта. Увеличивая значение счетчика, алгоритм блочного шифрования образует строку битов, которая используется в качестве бегущего ключа шифра Вернама, т.е. к бегущему ключу и блокам исходного сообщения применяются операции XOR. Режим CTR предусматривает следующие операции.[1]

Шифрование в режиме CTR

ВВОД: 

ВЫВОД: 

Расшифровка в режиме CTR

ВВОД: 

ВЫВОД: 

  •  — алгоритм шифрования с помощью соответствующего блочного шифра;

  •  – m последовательных сегментов исходного сообщения, подвергающегося обработке;

  • если m-й сегмент короче других сегментов, он дополняется до стандартной длины;

  • в некоторых режимах шифрования размер сегмента сообщения равен размеру блока, а в других режимах он может быть меньше;

  •  – m последовательных сегментов зашифрованного сообщения, являющегося результатом применения определенного режима шифрования.

При отсутствии обратной связи алгоритмы шифрования и расшифровки в режиме CTR могут выполняться параллельно. Это обеспечивает режиму CTR преимущество перед режимами Cipher Feedback (CFB) и Output Feedback (OFB).