#include <WinCAPICryptoProvider.hpp>
Inheritance diagram for WinCAPICryptoProvider:
Windows CAPI Specific methods | |
HCRYPTPROV | getProviderDSS (void) |
Returns the Crypto Provider being used for DSS. | |
HCRYPTPROV | getProviderRSA (void) |
Returns the Provider being used for RSA functions. | |
HCRYPTPROV | getApacheKeyStore (void) |
Return the internal key store provider. | |
virtual bool | algorithmSupported (XSECCryptoSymmetricKey::SymmetricKeyType alg) |
Determine whether a given algorithm is supported. | |
virtual XSECCryptoSymmetricKey * | keySymmetric (XSECCryptoSymmetricKey::SymmetricKeyType alg) |
Return a Symmetric Key implementation object. | |
virtual unsigned int | getRandom (unsigned char *buffer, unsigned int numOctets) |
Obtain some random octets. | |
BYTE * | b642WinBN (const char *b64, unsigned int b64Len, unsigned int &retLen) |
Translate B64 I2OS integer to a WinCAPI int. | |
unsigned char * | WinBN2b64 (BYTE *n, DWORD nLen, unsigned int &retLen) |
Translate a WinCAPI int to a B64 I2OS integer . | |
Public Member Functions | |
Constructors and Destructors | |
WinCAPICryptoProvider (LPCSTR provDSSName=NULL, LPCSTR provRSAName=NULL) | |
Create a Windows CAPI interface layer. | |
virtual | ~WinCAPICryptoProvider () |
Hashing (Digest) Functions | |
virtual XSECCryptoHash * | hashSHA1 () |
Return a SHA1 implementation. | |
virtual XSECCryptoHash * | hashHMACSHA1 () |
Return a HMAC SHA1 implementation. | |
virtual XSECCryptoHash * | hashMD5 () |
Return a MD5 implementation. | |
virtual XSECCryptoHash * | hashHMACMD5 () |
Return a HMAC MD5 implementation. | |
Encoding functions | |
virtual XSECCryptoBase64 * | base64 () |
Return a Base64 encoder/decoder implementation. | |
Keys and Certificates | |
virtual XSECCryptoKeyDSA * | keyDSA () |
Return a DSA key implementation object. | |
virtual XSECCryptoKeyRSA * | keyRSA () |
Return an RSA key implementation object. | |
virtual XSECCryptoX509 * | X509 () |
Return an X509 implementation object. | |
Information Functions | |
virtual const XMLCh * | getProviderName () |
Returns a string that identifies the Crypto Provider. |
|
Create a Windows CAPI interface layer. Windows CSPs work under a provider model. The user should specify which CSP to use.
|
|
|
|
Determine whether a given algorithm is supported. A call that can be used to determine whether a given symmetric algorithm is supported Implements XSECCryptoProvider. |
|
Translate B64 I2OS integer to a WinCAPI int. Decodes a Base64 (ds:CryptoBinary) integer and reverses the order to allow loading into a Windows CAPI function. (CAPI uses Little Endian storage of integers).
|
|
Return a Base64 encoder/decoder implementation. Call used by the library to obtain a Base64 encoder/decoder.
Implements XSECCryptoProvider. |
|
Return the internal key store provider.
|
|
Returns the Crypto Provider being used for DSS.
|
|
Returns a string that identifies the Crypto Provider.
Implements XSECCryptoProvider. |
|
Returns the Provider being used for RSA functions.
|
|
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.
Implements XSECCryptoProvider. |
|
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()
Implements XSECCryptoProvider. |
|
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 WinCAPICryptoHash::setKey()
Implements XSECCryptoProvider. |
|
Return a MD5 implementation. Call used by the library to obtain a MD5 object from the OpenSSL provider.
Implements XSECCryptoProvider. |
|
Return a SHA1 implementation. Call used by the library to obtain a SHA1 object from the provider.
Implements XSECCryptoProvider. |
|
Return a DSA key implementation object. Call used by the library to obtain a DSA key object.
Implements XSECCryptoProvider. |
|
Return an RSA key implementation object. Call used by the library to obtain an OpenSSL RSA key object.
Implements XSECCryptoProvider. |
|
Return a Symmetric Key implementation object. Call used by the library to obtain a bulk encryption object.
Implements XSECCryptoProvider. |
|
Translate a WinCAPI int to a B64 I2OS integer . Encodes a Windows integer in I2OSP base64 encoded format.
|
|
Return an X509 implementation object. Call used by the library to obtain an object that can work with X509 certificates.
Implements XSECCryptoProvider. |