chacha.hpp
Go to the documentation of this file.
constexpr static const std::size_t block_bits
Definition: chacha.hpp:75
constexpr static const std::size_t min_key_bits
Definition: chacha.hpp:86
constexpr static const std::size_t key_bits
Definition: chacha.hpp:88
constexpr static const std::size_t min_key_schedule_size
Definition: chacha.hpp:80
void process(InputRange &in, OutputRange &out, key_schedule_type &schedule, block_type &block)
Definition: chacha.hpp:97
constexpr static const std::size_t rounds
Definition: chacha.hpp:73
constexpr static const std::size_t block_size
Definition: chacha.hpp:76
constexpr static const std::size_t iv_bits
Definition: chacha.hpp:83
chacha(key_schedule_type &schedule, const key_type &key, const iv_type &iv=iv_type())
Definition: chacha.hpp:91
constexpr static const std::size_t min_key_schedule_bits
Definition: chacha.hpp:79
policy_type::key_schedule_type key_schedule_type
Definition: chacha.hpp:81
constexpr static const std::size_t max_key_bits
Definition: chacha.hpp:87
void seek(block_type &block, key_schedule_type &schedule, uint64_t offset)
Definition: chacha.hpp:102
boost::mpl::apply< AccumulatorSet, tag::block< Mode > >::type::result_type block(const AccumulatorSet &acc)
Definition: accumulators/block.hpp:259
boost::mpl::apply< AccumulatorSet, tag::stream< Mode > >::type::result_type stream(const AccumulatorSet &acc)
Definition: accumulators/stream.hpp:175
void xor_buf(uint8_t out[], const uint8_t in[], size_t length)
Definition: memory_operations.hpp:245
Definition: pair.hpp:31
Definition: chacha.hpp:34
constexpr static const std::size_t block_bits
Definition: chacha.hpp:40
detail::chacha_functions< Rounds, IVBits, KeyBits > policy_type
Definition: chacha.hpp:35
constexpr static const std::size_t min_key_schedule_size
Definition: chacha.hpp:45
constexpr static const std::size_t max_key_bits
Definition: chacha.hpp:52
constexpr static const std::size_t min_key_schedule_bits
Definition: chacha.hpp:44
policy_type::block_type block_type
Definition: chacha.hpp:42
constexpr static const std::size_t block_size
Definition: chacha.hpp:41
constexpr static const std::size_t iv_bits
Definition: chacha.hpp:48
constexpr static const std::size_t rounds
Definition: chacha.hpp:38
policy_type::key_type key_type
Definition: chacha.hpp:54
policy_type::key_schedule_type key_schedule_type
Definition: chacha.hpp:46
void process(InputRange &in, OutputRange &out, key_schedule_type &schedule, block_type &block)
Definition: chacha.hpp:57
constexpr static const std::size_t key_bits
Definition: chacha.hpp:53
policy_type::iv_type iv_type
Definition: chacha.hpp:49
constexpr static const std::size_t min_key_bits
Definition: chacha.hpp:51
Definition: chacha_functions.hpp:43
constexpr static const std::size_t iv_bits
Definition: chacha_functions.hpp:65
constexpr static const std::size_t min_key_bits
Definition: chacha_functions.hpp:60
policy_type::key_type key_type
Definition: chacha_functions.hpp:63
constexpr static const std::size_t min_key_schedule_size
Definition: chacha_functions.hpp:57
constexpr static const std::size_t max_key_bits
Definition: chacha_functions.hpp:61
constexpr static const std::size_t block_bits
Definition: chacha_functions.hpp:68
constexpr static const std::size_t min_key_schedule_bits
Definition: chacha_functions.hpp:56
static void schedule_key(key_schedule_type &schedule, const key_type &key)
Definition: chacha_functions.hpp:71
constexpr static const std::size_t rounds
Definition: chacha_functions.hpp:54
policy_type::block_type block_type
Definition: chacha_functions.hpp:69
policy_type::key_schedule_type key_schedule_type
Definition: chacha_functions.hpp:58
constexpr static const std::size_t key_bits
Definition: chacha_functions.hpp:62
policy_type::iv_type iv_type
Definition: chacha_functions.hpp:66
constexpr static const std::size_t block_size
Definition: chacha_policy.hpp:53