|
Security Scol plugin
|
Password-based Encryptor. More...
#include <default.h>
Public Member Functions | |
| CRYPTOPP_CONSTANT (BLOCKSIZE=Info::BLOCKSIZE) | |
| CRYPTOPP_CONSTANT (KEYLENGTH=Info::KEYLENGTH) | |
| CRYPTOPP_CONSTANT (SALTLENGTH=Info::SALTLENGTH) | |
| CRYPTOPP_CONSTANT (DIGESTSIZE=Info::DIGESTSIZE) | |
| CRYPTOPP_CONSTANT (ITERATIONS=Info::ITERATIONS) | |
| DataEncryptor (const char *passphrase, BufferedTransformation *attachment=NULLPTR) | |
| Construct a DataEncryptor. | |
| DataEncryptor (const byte *passphrase, size_t passphraseLength, BufferedTransformation *attachment=NULLPTR) | |
| Construct a DataEncryptor. | |
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 ¶meters) |
| 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=NULLPTR) | |
| Construct a Filter. | |
| bool | Attachable () |
| Determine if attachable. | |
| BufferedTransformation * | AttachedTransformation () |
| Retrieve attached transformation. | |
| const BufferedTransformation * | AttachedTransformation () const |
| Retrieve attached transformation. | |
| void | Detach (BufferedTransformation *newAttachment=NULLPTR) |
| 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 ¶meters=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) |
| size_t | PutWord32 (word32 value, ByteOrder order=BIG_ENDIAN_ORDER, bool blocking=true) |
| size_t | PutWord64 (word64 value, ByteOrder order=BIG_ENDIAN_ORDER, bool blocking=true) |
| 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. | |
Protected Member Functions | |
| void | FirstPut (const byte *) |
| void | LastPut (const byte *inString, size_t length) |
| Input the last block of data. | |
Protected Member Functions inherited from FilterWithBufferedInput | |
| virtual bool | DidFirstPut () const |
| virtual size_t | GetFirstPutSize () const |
| virtual size_t | GetBlockPutSize () const |
| virtual size_t | GetLastPutSize () const |
| virtual void | InitializeDerivedAndReturnNewSizes (const NameValuePairs ¶meters, size_t &firstSize, size_t &blockSize, size_t &lastSize) |
| virtual void | InitializeDerived (const NameValuePairs ¶meters) |
| virtual void | NextPutSingle (const byte *inString) |
| virtual void | FlushDerived () |
| size_t | PutMaybeModifiable (byte *begin, size_t length, int messageEnd, bool blocking, bool modifiable) |
| void | NextPutMaybeModifiable (byte *inString, size_t length, bool modifiable) |
| virtual int | NextPut (const byte *inString, size_t length) |
Protected Member Functions inherited from Filter | |
| virtual BufferedTransformation * | NewDefaultAttachment () const |
| void | Insert (Filter *nextFilter) |
| virtual bool | ShouldPropagateMessageEnd () const |
| virtual bool | ShouldPropagateMessageSeriesEnd () const |
| void | PropagateInitialize (const NameValuePairs ¶meters, int propagation) |
| size_t | Output (int outputSite, const byte *inString, size_t length, int messageEnd, bool blocking, const std::string &channel=DEFAULT_CHANNEL) |
| Forward processed data on to attached transformation. | |
| size_t | OutputModifiable (int outputSite, byte *inString, size_t length, int messageEnd, bool blocking, const std::string &channel=DEFAULT_CHANNEL) |
| Output multiple bytes that may be modified by callee. | |
| bool | OutputMessageEnd (int outputSite, int propagation, bool blocking, const std::string &channel=DEFAULT_CHANNEL) |
| Signals the end of messages to the object. | |
| bool | OutputFlush (int outputSite, bool hardFlush, int propagation, bool blocking, const std::string &channel=DEFAULT_CHANNEL) |
| Flush buffered input and/or output, with signal propagation. | |
| bool | OutputMessageSeriesEnd (int outputSite, int propagation, bool blocking, const std::string &channel=DEFAULT_CHANNEL) |
| Marks the end of a series of messages, with signal propagation. | |
Additional Inherited Members | |
Static Protected Member Functions inherited from BufferedTransformation | |
| static int | DecrementPropagation (int propagation) |
| Decrements the propagation count while clamping at 0. | |
Protected Attributes inherited from ProxyFilter | |
| member_ptr< BufferedTransformation > | m_filter |
Protected Attributes inherited from FilterWithBufferedInput | |
| size_t | m_firstSize |
| size_t | m_blockSize |
| size_t | m_lastSize |
| bool | m_firstInputDone |
| BlockQueue | m_queue |
Protected Attributes inherited from Filter | |
| size_t | m_inputPosition |
| int | m_continueAt |
Password-based Encryptor.
| BC | BlockCipher based class used for encryption |
| H | HashTransformation based class used for mashing |
| Info | Constants used by the algorithms |
Crypto++ 5.6.5 and earlier used the legacy algorithms, including DES_EDE2 and SHA1. Crypto++ 5.7 switched to AES and SHA256.
| DataEncryptor< BC, H, Info >::DataEncryptor | ( | const char * | passphrase, |
| BufferedTransformation * | attachment = NULLPTR |
||
| ) |
Construct a DataEncryptor.
| passphrase | a C-String password |
| attachment | a BufferedTransformation to attach to this object |
Definition at line 85 of file default.cpp.
| DataEncryptor< BC, H, Info >::DataEncryptor | ( | const byte * | passphrase, |
| size_t | passphraseLength, | ||
| BufferedTransformation * | attachment = NULLPTR |
||
| ) |
Construct a DataEncryptor.
| passphrase | a byte string password |
| passphraseLength | the length of the byte string password |
| attachment | a BufferedTransformation to attach to this object |
Definition at line 93 of file default.cpp.
|
protectedvirtual |
Implements FilterWithBufferedInput.
Definition at line 101 of file default.cpp.
|
protectedvirtual |
Input the last block of data.
| inString | the input byte buffer |
| length | the size of the input buffer, in bytes |
LastPut() processes the last block of data and signals attached filters to do the same. LastPut() is always called. The pseudo algorithm for the logic is:
if totalLength < firstSize then length == totalLength
else if totalLength <= firstSize+lastSize then length == totalLength-firstSize
else lastSize <= length < lastSize+blockSize
Implements FilterWithBufferedInput.
Definition at line 133 of file default.cpp.