digestpp  0.01
Experimental C++11 header-only message digest library.
streebog.hpp
1 /*
2 This code is written by kerukuro and released into public domain.
3 */
4 
5 #ifndef DIGESTPP_ALGORITHM_STREEBOG_HPP
6 #define DIGESTPP_ALGORITHM_STREEBOG_HPP
7 
8 #include "../hasher.hpp"
9 #include "detail/streebog_provider.hpp"
10 
11 namespace digestpp
12 {
13 
14 /** @brief Streebog hash function
15  *
16  * @hash
17  *
18  * @outputsize 256 / 512 bits
19  *
20  * @defaultsize none
21  *
22  * @throw std::runtime_error if the requested digest size is not supported
23  *
24  * @par Example:\n
25  * @code // Output a 256-bit Streebog digest of a string
26  * digestpp::streebog hasher(256);
27  * hasher.absorb("The quick brown fox jumps over the lazy dog");
28  * std::cout << hasher.hexdigest() << '\n';
29  * @endcode
30  *
31  * @par Example output:\n
32  * @code 3e7dea7f2384b6c5a3d0e24aaa29c05e89ddd762145030ec22c71a6db8b2c1f4
33  * @endcode
34  *
35  * @sa hasher
36  */
38 
39 } // namespace digestpp
40 
41 #endif // DIGESTPP_ALGORITHM_STREEBOG_HPP
hasher< detail::shake_provider< 256, 24 > > shake256
SHAKE256 function.
Definition: shake.hpp:53
hasher< detail::streebog_provider > streebog
Streebog hash function.
Definition: streebog.hpp:37