nil::crypto3::passhash Namespace Reference

Namespaces

 detail
 

Classes

class  bcrypt
 Bcrypt is a password hashing scheme originally designed for use in OpenBSD, but numerous other implementations exist. More...
 
class  passhash9
 
struct  passhash9_params
 

Typedefs

template<typename Passhash >
using accumulator_set = boost::accumulators::accumulator_set< static_digest< Passhash::input_block_bits >, boost::accumulators::features< accumulators::tag::passhash< Passhash > >>
 

Functions

template<typename Hasher , typename SinglePassRange , typename Passhash = typename range_stream_hash_traits<Hasher, SinglePassRange>::type, typename = typename std::enable_if<detail::is_stream_hash<Passhash>::value>::type>
detail::range_hash_impl< Hasher, detail::value_hash_impl< Passhash > > check (const SinglePassRange &r)
 
template<typename Hasher , typename SinglePassRange , typename OutputIterator , typename Passhash = typename range_stream_hash_traits<Hasher, SinglePassRange>::type, typename = typename std::enable_if<detail::is_stream_hash<Passhash>::value>::type>
OutputIterator check (const SinglePassRange &rng, OutputIterator out)
 
template<typename Hasher , typename SinglePassRange , typename OutputIterator , typename Passhash = typename range_stream_hash_traits<Hasher, SinglePassRange>::type, typename = typename std::enable_if<detail::is_stream_hash<Passhash>::value>::type>
OutputIterator check (const SinglePassRange &rng, OutputIterator out, Passhash &sh)
 
template<typename Hasher , typename SinglePassRange , typename Passhash = typename range_stream_hash_traits<Hasher, SinglePassRange>::type, typename = typename std::enable_if<detail::is_stream_hash<Passhash>::value>::type>
detail::range_hash_impl< Hasher, detail::ref_hash_impl< Passhash > > check (const SinglePassRange &rng, Passhash &sh)
 
template<typename Hasher , typename InputIterator , typename Passhash = typename itr_stream_hash_traits<Hasher, InputIterator>::type, typename = typename std::enable_if<detail::is_stream_hash<Passhash>::value>::type>
detail::range_hash_impl< Hasher, detail::value_hash_impl< Passhash > > check (InputIterator first, InputIterator last)
 
template<typename Hasher , typename InputIterator , typename OutputIterator >
OutputIterator check (InputIterator first, InputIterator last, OutputIterator out)
 
template<typename Hasher , typename InputIterator , typename Passhash = typename itr_stream_hash_traits<Hasher, InputIterator>::type, typename = typename std::enable_if<detail::is_stream_hash<Passhash>::value>::type>
detail::range_hash_impl< Hasher, detail::ref_hash_impl< Passhash > > check (InputIterator first, InputIterator last, Passhash &sh)
 
template<typename Hasher , typename InputIterator , typename PasshashAccumulator = passhash::accumulator_set<Hashes>>
OutputIterator check (InputIterator first, InputIterator last, PasshashAccumulator &sh)
 
template<typename Hasher , typename SinglePassRange , typename Passhash = typename range_stream_hash_traits<Hasher, SinglePassRange>::type, typename = typename std::enable_if<detail::is_stream_hash<Passhash>::value>::type>
detail::range_hash_impl< Hasher, detail::value_hash_impl< Passhash > > generate (const SinglePassRange &r)
 
template<typename Hasher , typename SinglePassRange , typename OutputIterator , typename Passhash = typename range_stream_hash_traits<Hasher, SinglePassRange>::type, typename = typename std::enable_if<detail::is_stream_hash<Passhash>::value>::type>
OutputIterator generate (const SinglePassRange &rng, OutputIterator out)
 
template<typename Hasher , typename SinglePassRange , typename OutputIterator , typename Passhash = typename range_stream_hash_traits<Hasher, SinglePassRange>::type, typename = typename std::enable_if<detail::is_stream_hash<Passhash>::value>::type>
OutputIterator generate (const SinglePassRange &rng, OutputIterator out, Passhash &sh)
 
template<typename Hasher , typename SinglePassRange , typename Passhash = typename range_stream_hash_traits<Hasher, SinglePassRange>::type, typename = typename std::enable_if<detail::is_stream_hash<Passhash>::value>::type>
detail::range_hash_impl< Hasher, detail::ref_hash_impl< Passhash > > generate (const SinglePassRange &rng, Passhash &sh)
 
template<typename Hasher , typename InputIterator >
detail::range_hash_impl< Hasher, detail::value_hash_impl< Passhash > > generate (InputIterator first, InputIterator last)
 
template<typename Hasher , typename InputIterator , typename OutputIterator >
OutputIterator generate (InputIterator first, InputIterator last, OutputIterator out)
 
template<typename Hasher , typename InputIterator , typename OutputIterator >
OutputIterator generate (InputIterator first, InputIterator last, Passhash &sh)
 
template<typename Hasher , typename InputIterator , typename Passhash = typename itr_stream_hash_traits<Hasher, InputIterator>::type, typename = typename std::enable_if<detail::is_stream_hash<Passhash>::value>::type>
detail::range_hash_impl< Hasher, detail::ref_hash_impl< Passhash > > generate (InputIterator first, InputIterator last, Passhash &sh)