nil::crypto3::stream::salsa20_finalizer< IVBits, KeyBits, Rounds > Class Template Reference

#include <salsa20.hpp>

+ Collaboration diagram for nil::crypto3::stream::salsa20_finalizer< IVBits, KeyBits, Rounds >:

Public Types

typedef policy_type::block_type block_type
 
typedef policy_type::iv_type iv_type
 
typedef policy_type::key_schedule_type key_schedule_type
 
typedef policy_type::key_type key_type
 

Public Member Functions

template<typename InputRange , typename OutputRange >
void process (OutputRange &out, InputRange &in, key_schedule_type &schedule, block_type &block)
 

Static Public Attributes

constexpr static const std::size_t iv_bits = policy_type::iv_bits
 
constexpr static const std::size_t key_bits = policy_type::key_bits
 
constexpr static const std::size_t key_schedule_bits = policy_type::key_schedule_bits
 
constexpr static const std::size_t key_schedule_size = policy_type::key_schedule_size
 
constexpr static const std::size_t max_key_bits = policy_type::max_key_bits
 
constexpr static const std::size_t min_key_bits = policy_type::min_key_bits
 
constexpr static const std::size_t rounds = policy_type::rounds
 

Member Typedef Documentation

◆ block_type

template<std::size_t IVBits, std::size_t KeyBits, std::size_t Rounds = 20>
typedef policy_type::block_type nil::crypto3::stream::salsa20_finalizer< IVBits, KeyBits, Rounds >::block_type

◆ iv_type

template<std::size_t IVBits, std::size_t KeyBits, std::size_t Rounds = 20>
typedef policy_type::iv_type nil::crypto3::stream::salsa20_finalizer< IVBits, KeyBits, Rounds >::iv_type

◆ key_schedule_type

template<std::size_t IVBits, std::size_t KeyBits, std::size_t Rounds = 20>
typedef policy_type::key_schedule_type nil::crypto3::stream::salsa20_finalizer< IVBits, KeyBits, Rounds >::key_schedule_type

◆ key_type

template<std::size_t IVBits, std::size_t KeyBits, std::size_t Rounds = 20>
typedef policy_type::key_type nil::crypto3::stream::salsa20_finalizer< IVBits, KeyBits, Rounds >::key_type

Member Function Documentation

◆ process()

template<std::size_t IVBits, std::size_t KeyBits, std::size_t Rounds = 20>
template<typename InputRange , typename OutputRange >
void nil::crypto3::stream::salsa20_finalizer< IVBits, KeyBits, Rounds >::process ( OutputRange &  out,
InputRange &  in,
key_schedule_type schedule,
block_type block 
)
inline

Member Data Documentation

◆ iv_bits

template<std::size_t IVBits, std::size_t KeyBits, std::size_t Rounds = 20>
constexpr static const std::size_t nil::crypto3::stream::salsa20_finalizer< IVBits, KeyBits, Rounds >::iv_bits = policy_type::iv_bits
staticconstexpr

◆ key_bits

template<std::size_t IVBits, std::size_t KeyBits, std::size_t Rounds = 20>
constexpr static const std::size_t nil::crypto3::stream::salsa20_finalizer< IVBits, KeyBits, Rounds >::key_bits = policy_type::key_bits
staticconstexpr

◆ key_schedule_bits

template<std::size_t IVBits, std::size_t KeyBits, std::size_t Rounds = 20>
constexpr static const std::size_t nil::crypto3::stream::salsa20_finalizer< IVBits, KeyBits, Rounds >::key_schedule_bits = policy_type::key_schedule_bits
staticconstexpr

◆ key_schedule_size

template<std::size_t IVBits, std::size_t KeyBits, std::size_t Rounds = 20>
constexpr static const std::size_t nil::crypto3::stream::salsa20_finalizer< IVBits, KeyBits, Rounds >::key_schedule_size = policy_type::key_schedule_size
staticconstexpr

◆ max_key_bits

template<std::size_t IVBits, std::size_t KeyBits, std::size_t Rounds = 20>
constexpr static const std::size_t nil::crypto3::stream::salsa20_finalizer< IVBits, KeyBits, Rounds >::max_key_bits = policy_type::max_key_bits
staticconstexpr

◆ min_key_bits

template<std::size_t IVBits, std::size_t KeyBits, std::size_t Rounds = 20>
constexpr static const std::size_t nil::crypto3::stream::salsa20_finalizer< IVBits, KeyBits, Rounds >::min_key_bits = policy_type::min_key_bits
staticconstexpr

◆ rounds

template<std::size_t IVBits, std::size_t KeyBits, std::size_t Rounds = 20>
constexpr static const std::size_t nil::crypto3::stream::salsa20_finalizer< IVBits, KeyBits, Rounds >::rounds = policy_type::rounds
staticconstexpr

The documentation for this class was generated from the following file: