1#ifndef SECP256K1_ADDRESS_HPP
2#define SECP256K1_ADDRESS_HPP
47std::pair<std::vector<std::uint8_t>,
bool>
62 std::uint8_t witness_version,
63 const std::uint8_t* witness_program,
64 std::size_t prog_len);
79std::array<std::uint8_t, 20>
hash160(
const std::uint8_t* data, std::size_t len);
109std::string
address_p2sh(
const std::array<std::uint8_t, 20>& script_hash,
121 const std::string& prefix,
122 std::uint8_t type = 0);
126 const std::string& prefix =
"bitcoincash");
132 bool compressed =
true,
167std::pair<fast::Point, fast::Scalar>
170 std::uint32_t k = 0);
178std::vector<std::pair<std::uint32_t, fast::Scalar>>
181 const std::vector<fast::Point>& input_pubkeys,
182 const std::vector<std::array<std::uint8_t, 32>>& output_pubkeys);
Bech32DecodeResult bech32_decode(const std::string &addr)
std::string base58check_encode(const std::uint8_t *data, std::size_t len)
std::string address_p2sh(const std::array< std::uint8_t, 20 > &script_hash, Network net=Network::Mainnet)
std::string address_p2tr(const fast::Point &internal_key, Network net=Network::Mainnet)
std::string address_p2wsh(const std::array< std::uint8_t, 32 > &witness_script_hash, Network net=Network::Mainnet)
std::string address_p2tr_raw(const std::array< std::uint8_t, 32 > &output_key_x, Network net=Network::Mainnet)
std::string address_p2sh_p2wpkh(const fast::Point &pubkey, Network net=Network::Mainnet)
std::string address_cashaddr(const fast::Point &pubkey, const std::string &prefix="bitcoincash")
std::pair< fast::Point, fast::Scalar > silent_payment_create_output(const std::vector< fast::Scalar > &input_privkeys, const SilentPaymentAddress &recipient, std::uint32_t k=0)
std::pair< std::vector< std::uint8_t >, bool > base58check_decode(const std::string &encoded)
WIFDecodeResult wif_decode(const std::string &wif)
std::array< std::uint8_t, 20 > hash160(const std::uint8_t *data, std::size_t len)
std::array< std::uint8_t, 32 > witness_script_hash(const std::uint8_t *script, std::size_t script_len) noexcept
std::string address_p2wpkh(const fast::Point &pubkey, Network net=Network::Mainnet)
std::string address_p2pkh(const fast::Point &pubkey, Network net=Network::Mainnet)
std::string bech32_encode(const std::string &hrp, std::uint8_t witness_version, const std::uint8_t *witness_program, std::size_t prog_len)
std::string cashaddr_encode(const std::array< std::uint8_t, 20 > &hash, const std::string &prefix, std::uint8_t type=0)
std::string wif_encode(const fast::Scalar &private_key, bool compressed=true, Network net=Network::Mainnet)
std::vector< std::pair< std::uint32_t, fast::Scalar > > silent_payment_scan(const fast::Scalar &scan_privkey, const fast::Scalar &spend_privkey, const std::vector< fast::Point > &input_pubkeys, const std::vector< std::array< std::uint8_t, 32 > > &output_pubkeys)
SilentPaymentAddress silent_payment_address(const fast::Scalar &scan_privkey, const fast::Scalar &spend_privkey)
std::vector< std::uint8_t > witness_program
std::string encode(Network net=Network::Mainnet) const