UltrafastSecp256k1 3.68.0
Ultra high-performance secp256k1 elliptic curve cryptography library
Loading...
Searching...
No Matches
secp256k1::detail Namespace Reference

Functions

std::uint64_t add64 (std::uint64_t a, std::uint64_t b, unsigned char &carry)
 
std::uint64_t sub64 (std::uint64_t a, std::uint64_t b, unsigned char &borrow)
 
std::uint64_t mulhi64 (std::uint64_t a, std::uint64_t b) noexcept
 
void csprng_fill (unsigned char *buf, std::size_t len) noexcept
 
void secure_erase (void *ptr, std::size_t len) noexcept
 
void sha256_compress_dispatch (const std::uint8_t block[64], std::uint32_t state[8]) noexcept
 
SHA256 make_tag_midstate (std::string_view tag)
 
std::array< uint8_t, 32 > cached_tagged_hash (const SHA256 &midstate, const void *data, std::size_t len)
 

Variables

constexpr const char * bip39_english [2048]
 
const SHA256 g_aux_midstate = make_tag_midstate("BIP0340/aux")
 
const SHA256 g_nonce_midstate = make_tag_midstate("BIP0340/nonce")
 
const SHA256 g_challenge_midstate = make_tag_midstate("BIP0340/challenge")
 

Function Documentation

◆ add64()

std::uint64_t secp256k1::detail::add64 ( std::uint64_t  a,
std::uint64_t  b,
unsigned char &  carry 
)
inline

Definition at line 53 of file arith64.hpp.

◆ cached_tagged_hash()

std::array< uint8_t, 32 > secp256k1::detail::cached_tagged_hash ( const SHA256 midstate,
const void *  data,
std::size_t  len 
)
inline

Definition at line 43 of file tagged_hash.hpp.

References secp256k1::SHA256::finalize(), and secp256k1::SHA256::update().

◆ csprng_fill()

void secp256k1::detail::csprng_fill ( unsigned char *  buf,
std::size_t  len 
)
inlinenoexcept

Definition at line 29 of file csprng.hpp.

◆ make_tag_midstate()

SHA256 secp256k1::detail::make_tag_midstate ( std::string_view  tag)
inline

Definition at line 24 of file tagged_hash.hpp.

References secp256k1::SHA256::hash(), and secp256k1::SHA256::update().

◆ mulhi64()

std::uint64_t secp256k1::detail::mulhi64 ( std::uint64_t  a,
std::uint64_t  b 
)
inlinenoexcept

Definition at line 102 of file arith64.hpp.

◆ secure_erase()

void secp256k1::detail::secure_erase ( void *  ptr,
std::size_t  len 
)
inlinenoexcept

◆ sha256_compress_dispatch()

void secp256k1::detail::sha256_compress_dispatch ( const std::uint8_t  block[64],
std::uint32_t  state[8] 
)
noexcept

◆ sub64()

std::uint64_t secp256k1::detail::sub64 ( std::uint64_t  a,
std::uint64_t  b,
unsigned char &  borrow 
)
inline

Definition at line 63 of file arith64.hpp.

Variable Documentation

◆ bip39_english

constexpr const char* secp256k1::detail::bip39_english[2048]
inlineconstexpr

Definition at line 8 of file bip39_wordlist.hpp.

◆ g_aux_midstate

const SHA256 secp256k1::detail::g_aux_midstate = make_tag_midstate("BIP0340/aux")
inline

Definition at line 33 of file tagged_hash.hpp.

◆ g_challenge_midstate

const SHA256 secp256k1::detail::g_challenge_midstate = make_tag_midstate("BIP0340/challenge")
inline

Definition at line 35 of file tagged_hash.hpp.

◆ g_nonce_midstate

const SHA256 secp256k1::detail::g_nonce_midstate = make_tag_midstate("BIP0340/nonce")
inline

Definition at line 34 of file tagged_hash.hpp.