6 #ifndef CRYPTOPP_SEAL_H 7 #define CRYPTOPP_SEAL_H 20 CRYPTOPP_CONSTEXPR
static const char *StaticAlgorithmName() {
return B::ToEnum() ==
LITTLE_ENDIAN_ORDER ?
"SEAL-3.0-LE" :
"SEAL-3.0-BE";}
26 template <
class B = BigEndian>
30 void CipherSetKey(
const NameValuePairs ¶ms,
const byte *key,
size_t length);
32 void CipherResynchronize(byte *keystreamBuffer,
const byte *
IV,
size_t length);
33 bool CipherIsRandomAccess()
const {
return true;}
34 void SeekToIteration(lword iterationCount);
41 word32 m_startCount, m_iterationsPerCount;
42 word32 m_outsideCounter, m_insideCounter;
49 template <
class B = BigEndian>
SEAL stream cipher operation.
Inherited by keyed algorithms with fixed key length.
Base class for additive stream ciphers.
Converts a typename to an enumerated value.
byte order is little-endian
Classes and functions for secure memory allocations.
SEAL stream cipher information.
virtual void OperateKeystream(KeystreamOperation operation, byte *output, const byte *input, size_t iterationCount)=0
Operates the keystream.
Interface for algorithms that take byte strings as keys.
const char * IV()
ConstByteArrayParameter, also accepts const byte * for backwards compatibility.
Classes for implementing stream ciphers.
Provides Encryption and Decryption typedefs used by derived classes to implement a symmetric cipher...
KeystreamOperation
Keystream operation flags.
Crypto++ library namespace.
SymmetricCipher implementation.
Base class for additive stream ciphers with SymmetricCipher interface.
Interface for retrieving values given their names.