Public Types |
Public Member Functions |
Static Public Member Functions |
Static Public Attributes |
List of all members
nil::crypto3::block::modes::detail::siv_policy< Cipher, Padding, TagBits, StreamCipher, MessageAuthenticationCode, Allocator > Struct Template Reference
#include <siv.hpp>
Inheritance diagram for nil::crypto3::block::modes::detail::siv_policy< Cipher, Padding, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >:
Collaboration diagram for nil::crypto3::block::modes::detail::siv_policy< Cipher, Padding, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >:
Public Types | |
template<typename T > | |
using | allocator_type = Allocator< T > |
typedef std::vector< boost::uint_t< CHAR_BIT >, Allocator< boost::uint_t< CHAR_BIT > > > | associated_data_type |
typedef cipher_type::block_type | block_type |
typedef Cipher | cipher_type |
typedef std::array< std::uint8_t, key_size > | key_type |
typedef MessageAuthenticationCode | mac_type |
typedef std::vector< boost::uint_t< CHAR_BIT >, Allocator< boost::uint_t< CHAR_BIT > > > | nonce_type |
typedef Padding | padding_type |
typedef StreamCipher | stream_cipher_type |
Public Member Functions | |
BOOST_STATIC_ASSERT (block_bits==128) | |
Static Public Member Functions | |
static block_type | begin_message (const stream_cipher_type &cipher, const block_type &plaintext) |
static void | S2V (const mac_type &mac, const uint8_t *text, size_t text_len) |
Static Public Attributes | |
constexpr static const std::size_t | block_bits = cipher_type::block_bits |
constexpr static const std::size_t | block_words = cipher_type::block_words |
constexpr static const std::size_t | key_bits = stream_cipher_type::key_bits + mac_type::key_bits |
constexpr static const std::size_t | key_size = key_bits / CHAR_BIT |
constexpr static const std::size_t | tag_bits = TagBits |
Member Typedef Documentation
◆ allocator_type
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
template<typename T >
using nil::crypto3::block::modes::detail::siv_policy< Cipher, Padding, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::allocator_type = Allocator<T> |
◆ associated_data_type
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
typedef std::vector<boost::uint_t<CHAR_BIT>, Allocator<boost::uint_t<CHAR_BIT> > > nil::crypto3::block::modes::detail::siv_policy< Cipher, Padding, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::associated_data_type |
◆ block_type
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
typedef cipher_type::block_type nil::crypto3::block::modes::detail::siv_policy< Cipher, Padding, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::block_type |
◆ cipher_type
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
typedef Cipher nil::crypto3::block::modes::detail::siv_policy< Cipher, Padding, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::cipher_type |
◆ key_type
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
typedef std::array<std::uint8_t, key_size> nil::crypto3::block::modes::detail::siv_policy< Cipher, Padding, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::key_type |
◆ mac_type
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
typedef MessageAuthenticationCode nil::crypto3::block::modes::detail::siv_policy< Cipher, Padding, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::mac_type |
◆ nonce_type
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
typedef std::vector<boost::uint_t<CHAR_BIT>, Allocator<boost::uint_t<CHAR_BIT> > > nil::crypto3::block::modes::detail::siv_policy< Cipher, Padding, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::nonce_type |
◆ padding_type
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
typedef Padding nil::crypto3::block::modes::detail::siv_policy< Cipher, Padding, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::padding_type |
◆ stream_cipher_type
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
typedef StreamCipher nil::crypto3::block::modes::detail::siv_policy< Cipher, Padding, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::stream_cipher_type |
Member Function Documentation
◆ begin_message()
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
|
inlinestatic |
◆ BOOST_STATIC_ASSERT()
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
nil::crypto3::block::modes::detail::siv_policy< Cipher, Padding, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::BOOST_STATIC_ASSERT | ( | block_bits | = =128 | ) |
◆ S2V()
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
|
inlinestatic |
Member Data Documentation
◆ block_bits
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
|
staticconstexpr |
◆ block_words
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
|
staticconstexpr |
◆ key_bits
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
|
staticconstexpr |
◆ key_size
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
|
staticconstexpr |
◆ tag_bits
template<typename Cipher , typename Padding , std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
|
staticconstexpr |
The documentation for this struct was generated from the following file: