xmlencryption::Decrypter Class Reference

Wrapper API for XML Decryption functionality. More...

#include <xmltooling/encryption/Decrypter.h>

List of all members.

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.


Detailed Description

Wrapper API for XML Decryption functionality.


Constructor & Destructor Documentation

xmlencryption::Decrypter::Decrypter ( const xmltooling::CredentialResolver credResolver = NULL,
xmltooling::CredentialCriteria criteria = NULL,
const EncryptedKeyResolver EKResolver = NULL 
) [inline]

Constructor.

Parameters:
credResolver locked credential resolver to supply decryption keys
criteria optional external criteria to use with resolver
EKResolver locates an EncryptedKey pertaining to the EncryptedData


Member Function Documentation

void xmlencryption::Decrypter::decryptData ( std::ostream &  out,
const EncryptedData encryptedData,
const XMLCh *  recipient = NULL 
)

Decrypts the supplied information to an output stream.

Parameters:
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.

Parameters:
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.

Parameters:
encryptedData the data to decrypt
recipient identifier of decrypting entity for use in identifying multi-cast keys
Returns:
the decrypted DOM fragment

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.

Parameters:
encryptedData the data to decrypt
key the decryption key to use (it will not be freed internally)
Returns:
the decrypted DOM fragment

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.

Parameters:
encryptedKey the encrypted/wrapped key to decrypt
algorithm the algorithm associated with the decrypted key
Returns:
the decrypted key

void xmlencryption::Decrypter::setEncryptedKeyResolver ( const EncryptedKeyResolver EKResolver  )  [inline]

Replace the current EncryptedKeyResolver interface, if any, with a new one.

Parameters:
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.

Parameters:
resolver the locked CredentialResolver to attach, or NULL to clear
criteria optional external criteria to use with resolver


The documentation for this class was generated from the following file:
Generated on Mon Oct 19 14:18:34 2009 for xmltooling by  doxygen 1.4.7