1
/*************************************************
3
* (C) 1999-2007 The Botan Project *
4
*************************************************/
6
#ifndef BOTAN_MISTY1_H__
7
#define BOTAN_MISTY1_H__
9
#include <botan/base.h>
13
/*************************************************
15
*************************************************/
16
class MISTY1 : public BlockCipher
19
void clear() throw() { EK.clear(); DK.clear(); }
20
std::string name() const { return "MISTY1"; }
21
BlockCipher* clone() const { return new MISTY1; }
24
void enc(const byte[], byte[]) const;
25
void dec(const byte[], byte[]) const;
26
void key(const byte[], u32bit);
28
static const byte EK_ORDER[100], DK_ORDER[100];
29
SecureBuffer<u16bit, 100> EK, DK;
32
extern const byte MISTY1_SBOX_S7[128];
33
extern const u16bit MISTY1_SBOX_S9[512];