digestpp 1.0
C++11 header-only message digest library
Loading...
Searching...
No Matches
digestpp::detail Namespace Reference

Namespaces

namespace  blake2_functions
 
namespace  blake_functions
 
namespace  echo_functions
 
namespace  esch_functions
 
namespace  groestl_functions
 
namespace  jh_functions
 
namespace  kmac_functions
 
namespace  kupyna_functions
 
namespace  lsh_functions
 
namespace  md5_functions
 
namespace  sha1_functions
 
namespace  sha2_functions
 
namespace  sha3_functions
 
namespace  shake_functions
 
namespace  sm3_functions
 
namespace  streebog_functions
 
namespace  whirlpool_functions
 

Classes

struct  ascon_constants
 
class  ascon_provider
 
struct  blake2_constants
 
class  blake2_provider
 
struct  blake2b_constants
 
class  blake2p_provider
 
struct  blake2s_constants
 
struct  blake_constants
 
class  blake_provider
 
struct  echo_constants
 
class  echo_provider
 
struct  esch_constants
 
class  esch_provider
 
struct  groestl_constants
 
class  groestl_provider
 
struct  is_byte
 
struct  is_xof
 
struct  jh_constants
 
class  jh_provider
 
class  k12m14_provider
 
class  kmac_provider
 
struct  kupyna_constants
 
class  kupyna_provider
 
struct  lsh_constants
 
class  lsh_provider
 
struct  md5_constants
 
class  md5_provider
 
struct  sha1_constants
 
class  sha1_provider
 
struct  sha256_constants
 
class  sha2_provider
 
struct  sha3_constants
 
class  sha3_provider
 
struct  sha512_constants
 
class  shake_provider
 
struct  skein_constants
 
struct  skein_functions
 
struct  skein_functions< 16 >
 
struct  skein_functions< 4 >
 
struct  skein_functions< 8 >
 
class  skein_provider
 
class  sm3_provider
 
struct  stream_width_fixer
 
struct  streebog_constants
 
class  streebog_provider
 
struct  whirlpool_constants
 
class  whirlpool_provider
 

Enumerations

enum class  ascon_type { hash , xof , cxof }
 
enum class  blake2_type { hash , x_hash , xof }
 
enum class  kangaroo_type { k12 , m14 }
 

Functions

template<typename T , typename TF >
void absorb_bytes (const unsigned char *data, size_t len, size_t bs, size_t bschk, unsigned char *m, size_t &pos, T &total, TF transform)
 
uint16_t byteswap (uint16_t val)
 
uint32_t byteswap (uint32_t val)
 
uint64_t byteswap (uint64_t val)
 
uint32_t rotate_right (uint32_t x, unsigned n)
 
uint32_t rotate_left (uint32_t x, unsigned n)
 
uint64_t rotate_right (uint64_t x, unsigned n)
 
uint64_t rotate_left (uint64_t x, unsigned n)
 
void zero_memory (void *v, size_t n)
 
template<typename T , size_t N>
void zero_memory (std::array< T, N > &ar)
 
void zero_memory (std::string &s)
 
template<typename T , size_t N>
std::ostream & operator<< (std::ostream &ostr, const stream_width_fixer< T, N > &value)
 
void validate_hash_size (size_t hs, std::initializer_list< size_t > set)
 
void validate_hash_size (size_t hs, size_t max)
 

Enumeration Type Documentation

◆ ascon_type

enum class digestpp::detail::ascon_type
strong
Enumerator
hash 
xof 
cxof 

◆ blake2_type

enum class digestpp::detail::blake2_type
strong
Enumerator
hash 
x_hash 
xof 

◆ kangaroo_type

Enumerator
k12 
m14 

Function Documentation

◆ absorb_bytes()

template<typename T , typename TF >
void digestpp::detail::absorb_bytes ( const unsigned char * data,
size_t len,
size_t bs,
size_t bschk,
unsigned char * m,
size_t & pos,
T & total,
TF transform )
inline

◆ byteswap() [1/3]

uint16_t digestpp::detail::byteswap ( uint16_t val)
inline

◆ byteswap() [2/3]

uint32_t digestpp::detail::byteswap ( uint32_t val)
inline

◆ byteswap() [3/3]

uint64_t digestpp::detail::byteswap ( uint64_t val)
inline

◆ operator<<()

template<typename T , size_t N>
std::ostream & digestpp::detail::operator<< ( std::ostream & ostr,
const stream_width_fixer< T, N > & value )

◆ rotate_left() [1/2]

uint32_t digestpp::detail::rotate_left ( uint32_t x,
unsigned n )
inline

◆ rotate_left() [2/2]

uint64_t digestpp::detail::rotate_left ( uint64_t x,
unsigned n )
inline

◆ rotate_right() [1/2]

uint32_t digestpp::detail::rotate_right ( uint32_t x,
unsigned n )
inline

◆ rotate_right() [2/2]

uint64_t digestpp::detail::rotate_right ( uint64_t x,
unsigned n )
inline

◆ validate_hash_size() [1/2]

void digestpp::detail::validate_hash_size ( size_t hs,
size_t max )
inline

◆ validate_hash_size() [2/2]

void digestpp::detail::validate_hash_size ( size_t hs,
std::initializer_list< size_t > set )
inline

◆ zero_memory() [1/3]

template<typename T , size_t N>
void digestpp::detail::zero_memory ( std::array< T, N > & ar)
inline

◆ zero_memory() [2/3]

void digestpp::detail::zero_memory ( std::string & s)
inline

◆ zero_memory() [3/3]

void digestpp::detail::zero_memory ( void * v,
size_t n )
inline