GostCrypto  0.2.0
Криптография, реализованная в соответствии с ГОСТ
 Указатель Структуры данных Файлы Функции Определения типов Перечисления Элементы перечислений Друзья Макросы
Класс MagmaMac_t

Режим выработки имитовставки с использованием шифра с длиной блока 64 бит. Подробнее...

#include <gostcrypto.hpp>

Открытые члены

 MagmaMac_t (const MagmaMac_t &)=default
 
MagmaMac_toperator= (const MagmaMac_t &)=default
 
 MagmaMac_t (MagmaMac_t &&)=default
 
MagmaMac_toperator= (MagmaMac_t &&)=default
 
 MagmaMac_t (const uint8_t key[SYMMETRIC_KEY_SIZE]) noexcept
 Создать состояние режима выработки имитовставки. Подробнее...
 
 MagmaMac_t (const std::array< uint8_t, SYMMETRIC_KEY_SIZE > &key) noexcept
 Создать состояние режима выработки имитовставки. Подробнее...
 
 ~MagmaMac_t () noexcept
 
void update (const uint8_t *msg, uintptr_t len) noexcept
 Обновить состояние режиму выработки имитовставки. Подробнее...
 
void update (const std::vector< uint8_t > &message) noexcept
 Обновить состояние режиму выработки имитовставки. Подробнее...
 
void finalize (uint8_t res[MAGMA_MAC_RESULT_SIZE]) const noexcept
 Финализировать состояние режима выработки имитовставки. Подробнее...
 
std::array< uint8_t,
MAGMA_MAC_RESULT_SIZE
finalize () const noexcept
 Финализировать состояние режима выработки имитовставки. Подробнее...
 
void finalize_reset (uint8_t res[MAGMA_MAC_RESULT_SIZE]) noexcept
 Финализировать состояние режима выработки имитовставки и заменить его новым. Подробнее...
 
std::array< uint8_t,
MAGMA_MAC_RESULT_SIZE
finalize_reset () noexcept
 Финализировать состояние режима выработки имитовставки и заменить его новым. Подробнее...
 
bool verify (const uint8_t code[MAGMA_MAC_RESULT_SIZE]) const noexcept
 Проверить целостность данных. Подробнее...
 
bool verify (const std::array< uint8_t, MAGMA_MAC_RESULT_SIZE > &code) const noexcept
 Проверить целостность данных. Подробнее...
 
void reset () noexcept
 Сбросить состояние режима выработки имитовставки. Подробнее...
 

Подробное описание

Режим выработки имитовставки с использованием шифра с длиной блока 64 бит.

Определен в ГОСТ 34.13-2015 и ГОСТ 34.13-2018.

См. также
MagmaMac

См. определение в файле gostcrypto.hpp строка 1966

Конструктор(ы)

MagmaMac_t ( const MagmaMac_t )
default
MagmaMac_t ( MagmaMac_t &&  )
default
MagmaMac_t ( const uint8_t  key[SYMMETRIC_KEY_SIZE])
inlineexplicitnoexcept

Создать состояние режима выработки имитовставки.

Создаёт новое состояние режима выработки имитовставки с использованием ключа key.

Аргументы
key— ненулевой указатель на массив длинной SYMMETRIC_KEY_SIZE байт

См. определение в файле gostcrypto.hpp строка 1981

MagmaMac_t ( const std::array< uint8_t, SYMMETRIC_KEY_SIZE > &  key)
inlineexplicitnoexcept

Создать состояние режима выработки имитовставки.

Создаёт новое состояние режима выработки имитовставки с использованием ключа key.

Аргументы
key— ключ

См. определение в файле gostcrypto.hpp строка 1994

~MagmaMac_t ( )
inlinenoexcept

См. определение в файле gostcrypto.hpp строка 2000

Методы

void finalize ( uint8_t  res[MAGMA_MAC_RESULT_SIZE]) const
inlinenoexcept

Финализировать состояние режима выработки имитовставки.

Финализирует состояние режима выработки имитовставки и копирует результирующую имитовставку в массив res.

Предупреждения
Передача нулевого или некорректного указателя приводит к неопределённому поведению.
Аргументы
res— массив длиной не менее чем MAGMA_MAC_RESULT_SIZE байт

См. определение в файле gostcrypto.hpp строка 2042

std::array<uint8_t, MAGMA_MAC_RESULT_SIZE> finalize ( ) const
inlinenoexcept

Финализировать состояние режима выработки имитовставки.

Финализирует состояние режима выработки имитовставки и возвращает результирующую имитовставку.

Возвращает
— имитовставка

См. определение в файле gostcrypto.hpp строка 2055

void finalize_reset ( uint8_t  res[MAGMA_MAC_RESULT_SIZE])
inlinenoexcept

Финализировать состояние режима выработки имитовставки и заменить его новым.

Финализирует состояние режима выработки имитовставки и копирует результирующую имитовставку в массив res. Заменяет существующее состояние на новое.

Предупреждения
Передача нулевого или некорректного указателя приводит к неопределённому поведению.
Аргументы
res— массив длиной не менее чем MAGMA_MAC_RESULT_SIZE байт

См. определение в файле gostcrypto.hpp строка 2073

std::array<uint8_t, MAGMA_MAC_RESULT_SIZE> finalize_reset ( )
inlinenoexcept

Финализировать состояние режима выработки имитовставки и заменить его новым.

Финализирует состояние режима выработки имитовставки и возвращает результирующую имитовставку. Заменяет существующий состояние на новое.

Возвращает
— имитовставка

См. определение в файле gostcrypto.hpp строка 2086

MagmaMac_t& operator= ( const MagmaMac_t )
default
MagmaMac_t& operator= ( MagmaMac_t &&  )
default
void reset ( )
inlinenoexcept

Сбросить состояние режима выработки имитовставки.

Заменяет состояние режима выработки имитовставки новым состоянием.

См. определение в файле gostcrypto.hpp строка 2128

void update ( const uint8_t *  msg,
uintptr_t  len 
)
inlinenoexcept

Обновить состояние режиму выработки имитовставки.

Скармливает сообщение режиму выработки имитовставки, обновляя его состояние.

Предупреждения
Передача нулевого или некорректного указателя приводит к неопределённому поведению.
Аргументы
msg— ненулевой указатель на массив байт
len— длина сообщения в байтах

См. определение в файле gostcrypto.hpp строка 2015

void update ( const std::vector< uint8_t > &  message)
inlinenoexcept

Обновить состояние режиму выработки имитовставки.

Скармливает сообщение режиму выработки имитовставки, обновляя его состояние.

Аргументы
message— сообщение

См. определение в файле gostcrypto.hpp строка 2027

bool verify ( const uint8_t  code[MAGMA_MAC_RESULT_SIZE]) const
inlinenoexcept

Проверить целостность данных.

Проверяет соответствие данных, скормленных режиму выработки имитовставки, данной имитовставке.

Предупреждения
Передача нулевого или некорректного указателя приводит к неопределённому поведению.
Аргументы
code— массив байт длиной MAGMA_MAC_RESULT_SIZE
Возвращает
true, в случае соответствия, false в случае несоответствия

См. определение в файле gostcrypto.hpp строка 2104

bool verify ( const std::array< uint8_t, MAGMA_MAC_RESULT_SIZE > &  code) const
inlinenoexcept

Проверить целостность данных.

Проверяет соответствие данных, скормленных режиму выработки имитовставки, данной имитовставке.

Аргументы
code— имитовставка
Возвращает
true, в случае соответствия, false в случае несоответствия

См. определение в файле gostcrypto.hpp строка 2118


Объявления и описания членов класса находятся в файле: