6 #ifndef CRYPTOPP_GOST_H 7 #define CRYPTOPP_GOST_H 18 CRYPTOPP_CONSTEXPR
static const char *StaticAlgorithmName() {
return "GOST";}
31 void UncheckedSetKey(
const byte *userKey,
unsigned int length,
const NameValuePairs ¶ms);
34 static void PrecalculateSTable();
36 static const byte sBox[8][16];
37 static volatile bool sTableCalculated;
38 static word32 sTable[4][256];
45 class CRYPTOPP_NO_VTABLE Enc :
public Base
48 void ProcessAndXorBlock(
const byte *inBlock,
const byte *xorBlock, byte *outBlock)
const;
53 class CRYPTOPP_NO_VTABLE Dec :
public Base
56 void ProcessAndXorBlock(
const byte *inBlock,
const byte *xorBlock, byte *outBlock)
const;
Inherited by keyed algorithms with fixed key length.
Provides Encryption and Decryption typedefs used by derived classes to implement a block cipher...
Classes and functions for secure memory allocations.
Inherited by algorithms with fixed block size.
Classes and functions for implementing secret key algorithms.
GOST block cipher information.
Provides a base implementation of Algorithm and SimpleKeyingInterface for block ciphers.
Crypto++ library namespace.
Interface for retrieving values given their names.