1 #ifndef LS_CRYPTO_PROVIDER_H 2 #define LS_CRYPTO_PROVIDER_H 7 #pragma warning(disable : 4251) 23 using ptr_t = std::shared_ptr<CryptoProvider>;
31 virtual std::string encrypt(
const std::string &inputString) = 0;
36 virtual std::string decrypt(
const std::string &inputString) = 0;
40 virtual void setSalt(
const std::string &salt);
44 virtual void setKey(
const std::string &key);
48 bool isKeySet()
const;
59 using ptr_t = std::shared_ptr<DefaultCryptoProvider>;
72 static ptr_t create() {
return std::make_shared<DefaultCryptoProvider>(); }
77 std::string encrypt(
const std::string &inputString)
override;
82 std::string decrypt(
const std::string &inputString)
override;
85 const unsigned char *getKey(
const std::string &key);
93 #endif // LS_CRYPTO_PROVIDER_H CryptoProvider interface.
std::shared_ptr< CryptoProvider > ptr_t
static ptr_t create()
Allocates and constructs a DefaultCryptoProvider object and passes args to DefaultCryptoProvider().
If no CryptoProvider is set, this is the default CryptoProvider that will be used.