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

Функция хэширования с длиной хэш-кода 256 бит. Подробнее...

#include <gostcrypto.hpp>

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

 Streebog256_t (const Streebog256_t &)=default
 
Streebog256_toperator= (const Streebog256_t &)=default
 
 Streebog256_t (Streebog256_t &&)=default
 
Streebog256_toperator= (Streebog256_t &&)=default
 
 Streebog256_t () noexcept
 Создать состояние функции хэширования. Подробнее...
 
 ~Streebog256_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[STREEBOG256_RESULT_SIZE]) const noexcept
 Финализировать состояние функции хэширования. Подробнее...
 
std::array< uint8_t,
STREEBOG256_RESULT_SIZE
finalize () const noexcept
 Финализировать состояние функции хэширования. Подробнее...
 
void finalize_reset (uint8_t res[STREEBOG256_RESULT_SIZE]) noexcept
 Финализировать состояние функции хэширования и заменить его новым. Подробнее...
 
std::array< uint8_t,
STREEBOG256_RESULT_SIZE
finalize_reset () noexcept
 Финализировать состояние функции хэширования и заменить его новым. Подробнее...
 
void reset () noexcept
 Сбросить состояние функции хэширования. Подробнее...
 

Открытые статические члены

static void digest (const uint8_t *msg, uintptr_t len, uint8_t res[STREEBOG256_RESULT_SIZE]) noexcept
 Хэшировать сообщение. Подробнее...
 
static std::array< uint8_t,
STREEBOG256_RESULT_SIZE
digest (const uint8_t *msg, uintptr_t len) noexcept
 Хэшировать сообщение. Подробнее...
 

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

Функция хэширования с длиной хэш-кода 256 бит.

Определена в ГОСТ Р 34.11-2012 (Стрибог) и ГОСТ 34.11-2018.

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

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

Streebog256_t ( const Streebog256_t )
default
Streebog256_t ( Streebog256_t &&  )
default
Streebog256_t ( )
inlinenoexcept

Создать состояние функции хэширования.

Создаёт новое состояние функции хэширования.

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

~Streebog256_t ( )
inlinenoexcept

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

Методы

static void digest ( const uint8_t *  msg,
uintptr_t  len,
uint8_t  res[STREEBOG256_RESULT_SIZE] 
)
inlinestaticnoexcept

Хэшировать сообщение.

Хэширует массив данных msg и копирует результирующий хэш в res.

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

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

static std::array<uint8_t, STREEBOG256_RESULT_SIZE> digest ( const uint8_t *  msg,
uintptr_t  len 
)
inlinestaticnoexcept

Хэшировать сообщение.

Хэширует массив данных msg и возвращает хэш.

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

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

void finalize ( uint8_t  res[STREEBOG256_RESULT_SIZE]) const
inlinenoexcept

Финализировать состояние функции хэширования.

Финализирует состояние функции хэширования и копирует результирующий хэш в res.

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

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

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

Финализировать состояние функции хэширования.

Финализирует состояние функции хэширования и возвращает хэш.

Возвращает
финализированный массив

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

void finalize_reset ( uint8_t  res[STREEBOG256_RESULT_SIZE])
inlinenoexcept

Финализировать состояние функции хэширования и заменить его новым.

Финализирует состояние функции хэширования и копирует результирующий хэш в res. Заменяет существующий состояние на новый.

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

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

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

Финализировать состояние функции хэширования и заменить его новым.

Финализирует состояние функции хэширования и возвращает хэш. Заменяет существующий состояние на новый.

Возвращает
— финализированный массив

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

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

Сбросить состояние функции хэширования.

Заменяет состояние функции хэширования новым состоянием.

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

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

Обновить состояние функции хэширования.

Скармливает сообщение функции хэширования, обновляя её состояние.

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

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

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

Обновить состояние функции хэширования.

Скармливает сообщение функции хэширования, обновляя её состояние.

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

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


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