PKIFXSECCrypto.h

Go to the documentation of this file.
00001 
00010 #if !defined(__PKIFXSECCRYPTO_H__)
00011 #define __PKIFXSECCRYPTO_H__
00012 
00013 #include "pkif.h"
00014 #include "PKIFXSECProviderDll.h"
00015 
00016 #include <xsec/framework/XSECDefs.hpp>
00017 #include <xsec/enc/XSECCryptoProvider.hpp>
00018 #include <xsec/enc/XSECCryptoHash.hpp>
00019 #include <xsec/enc/XSECCryptoKeyHMAC.hpp>
00020 #include <xsec/enc/XSECCryptoBase64.hpp>
00021 #include <xsec/enc/XSECCryptoX509.hpp>
00022 #include <xsec/enc/XSECCryptoKeyDSA.hpp>
00023 #include <xsec/enc/XSECCryptoKeyRSA.hpp>
00024 #include <xsec/enc/XSECCryptoSymmetricKey.hpp>
00025 
00026 struct PKIFXSECCryptoImpl;
00027 
00039 class PKIFXML_API PKIFXSECCrypto : public XSECCryptoProvider {
00040 public:
00041     PKIFXSECCrypto();
00042     PKIFXSECCrypto(IPKIFMediatorPtr & med);
00043     virtual ~PKIFXSECCrypto();
00044     virtual XSECCryptoHash * hashSHA1() const; 
00045     virtual XSECCryptoHash * hashSHA(int length = 160) const;
00046     virtual XSECCryptoHash * hashHMACSHA1() const;
00047     virtual XSECCryptoHash * hashHMACSHA(int length = 160) const;
00048     virtual XSECCryptoHash * hashMD5() const;
00049     virtual XSECCryptoHash * hashHMACMD5() const;
00050     virtual XSECCryptoKeyHMAC * keyHMAC(void) const;
00051     virtual XSECCryptoBase64 * base64() const;
00052     virtual XSECCryptoKeyDSA * keyDSA() const;
00053     virtual XSECCryptoKeyRSA * keyRSA() const;
00054     virtual XSECCryptoX509 * X509() const;
00055     virtual bool algorithmSupported(XSECCryptoSymmetricKey::SymmetricKeyType alg) const;
00056     virtual bool algorithmSupported(XSECCryptoHash::HashType alg) const;
00057     virtual XSECCryptoSymmetricKey  * keySymmetric(XSECCryptoSymmetricKey::SymmetricKeyType alg) const;
00058     virtual unsigned int getRandom(unsigned char * buffer, unsigned int numOctets) const;
00059     virtual const XMLCh * getProviderName() const;
00060 
00061 protected:
00062     PKIFXSECCryptoImpl * m_impl;
00063 
00064 };
00065 
00066 const XMLCh * pkifProvName();
00067 
00068 #endif 
00069 

Generated on Mon Nov 15 11:15:55 2010 for PublicKeyInfrastructureFramework(PKIF) by  doxygen 1.5.6