#include <xmltooling/encryption/Decrypter.h>
Public Member Functions | |
Decrypter (const xmltooling::CredentialResolver *credResolver=NULL, xmltooling::CredentialCriteria *criteria=NULL, const EncryptedKeyResolver *EKResolver=NULL) | |
Constructor. | |
void | setEncryptedKeyResolver (const EncryptedKeyResolver *EKResolver) |
Replace the current EncryptedKeyResolver interface, if any, with a new one. | |
void | setKEKResolver (const xmltooling::CredentialResolver *resolver, xmltooling::CredentialCriteria *criteria) |
Replace the current CredentialResolver interface, if any, with a new one. | |
xercesc::DOMDocumentFragment * | decryptData (const EncryptedData &encryptedData, XSECCryptoKey *key) |
Decrypts the supplied information using the supplied key, and returns the resulting as a DOM fragment owned by the document associated with the marshalled EncryptedData object. | |
xercesc::DOMDocumentFragment * | decryptData (const EncryptedData &encryptedData, const XMLCh *recipient=NULL) |
Decrypts the supplied information and returns the resulting as a DOM fragment owned by the document associated with the marshalled EncryptedData object. | |
void | decryptData (std::ostream &out, const EncryptedData &encryptedData, XSECCryptoKey *key) |
Decrypts the supplied information to an output stream. | |
void | decryptData (std::ostream &out, const EncryptedData &encryptedData, const XMLCh *recipient=NULL) |
Decrypts the supplied information to an output stream. | |
XSECCryptoKey * | decryptKey (const EncryptedKey &encryptedKey, const XMLCh *algorithm) |
Decrypts the supplied information and returns the resulting key. |
xmlencryption::Decrypter::Decrypter | ( | const xmltooling::CredentialResolver * | credResolver = NULL , |
|
xmltooling::CredentialCriteria * | criteria = NULL , |
|||
const EncryptedKeyResolver * | EKResolver = NULL | |||
) | [inline] |
Constructor.
credResolver | locked credential resolver to supply decryption keys | |
criteria | optional external criteria to use with resolver | |
EKResolver | locates an EncryptedKey pertaining to the EncryptedData |
void xmlencryption::Decrypter::decryptData | ( | std::ostream & | out, | |
const EncryptedData & | encryptedData, | |||
const XMLCh * | recipient = NULL | |||
) |
Decrypts the supplied information to an output stream.
out | output stream to receive the decrypted data | |
encryptedData | the data to decrypt | |
recipient | identifier of decrypting entity for use in identifying multi-cast keys |
void xmlencryption::Decrypter::decryptData | ( | std::ostream & | out, | |
const EncryptedData & | encryptedData, | |||
XSECCryptoKey * | key | |||
) |
Decrypts the supplied information to an output stream.
out | output stream to receive the decrypted data | |
encryptedData | the data to decrypt | |
key | the decryption key to use (it will not be freed internally) |
xercesc::DOMDocumentFragment* xmlencryption::Decrypter::decryptData | ( | const EncryptedData & | encryptedData, | |
const XMLCh * | recipient = NULL | |||
) |
Decrypts the supplied information and returns the resulting as a DOM fragment owned by the document associated with the marshalled EncryptedData object.
Note that the DOM nodes will be invalidated once that document is released. The caller should therefore process the DOM fragment as required and drop all references to it before that happens. The usual approach should be to unmarshall the DOM and then release it, or the DOM can also be imported into a separately owned document.
encryptedData | the data to decrypt | |
recipient | identifier of decrypting entity for use in identifying multi-cast keys |
xercesc::DOMDocumentFragment* xmlencryption::Decrypter::decryptData | ( | const EncryptedData & | encryptedData, | |
XSECCryptoKey * | key | |||
) |
Decrypts the supplied information using the supplied key, and returns the resulting as a DOM fragment owned by the document associated with the marshalled EncryptedData object.
Note that the DOM nodes will be invalidated once that document is released. The caller should therefore process the DOM fragment as required and drop all references to it before that happens. The usual approach should be to unmarshall the DOM and then release it, or the DOM can also be imported into a separately owned document.
encryptedData | the data to decrypt | |
key | the decryption key to use (it will not be freed internally) |
XSECCryptoKey* xmlencryption::Decrypter::decryptKey | ( | const EncryptedKey & | encryptedKey, | |
const XMLCh * | algorithm | |||
) |
Decrypts the supplied information and returns the resulting key.
The caller is responsible for deleting the key. The algorithm of the key must be supplied by the caller based on knowledge of the associated EncryptedData information.
encryptedKey | the encrypted/wrapped key to decrypt | |
algorithm | the algorithm associated with the decrypted key |
void xmlencryption::Decrypter::setEncryptedKeyResolver | ( | const EncryptedKeyResolver * | EKResolver | ) | [inline] |
Replace the current EncryptedKeyResolver interface, if any, with a new one.
EKResolver | the EncryptedKeyResolver to attach |
void xmlencryption::Decrypter::setKEKResolver | ( | const xmltooling::CredentialResolver * | resolver, | |
xmltooling::CredentialCriteria * | criteria | |||
) | [inline] |
Replace the current CredentialResolver interface, if any, with a new one.
resolver | the locked CredentialResolver to attach, or NULL to clear | |
criteria | optional external criteria to use with resolver |