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

Потоковый шифр с длиной блока 64 бит в режиме гаммирования с обратной связью по выходу с размером синхропосылки 8 байт. Подробнее...

#include <gostcrypto.hpp>

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

 MagmaOfb_t (const MagmaOfb_t &)=default
 
MagmaOfb_toperator= (const MagmaOfb_t &)=default
 
 MagmaOfb_t (MagmaOfb_t &&)=default
 
MagmaOfb_toperator= (MagmaOfb_t &&)=default
 
 MagmaOfb_t (const uint8_t key[SYMMETRIC_KEY_SIZE], const uint8_t nonce[MAGMA_OFB_NONCE_SIZE]) noexcept
 Создать контекст потокового шифра. Подробнее...
 
 MagmaOfb_t (const std::array< uint8_t, SYMMETRIC_KEY_SIZE > &key, const std::array< uint8_t, MAGMA_OFB_NONCE_SIZE > &nonce) noexcept
 Создать контекст потокового шифра. Подробнее...
 
 ~MagmaOfb_t () noexcept
 
void apply_keystream (uint8_t *buf, uintptr_t buf_len) noexcept
 Гаммировать сообщение ключевым потоком шифра. Подробнее...
 
void apply_keystream (std::vector< uint8_t > &buf) noexcept
 Гаммировать сообщение ключевым потоком шифра. Подробнее...
 

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

Потоковый шифр с длиной блока 64 бит в режиме гаммирования с обратной связью по выходу с размером синхропосылки 8 байт.

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

См. также
MagmaOfb

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

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

MagmaOfb_t ( const MagmaOfb_t )
default
MagmaOfb_t ( MagmaOfb_t &&  )
default
MagmaOfb_t ( const uint8_t  key[SYMMETRIC_KEY_SIZE],
const uint8_t  nonce[MAGMA_OFB_NONCE_SIZE] 
)
inlinenoexcept

Создать контекст потокового шифра.

Создаёт контекст потокового шифра в режиме гаммирования с обратной связью по выходу с использованием ключа key и синхропосылки nonce.

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

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

MagmaOfb_t ( const std::array< uint8_t, SYMMETRIC_KEY_SIZE > &  key,
const std::array< uint8_t, MAGMA_OFB_NONCE_SIZE > &  nonce 
)
inlinenoexcept

Создать контекст потокового шифра.

Создаёт контекст потокового шифра в режиме гаммирования с обратной связью по выходу с использованием ключа key и синхропосылки nonce.

Аргументы
key— ключ
nonce— синхропосылка

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

~MagmaOfb_t ( )
inlinenoexcept

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

Методы

void apply_keystream ( uint8_t *  buf,
uintptr_t  buf_len 
)
inlinenoexcept

Гаммировать сообщение ключевым потоком шифра.

Шифрует или расшифровывает сообщение на месте посредством гаммирования его ключевым потоком шифра.

Предупреждения
Передача нулевого или некорректного указателя приводит к неопределённому поведению.
Аргументы
buf— ненулевой указатель на массив байт
buf_len— длина буфера (в байтах)

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

void apply_keystream ( std::vector< uint8_t > &  buf)
inlinenoexcept

Гаммировать сообщение ключевым потоком шифра.

Шифрует или расшифровывает сообщение на месте посредством гаммирования его ключевым потоком шифра.

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

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

MagmaOfb_t& operator= ( const MagmaOfb_t )
default
MagmaOfb_t& operator= ( MagmaOfb_t &&  )
default

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