Use specified digest for RSA OAEP.
Bug: 22405614
Change-Id: Ia5eb67a571a9d46acca4b4e708bb8178bd3acd0d
diff --git a/rsa_operation.h b/rsa_operation.h
index 89d4f37..30ea3c5 100644
--- a/rsa_operation.h
+++ b/rsa_operation.h
@@ -39,10 +39,8 @@
digest_algorithm_(nullptr) {}
~RsaOperation();
- keymaster_error_t Begin(const AuthorizationSet& /* input_params */,
- AuthorizationSet* /* output_params */) override {
- return KM_ERROR_OK;
- }
+ keymaster_error_t Begin(const AuthorizationSet& input_params,
+ AuthorizationSet* output_params) override;
keymaster_error_t Update(const AuthorizationSet& additional_params, const Buffer& input,
AuthorizationSet* output_params, Buffer* output,
size_t* input_consumed) override;
@@ -135,6 +133,9 @@
EVP_PKEY* key)
: RsaOperation(KM_PURPOSE_ENCRYPT, digest, padding, key) {}
+ protected:
+ keymaster_error_t SetOaepDigestIfRequired(EVP_PKEY_CTX* pkey_ctx);
+
private:
int GetOpensslPadding(keymaster_error_t* error) override;
bool require_digest() const override { return padding_ == KM_PAD_RSA_OAEP; }