8#ifndef BOTAN_TPM2_RSA_H_
9#define BOTAN_TPM2_RSA_H_
12#include <botan/tpm2_key.h>
33 std::unique_ptr<PK_Ops::Verification> create_verification_op(std::string_view params,
34 std::string_view provider)
const override;
37 std::string_view params,
38 std::string_view provider)
const override;
81 std::span<const uint8_t> auth_value,
84 std::optional<uint32_t> exponent = {});
87 std::unique_ptr<Public_Key>
public_key()
const override {
99 std::string_view params,
100 std::string_view provider)
const override;
103 std::string_view params,
104 std::string_view provider)
const override;
111 const TPM2B_PUBLIC* public_blob,
112 std::span<const uint8_t> private_blob = {});
123 const std::pair<BigInt, BigInt>& pubkey,
124 std::span<const uint8_t> private_blob = {});
#define BOTAN_DIAGNOSTIC_POP
#define BOTAN_DIAGNOSTIC_PUSH
#define BOTAN_DIAGNOSTIC_IGNORE_INHERITED_VIA_DOMINANCE
#define BOTAN_PUBLIC_API(maj, min)
AlgorithmIdentifier algorithm_identifier() const override
std::vector< uint8_t > public_key_bits() const override
std::vector< uint8_t > raw_public_key_bits() const override
const SessionBundle & sessions() const
std::vector< uint8_t > raw_public_key_bits() const override
const SessionBundle & sessions() const
std::unique_ptr< Private_Key > generate_another(Botan::RandomNumberGenerator &) const override
bool supports_operation(PublicKeyOperation op) const override
RSA_PrivateKey(Object handle, SessionBundle sessions, const TPM2B_PUBLIC *public_blob, std::span< const uint8_t > private_blob={})
std::vector< uint8_t > raw_public_key_bits() const override
std::unique_ptr< Public_Key > public_key() const override
static std::unique_ptr< TPM2::PrivateKey > create_unrestricted_transient(const std::shared_ptr< Context > &ctx, const SessionBundle &sessions, std::span< const uint8_t > auth_value, const TPM2::PrivateKey &parent, uint16_t keylength, std::optional< uint32_t > exponent={})
bool supports_operation(PublicKeyOperation op) const override
std::unique_ptr< Private_Key > generate_another(Botan::RandomNumberGenerator &rng) const override
std::vector< uint8_t > raw_public_key_bits() const override
RSA_PublicKey(Object handle, SessionBundle sessions, const TPM2B_PUBLIC *public_blob)