Skip to content

nil::crypto3::pubkey::ext_private_key< ecdsa< CurveType, Padding, GeneratorType, DistributionType >, typename std::enable_if< std::is_same< GeneratorType, random::rfc6979< typename CurveType::scalar_field_type::value_type, typename ecdsa< CurveType, Padding, GeneratorType, DistributionType >::hash_type > >::value >::type >

Extended private key class with deterministic generator and operator modifications. More...

#include <ext_private_key.hpp>

Inherits from private_key< ecdsa< CurveType, Padding, GeneratorType, DistributionType > >

Public Functions

Name
public_key< ecdsa< CurveType, Padding, GeneratorType, DistributionType > > operator*(const public_key< ecdsa< CurveType, Padding, GeneratorType, DistributionType > > & lhs) const
Multiplication overload to derive public key from private key multiplication.

Detailed Description

template <typename CurveType ,
typename Padding ,
typename GeneratorType ,
typename DistributionType >
struct nil::crypto3::pubkey::ext_private_key< ecdsa< CurveType, Padding, GeneratorType, DistributionType >, typename std::enable_if< std::is_same< GeneratorType, random::rfc6979< typename CurveType::scalar_field_type::value_type, typename ecdsa< CurveType, Padding, GeneratorType, DistributionType >::hash_type > >::value >::type >;

Extended private key class with deterministic generator and operator modifications.

Public Functions Documentation

function operator*

inline public_key< ecdsa< CurveType, Padding, GeneratorType, DistributionType > > operator*(
    const public_key< ecdsa< CurveType, Padding, GeneratorType, DistributionType > > & lhs
) const

Multiplication overload to derive public key from private key multiplication.

Parameters:

  • lhs public key to be multiplied by own private key data

Return: New public key


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