
- •ГОСТ Р 34.11─2012
- •ГОСТ Р 34.11─2012. Термины и определения
- •ГОСТ Р 34.11─2012. Используемые обозначения
- •ГОСТ Р 34.11─2012. Используемые обозначения
- •ГОСТ Р 34.11─2012. Общие положения. Преобразования.
- •Подстановка байт
- •— переупорядочивание байт. Байты аргумента меняются местами по определённому в стандарте порядку
- •Умножения 64-битных векторов на матрицу 64×64
- •ГОСТ Р 34.11─2012
- •ГОСТ Р 34.11─2012
- •ГОСТ Р 34.11─2012
- •ГОСТ Р 34.11─2012
ГОСТ Р 34.11─2012
КРИПТОГРАФИЧЕСКАЯ ЗАЩИТА
ИНФОРМАЦИИ
Функция хэширования

ГОСТ Р 34.11─2012. Термины и определения
Заполнение (padding): приписывание дополнительных бит к строке бит.
Инициализационный вектор (initializing value): вектор, определенный как начальная точка работы функции хэширования.
Сообщение (message): строка бит ограниченной длины
Функция сжатия (round function): итеративно используемая функция, преобразующая строку бит длины L1 и полученную на предыдущем шаге строку бит длины L2 в строку бит длины L2.
Хэш-код (hash-code): строка бит, являющаяся выходным результатом хэш-функции.
|
|
|
|
|
|
|
1) по данному значению функции сложно вычислить |
|
хэш-функция |
(collision-resistant |
|||||
|
|
исходные данные, отображаемые в это значение; |
|||||
|
hash-function): |
|
Функция, |
|
|||
|
|
|
|
||||
|
|
|
|
||||
|
отображающая строки бит в строки |
|
2) для заданных исходных данных сложно вычислить |
||||
|
бит фиксированной |
длины и |
|
другие исходные данные, отображаемые в то же значение |
|||
|
удовлетворяющая |
|
следующим |
|
|
функции; ГОСТ Р 34.11-2012 |
|
|
|
|
|
|
|||
|
свойствам: |
|
|
|
|
|
|
|
|
|
|
|
|
3 ) сложно вычислить какую-либо пару исходных |
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
данных, отображаемых в одно и то же значение. |
|
|
|
|
|
|
|
|
[электронная цифровая] подпись (signature); ЭЦП: Строка бит, полученная в результате процесса формирования подписи.

ГОСТ Р 34.11─2012. Используемые обозначения

ГОСТ Р 34.11─2012. Используемые обозначения

ГОСТ Р 34.11─2012. Общие положения. Преобразования.
|
|
|
|
|
Данный стандарт определяет |
две функции хэширования |
H :V * Vn |
|
|
||
|
с длинами хэш-кода: |
|
|
|
n=256 бит |
|
|
|
n=512 бит. |
|
|
|
|
|
|
|
|
|
|
|
При вычислении хэш-кода H(M) сообщения M V * |
используются следующие |
|
|
преобразования: |
|
|
|
|
|
|

Подстановка байт
— нелинейная биекция. 512 бит аргумента рассматриваются как массив из 64 байт, каждый из которых заменяется по заданной стандартом таблице подстановки

— переупорядочивание байт. Байты аргумента меняются местами по определённому в стандарте порядку

Умножения 64-битных векторов на матрицу 64×64
в GF(2).
3)— линейное преобразование. Аргумент рассматривается как 8 64- битных векторов, каждый из которых заменяется результатом умножения на определённую стандартом матрицу 64 × 64 над GF(2).

ГОСТ Р 34.11─2012
Функция сжатия
Значение хэш-кода сообщения M V * вычисляется с использованием итерационной процедуры.
На каждой итерации вычисления хэш-кода используется функция сжатия:
значение которой вычисляется по формуле:
где

ГОСТ Р 34.11─2012
Процедура вычисления хэш-функции
Исходными данными для процедуры вычисления хэш-кода Н(М) является подлежащее хэшированию сообщение M V * и IV V512 – инициализационный вектор хэширования. Алгоритм вычисления функции Н состоит из следующих этапов.
Этап 1
Присвоить начальные значения текущих величин: