DefaultDecryptorWithMAC Struct Reference

Password-based decryptor with MAC. More...

`#include <default.h>`

Inheritance diagram for DefaultDecryptorWithMAC:

## Additional Inherited Members

Public Member Functions inherited from DataDecryptorWithMAC< DefaultBlockCipher, DefaultHashModule, DefaultMAC, DefaultParametersInfo >
| DataDecryptorWithMAC (const char *passphrase, BufferedTransformation *attachment=NULL, bool throwException=true)
| Constructs a DataDecryptor.
| DataDecryptorWithMAC (const byte *passphrase, size_t passphraseLength, BufferedTransformation *attachment=NULL, bool throwException=true)
| Constructs a DataDecryptor.
DataDecryptor< DefaultBlockCipher, DefaultHashModule, DefaultParametersInfo >::State | CurrentState () const
bool | CheckLastMAC () const
Public Member Functions inherited from ProxyFilter
| ProxyFilter (BufferedTransformation *filter, size_t firstSize, size_t lastSize, BufferedTransformation *attachment)
| Construct a ProxyFilter.
bool | IsolatedFlush (bool hardFlush, bool blocking)
| Flushes data buffered by this object, without signal propagation.
void | SetFilter (Filter *filter)
| Sets the OutputProxy filter.
void | NextPutMultiple (const byte *s, size_t len)
void | NextPutModifiable (byte *inString, size_t length)
Public Member Functions inherited from FilterWithBufferedInput
| FilterWithBufferedInput (BufferedTransformation *attachment)
| Construct a FilterWithBufferedInput with an attached transformation.
| FilterWithBufferedInput (size_t firstSize, size_t blockSize, size_t lastSize, BufferedTransformation *attachment)
| Construct a FilterWithBufferedInput with an attached transformation.
void | IsolatedInitialize (const NameValuePairs &parameters)
| Initialize or reinitialize this object, without signal propagation.
size_t | Put2 (const byte *inString, size_t length, int messageEnd, bool blocking)
| Input multiple bytes for processing.
size_t | PutModifiable2 (byte *inString, size_t length, int messageEnd, bool blocking)
| Input multiple bytes that may be modified by callee.
void | ForceNextPut ()
| Flushes data buffered by this object.
Public Member Functions inherited from Filter
| Filter (BufferedTransformation *attachment=NULL)
| Construct a Filter.
bool | Attachable ()
| Determine if attachable.
BufferedTransformation * | AttachedTransformation ()
| Retrieve attached transformation.
const BufferedTransformation * | AttachedTransformation () const
| Retrieve attached transformation.
void | Detach (BufferedTransformation *newAttachment=NULL)
| Replace an attached transformation.
size_t | TransferTo2 (BufferedTransformation &target, lword &transferBytes, const std::string &channel=DEFAULT_CHANNEL, bool blocking=true)
| Transfer bytes from this object to another BufferedTransformation.
size_t | CopyRangeTo2 (BufferedTransformation &target, lword &begin, lword end=LWORD_MAX, const std::string &channel=DEFAULT_CHANNEL, bool blocking=true) const
| Copy bytes from this object to another BufferedTransformation.
void | Initialize (const NameValuePairs &parameters=g_nullNameValuePairs, int propagation=-1)
| Initialize or reinitialize this object, with signal propagation.
bool | Flush (bool hardFlush, int propagation=-1, bool blocking=true)
| Flush buffered input and/or output, with signal propagation.
bool | MessageSeriesEnd (int propagation=-1, bool blocking=true)
| Marks the end of a series of messages, with signal propagation.
Public Member Functions inherited from BufferedTransformation
| BufferedTransformation ()
| Construct a BufferedTransformation.
BufferedTransformation & | Ref ()
| Provides a reference to this object.
virtual void | Attach (BufferedTransformation *newAttachment)
| Add newAttachment to the end of attachment chain.
size_t | Put (byte inByte, bool blocking=true)
| Input a byte for processing.
size_t | Put (const byte *inString, size_t length, bool blocking=true)
| Input a byte buffer for processing.
size_t | PutWord16 (word16 value, ByteOrder order=BIG_ENDIAN_ORDER, bool blocking=true)
| Input a 16-bit word for processing.
size_t | PutWord32 (word32 value, ByteOrder order=BIG_ENDIAN_ORDER, bool blocking=true)
| Input a 32-bit word for processing.
size_t | PutWord64 (word64 value, ByteOrder order=BIG_ENDIAN_ORDER, bool blocking=true)
| Input a 64-bit word for processing.
virtual byte * | CreatePutSpace (size_t &size)
| Request space which can be written into by the caller.
virtual bool | CanModifyInput () const
| Determines whether input can be modified by the callee.
size_t | PutModifiable (byte *inString, size_t length, bool blocking=true)
| Input multiple bytes that may be modified by callee.
bool | MessageEnd (int propagation=-1, bool blocking=true)
| Signals the end of messages to the object.
size_t | PutMessageEnd (const byte *inString, size_t length, int propagation=-1, bool blocking=true)
| Input multiple bytes for processing and signal the end of a message.
unsigned int | GetMaxWaitObjectCount () const
| Retrieves the maximum number of waitable objects.
void | GetWaitObjects (WaitObjectContainer &container, CallStack const &callStack)
| Retrieves waitable objects.
virtual bool | IsolatedMessageSeriesEnd (bool blocking)
| Marks the end of a series of messages, without signal propagation.
virtual void | SetAutoSignalPropagation (int propagation)
| Set propagation of automatically generated and transferred signals.
virtual int | GetAutoSignalPropagation () const
| Retrieve automatic signal propagation value.
virtual lword | MaxRetrievable () const
| Provides the number of bytes ready for retrieval.
virtual bool | AnyRetrievable () const
| Determines whether bytes are ready for retrieval.
virtual size_t | Get (byte &outByte)
| Retrieve a 8-bit byte.
virtual size_t | Get (byte *outString, size_t getMax)
| Retrieve a block of bytes.
virtual size_t | Peek (byte &outByte) const
| Peek a 8-bit byte.
virtual size_t | Peek (byte *outString, size_t peekMax) const
| Peek a block of bytes.
size_t | GetWord16 (word16 &value, ByteOrder order=BIG_ENDIAN_ORDER)
| Retrieve a 16-bit word.
size_t | GetWord32 (word32 &value, ByteOrder order=BIG_ENDIAN_ORDER)
| Retrieve a 32-bit word.
size_t | GetWord64 (word64 &value, ByteOrder order=BIG_ENDIAN_ORDER)
| Retrieve a 64-bit word.
size_t | PeekWord16 (word16 &value, ByteOrder order=BIG_ENDIAN_ORDER) const
| Peek a 16-bit word.
size_t | PeekWord32 (word32 &value, ByteOrder order=BIG_ENDIAN_ORDER) const
| Peek a 32-bit word.
size_t | PeekWord64 (word64 &value, ByteOrder order=BIG_ENDIAN_ORDER) const
| Peek a 64-bit word.
lword | TransferTo (BufferedTransformation &target, lword transferMax=LWORD_MAX, const std::string &channel=DEFAULT_CHANNEL)
| move transferMax bytes of the buffered output to target as input
virtual lword | Skip (lword skipMax=LWORD_MAX)
| Discard skipMax bytes from the output buffer.
lword | CopyTo (BufferedTransformation &target, lword copyMax=LWORD_MAX, const std::string &channel=DEFAULT_CHANNEL) const
| Copy bytes from this object to another BufferedTransformation.
lword | CopyRangeTo (BufferedTransformation &target, lword position, lword copyMax=LWORD_MAX, const std::string &channel=DEFAULT_CHANNEL) const
| Copy bytes from this object using an index to another BufferedTransformation.
virtual lword | TotalBytesRetrievable () const
| Provides the number of bytes ready for retrieval.
virtual unsigned int | NumberOfMessages () const
| Provides the number of meesages processed by this object.
virtual bool | AnyMessages () const
| Determines if any messages are available for retrieval.
virtual bool | GetNextMessage ()
| Start retrieving the next message.
virtual unsigned int | SkipMessages (unsigned int count=UINT_MAX)
| Skip a number of meessages.
unsigned int | TransferMessagesTo (BufferedTransformation &target, unsigned int count=UINT_MAX, const std::string &channel=DEFAULT_CHANNEL)
| Transfer messages from this object to another BufferedTransformation.
unsigned int | CopyMessagesTo (BufferedTransformation &target, unsigned int count=UINT_MAX, const std::string &channel=DEFAULT_CHANNEL) const
| Copy messages from this object to another BufferedTransformation.
virtual void | SkipAll ()
| Skip all messages in the series.
void | TransferAllTo (BufferedTransformation &target, const std::string &channel=DEFAULT_CHANNEL)
| Transfer all bytes from this object to another BufferedTransformation.
void | CopyAllTo (BufferedTransformation &target, const std::string &channel=DEFAULT_CHANNEL) const
| Copy messages from this object to another BufferedTransformation.
virtual bool | GetNextMessageSeries ()
| Retrieve the next message in a series.
virtual unsigned int | NumberOfMessagesInThisSeries () const
| Provides the number of messages in a series.
virtual unsigned int | NumberOfMessageSeries () const
| Provides the number of messages in a series.
size_t | TransferMessagesTo2 (BufferedTransformation &target, unsigned int &messageCount, const std::string &channel=DEFAULT_CHANNEL, bool blocking=true)
| Transfer messages from this object to another BufferedTransformation.
size_t | TransferAllTo2 (BufferedTransformation &target, const std::string &channel=DEFAULT_CHANNEL, bool blocking=true)
| Transfer all bytes from this object to another BufferedTransformation.
size_t | ChannelPut (const std::string &channel, byte inByte, bool blocking=true)
| Input a byte for processing on a channel.
size_t | ChannelPut (const std::string &channel, const byte *inString, size_t length, bool blocking=true)
| Input a byte buffer for processing on a channel.
size_t | ChannelPutModifiable (const std::string &channel, byte *inString, size_t length, bool blocking=true)
| Input multiple bytes that may be modified by callee on a channel.
size_t | ChannelPutWord16 (const std::string &channel, word16 value, ByteOrder order=BIG_ENDIAN_ORDER, bool blocking=true)
| Input a 16-bit word for processing on a channel.
size_t | ChannelPutWord32 (const std::string &channel, word32 value, ByteOrder order=BIG_ENDIAN_ORDER, bool blocking=true)
| Input a 32-bit word for processing on a channel.
size_t | ChannelPutWord64 (const std::string &channel, word64 value, ByteOrder order=BIG_ENDIAN_ORDER, bool blocking=true)
| Input a 64-bit word for processing on a channel.
bool | ChannelMessageEnd (const std::string &channel, int propagation=-1, bool blocking=true)
| Signal the end of a message.
size_t | ChannelPutMessageEnd (const std::string &channel, const byte *inString, size_t length, int propagation=-1, bool blocking=true)
| Input multiple bytes for processing and signal the end of a message.
virtual byte * | ChannelCreatePutSpace (const std::string &channel, size_t &size)
| Request space which can be written into by the caller.
virtual size_t | ChannelPut2 (const std::string &channel, const byte *inString, size_t length, int messageEnd, bool blocking)
| Input multiple bytes for processing on a channel.
virtual size_t | ChannelPutModifiable2 (const std::string &channel, byte *inString, size_t length, int messageEnd, bool blocking)
| Input multiple bytes that may be modified by callee on a channel.
virtual bool | ChannelFlush (const std::string &channel, bool hardFlush, int propagation=-1, bool blocking=true)
| Flush buffered input and/or output on a channel.
virtual bool | ChannelMessageSeriesEnd (const std::string &channel, int propagation=-1, bool blocking=true)
| Marks the end of a series of messages on a channel.
virtual void | SetRetrievalChannel (const std::string &channel)
| Sets the default retrieval channel.
Public Member Functions inherited from Algorithm
| Algorithm (bool checkSelfTestStatus=true)
| Interface for all crypto algorithms.
virtual std::string | AlgorithmName () const
| Provides the name of this algorithm.
virtual std::string | AlgorithmProvider () const
| Retrieve the provider of this algorithm.
Public Member Functions inherited from Clonable
virtual Clonable * | Clone () const
| Copies this object.
Public Member Functions inherited from Waitable
bool | Wait (unsigned long milliseconds, CallStack const &callStack)
| Wait on this object.
Static Public Attributes inherited from DataDecryptorWithMAC< DefaultBlockCipher, DefaultHashModule, DefaultMAC, DefaultParametersInfo >
static const int | BLOCKSIZE
static const int | KEYLENGTH
static const int | SALTLENGTH
static const int | DIGESTSIZE
static const int | ITERATIONS

## Detailed Description

Password-based decryptor with MAC.

Crypto++ 5.6.5 and earlier used the legacy algorithms, including DES_EDE2 and SHA1. Crypto++ 5.7 switched to AES and SHA256. The updated algorithms are available with the `Default*` classes, and the old algorithms are available with the `Legacy*` classes.

Definition at line 293 of file default.h.

The documentation for this struct was generated from the following file:

- default.h