7#ifndef BOTAN_EC_KEY_DATA_H_
8#define BOTAN_EC_KEY_DATA_H_
10#include <botan/ec_apoint.h>
11#include <botan/ec_group.h>
12#include <botan/ec_scalar.h>
14#include <botan/bigint.h>
15#include <botan/ec_point.h>
19class RandomNumberGenerator;
24 m_group(std::move(
group)), m_point(std::move(pt)), m_legacy_point(m_point.to_legacy_point()) {}
52 std::shared_ptr<EC_PublicKey_Data>
public_key(
bool with_modular_inverse)
const;
58 T bytes(this->
group().get_order_bytes());
const EC_Scalar & private_key() const
const EC_Group & group() const
void serialize_to(std::span< uint8_t > output) const
EC_PrivateKey_Data(EC_Group group, RandomNumberGenerator &rng)
std::shared_ptr< EC_PublicKey_Data > public_key(RandomNumberGenerator &rng, bool with_modular_inverse) const
const BigInt & legacy_bigint() const
const EC_Point & legacy_point() const
const EC_AffinePoint & public_key() const
const EC_Group & group() const
EC_PublicKey_Data(EC_Group group, EC_AffinePoint pt)
int(* final)(unsigned char *, CTX *)