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
19NAMESPACE_BEGIN(CryptoPP)
25 CRYPTOPP_STATIC_CONSTEXPR
const char* StaticAlgorithmName() {
return "Sosemanuk";}
38#if (CRYPTOPP_BOOL_X86 || CRYPTOPP_BOOL_X32 || CRYPTOPP_BOOL_X64)
Fixed size stack-based SecBlock with 16-byte alignment.
Fixed size stack-based SecBlock.
Interface for retrieving values given their names.
Interface for algorithms that take byte strings as keys.
Sosemanuk stream cipher implementation.
void CipherSetKey(const NameValuePairs ¶ms, const byte *key, size_t length)
Key the cipher.
bool CipherIsRandomAccess() const
Flag indicating random access.
std::string AlgorithmProvider() const
Retrieve the provider of this algorithm.
void OperateKeystream(KeystreamOperation operation, byte *output, const byte *input, size_t iterationCount)
Operates the keystream.
void CipherResynchronize(byte *keystreamBuffer, const byte *iv, size_t length)
Resynchronize the cipher.
SymmetricCipher implementation.
Inherited by keyed algorithms with variable key length.
Classes and functions for secure memory allocations.
Classes for implementing stream ciphers.
KeystreamOperation
Keystream operation flags.
virtual unsigned int GetOptimalBlockSize() const
Provides number of ideal bytes to process.
Base class for additive stream ciphers.
unsigned int GetAlignment() const
Provides data alignment requirements.
Sosemanuk stream cipher information.
Provides Encryption and Decryption typedefs used by derived classes to implement a symmetric cipher.