Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
вопросы к экзамену Широков.docx
Скачиваний:
7
Добавлен:
12.09.2023
Размер:
2.45 Mб
Скачать

Режимы применения блочных шифров.

Настоящий стандарт определяет следующие режимы работы алгоритмов

блочного шифрования:

- режим простой замены (Electronic Codebook, ЕСВ);

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

Зашифрование. Открытый и, при необходимости, дополненный текст PeV |Р| = n q, разбивается на отдельные блоки и представляется в виде: Р = Р1ЦР2Ц...||Pq, P,eVn, i = 1, 2, q. Блоки шифр-текста вычисляются по следующему правилу:

Ре

Результирующий шифр-текст имеет вид

Зашифрование в режиме простой замены проиллюстрировано на рис. 74.

с

- режим гаммирования (Counter, CTR);

- режим гаммирования с обратной связью по выходу (Output Feedback, OFB);

- режим простой замены с зацеплением (Cipher Block Chaining, СВС);

- режим гаммирования с обратной связью по шифртексту (Cipher Feedback,

CFB);

- режим выработки имитовставки (Message Authentication Code algorithm).

Данные режимы могут использоваться в качестве режимов для блочных

шифров с произвольной длиной блока n.

Функции хеширования.

Функции хэширования играют главную роль в современной криптографии.

 

В настоящее время механизм хэш-функций используется на практике очень широко.

 

С помощью хэш-функций реализуют

1.   Проверку целостности данных (обнаружение изменений)

Идея заключается в сохранении хэш-кода и последующем сравнении с эталоном повторно вычисленного для тех же данных хэш-значения.

Очевидно, что неравенство сравниваемых величин означает нарушение целостности.

2.   Системы аутентификации

Используют хэширование паролей.

3.   Создание и проверку ЭЦП

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

 

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

1)     по заданному y = h( x) определить x (односторонняя функция h);

2)     для заданного x найти другое x´ , такое, что h(x)= h(x´) (свободная от коллизий функция h );

3)     найти пару x, x´ (xx´) , такую, что h(x)= h(x´) (строго свободная от коллизий функция h).

 

Обратим внимание, значение хэш-функции также называют

-         Хэш-код

-         Функция (значение) свертки

-         Профиль сообщения

-         Дайджест сообщения

-         Криптографическая контрольная сумма

-         Цифровой отпечаток

-         Код аутентичности сообщения

-     Код обнаружения манипуляций

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

1. На вход поступает k-битовый блок данных, где k < 264.

2. k-битовый блок дополняется так, чтобы его длина стала кратной 512 разрядам (данные обрабатываются 512-битовыми блоками). Структура дополнения следующая: 100...0 (от 1 до 512 бит).

3. К полученному результату добавляется 64-битовое представление длины исходного блока данных.

4. Инициализируются пять 32-разрядных переменных:

A = 0x67452301

B = 0xefcdab89

C = 0x98badcfe

D = 0x10325476

E = 0xc3d2e1f0

5. Производится обработка 512-битовых блоков данных в 4 раунда по 20 операций каждый.

На рисунке (см. в презентации к лекции) представлена схема одной операции SHA. Циклический сдвиг влево на s разрядов обозначен « s; Wt – подблок дополненного сообщения такой, что:

Wt = Mt (0 ≤ t ≤ 15), где Mt – 32-битовый блок данных

Wt = (Wt-3 ⊕ Wt-8 ⊕ Wt-14 ⊕ Wt-16) « 1 (16 ≤ t ≤ 79).

Соответствие аддитивных констант Kt и нелинейных функций Ft номеру операции представлено в таблице (см. презентацию к лекции).

6. Значения переменных a, b, c, d, e складываются, соответственно, с A, B, C, D, E.

7. Обрабатывается следующий блок данных.

8. Окончательный результат получается конкатенацией значений A, B, C, D, E.

На выходе получается 160-битовый хэш-код.

Потоковые шифры.

Модульная арифметика.

Алгоритмы вычисления набольшего общего делителя и возведения в степень.

Вычисление обратного элемента в кольце классов вычетов.

Функция Эйлера.

Функция Эйлера f (n) — мультипликативная арифметическая функция, равная количеству натуральных чисел, меньших n и взаимно простых с ним. При этом полагают, что число 1 взаимно просто со всеми натуральными числами, и y (1)=1. Например, для числа 24 существует 8 меньших него и взаимно простых с ним чисел (1, 5, 7, 11, 13, 17, 19, 23), поэтому y (24)=8.

То есть

Теорема Эйлера и малая теорема Ферма.

Формула Эйлера является основой криптосистемы RSA, которую мы рассмотрим в сле дующей главе. При этом составное число n называется параметром системы и не держится в секрете, а число φ(n) — составляет секрет. Для того чтобы воспользоваться формулой (2.10) необходимо решить задачу о факторизации числа n, т.е. произвести разложение (2.9), а эта задача не имеет эффективных алгоримов решения (наибыстрейшие алгоримы — алгоритм квадратичного решета и решета числового поля имеют субэкспоненциальную сложность). Таким образом криптостойкость шифра RSA обеспечивается отсутствием по линомиального алгоритма решения задачи о факторизации. 

Важный частный случай формулы Эйлера: n = p — простое число.

Соседние файлы в предмете Криптографические методы защиты информации