diff options
Diffstat (limited to 'CryptoPP/gost.h')
-rw-r--r-- | CryptoPP/gost.h | 58 |
1 files changed, 0 insertions, 58 deletions
diff --git a/CryptoPP/gost.h b/CryptoPP/gost.h deleted file mode 100644 index e6fe4693d..000000000 --- a/CryptoPP/gost.h +++ /dev/null @@ -1,58 +0,0 @@ -#ifndef CRYPTOPP_GOST_H -#define CRYPTOPP_GOST_H - -/** \file -*/ - -#include "seckey.h" -#include "secblock.h" - -NAMESPACE_BEGIN(CryptoPP) - -//! _ -struct GOST_Info : public FixedBlockSize<8>, public FixedKeyLength<32> -{ - static const char *StaticAlgorithmName() {return "GOST";} -}; - -/// <a href="http://www.weidai.com/scan-mirror/cs.html#GOST">GOST</a> -class GOST : public GOST_Info, public BlockCipherDocumentation -{ - class CRYPTOPP_NO_VTABLE Base : public BlockCipherImpl<GOST_Info> - { - public: - void UncheckedSetKey(const byte *userKey, unsigned int length, const NameValuePairs ¶ms); - - protected: - static void PrecalculateSTable(); - - static const byte sBox[8][16]; - static volatile bool sTableCalculated; - static word32 sTable[4][256]; - - FixedSizeSecBlock<word32, 8> key; - }; - - class CRYPTOPP_NO_VTABLE Enc : public Base - { - public: - void ProcessAndXorBlock(const byte *inBlock, const byte *xorBlock, byte *outBlock) const; - }; - - class CRYPTOPP_NO_VTABLE Dec : public Base - { - public: - void ProcessAndXorBlock(const byte *inBlock, const byte *xorBlock, byte *outBlock) const; - }; - -public: - typedef BlockCipherFinal<ENCRYPTION, Enc> Encryption; - typedef BlockCipherFinal<DECRYPTION, Dec> Decryption; -}; - -typedef GOST::Encryption GOSTEncryption; -typedef GOST::Decryption GOSTDecryption; - -NAMESPACE_END - -#endif |