Skip to content

sgns::crypto::SR25519ProviderImpl

#include <sr25519_provider_impl.hpp>

Inherits from sgns::crypto::SR25519Provider, IComponent

Public Functions

Name
SR25519ProviderImpl(std::shared_ptr< CSPRNG > generator)
~SR25519ProviderImpl() override =default
virtual SR25519Keypair generateKeypair() const override
virtual SR25519Keypair generateKeypair(const SR25519Seed & seed) const override
virtual outcome::result< SR25519Signature > sign(const SR25519Keypair & keypair, gsl::span< const uint8_t > message) const override
Sign a message using the given keypair.
virtual outcome::result< bool > verify(const SR25519Signature & signature, gsl::span< const uint8_t > message, const SR25519PublicKey & 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::SR25519Provider

Name
~SR25519Provider() override =default

Public Functions inherited from IComponent

Name
virtual ~IComponent() =default

Public Functions Documentation

function SR25519ProviderImpl

explicit SR25519ProviderImpl(
    std::shared_ptr< CSPRNG > generator
)

function ~SR25519ProviderImpl

~SR25519ProviderImpl() override =default

function generateKeypair

virtual SR25519Keypair generateKeypair() const override

Reimplements: sgns::crypto::SR25519Provider::generateKeypair

Generates random keypair for signing the message

function generateKeypair

virtual SR25519Keypair generateKeypair(
    const SR25519Seed & seed
) const override

Reimplements: sgns::crypto::SR25519Provider::generateKeypair

Generate random keypair from seed

function sign

virtual outcome::result< SR25519Signature > sign(
    const SR25519Keypair & keypair,
    gsl::span< const uint8_t > message
) const override

Sign a message using the given keypair.

Parameters:

  • keypair Pair of public and secret sr25519 keys.
  • message Bytes to be signed.

Return: Signature of the message.

Reimplements: sgns::crypto::SR25519Provider::sign

function verify

virtual outcome::result< bool > verify(
    const SR25519Signature & signature,
    gsl::span< const uint8_t > message,
    const SR25519PublicKey & 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::SR25519Provider::verify

function GetName

inline virtual std::string GetName() override

Reimplements: IComponent::GetName


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