ГОСТ Р 34.13-2015. Национальный стандарт Российской Федерации. Информационная технология. Криптографическая защита информации. Режимы работы блочных шифров
2. Термины, определения и обозначения
2.1. Термины и определения
В настоящем стандарте применены следующие термины с соответствующими определениями.
2.1.1
алгоритм зашифрования (encryption algorithm): Алгоритм, реализующий зашифрование, т.е. преобразующий открытый текст в шифртекст. [ИСО/МЭК 18033-1, статья 2.19] |
2.1.2
алгоритм расшифрования (decryption algorithm): Алгоритм, реализующий расшифрование, т.е. преобразующий шифртекст в открытый текст. [ИСО/МЭК 18033-1, статья 2.14] |
2.1.3
базовый блочный шифр (basic block cipher): Блочный шифр, реализующий при каждом фиксированном значении ключа одно обратимое отображение множества блоков открытого текста фиксированной длины в блоки шифртекста такой же длины. |
2.1.4
блок (block): Строка бит определенной длины. [ИСО/МЭК 18033-1, статья 2.6] |
2.1.5
блочный шифр (block cipher): Шифр из класса симметричных криптографических методов, в котором алгоритм зашифрования применяется к блокам открытого текста для получения блоков шифртекста. [ИСО/МЭК 18033-1, статья 2.7] |
Примечание - В настоящем стандарте установлено, что термины "блочный шифр" и "алгоритм блочного шифрования" являются синонимами.
2.1.6
дополнение (padding): Приписывание дополнительных бит к строке бит. [ИСО/МЭК 10118-1, статья 3.9] |
2.1.7
зацепление блоков (block chaining): Шифрование информации таким образом, что каждый блок шифртекста криптографически зависит от предыдущего блока шифртекста. [ИСО/МЭК 10116, статья 3.1] |
2.1.8
зашифрование (encryption): Обратимое преобразование данных с помощью шифра, который формирует шифртекст из открытого текста. [ИСО/МЭК 18033-1, статья 2.18] |
2.1.9
имитовставка (message authentication code): Строка бит фиксированной длины, полученная применением симметричного криптографического метода к сообщению, добавляемая к сообщению для обеспечения его целостности и аутентификации источника данных. [ИСО/МЭК 9797-1, статьи 3.9, 3.10] |
2.1.10
ключ (key): Изменяемый параметр в виде последовательности символов, определяющий криптографическое преобразование. [ИСО/МЭК 18033-1, статья 2.21] |
Примечание - В настоящем стандарте рассматриваются ключи только в виде последовательности двоичных символов (битов).
2.1.11
начальное значение (starting variable): Значение, возможно, полученное из синхропосылки и используемое для задания начальной точки режима работы блочного шифра. [ИСО/МЭК 10116, статья 3.12] |
2.1.12
открытый текст (plaintext): Незашифрованная информация. [ИСО/МЭК 10116, статья 3.11] |
2.1.13
расшифрование (decryption): Операция, обратная к зашифрованию. [ИСО/МЭК 18033-1, статья 2.13] |
Примечание - В настоящем стандарте в целях сохранения терминологической преемственности по отношению к опубликованным научно-техническим изданиям применяется термин "шифрование", объединяющий операции, определенные терминами "зашифрование" и "расшифрование". Конкретное значение термина "шифрование" определяется в зависимости от контекста упоминания.
2.1.14
симметричный криптографический метод (symmetric cryptographic technique): Криптографический метод, использующий один и тот же ключ для преобразования, осуществляемого отправителем, и преобразования, осуществляемого получателем. [ИСО/МЭК 18033-1, статья 2.32] |
2.1.15
синхропосылка (initializing value): Комбинация знаков, передаваемая по каналу связи и предназначенная для инициализации алгоритма шифрования. |
2.1.16
сообщение (message): Строка бит произвольной конечной длины. [ИСО/МЭК 14888-1 статья 3.10] |
2.1.17
счетчик (counter): Строка бит длины, равной длине блока блочного шифра, используемая при шифровании в режиме гаммирования. [ИСО/МЭК 10116, статья 3.4] |
2.1.18
шифр (cipher): Криптографический метод, используемый для обеспечения конфиденциальности данных, включающий алгоритм зашифрования и алгоритм расшифрования. [ИСО/МЭК 18033-1, статья 2.20] |
2.1.19
шифртекст (ciphertext): Данные, полученные в результате зашифрования открытого текста с целью скрытия его содержания. [ИСО/МЭК 10116, статья 3.3] |
2.2. Обозначения
В настоящем стандарте используются следующие обозначения:
V* - множество всех двоичных строк конечной длины, включая пустую строку;
Vs - множество всех двоичных строк длины s, где s - целое неотрицательное число; нумерация подстрок и компонент строки осуществляется справа налево начиная с нуля;
|A| - число компонент (длина) строки (если A - пустая строка, то |A| = 0);
A||B - конкатенация строк , т.е. строка из V|A|+|B|, в которой подстрока с большими номерами компонент из V|A| совпадает со строкой A, а подстрока с меньшими номерами компонент из V|B| совпадает со строкой B;
0r - строка, состоящая из r нулей;
- операция покомпонентного сложения по модулю 2 двух двоичных строк одинаковой длины;
- кольцо вычетов по модулю 2s;
- операция сложения в кольце
;
- операция вычисления остатка от деления целого числа x на целое положительное число
;
- отображение, ставящее в соответствие строке
zm-1 ... ||z1||z0, m >= s, строку zm-1||...||zm-s+1||zm-s,
, i = 0, 1, ..., m - 1;
- отображение, ставящее в соответствие строке
zm-1 ... ||z1||z0, m >= s, строку zs-1||...||z1||z0,
, i = 0, 1, ..., m - 1;
- операция логического сдвига строки A на r компонент в сторону компонент, имеющих большие номера.
Если , то
, причем
- отображение, ставящее в соответствие строке
многочлен
;
- биективное отображение, сопоставляющее элементу кольца
его двоичное представление, т.е. для любого элемента
, представленного
в виде z = z0 + 2·z1 + ... + 2s-1·zs-1,
где , i = 0, 1, ..., s - 1, выполнено равенство
Vecs(z) = zs-1||...||z1||z0;
- отображение, обратное к отображению Vecs, т.е.
lnts = Vecs-1;
k - параметр алгоритма блочного шифрования, называемый длиной ключа;
n - параметр алгоритма блочного шифрования, называемый длиной блока;
- отображение, реализующее базовый алгоритм блочного шифрования и осуществляющее преобразование блока открытого текста
с использованием ключа (шифрования)
в блок шифртекста
;
- отображение, реализующее зашифрование с использованием ключа
, т.е. eK(P) = E(P,K) для всех
;
- отображение, реализующее расшифрование с использованием ключа
, т.е. dK = eK-1.
