- •Содержание
- •Crypton v1.0
- •Алгоритм зашифрования
- •Алгоритм расшифрования
- •Алгоритм зашифрования
- •Алгоритм расшифрования
- •Loki 91 и 97.
- •Serpent
- •Звездова mars
- •Алгоритм зашифрования
- •Алгоритм расшифрования
- •Генерация раундовых подключей
- •Noekeon
- •Алгоритм зашифрования
- •Rijndael
- •Skipjack
- •Алгоритм зашифрования
- •Алгоритм расшифрования
- •TwoFish
- •Алгоритм зашифрования
- •Алгоритм расшифрования
- •Гост 28147-89
- •Blowfish
- •Camellia
- •Алгоритм зашифрования
- •6 Раундов
- •6 Раундов
- •6 Раундов
- •4. Режимы использования блочных шрифтов
- •2. Функции хеширования
- •2.1. Ключевые функции хеширования
- •2.2. Бесключевые функции хеширования
- •3 А. Схемы эцп с использованием дискретных логарифмов в простом конечном поле
- •Предисловие
- •Введение
- •1 Область применения
- •2 Нормативные ссылки
- •3 Термины, определения и обозначения
- •3.1 Термины и определения
- •3.2 Обозначения
- •4 Общие положения
- •5 Значения параметров
- •5.1 Инициализационные векторы
- •5.2 Нелинейное биективное преобразование множества двоичных векторов
- •5.3 Перестановка байт
- •6 Преобразования
- •Государственный Стандарт Российской Федерации
- •Введение
- •1 Область применения
- •2 Нормативные ссылки
- •3 Определения и обозначения
- •3.1 Определения
- •3.2 Обозначения
- •4. Общие положения
- •5. Математические соглашения
- •5.1. Математические определения
- •5.2. Параметры цифровой подписи
- •5.3. Двоичные векторы
- •6. Основные процессы
- •6.1. Формирование цифровой подписи
- •6.2. Проверка цифровой подписи
- •Приложение а (справочное) Дополнительные термины в области эцп
- •Приложение б (справочное) Контрольный пример
- •Б.2. Процесс формирования цифровой подписи (алгоритм I)
- •4.Датчики псевдослучайных последовательностей (чисел)
- •4.1. Алгоритм rc4
2.1. Ключевые функции хеширования
Ключевая хеш-функция может быть построена на основе алгоритма блочного шифрования. Пусть – функция зашифрования -битового блока под управлением секретного ключа . Тогда значение -битовой свертки ) может быть определено как
Данный способ вычисления хеш-значения в российском стандарте криптографической защиты данных ГОСТ 28147-89 называется режимом выработки имитовставки.
Ключевая хеш-функция может быть построена также на основе бесключевой хеш-функции . Секретный ключ , дополненный некоторым способом до размера, кратного длине блока , вставляется в начало и конец сообщения . Значение определяется как
.
Заметим, что ключ k непосредственно не пересылается, а присоединяется к только на время вычисления значения .
Другой способ вычисления хеш-значения определяется как
где .
2.2. Бесключевые функции хеширования
Бесключевую хеш-функцию можно построить, используя симметричный блочный шифр. Пусть – функция зашифрования -битовых блоков под управлением -битового ключа , а – сообщение, представленное в виде последовательности -битовых блоков ,,……,. Схема вычисления n-битового хеш-значения имеет следующий вид (см. рис.2):
.
где , , могут принимать значения , , или быть константами. Существует комбинации для выбора переменных , , , но установлено, что только комбинаций, перечисленных в таблице 1, приводят к безопасным хеш-функциям. Первые четыре из этих схем иллюстрируются на рис.3.
Рис.2. Обобщенная схема хеш-функции на основе блочного шифра с размером хеш‑значения, равным размеру блока
Таблица 1. Параметры схем безопасного хеширования (к рис.2)
Номер схемы |
|
|
|
Номер схемы |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Mi |
|
|
|
|
|
|
|
|
|
Для противодействия атакам на хеш-функцию необходимо, чтобы длина вырабатываемого хеш‑значения составляла по меньшей мере 128 битов. Увеличить размер хеш‑значения можно, используя, например, следующий прием:
Вычисляется ‑битовое хеш‑значение ).
Значение приписывается в начало сообщения и вычисляется новое хеш‑значение ).
Этап 2 повторяется для конкатенации и т.д.
В результате получается последовательность ‑битовых хеш‑значений, конкатенация которых дает хеш‑значение длины . Формально данная схема определяется как:
.
Из ‑битового значения можно извлечь хеш-значение требуемой длины , отбрасывая, например, последние битов. Другие способы увеличения длины хеш‑значения (в раза) представлены на рис.4, 5 (опущено).
3 А. Схемы эцп с использованием дискретных логарифмов в простом конечном поле
Алгоритмы цифровой подписи, формируемой на основе дискретных логарифмов, используют следующие параметры:
– большое простое число;
– большое простое число, являющееся делителем числа ;
,
где – любое число, для которого ,
,
где – случайное число.
Первые три параметра и открыты и могут быть общими для группы абонентов криптосети. Секретным ключом абонента, подписывающего сообщение , является , а открытым – . В алгоритме используется однонаправленная хеш-функция , с помощью которой вычисляется хеш‑значение ) подписываемого сообщения .
Подписью для сообщения служит пара чисел , вычисляемая следующим образом:
абонент, подписывающий сообщение , выбирает случайное число (число является секретным и одноразовым, после формирования подписи уничтожается и больше не используется);
вычисляется хеш‑значение для сообщения ;
вычисляется первая часть подписи:
вторая часть подписи – число – извлекается из обобщенного
уравнения подписи
Параметры могут принимать различные значения. Некоторые варианты представлены в табл.2.
При проверке подписи получатель должен убедиться в том, что выполняется следующее соотношение, называемое уравнением проверки:
.
В другой схеме, более приближенной к существующим стандартам цифровой подписи (например, в России и США), число определяется как
При том же уравнении подписи, уравнение проверки имеет следующий вид:
,
где , .
Таблица 2. Некоторые схемы цифровой подписи
с использованием дискретных логарифмов
Номер схемы |
Уравнение подписи |
Значение |
Уравнение проверки | |
| ||||
| ||||
| ||||
|
| |||
|
| |||
|
| |||
|
|
| ||
|
| |||
|
| |||
|
| |||
|
| |||
|
|
| ||
|
|
| ||
|
|
| ||
|
|
| ||
|
|
| ||
|
|
| ||
|
|
| ||
|
|
| ||
|
|
| ||
|
|
| ||
|
|
|
ГОСТ Р 34.11-2012
НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
Информационная технология |
КРИПТОГРАФИЧЕСКАЯ ЗАЩИТА ИНФОРМАЦИИ Функция хэширования Дата введения 01.01.2013 |
|
Information technology. Cryptographic data security. Hash function |