31 #ifndef LEDGER_CORE_TEZOSLIKEEXTENDEDPUBLICKEY_H 32 #define LEDGER_CORE_TEZOSLIKEEXTENDEDPUBLICKEY_H 34 #include <common/AbstractExtendedPublicKey.h> 35 #include <api/TezosLikeExtendedPublicKey.hpp> 36 #include <crypto/DeterministicPublicKey.hpp> 37 #include <api/TezosLikeNetworkParameters.hpp> 39 #include <utils/Option.hpp> 40 #include <utils/DerivationPath.hpp> 41 #include <api/Currency.hpp> 42 #include <api/TezosCurve.hpp> 46 using TezosExtendedPublicKey = AbstractExtendedPublicKey<api::TezosLikeNetworkParameters>;
53 api::TezosCurve curve,
56 std::shared_ptr<api::TezosLikeAddress>
derive(
const std::string &path)
override;
62 std::vector<uint8_t>
deriveHash160(
const std::string &path)
override;
68 static std::shared_ptr<TezosLikeExtendedPublicKey> fromRaw(
const api::Currency ¶ms,
69 const optional<std::vector<uint8_t>> &parentPublicKey,
70 const std::vector<uint8_t> &publicKey,
71 const std::vector<uint8_t> &chainCode,
72 const std::string &path,
73 api::TezosCurve curve);
75 static std::shared_ptr<TezosLikeExtendedPublicKey> fromBase58(
const api::Currency ¤cy,
76 const std::string &xpubBase58,
99 api::TezosCurve _curve;
106 #endif //LEDGER_CORE_TEZOSLIKEEXTENDEDPUBLICKEY_H std::string getRootPath() override
Definition: TezosLikeExtendedPublicKey.cpp:88
Definition: TezosLikeExtendedPublicKey.hpp:24
std::string toBase58() override
Definition: TezosLikeExtendedPublicKey.cpp:84
Definition: DeterministicPublicKey.hpp:38
Definition: TezosLikeExtendedPublicKey.h:48
std::shared_ptr< api::TezosLikeAddress > derive(const std::string &path) override
Definition: TezosLikeExtendedPublicKey.cpp:60
std::vector< uint8_t > deriveHash160(const std::string &path) override
Definition: TezosLikeExtendedPublicKey.cpp:80
std::vector< uint8_t > derivePublicKey(const std::string &path) override
Definition: TezosLikeExtendedPublicKey.cpp:75
Definition: AbstractExtendedPublicKey.h:54
Definition: DerivationPath.hpp:40
Definition: Currency.hpp:23
Definition: Account.cpp:8
std::experimental::optional< TezosLikeNetworkParameters > tezosLikeNetworkParameters
Definition: Currency.hpp:47
Definition: TezosLikeNetworkParameters.hpp:15
Definition: optional.hpp:177