Skip to content

sgns::crypto::ED25519ProviderImpl

#include <ed25519_provider_impl.hpp>

Inherits from sgns::crypto::ED25519Provider, IComponent

Public Functions

Name
~ED25519ProviderImpl() override =default
virtual outcome::result< ED25519Keypair > generateKeypair() const override
virtual ED25519Keypair generateKeypair(const ED25519Seed & seed) const override
generates key pair by seed
virtual outcome::result< sgns::crypto::ED25519Signature > sign(const ED25519Keypair & keypair, gsl::span< uint8_t > message) const override
Sign a message using the given keypair.
virtual outcome::result< bool > verify(const ED25519Signature & signature, gsl::span< uint8_t > message, const ED25519PublicKey & public_key) const override
Verifies that the message was signed by the given public key.
virtual std::string GetName() override

Additional inherited members

Public Functions inherited from sgns::crypto::ED25519Provider

Name
~ED25519Provider() override =default

Public Functions inherited from IComponent

Name
virtual ~IComponent() =default

Public Functions Documentation

function ~ED25519ProviderImpl

~ED25519ProviderImpl() override =default

function generateKeypair

virtual outcome::result< ED25519Keypair > generateKeypair() const override

Return: ed25519 key pair if succeeded of error if failed

Reimplements: sgns::crypto::ED25519Provider::generateKeypair

Generates random keypair for signing the message

function generateKeypair

virtual ED25519Keypair generateKeypair(
    const ED25519Seed & seed
) const override

generates key pair by seed

Parameters:

  • seed seed value

Return: ed25519 key pair

Reimplements: sgns::crypto::ED25519Provider::generateKeypair

function sign

virtual outcome::result< sgns::crypto::ED25519Signature > sign(
    const ED25519Keypair & keypair,
    gsl::span< uint8_t > message
) const override

Sign a message using the given keypair.

Parameters:

  • keypair Pair of public and private ed25519 keys.
  • message Bytes to be signed.

Return: Signature of the message.

Reimplements: sgns::crypto::ED25519Provider::sign

function verify

virtual outcome::result< bool > verify(
    const ED25519Signature & signature,
    gsl::span< uint8_t > message,
    const ED25519PublicKey & public_key
) const override

Verifies that the message was signed by the given public key.

Parameters:

  • signature Signature to verify.
  • message Message bytes.
  • public_key Public key to verify against.

Return: true if signature is valid, false otherwise.

Reimplements: sgns::crypto::ED25519Provider::verify

function GetName

inline virtual std::string GetName() override

Reimplements: IComponent::GetName


Updated on 2026-03-04 at 13:10:43 -0800