Algorithms are meant to provide key derivation interface similar to STL algorithms' one. More...

+ Collaboration diagram for Algorithms:

Functions

template<typename Kdf , typename SinglePassRange , typename KdfAccumulator = typename kdf::accumulator_set<Kdf>>
std::enable_if< boost::accumulators::detail::is_accumulator_set< KdfAccumulator >::value, KdfAccumulator >::type & nil::crypto3::kdf::derive (const SinglePassRange &rng, KdfAccumulator &kdf)
 
template<typename Kdf , typename SinglePassRange , typename OutputIterator >
OutputIterator nil::crypto3::kdf::derive (const SinglePassRange &rng, OutputIterator out)
 
template<typename Kdf , typename InputIterator , typename KdfAccumulator = typename kdf::accumulator_set<Kdf>>
std::enable_if< boost::accumulators::detail::is_accumulator_set< KdfAccumulator >::value, KdfAccumulator >::type & nil::crypto3::kdf::derive (InputIterator first, InputIterator last, KdfAccumulator &acc)
 
template<typename Kdf , typename InputIterator , typename OutputIterator >
std::enable_if<!boost::accumulators::detail::is_accumulator_set< OutputIterator >::value, OutputIterator >::type nil::crypto3::kdf::derive (InputIterator first, InputIterator last, OutputIterator out)
 

Detailed Description

Algorithms are meant to provide key derivation interface similar to STL algorithms' one.

Function Documentation

◆ derive() [1/4]

template<typename Kdf , typename SinglePassRange , typename KdfAccumulator = typename kdf::accumulator_set<Kdf>>
std::enable_if<boost::accumulators::detail::is_accumulator_set<KdfAccumulator>::value, KdfAccumulator>::type& nil::crypto3::kdf::derive ( const SinglePassRange &  rng,
KdfAccumulator &  kdf 
)
Template Parameters
Kdf
SinglePassRange
StreamKdf
Parameters
rng
sh
Returns

◆ derive() [2/4]

template<typename Kdf , typename SinglePassRange , typename OutputIterator >
OutputIterator nil::crypto3::kdf::derive ( const SinglePassRange &  rng,
OutputIterator  out 
)
Template Parameters
Kdf
SinglePassRange
OutputIterator
StreamKdf
Parameters
rng
out
sh
Returns

◆ derive() [3/4]

template<typename Kdf , typename InputIterator , typename KdfAccumulator = typename kdf::accumulator_set<Kdf>>
std::enable_if<boost::accumulators::detail::is_accumulator_set<KdfAccumulator>::value, KdfAccumulator>::type& nil::crypto3::kdf::derive ( InputIterator  first,
InputIterator  last,
KdfAccumulator &  acc 
)
Template Parameters
Kdf
InputIterator
StreamKdf
Parameters
first
last
sh
Returns

◆ derive() [4/4]

template<typename Kdf , typename InputIterator , typename OutputIterator >
std::enable_if<!boost::accumulators::detail::is_accumulator_set<OutputIterator>::value, OutputIterator>::type nil::crypto3::kdf::derive ( InputIterator  first,
InputIterator  last,
OutputIterator  out 
)
Template Parameters
Kdf
InputIterator
OutputIterator
StreamKdf
Parameters
first
last
out
sh
Returns