UltrafastSecp256k1 3.50.0
Ultra high-performance secp256k1 elliptic curve cryptography library
Loading...
Searching...
No Matches
frost.hpp File Reference
#include <array>
#include <cstdint>
#include <cstddef>
#include <vector>
#include <utility>
#include "secp256k1/scalar.hpp"
#include "secp256k1/point.hpp"
#include "secp256k1/schnorr.hpp"

Go to the source code of this file.

Classes

struct  secp256k1::FrostShare
 
struct  secp256k1::FrostCommitment
 
struct  secp256k1::FrostKeyPackage
 
struct  secp256k1::FrostNonce
 
struct  secp256k1::FrostNonceCommitment
 
struct  secp256k1::FrostPartialSig
 

Namespaces

namespace  secp256k1
 

Typedefs

using secp256k1::ParticipantId = std::uint32_t
 

Functions

std::pair< FrostCommitment, std::vector< FrostShare > > secp256k1::frost_keygen_begin (ParticipantId participant_id, std::uint32_t threshold, std::uint32_t num_participants, const std::array< std::uint8_t, 32 > &secret_seed)
 
std::pair< FrostKeyPackage, bool > secp256k1::frost_keygen_finalize (ParticipantId participant_id, const std::vector< FrostCommitment > &commitments, const std::vector< FrostShare > &received_shares, std::uint32_t threshold, std::uint32_t num_participants)
 
std::pair< FrostNonce, FrostNonceCommitmentsecp256k1::frost_sign_nonce_gen (ParticipantId participant_id, const std::array< std::uint8_t, 32 > &nonce_seed)
 
FrostPartialSig secp256k1::frost_sign (const FrostKeyPackage &key_pkg, FrostNonce &nonce, const std::array< std::uint8_t, 32 > &msg, const std::vector< FrostNonceCommitment > &nonce_commitments)
 
bool secp256k1::frost_verify_partial (const FrostPartialSig &partial_sig, const FrostNonceCommitment &signer_commitment, const fast::Point &verification_share, const std::array< std::uint8_t, 32 > &msg, const std::vector< FrostNonceCommitment > &nonce_commitments, const fast::Point &group_public_key)
 
SchnorrSignature secp256k1::frost_aggregate (const std::vector< FrostPartialSig > &partial_sigs, const std::vector< FrostNonceCommitment > &nonce_commitments, const fast::Point &group_public_key, const std::array< std::uint8_t, 32 > &msg)
 
fast::Scalar secp256k1::frost_lagrange_coefficient (ParticipantId i, const std::vector< ParticipantId > &signer_ids)