nil::crypto3::block::modes::cipher_block_chaining< Cipher, Padding, CiphertextStealingMode > Struct Template Reference

Cipher Block Chaining Mode (CBC). Xors previous cipher text with current plaintext before encryption. More...

#include <cbc.hpp>

+ Collaboration diagram for nil::crypto3::block::modes::cipher_block_chaining< Cipher, Padding, CiphertextStealingMode >:

Classes

struct  bind
 

Public Types

typedef Cipher cipher_type
 
typedef CiphertextStealingMode< Cipher, Padding > ciphertext_stealing_type
 
typedef detail::cbc_decryption_policy< cipher_type, padding_type, ciphertext_stealing_typedecryption_policy
 
typedef detail::cbc_encryption_policy< cipher_type, padding_type, ciphertext_stealing_typeencryption_policy
 
typedef Padding< Cipher > padding_type
 

Detailed Description

template<typename Cipher, template< typename > class Padding, template< typename, template< typename > class > class CiphertextStealingMode = cts0>
struct nil::crypto3::block::modes::cipher_block_chaining< Cipher, Padding, CiphertextStealingMode >

Cipher Block Chaining Mode (CBC). Xors previous cipher text with current plaintext before encryption.

Template Parameters
Cipher
Padding

Member Typedef Documentation

◆ cipher_type

template<typename Cipher , template< typename > class Padding, template< typename, template< typename > class > class CiphertextStealingMode = cts0>
typedef Cipher nil::crypto3::block::modes::cipher_block_chaining< Cipher, Padding, CiphertextStealingMode >::cipher_type

◆ ciphertext_stealing_type

template<typename Cipher , template< typename > class Padding, template< typename, template< typename > class > class CiphertextStealingMode = cts0>
typedef CiphertextStealingMode<Cipher, Padding> nil::crypto3::block::modes::cipher_block_chaining< Cipher, Padding, CiphertextStealingMode >::ciphertext_stealing_type

◆ decryption_policy

template<typename Cipher , template< typename > class Padding, template< typename, template< typename > class > class CiphertextStealingMode = cts0>
typedef detail::cbc_decryption_policy<cipher_type, padding_type, ciphertext_stealing_type> nil::crypto3::block::modes::cipher_block_chaining< Cipher, Padding, CiphertextStealingMode >::decryption_policy

◆ encryption_policy

template<typename Cipher , template< typename > class Padding, template< typename, template< typename > class > class CiphertextStealingMode = cts0>
typedef detail::cbc_encryption_policy<cipher_type, padding_type, ciphertext_stealing_type> nil::crypto3::block::modes::cipher_block_chaining< Cipher, Padding, CiphertextStealingMode >::encryption_policy

◆ padding_type

template<typename Cipher , template< typename > class Padding, template< typename, template< typename > class > class CiphertextStealingMode = cts0>
typedef Padding<Cipher> nil::crypto3::block::modes::cipher_block_chaining< Cipher, Padding, CiphertextStealingMode >::padding_type

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