2020-07-09 17:00:45 -07:00
|
|
|
// Copyright (c) 2020 The Zcash developers
|
|
|
|
// Distributed under the MIT software license, see the accompanying
|
|
|
|
// file COPYING or https://www.opensource.org/licenses/mit-license.php .
|
|
|
|
|
|
|
|
#ifndef ZCASH_KEY_CONSTANTS_H
|
|
|
|
#define ZCASH_KEY_CONSTANTS_H
|
|
|
|
|
|
|
|
class KeyConstants
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
enum Base58Type {
|
|
|
|
PUBKEY_ADDRESS,
|
|
|
|
SCRIPT_ADDRESS,
|
|
|
|
SECRET_KEY,
|
|
|
|
EXT_PUBLIC_KEY,
|
|
|
|
EXT_SECRET_KEY,
|
|
|
|
|
2020-07-09 17:26:11 -07:00
|
|
|
ZCPAYMENT_ADDRESS,
|
2020-07-09 17:00:45 -07:00
|
|
|
ZCSPENDING_KEY,
|
|
|
|
ZCVIEWING_KEY,
|
|
|
|
|
|
|
|
MAX_BASE58_TYPES
|
|
|
|
};
|
|
|
|
|
|
|
|
enum Bech32Type {
|
|
|
|
SAPLING_PAYMENT_ADDRESS,
|
|
|
|
SAPLING_FULL_VIEWING_KEY,
|
|
|
|
SAPLING_INCOMING_VIEWING_KEY,
|
|
|
|
SAPLING_EXTENDED_SPEND_KEY,
|
|
|
|
SAPLING_EXTENDED_FVK,
|
|
|
|
|
|
|
|
MAX_BECH32_TYPES
|
|
|
|
};
|
|
|
|
|
|
|
|
virtual const std::vector<unsigned char>& Base58Prefix(Base58Type type) const =0;
|
|
|
|
virtual const std::string& Bech32HRP(Bech32Type type) const =0;
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // ZCASH_KEY_CONSTANTS_H
|