3#include <StormByte/crypto/keypair/generic.hxx>
9namespace StormByte::Crypto::KeyPair {
21 inline ED25519(
const std::string& public_key, std::optional<std::string> private_key = std::nullopt):
59 PointerType Clone() const noexcept
override {
60 return std::make_shared<ED25519>(*
this);
67 PointerType
Move() noexcept
override {
68 return std::make_shared<ED25519>(std::move(*
this));
76 static PointerType
Generate(
unsigned short key_size = 256) noexcept;
An ED25519 keypair class.
Definition ed25519.hxx:14
ED25519(const ED25519 &other)=default
Copy constructor.
ED25519(const std::string &public_key, std::optional< std::string > private_key=std::nullopt)
Constructor.
Definition ed25519.hxx:21
ED25519(ED25519 &&other) noexcept=default
Move constructor.
~ED25519() noexcept=default
Destructor.
static PointerType Generate(unsigned short key_size=256) noexcept
Generates a new ED25519 keypair.
PointerType Move() noexcept override
Move the ED25519 keypair.
Definition ed25519.hxx:67
A generic class.
Definition generic.hxx:34