19#if defined(OPENSSL_VERSION_MAJOR) && OPENSSL_VERSION_MAJOR >= 3
20 std::pair<std::vector<uint8_t>, std::vector<uint8_t>>
34 virtual size_t key_size()
const override;
39 const uint8_t* label =
nullptr,
40 size_t label_size = 0)
override;
43 const std::vector<uint8_t>& input,
44 const std::optional<std::vector<std::uint8_t>>& label =
45 std::nullopt)
override;
51 const uint8_t* contents,
53 const uint8_t* signature,
54 size_t signature_size,
56 size_t salt_length = 0)
override;
60 static std::vector<uint8_t>
bn_bytes(
const BIGNUM* bn);
62#if defined(OPENSSL_VERSION_MAJOR) && OPENSSL_VERSION_MAJOR >= 3
67 const std::optional<std::string>& kid = std::nullopt)
const override;
Definition public_key.h:16
Definition rsa_public_key.h:17
virtual std::vector< uint8_t > rsa_oaep_wrap(const uint8_t *input, size_t input_size, const uint8_t *label=nullptr, size_t label_size=0) override
Definition rsa_public_key.cpp:130
virtual Components components() const override
Definition rsa_public_key.cpp:229
virtual bool verify(const uint8_t *contents, size_t contents_size, const uint8_t *signature, size_t signature_size, MDType md_type=MDType::NONE, size_t salt_length=0) override
Definition rsa_public_key.cpp:193
OpenSSL::Unique_RSA rsa_public_from_jwk(const JsonWebKeyRSAPublic &jwk)
Definition rsa_public_key.cpp:90
virtual size_t key_size() const override
Definition rsa_public_key.cpp:125
virtual Pem public_key_pem() const override
Definition rsa_public_key.cpp:183
RSAPublicKey_OpenSSL()=default
virtual std::vector< uint8_t > public_key_der() const override
Definition rsa_public_key.cpp:188
static std::vector< uint8_t > bn_bytes(const BIGNUM *bn)
Definition rsa_public_key.cpp:211
virtual JsonWebKeyRSAPublic public_key_jwk_rsa(const std::optional< std::string > &kid=std::nullopt) const override
Definition rsa_public_key.cpp:248
virtual ~RSAPublicKey_OpenSSL()=default
Definition rsa_public_key.h:16
MDType
Definition md_type.h:10
Definition openssl_wrappers.h:350
Definition openssl_wrappers.h:415
Definition rsa_public_key.h:88