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

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

#include <gostcrypto.hpp>

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

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

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

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

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

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

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

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

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

Streebog512_t ( const Streebog512_t )
default
Streebog512_t ( Streebog512_t &&  )
default
Streebog512_t ( )
inlinenoexcept

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

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

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

~Streebog512_t ( )
inlinenoexcept

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

Методы

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

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

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

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

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

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

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

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

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

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

void finalize ( uint8_t  res[STREEBOG512_RESULT_SIZE]) const
inlinenoexcept

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

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

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

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

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

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

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

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

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

void finalize_reset ( uint8_t  res[STREEBOG512_RESULT_SIZE])
inlinenoexcept

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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