aboutsummaryrefslogtreecommitdiffstats
path: root/include/eax.h
diff options
context:
space:
mode:
authorlloyd <[email protected]>2008-09-28 18:15:52 +0000
committerlloyd <[email protected]>2008-09-28 18:15:52 +0000
commit983a8ecb42e844f89466d0ae52bba591d4fc4275 (patch)
treede01378ee9be0ba8bec28bc08d3bde6e422ff898 /include/eax.h
parentd59f6a2c9e797ee22c21b2d85c662e0fe8d1cf35 (diff)
Modularize cipher modes
Diffstat (limited to 'include/eax.h')
-rw-r--r--include/eax.h72
1 files changed, 0 insertions, 72 deletions
diff --git a/include/eax.h b/include/eax.h
deleted file mode 100644
index 676e5334e..000000000
--- a/include/eax.h
+++ /dev/null
@@ -1,72 +0,0 @@
-/*************************************************
-* EAX Mode Header File *
-* (C) 1999-2007 Jack Lloyd *
-*************************************************/
-
-#ifndef BOTAN_EAX_H__
-#define BOTAN_EAX_H__
-
-#include <botan/basefilt.h>
-
-namespace Botan {
-
-/*************************************************
-* EAX Base Class *
-*************************************************/
-class BOTAN_DLL EAX_Base : public Keyed_Filter
- {
- public:
- void set_key(const SymmetricKey&);
- void set_iv(const InitializationVector&);
- void set_header(const byte[], u32bit);
- std::string name() const;
-
- bool valid_keylength(u32bit) const;
-
- ~EAX_Base() { delete cipher; delete mac; }
- protected:
- EAX_Base(const std::string&, u32bit);
- void start_msg();
- void increment_counter();
-
- const u32bit TAG_SIZE, BLOCK_SIZE;
- BlockCipher* cipher;
- MessageAuthenticationCode* mac;
- SecureVector<byte> nonce_mac, header_mac, state, buffer;
- u32bit position;
- };
-
-/*************************************************
-* EAX Encryption *
-*************************************************/
-class BOTAN_DLL EAX_Encryption : public EAX_Base
- {
- public:
- EAX_Encryption(const std::string&, u32bit = 0);
- EAX_Encryption(const std::string&, const SymmetricKey&,
- const InitializationVector&, u32bit = 0);
- private:
- void write(const byte[], u32bit);
- void end_msg();
- };
-
-/*************************************************
-* EAX Decryption *
-*************************************************/
-class BOTAN_DLL EAX_Decryption : public EAX_Base
- {
- public:
- EAX_Decryption(const std::string&, u32bit = 0);
- EAX_Decryption(const std::string&, const SymmetricKey&,
- const InitializationVector&, u32bit = 0);
- private:
- void write(const byte[], u32bit);
- void do_write(const byte[], u32bit);
- void end_msg();
- SecureVector<byte> queue;
- u32bit queue_start, queue_end;
- };
-
-}
-
-#endif