|
Crypto++
|
interface for the data processing part of stream ciphers More...
#include <cryptlib.h>
Public Member Functions | |
| StreamTransformation & | Ref () |
| return a reference to this object, useful for passing a temporary object to a function that takes a non-const reference | |
| virtual unsigned int | MandatoryBlockSize () const |
| returns block size, if input must be processed in blocks, otherwise 1 | |
| virtual unsigned int | OptimalBlockSize () const |
| returns the input block size that is most efficient for this cipher More... | |
| virtual unsigned int | GetOptimalBlockSizeUsed () const |
| returns how much of the current block is used up | |
| virtual unsigned int | OptimalDataAlignment () const |
| returns how input should be aligned for optimal performance | |
| virtual void | ProcessData (byte *outString, const byte *inString, size_t length)=0 |
| encrypt or decrypt an array of bytes of specified length More... | |
| virtual void | ProcessLastBlock (byte *outString, const byte *inString, size_t length) |
| for ciphers where the last block of data is special, encrypt or decrypt the last block of data More... | |
| virtual unsigned int | MinLastBlockSize () const |
| returns the minimum size of the last block, 0 indicating the last block is not special | |
| void | ProcessString (byte *inoutString, size_t length) |
| same as ProcessData(inoutString, inoutString, length) | |
| void | ProcessString (byte *outString, const byte *inString, size_t length) |
| same as ProcessData(outString, inString, length) | |
| byte | ProcessByte (byte input) |
| implemented as {ProcessData(&input, &input, 1); return input;} | |
| virtual bool | IsRandomAccess () const =0 |
| returns whether this cipher supports random access | |
| virtual void | Seek (lword n) |
| for random access ciphers, seek to an absolute position | |
| virtual bool | IsSelfInverting () const =0 |
| returns whether this transformation is self-inverting (e.g. xor with a keystream) | |
| virtual bool | IsForwardTransformation () const =0 |
| returns whether this is an encryption object | |
| virtual std::string | AlgorithmName () const |
| returns name of this algorithm, not universally implemented yet | |
| virtual Clonable * | Clone () const |
| this is not implemented by most classes yet | |
interface for the data processing part of stream ciphers
Definition at line 469 of file cryptlib.h.
|
inlinevirtual |
returns the input block size that is most efficient for this cipher
Reimplemented in ECB_OneWay.
Definition at line 480 of file cryptlib.h.
|
pure virtual |
encrypt or decrypt an array of bytes of specified length
Implemented in CBC_Decryption, CBC_Encryption, ECB_OneWay, AuthenticatedSymmetricCipherBase, Weak1::ARC4_Base, and PublicBlumBlumShub.
|
virtual |
for ciphers where the last block of data is special, encrypt or decrypt the last block of data
For now the only use of this function is for CBC-CTS mode.
Reimplemented in CBC_CTS_Decryption, and CBC_CTS_Encryption.
1.8.11