Skip to content

sgns::crypto::Secp256k1Provider

Interface for secp256k1 public key recovery.

#include <secp256k1_provider.hpp>

Inherited by sgns::crypto::Secp256k1ProviderImpl

Public Functions

Name
virtual ~Secp256k1Provider() =default
virtual outcome::result< secp256k1::UncompressedPublicKey > recoverPublickeyUncompressed(const secp256k1::RSVSignature & signature, const secp256k1::MessageHash & message_hash) const =0
recover public key in uncompressed form
virtual outcome::result< secp256k1::CompressedPublicKey > recoverPublickeyCompressed(const secp256k1::RSVSignature & signature, const secp256k1::MessageHash & message_hash) const =0
recover public key in compressed form

Public Functions Documentation

function ~Secp256k1Provider

virtual ~Secp256k1Provider() =default

function recoverPublickeyUncompressed

virtual outcome::result< secp256k1::UncompressedPublicKey > recoverPublickeyUncompressed(
    const secp256k1::RSVSignature & signature,
    const secp256k1::MessageHash & message_hash
) const =0

recover public key in uncompressed form

Parameters:

  • signature signature
  • message_hash blake2s message hash

Return: uncompressed public key or error

Reimplemented by: sgns::crypto::Secp256k1ProviderImpl::recoverPublickeyUncompressed

function recoverPublickeyCompressed

virtual outcome::result< secp256k1::CompressedPublicKey > recoverPublickeyCompressed(
    const secp256k1::RSVSignature & signature,
    const secp256k1::MessageHash & message_hash
) const =0

recover public key in compressed form

Parameters:

  • signature signature
  • message_hash blake2s message hash

Return: compressed public key or error

Reimplemented by: sgns::crypto::Secp256k1ProviderImpl::recoverPublickeyCompressed


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