Bitcoin Core  25.99.0
P2P Digital Currency
key_io.h
Go to the documentation of this file.
1 // Copyright (c) 2009-2010 Satoshi Nakamoto
2 // Copyright (c) 2009-2021 The Bitcoin Core developers
3 // Distributed under the MIT software license, see the accompanying
4 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
5 
6 #ifndef BITCOIN_KEY_IO_H
7 #define BITCOIN_KEY_IO_H
8 
9 #include <chainparams.h>
10 #include <key.h>
11 #include <pubkey.h>
12 #include <script/standard.h>
13 
14 #include <string>
15 
16 CKey DecodeSecret(const std::string& str);
17 std::string EncodeSecret(const CKey& key);
18 
19 CExtKey DecodeExtKey(const std::string& str);
20 std::string EncodeExtKey(const CExtKey& extkey);
21 CExtPubKey DecodeExtPubKey(const std::string& str);
22 std::string EncodeExtPubKey(const CExtPubKey& extpubkey);
23 
24 std::string EncodeDestination(const CTxDestination& dest);
25 CTxDestination DecodeDestination(const std::string& str);
26 CTxDestination DecodeDestination(const std::string& str, std::string& error_msg, std::vector<int>* error_locations = nullptr);
27 bool IsValidDestinationString(const std::string& str);
28 bool IsValidDestinationString(const std::string& str, const CChainParams& params);
29 
30 #endif // BITCOIN_KEY_IO_H
CChainParams defines various tweakable parameters of a given instance of the Bitcoin system.
Definition: chainparams.h:77
An encapsulated private key.
Definition: key.h:27
bool IsValidDestinationString(const std::string &str)
Definition: key_io.cpp:308
CExtPubKey DecodeExtPubKey(const std::string &str)
Definition: key_io.cpp:239
std::string EncodeExtPubKey(const CExtPubKey &extpubkey)
Definition: key_io.cpp:252
std::string EncodeSecret(const CKey &key)
Definition: key_io.cpp:226
std::string EncodeExtKey(const CExtKey &extkey)
Definition: key_io.cpp:275
std::string EncodeDestination(const CTxDestination &dest)
Definition: key_io.cpp:286
CKey DecodeSecret(const std::string &str)
Definition: key_io.cpp:208
CTxDestination DecodeDestination(const std::string &str)
Definition: key_io.cpp:296
CExtKey DecodeExtKey(const std::string &str)
Definition: key_io.cpp:262
std::variant< CNoDestination, PKHash, ScriptHash, WitnessV0ScriptHash, WitnessV0KeyHash, WitnessV1Taproot, WitnessUnknown > CTxDestination
A txout script template with a specific destination.
Definition: standard.h:149
Definition: key.h:161