#include <XSECCryptoProvider.hpp>
Inheritance diagram for XSECCryptoProvider:
The instatiations of this class are used by the core library to create cryptographic objects necessary for the library to do its work without actually knowing any details at all about the provider library
Public Member Functions | |
Constructors and Destructors | |
XSECCryptoProvider () | |
virtual | ~XSECCryptoProvider () |
Hashing (Digest) Functions | |
virtual XSECCryptoHash * | hashSHA1 ()=0 |
Return a SHA1 implementation. | |
virtual XSECCryptoHash * | hashSHA (int length=160)=0 |
Return a SHA implementation. | |
virtual XSECCryptoHash * | hashHMACSHA1 ()=0 |
Return a HMAC SHA1 implementation. | |
virtual XSECCryptoHash * | hashHMACSHA (int length=160)=0 |
Return a HMAC SHA(1-512) implementation. | |
virtual XSECCryptoHash * | hashMD5 ()=0 |
Return a MD5 implementation. | |
virtual XSECCryptoHash * | hashHMACMD5 ()=0 |
Return a HMAC MD5 implementation. | |
virtual XSECCryptoKeyHMAC * | keyHMAC (void)=0 |
Return a HMAC key. | |
Encoding functions | |
virtual XSECCryptoBase64 * | base64 ()=0 |
Return a Base64 encoder/decoder implementation. | |
Keys and Certificates | |
virtual XSECCryptoKeyDSA * | keyDSA ()=0 |
Return a DSA key implementation object. | |
virtual XSECCryptoKeyRSA * | keyRSA ()=0 |
Return an RSA key implementation object. | |
virtual XSECCryptoX509 * | X509 ()=0 |
Return an X509 implementation object. | |
virtual bool | algorithmSupported (XSECCryptoSymmetricKey::SymmetricKeyType alg)=0 |
Determine whether a given algorithm is supported. | |
virtual bool | algorithmSupported (XSECCryptoHash::HashType alg)=0 |
Determine whether a given algorithm is supported. | |
virtual XSECCryptoSymmetricKey * | keySymmetric (XSECCryptoSymmetricKey::SymmetricKeyType alg)=0 |
Return a Symmetric Key implementation object. | |
virtual unsigned int | getRandom (unsigned char *buffer, unsigned int numOctets)=0 |
Obtain some random octets. | |
Information Functions | |
virtual const XMLCh * | getProviderName ()=0 |
Returns a string that identifies the Crypto Provider. |
|
|
|
|
|
Determine whether a given algorithm is supported. A call that can be used to determine whether a given digest algorithm is supported Implemented in OpenSSLCryptoProvider, and WinCAPICryptoProvider. |
|
Determine whether a given algorithm is supported. A call that can be used to determine whether a given symmetric algorithm is supported Implemented in OpenSSLCryptoProvider, and WinCAPICryptoProvider. |
|
Return a Base64 encoder/decoder implementation. Call used by the library to obtain a Base64 encoder/decoder.
Implemented in OpenSSLCryptoProvider, and WinCAPICryptoProvider. |
|
Returns a string that identifies the Crypto Provider.
Implemented in OpenSSLCryptoProvider, and WinCAPICryptoProvider. |
|
Obtain some random octets. For generation of IVs and the like, the library needs to be able to obtain "random" octets. The library uses this call to the crypto provider to obtain what it needs.
Implemented in OpenSSLCryptoProvider, and WinCAPICryptoProvider. |
|
Return a HMAC MD5 implementation. Call used by the library to obtain a HMAC MD5 object from the provider. The caller will need to set the key in the hash object with an XSECCryptoKeyHMAC using XSECCryptoHash::setKey()
Implemented in OpenSSLCryptoProvider, and WinCAPICryptoProvider. |
|
Return a HMAC SHA(1-512) implementation. Call used by the library to obtain a HMAC SHA object from the provider. The caller will need to set the key in the hash object with an XSECCryptoKeyHMAC using XSECCryptoHash::setKey()
Implemented in OpenSSLCryptoProvider, and WinCAPICryptoProvider. |
|
Return a HMAC SHA1 implementation. Call used by the library to obtain a HMAC SHA1 object from the provider. The caller will need to set the key in the hash object with an XSECCryptoKeyHMAC using XSECCryptoHash::setKey()
Implemented in OpenSSLCryptoProvider, and WinCAPICryptoProvider. |
|
Return a MD5 implementation. Call used by the library to obtain a MD5 object from the provider.
Implemented in OpenSSLCryptoProvider, and WinCAPICryptoProvider. |
|
Return a SHA implementation. Call used by the library to obtain a SHA object from the provider. Size of hash determined by length argument (160 = SHA1)
Implemented in OpenSSLCryptoProvider, and WinCAPICryptoProvider. |
|
Return a SHA1 implementation. Call used by the library to obtain a SHA1 object from the provider.
Implemented in OpenSSLCryptoProvider, and WinCAPICryptoProvider. |
|
Return a DSA key implementation object. Call used by the library to obtain a DSA key object.
Implemented in OpenSSLCryptoProvider, and WinCAPICryptoProvider. |
|
Return a HMAC key. Sometimes the library needs to create an HMAC key (notably within the XKMS utilities. This function allows the library to obtain a key that can then have a value set within it. Implemented in OpenSSLCryptoProvider, and WinCAPICryptoProvider. |
|
Return an RSA key implementation object. Call used by the library to obtain an RSA key object.
Implemented in OpenSSLCryptoProvider, and WinCAPICryptoProvider. |
|
Return a Symmetric Key implementation object. Call used by the library to obtain a bulk encryption object.
Implemented in OpenSSLCryptoProvider, and WinCAPICryptoProvider. |
|
Return an X509 implementation object. Call used by the library to obtain an object that can work with X509 certificates.
Implemented in OpenSSLCryptoProvider, and WinCAPICryptoProvider. |