X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fmanager%2Fclient%2Fclient-manager-impl.h;h=9e8d6388baf0c1a594dc93697a950872e5cf7a22;hb=cdd6801a81959754bc06546462b50aac2fe7cdc7;hp=6bd8bd52c1f388fe44c9c5110194d4cf22218292;hpb=fac99edb0a07bdf5f5b84b9eeb2d2c5012c95edf;p=platform%2Fcore%2Fsecurity%2Fkey-manager.git diff --git a/src/manager/client/client-manager-impl.h b/src/manager/client/client-manager-impl.h index 6bd8bd5..9e8d638 100644 --- a/src/manager/client/client-manager-impl.h +++ b/src/manager/client/client-manager-impl.h @@ -23,32 +23,31 @@ #include #include -#include +#include +#include namespace CKM { -class Manager::ManagerImpl { +class ManagerImpl : public Manager { public: - ManagerImpl() - : m_counter(0) - {} + ManagerImpl(); virtual ~ManagerImpl(){} - int saveKey(const Alias &alias, const Key &key, const Policy &policy); + int saveKey(const Alias &alias, const KeyShPtr &key, const Policy &policy); int removeKey(const Alias &alias); - int getKey(const Alias &alias, const std::string &password, Key &key); - int requestKeyAliasVector(AliasVector &aliasVector); + int getKey(const Alias &alias, const std::string &password, KeyShPtr &key); + int getKeyAliasVector(AliasVector &aliasVector); - int saveCertificate(const Alias &alias, const Certificate &cert, const Policy &policy); + int saveCertificate(const Alias &alias, const CertificateShPtr &cert, const Policy &policy); int removeCertificate(const Alias &alias); - int getCertificate(const Alias &alias, const std::string &password, Certificate &cert); - int requestCertificateAliasVector(AliasVector &aliasVector); + int getCertificate(const Alias &alias, const std::string &password, CertificateShPtr &cert); + int getCertificateAliasVector(AliasVector &aliasVector); int saveData(const Alias &alias, const RawBuffer &rawData, const Policy &policy); int removeData(const Alias &alias); int getData(const Alias &alias, const std::string &password, RawBuffer &cert); - int requestDataAliasVector(AliasVector &aliasVector); - + int getDataAliasVector(AliasVector &aliasVector); + int createKeyPairRSA( const int size, // size in bits [1024, 2048, 4096] const Alias &privateKeyAlias, @@ -57,12 +56,40 @@ public: const Policy &policyPublicKey = Policy()); int createKeyPairECDSA( - const Key::ECType type, + ElipticCurve type, const Alias &privateKeyAlias, const Alias &publicKeyAlias, const Policy &policyPrivateKey = Policy(), const Policy &policyPublicKey = Policy()); + int getCertificateChain( + const CertificateShPtr &certificate, + const CertificateShPtrVector &untrustedCertificates, + CertificateShPtrVector &certificateChainVector); + + int getCertificateChain( + const CertificateShPtr &certificate, + const AliasVector &untrustedCertificates, + CertificateShPtrVector &certificateChainVector); + + int createSignature( + const Alias &privateKeyAlias, + const std::string &password, // password for private_key + const RawBuffer &message, + const HashAlgorithm hash, + const RSAPaddingAlgorithm padding, + RawBuffer &signature); + + int verifySignature( + const Alias &publicKeyOrCertAlias, + const std::string &password, // password for public_key (optional) + const RawBuffer &message, + const RawBuffer &signature, + const HashAlgorithm hash, + const RSAPaddingAlgorithm padding); + + int ocspCheck(const CertificateShPtrVector &certificateChain, int &ocspCheck); + protected: int saveBinaryData( const Alias &alias, @@ -73,7 +100,7 @@ protected: int removeBinaryData( const Alias &alias, DBDataType dataType); - + int getBinaryData( const Alias &alias, DBDataType sendDataType, @@ -81,11 +108,12 @@ protected: DBDataType &recvDataType, RawBuffer &rawData); - int requestBinaryDataAliasVector( + int getBinaryDataAliasVector( DBDataType sendDataType, AliasVector &aliasVector); int m_counter; + static bool s_isInit; }; } // namespace CKM