Crypto++
5.6.3
Free C++ class library of cryptographic schemes
|
Public Member Functions | |
void | Encrypt (RandomNumberGenerator &rng, const byte *plaintext, size_t plaintextLength, byte *ciphertext, const NameValuePairs ¶meters=g_nullNameValuePairs) const |
Encrypt a byte string. More... | |
bool | ParameterSupported (const char *name) const |
size_t | FixedMaxPlaintextLength () const |
size_t | FixedCiphertextLength () const |
size_t | MaxPlaintextLength (size_t ciphertextLength) const |
size_t | CiphertextLength (size_t plaintextLength) const |
virtual BufferedTransformation * | CreateEncryptionFilter (RandomNumberGenerator &rng, BufferedTransformation *attachment=NULL, const NameValuePairs ¶meters=g_nullNameValuePairs) const |
Create a new encryption filter. More... | |
CryptoMaterial & | AccessMaterial () |
returns a reference to the crypto material used by this object | |
const CryptoMaterial & | GetMaterial () const |
returns a const reference to the crypto material used by this object | |
virtual PublicKey & | AccessPublicKey ()=0 |
virtual const PublicKey & | GetPublicKey () const |
void | BERDecode (BufferedTransformation &bt) |
for backwards compatibility, calls AccessMaterial().Load(bt) | |
void | DEREncode (BufferedTransformation &bt) const |
for backwards compatibility, calls GetMaterial().Save(bt) | |
virtual std::string | AlgorithmName () const |
Provides the name of this algorithm. More... | |
virtual Clonable * | Clone () const |
Copies this object. More... | |
|
virtual |
Encrypt a byte string.
rng | a RandomNumberGenerator derived class |
plaintext | the plaintext byte buffer |
plaintextLength | the size of the plaintext byte buffer |
ciphertext | a byte buffer to hold the encrypted string |
parameters | additional configuration options |
CiphertextLength(plaintextLength) != 0
ensures the plaintext isn't too large COUNTOF(ciphertext) == CiphertextLength(plaintextLength)
ensures the output byte buffer is large enough. Implements PK_Encryptor.
Definition at line 153 of file pubkey.cpp.
References IntToString(), and SecBlock< T, A >::size().
|
virtualinherited |
Create a new encryption filter.
Definition at line 816 of file cryptlib.cpp.
|
inlinevirtualinherited |
Provides the name of this algorithm.
The standard algorithm name can be a name like AES or AES/GCM. Some algorithms do not have standard names yet. For example, there is no standard algorithm name for Shoup's ECIES.
Reimplemented in AuthenticatedSymmetricCipher, SignatureVerificationFilter, SignerFilter, AuthenticatedDecryptionFilter, HashVerificationFilter, HashFilter, StreamTransformationFilter, ClassNullRNG, BitBucket, RDSEED, DH_Domain< GROUP_PARAMETERS, COFACTOR_OPTION >, HMAC< T >, RDRAND, CRC32, GCM_Base, Adler32, EAX_Base, CCM_Base, SHA3, and VMAC_Base.
Definition at line 488 of file cryptlib.h.
Referenced by VariableRounds< 6, 2 >::StaticGetDefaultRounds().
|
inlinevirtualinherited |
Copies this object.
NotImplemented |
Definition at line 464 of file cryptlib.h.