From d74eee811018f5f0b562b12af3a5afaa59cf60cb Mon Sep 17 00:00:00 2001 From: Michael Vandeberg Date: Thu, 7 Jan 2016 17:14:16 -0500 Subject: [PATCH] Implements deserialize for extended_public_key and extended_private_key. Implementation needed by cryptonomex/graphene#500 --- src/crypto/elliptic_common.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/crypto/elliptic_common.cpp b/src/crypto/elliptic_common.cpp index f1dafb2..88228b0 100644 --- a/src/crypto/elliptic_common.cpp +++ b/src/crypto/elliptic_common.cpp @@ -269,6 +269,11 @@ namespace fc { namespace ecc { memcpy( dest, key.begin(), key.size() ); return result; } + + extended_public_key extended_public_key::deserialize( const extended_key_data& data ) + { + return from_base58( _to_base58( data ) ); + } fc::string extended_public_key::str() const { @@ -335,6 +340,11 @@ namespace fc { namespace ecc { memcpy( dest, key.data(), key.data_size() ); return result; } + + extended_private_key extended_private_key::deserialize( const extended_key_data& data ) + { + return from_base58( _to_base58( data ) ); + } private_key extended_private_key::generate_a(int i) const { return derive_hardened_child(4*i + 0); } private_key extended_private_key::generate_b(int i) const { return derive_hardened_child(4*i + 1); }