nil::crypto3::stream::modes::detail::chacha20poly1305_policy< Padding, NonceBits, TagBits, StreamCipher, MessageAuthenticationCode, Allocator > Struct Template Reference

#include <chacha20poly1305.hpp>

+ Inheritance diagram for nil::crypto3::stream::modes::detail::chacha20poly1305_policy< Padding, NonceBits, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >:
+ Collaboration diagram for nil::crypto3::stream::modes::detail::chacha20poly1305_policy< Padding, NonceBits, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >:

Public Types

typedef std::vector< boost::uint_t< CHAR_BIT >, Allocator< boost::uint_t< CHAR_BIT > > > associated_data_type
 
typedef MessageAuthenticationCode mac_type
 
typedef std::array< std::uint8_t, nonce_sizenonce_type
 
typedef Padding padding_type
 
typedef std::size_t size_type
 
typedef StreamCipher stream_cipher_type
 

Public Member Functions

 BOOST_STATIC_ASSERT (nonce_bits==8 *CHAR_BIT||nonce_bits==12 *CHAR_BIT)
 

Static Public Attributes

constexpr static const std::size_t nonce_bits = NonceBits
 
constexpr static const std::size_t nonce_size = nonce_bits / CHAR_BIT
 

Member Typedef Documentation

◆ associated_data_type

template<typename Padding , std::size_t NonceBits, 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::stream::modes::detail::chacha20poly1305_policy< Padding, NonceBits, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::associated_data_type

◆ mac_type

template<typename Padding , std::size_t NonceBits, std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
typedef MessageAuthenticationCode nil::crypto3::stream::modes::detail::chacha20poly1305_policy< Padding, NonceBits, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::mac_type

◆ nonce_type

template<typename Padding , std::size_t NonceBits, std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
typedef std::array<std::uint8_t, nonce_size> nil::crypto3::stream::modes::detail::chacha20poly1305_policy< Padding, NonceBits, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::nonce_type

◆ padding_type

template<typename Padding , std::size_t NonceBits, std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
typedef Padding nil::crypto3::stream::modes::detail::chacha20poly1305_policy< Padding, NonceBits, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::padding_type

◆ size_type

template<typename Padding , std::size_t NonceBits, std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
typedef std::size_t nil::crypto3::stream::modes::detail::chacha20poly1305_policy< Padding, NonceBits, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::size_type

◆ stream_cipher_type

template<typename Padding , std::size_t NonceBits, std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
typedef StreamCipher nil::crypto3::stream::modes::detail::chacha20poly1305_policy< Padding, NonceBits, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::stream_cipher_type

Member Function Documentation

◆ BOOST_STATIC_ASSERT()

template<typename Padding , std::size_t NonceBits, std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
nil::crypto3::stream::modes::detail::chacha20poly1305_policy< Padding, NonceBits, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::BOOST_STATIC_ASSERT ( nonce_bits  = =8 *CHAR_BIT||nonce_bits==12 *CHAR_BIT)

Member Data Documentation

◆ nonce_bits

template<typename Padding , std::size_t NonceBits, std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
constexpr static const std::size_t nil::crypto3::stream::modes::detail::chacha20poly1305_policy< Padding, NonceBits, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::nonce_bits = NonceBits
staticconstexpr

◆ nonce_size

template<typename Padding , std::size_t NonceBits, std::size_t TagBits, typename StreamCipher , typename MessageAuthenticationCode , template< typename > class Allocator>
constexpr static const std::size_t nil::crypto3::stream::modes::detail::chacha20poly1305_policy< Padding, NonceBits, TagBits, StreamCipher, MessageAuthenticationCode, Allocator >::nonce_size = nonce_bits / CHAR_BIT
staticconstexpr

The documentation for this struct was generated from the following file: