Virgil Security Crypto library
1.8.2
|
This class provides high-level interface to encrypt / decrypt data using Virgil Security keys. More...
#include <VirgilCipher.h>
Public Member Functions | |
virtual | ~VirgilCipher () throw () |
Dispose used resources. | |
VirgilByteArray | encrypt (const VirgilByteArray &data, bool embedContentInfo=false) |
Encrypt given data. More... | |
VirgilByteArray | decryptWithKey (const VirgilByteArray &encryptedData, const VirgilByteArray &recipientId, const VirgilByteArray &privateKey, const VirgilByteArray &privateKeyPassword=VirgilByteArray()) |
Decrypt given data for recipient defined by id and private key. More... | |
VirgilByteArray | decryptWithPassword (const VirgilByteArray &encryptedData, const VirgilByteArray &pwd) |
Decrypt given data for recipient defined by password. More... | |
Public Member Functions inherited from virgil::crypto::VirgilCipherBase | |
VirgilCipherBase () | |
Initialize randomization module used by encryption. | |
virtual | ~VirgilCipherBase () throw () |
Dispose used resources. | |
void | addKeyRecipient (const VirgilByteArray &recipientId, const VirgilByteArray &publicKey) |
Add recipient defined with id and public key. | |
void | removeKeyRecipient (const VirgilByteArray &recipientId) |
Remove recipient with given id. More... | |
bool | keyRecipientExists (const VirgilByteArray &recipientId) const |
Check whether recipient with given identifier exists. More... | |
void | addPasswordRecipient (const VirgilByteArray &pwd) |
Add recipient defined with password. | |
void | removePasswordRecipient (const VirgilByteArray &pwd) |
Remove recipient with given password. More... | |
void | removeAllRecipients () |
Remove all recipients. | |
VirgilCustomParams & | customParams () |
const VirgilCustomParams & | customParams () const |
Provide readonly access to the object that handles custom parameters. More... | |
VirgilByteArray | getContentInfo () const |
Returns encrypted data info. More... | |
void | setContentInfo (const VirgilByteArray &contentInfo) |
Create content info object from ASN.1 structure. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from virgil::crypto::VirgilCipherBase | |
static VirgilByteArray | computeShared (const VirgilByteArray &publicKey, const VirgilByteArray &privateKey, const VirgilByteArray &privateKeyPassword=VirgilByteArray()) |
Compute shared secret key on a given keys. More... | |
static size_t | defineContentInfoSize (const VirgilByteArray &data) |
Read content info size as part of the data. More... | |
Protected Member Functions inherited from virgil::crypto::VirgilCipherBase | |
VirgilByteArray | tryReadContentInfo (const VirgilByteArray &encryptedData) |
Make attempt to read content info from the encrypted data. More... | |
virgil::crypto::foundation::VirgilSymmetricCipher & | initEncryption () |
Configures symmetric cipher for encryption. More... | |
virgil::crypto::foundation::VirgilSymmetricCipher & | initDecryption (const VirgilByteArray &encryptedDataInfo, const VirgilByteArray &recipientId, const VirgilByteArray &privateKey, const VirgilByteArray &privateKeyPassword=VirgilByteArray()) |
Configures symmetric cipher for encryption. More... | |
virgil::crypto::foundation::VirgilSymmetricCipher & | initDecryptionWithPassword (const VirgilByteArray &pwd) |
Configures symmetric cipher for decryption based on the recipient's password. More... | |
virgil::crypto::foundation::VirgilSymmetricCipher & | initDecryptionWithKey (const VirgilByteArray &recipientId, const VirgilByteArray &privateKey, const VirgilByteArray &privateKeyPassword) |
Configures symmetric cipher for decryption based on the recipient's id and private key. More... | |
virgil::crypto::foundation::VirgilSymmetricCipher & | getSymmetricCipher () |
Return symmetric cipher configure by one of the methods: initEncryption(), initDecryptionWithPassword(), initDecryptionWithKey. | |
void | buildContentInfo () |
Build VirgilContentInfo object. More... | |
void | clearCipherInfo () |
Clear all information related to the cipher. More... | |
This class provides high-level interface to encrypt / decrypt data using Virgil Security keys.
VirgilByteArray virgil::crypto::VirgilCipher::decryptWithKey | ( | const VirgilByteArray & | encryptedData, |
const VirgilByteArray & | recipientId, | ||
const VirgilByteArray & | privateKey, | ||
const VirgilByteArray & | privateKeyPassword = VirgilByteArray() |
||
) |
Decrypt given data for recipient defined by id and private key.
VirgilByteArray virgil::crypto::VirgilCipher::decryptWithPassword | ( | const VirgilByteArray & | encryptedData, |
const VirgilByteArray & | pwd | ||
) |
Decrypt given data for recipient defined by password.
VirgilByteArray virgil::crypto::VirgilCipher::encrypt | ( | const VirgilByteArray & | data, |
bool | embedContentInfo = false |
||
) |
Encrypt given data.
data | - data to be encrypted. |
embedContentInfo | - determines whether to embed content info the the encrypted data, or not. |