Fabcoin Core
0.16.2
P2P Digital Currency
|
Sosemanuk stream cipher implementation. More...
#include <sosemanuk.h>
Protected Member Functions | |
void | CipherSetKey (const NameValuePairs ¶ms, const byte *key, size_t length) |
Key the cipher. More... | |
void | OperateKeystream (KeystreamOperation operation, byte *output, const byte *input, size_t iterationCount) |
Operates the keystream. More... | |
void | CipherResynchronize (byte *keystreamBuffer, const byte *iv, size_t length) |
Resynchronize the cipher. More... | |
bool | CipherIsRandomAccess () const |
Flag indicating random access. More... | |
Protected Attributes | |
FixedSizeSecBlock< word32, 25 *4 > | m_key |
FixedSizeAlignedSecBlock< word32, 12 > | m_state |
Additional Inherited Members | |
Public Types inherited from AdditiveCipherConcretePolicy< word32, 20 > | |
typedef word32 | WordType |
Public Member Functions inherited from AdditiveCipherConcretePolicy< word32, 20 > | |
unsigned int | GetAlignment () const |
Provides data alignment requirements. More... | |
unsigned int | GetBytesPerIteration () const |
Provides number of bytes operated upon during an iteration. More... | |
unsigned int | GetIterationsToBuffer () const |
Provides buffer size based on iterations. More... | |
bool | CanOperateKeystream () const |
Flag indicating. More... | |
Public Member Functions inherited from AdditiveCipherAbstractPolicy | |
virtual | ~AdditiveCipherAbstractPolicy () |
virtual unsigned int | GetOptimalBlockSize () const |
Provides number of ideal bytes to process. More... | |
virtual void | WriteKeystream (byte *keystream, size_t iterationCount) |
Generate the keystream. More... | |
virtual void | SeekToIteration (lword iterationCount) |
Seeks to a random position in the stream. More... | |
Public Member Functions inherited from SosemanukInfo | |
CRYPTOPP_STATIC_CONSTEXPR const char * | StaticAlgorithmName () |
Public Member Functions inherited from VariableKeyLength< 16, 1, 32, 1, SimpleKeyingInterface::UNIQUE_IV, 16 > | |
CRYPTOPP_STATIC_CONSTEXPR size_t CRYPTOPP_API | StaticGetValidKeyLength (size_t keylength) |
The minimum key length used by the algorithm provided as a constant. More... | |
Sosemanuk stream cipher implementation.
Definition at line 32 of file sosemanuk.h.
|
inlineprotectedvirtual |
Flag indicating random access.
Implements AdditiveCipherAbstractPolicy.
Definition at line 38 of file sosemanuk.h.
|
protectedvirtual |
Resynchronize the cipher.
keystreamBuffer | the keystream buffer |
iv | a byte array used to resynchronize the cipher |
length | the size of the IV array |
Reimplemented from AdditiveCipherAbstractPolicy.
Definition at line 28 of file sosemanuk.cpp.
|
protectedvirtual |
Key the cipher.
params | set of NameValuePairs use to initialize this object |
key | a byte array used to key the cipher |
length | the size of the key array |
Implements AdditiveCipherAbstractPolicy.
Definition at line 22 of file sosemanuk.cpp.
|
protectedvirtual |
Operates the keystream.
operation | the operation with additional flags |
output | the output buffer |
input | the input buffer |
iterationCount | the number of iterations to perform on the input |
OperateKeystream() will attempt to operate upon GetOptimalBlockSize() buffer, which will be derived from GetBytesPerIteration().
Implements AdditiveCipherConcretePolicy< word32, 20 >.
Definition at line 327 of file sosemanuk.cpp.
|
protected |
Definition at line 44 of file sosemanuk.h.
|
protected |
Definition at line 45 of file sosemanuk.h.