aboutsummaryrefslogtreecommitdiffstats
path: root/src/block/skipjack
diff options
context:
space:
mode:
authorlloyd <lloyd@randombit.net>2009-08-11 19:34:50 +0000
committerlloyd <lloyd@randombit.net>2009-08-11 19:34:50 +0000
commitc8c3d7f6eecd753aa87a882b1458346682e606db (patch)
treecf902ddbe1b884fb1b7e91cd7cacf646fc5c66fc /src/block/skipjack
parent13d50de7b7675d798437c0d465acedd23e08b092 (diff)
Make encrypt_n public for all BlockCipher implementations - unlike the
enc/dec functions it replaces, these are public interfaces. Add the first bits of a SSE2 implementation of Serpent. Currently incomplete.
Diffstat (limited to 'src/block/skipjack')
-rw-r--r--src/block/skipjack/skipjack.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/block/skipjack/skipjack.h b/src/block/skipjack/skipjack.h
index ec071dfe7..f12032f36 100644
--- a/src/block/skipjack/skipjack.h
+++ b/src/block/skipjack/skipjack.h
@@ -18,18 +18,21 @@ namespace Botan {
class BOTAN_DLL Skipjack : public BlockCipher
{
public:
+ void encrypt_n(const byte in[], byte out[], u32bit blocks) const;
+ void decrypt_n(const byte in[], byte out[], u32bit blocks) const;
+
void clear() throw();
std::string name() const { return "Skipjack"; }
BlockCipher* clone() const { return new Skipjack; }
+
Skipjack() : BlockCipher(8, 10) {}
private:
- void encrypt_n(const byte in[], byte out[], u32bit blocks) const;
- void decrypt_n(const byte in[], byte out[], u32bit blocks) const;
void key_schedule(const byte[], u32bit);
void step_A(u16bit&, u16bit&, u32bit) const;
void step_B(u16bit&, u16bit&, u32bit) const;
void step_Ai(u16bit&, u16bit&, u32bit) const;
void step_Bi(u16bit&, u16bit&, u32bit) const;
+
SecureBuffer<byte, 256> FTABLE[10];
};