8#ifndef BOTAN_CASCADE_H_
9#define BOTAN_CASCADE_H_
11#include <botan/block_cipher.h>
23 void encrypt_n(
const uint8_t in[], uint8_t out[],
size_t blocks)
const override;
24 void decrypt_n(
const uint8_t in[], uint8_t out[],
size_t blocks)
const override;
31 m_cipher2->maximum_keylength());
34 void clear()
override;
35 std::string
name()
const override;
48 void key_schedule(
const uint8_t[],
size_t)
override;
51 std::unique_ptr<BlockCipher> m_cipher1, m_cipher2;
virtual BlockCipher * clone() const =0
virtual void decrypt_n(const uint8_t in[], uint8_t out[], size_t blocks) const =0
virtual void encrypt_n(const uint8_t in[], uint8_t out[], size_t blocks) const =0
Cascade_Cipher & operator=(const Cascade_Cipher &)=delete
Key_Length_Specification key_spec() const override
Cascade_Cipher(const Cascade_Cipher &)=delete
size_t block_size() const override
virtual std::string name() const =0
int(* final)(unsigned char *, CTX *)
#define BOTAN_PUBLIC_API(maj, min)
#define BOTAN_FUTURE_INTERNAL_HEADER(hdr)