6 #ifndef CRYPTOPP_GOST_H 7 #define CRYPTOPP_GOST_H 18 CRYPTOPP_STATIC_CONSTEXPR
const char* StaticAlgorithmName() {
return "GOST";}
30 void UncheckedSetKey(
const byte *userKey,
unsigned int length,
const NameValuePairs ¶ms);
33 static void PrecalculateSTable();
35 static const byte sBox[8][16];
36 static volatile bool sTableCalculated;
37 static word32 sTable[4][256];
43 class CRYPTOPP_NO_VTABLE Enc :
public Base
46 void ProcessAndXorBlock(
const byte *inBlock,
const byte *xorBlock,
byte *outBlock)
const;
50 class CRYPTOPP_NO_VTABLE Dec :
public Base
53 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...
unsigned int word32
32-bit unsigned datatype
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.
unsigned char byte
8-bit unsigned datatype
Provides a base implementation of Algorithm and SimpleKeyingInterface for block ciphers.
Crypto++ library namespace.
Interface for retrieving values given their names.