|
Security Scol plugin
|
Interface for public-key decryptors. More...
#include <cryptlib.h>
Public Member Functions | |
| virtual DecodingResult | Decrypt (RandomNumberGenerator &rng, const byte *ciphertext, size_t ciphertextLength, byte *plaintext, const NameValuePairs ¶meters=g_nullNameValuePairs) const =0 |
| Decrypt a byte string. | |
| virtual BufferedTransformation * | CreateDecryptionFilter (RandomNumberGenerator &rng, BufferedTransformation *attachment=NULLPTR, const NameValuePairs ¶meters=g_nullNameValuePairs) const |
| Create a new decryption filter. | |
| DecodingResult | FixedLengthDecrypt (RandomNumberGenerator &rng, const byte *ciphertext, byte *plaintext, const NameValuePairs ¶meters=g_nullNameValuePairs) const |
| Decrypt a fixed size ciphertext. | |
Public Member Functions inherited from PK_CryptoSystem | |
| virtual size_t | MaxPlaintextLength (size_t ciphertextLength) const =0 |
| Provides the maximum length of plaintext for a given ciphertext length. | |
| virtual size_t | CiphertextLength (size_t plaintextLength) const =0 |
| Calculate the length of ciphertext given length of plaintext. | |
| virtual bool | ParameterSupported (const char *name) const =0 |
| Determines whether this object supports the use of a named parameter. | |
| virtual size_t | FixedCiphertextLength () const |
| Provides the fixed ciphertext length, if one exists. | |
| virtual size_t | FixedMaxPlaintextLength () const |
| Provides the maximum plaintext length given a fixed ciphertext length. | |
Public Member Functions inherited from PrivateKeyAlgorithm | |
| CryptoMaterial & | AccessMaterial () |
| Retrieves a reference to a Private Key. | |
| const CryptoMaterial & | GetMaterial () const |
| Retrieves a reference to a Private Key. | |
| virtual PrivateKey & | AccessPrivateKey ()=0 |
| Retrieves a reference to a Private Key. | |
| virtual const PrivateKey & | GetPrivateKey () const |
| Retrieves a reference to a Private Key. | |
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. | |
Interface for public-key decryptors.
Definition at line 2732 of file cryptlib.h.
|
inlinevirtual |
Definition at line 2735 of file cryptlib.h.
|
virtual |
Create a new decryption filter.
| rng | a RandomNumberGenerator derived class |
| attachment | an attached transformation |
| parameters | a set of NameValuePairs to initialize this object |
Definition at line 933 of file cryptlib.cpp.
|
pure virtual |
Decrypt a byte string.
| rng | a RandomNumberGenerator derived class |
| ciphertext | the encrypted byte buffer |
| ciphertextLength | the size of the encrypted byte buffer |
| plaintext | a byte buffer to hold the decrypted string |
| parameters | a set of NameValuePairs to initialize this object |
If DecodingResult::isValidCoding is true, then DecodingResult::messageLength is valid and holds the actual length of the plaintext recovered. The result is undefined if decryption failed. If DecodingResult::isValidCoding is false, then DecodingResult::messageLength is undefined.
COUNTOF(plaintext) == MaxPlaintextLength(ciphertextLength) ensures the output byte buffer is large enough Implemented in DL_DecryptorBase< T >.
|
inline |
Decrypt a fixed size ciphertext.
| rng | a RandomNumberGenerator derived class |
| ciphertext | the encrypted byte buffer |
| plaintext | a byte buffer to hold the decrypted string |
| parameters | a set of NameValuePairs to initialize this object |
If DecodingResult::isValidCoding is true, then DecodingResult::messageLength is valid and holds the actual length of the plaintext recovered. The result is undefined if decryption failed. If DecodingResult::isValidCoding is false, then DecodingResult::messageLength is undefined.
COUNTOF(plaintext) == MaxPlaintextLength(ciphertextLength) ensures the output byte buffer is large enough Definition at line 2777 of file cryptlib.h.