/*
- * Copyright (c) 2015 - 2018 Samsung Electronics Co., Ltd All Rights Reserved
+ * Copyright (c) 2015 - 2021 Samsung Electronics Co., Ltd All Rights Reserved
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
public:
explicit Store(CryptoBackend backendId);
- virtual GObjUPtr getObject(const Token &, const Password &);
- virtual TokenPair generateAKey(const CryptoAlgorithm &, const Password &,
- const Password &);
- virtual Token generateSKey(const CryptoAlgorithm &, const Password &);
- virtual Token import(const Data &, const Password &);
- virtual Token importEncrypted(const Data &,
- const Password &,
- const RawBuffer &);
- virtual void destroy(const Token &);
+ GObjUPtr getObject(const Token &, const Password &) override;
+ TokenPair generateAKey(const CryptoAlgorithm &,
+ const Password &,
+ const Password &,
+ const RawBuffer &,
+ const RawBuffer &) override;
+ Token generateSKey(const CryptoAlgorithm &,
+ const Password &,
+ const RawBuffer &) override;
+ Token import(const Data &, const Password &, const EncryptionParams &,
+ const RawBuffer &) override;
+ void destroy(const Token &) override;
+
+ static RawBuffer pack(const RawBuffer &keyId,
+ const Password &pwd,
+ const RawBuffer &iv,
+ const RawBuffer &tag);
// TODO device key ID is needed here to support importEncrypted
};