Crypto++
8.3
Free C++ class library of cryptographic schemes
|
Go to the documentation of this file.
7 #ifndef CRYPTOPP_SOSEMANUK_H
8 #define CRYPTOPP_SOSEMANUK_H
15 #if CRYPTOPP_BOOL_X32 || defined(CRYPTOPP_DISABLE_MIXED_ASM)
16 # define CRYPTOPP_DISABLE_SOSEMANUK_ASM 1
25 CRYPTOPP_STATIC_CONSTEXPR
const char* StaticAlgorithmName() {
return "Sosemanuk";}
33 std::string AlgorithmProvider()
const;
34 void CipherSetKey(
const NameValuePairs ¶ms,
const byte *key,
size_t length);
35 void OperateKeystream(
KeystreamOperation operation,
byte *output,
const byte *input,
size_t iterationCount);
36 void CipherResynchronize(
byte *keystreamBuffer,
const byte *iv,
size_t length);
37 bool CipherIsRandomAccess()
const {
return false;}
38 #if (CRYPTOPP_BOOL_X86 || CRYPTOPP_BOOL_X32 || CRYPTOPP_BOOL_X64)
Provides Encryption and Decryption typedefs used by derived classes to implement a symmetric cipher.
SymmetricCipher implementation.
Base class for additive stream ciphers.
Classes and functions for secure memory allocations.
Interface for one direction (encryption or decryption) of a stream cipher or cipher mode.
Interface for algorithms that take byte strings as keys.
KeystreamOperation
Keystream operation flags.
Crypto++ library namespace.
unsigned int GetAlignment() const
Provides data alignment requirements.
Sosemanuk stream cipher information.
Sosemanuk stream cipher implementation.
virtual unsigned int GetOptimalBlockSize() const
Provides number of ideal bytes to process.
Interface for retrieving values given their names.
Classes for implementing stream ciphers.
Inherited by keyed algorithms with variable key length.