73 std::string algo_name()
const override;
77 OID object_identifier()
const override;
79 size_t key_length()
const override;
81 size_t estimated_strength()
const override;
83 std::vector<uint8_t> raw_public_key_bits()
const override;
85 std::vector<uint8_t> public_key_bits()
const override;
97 std::unique_ptr<PK_Ops::Verification> create_verification_op(std::string_view params,
98 std::string_view provider)
const override;
100 std::unique_ptr<PK_Ops::Verification> create_x509_verification_op(
const AlgorithmIdentifier& signature_algorithm,
101 std::string_view provider)
const override;
106 friend class Dilithium_Verification_Operation;
107 friend class Dilithium_Signature_Operation;
109 std::shared_ptr<Dilithium_PublicKeyInternal>
m_public;
118 std::unique_ptr<Public_Key> public_key()
const override;
145 std::string_view params,
146 std::string_view provider)
const override;
149 friend class Dilithium_Signature_Operation;
151 std::shared_ptr<Dilithium_PrivateKeyInternal> m_private;