From 8ed9c48f4ddc611480b5c681497ab363740f2bf8 Mon Sep 17 00:00:00 2001 From: Christian von Roques Date: Tue, 11 Sep 2012 12:05:35 +0200 Subject: [PATCH] EncodeBase58: don't convert little- to big-endian just to undo it --- src/base58.h | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/base58.h b/src/base58.h index be8a541f67350..04ea9d401c6aa 100644 --- a/src/base58.h +++ b/src/base58.h @@ -32,14 +32,9 @@ inline std::string EncodeBase58(const unsigned char* pbegin, const unsigned char CBigNum bn58 = 58; CBigNum bn0 = 0; - // Convert big endian data to little endian - // Extra zero at the end make sure bignum will interpret as a positive number - std::vector vchTmp(pend-pbegin+1, 0); - reverse_copy(pbegin, pend, vchTmp.begin()); - - // Convert little endian data to bignum + // Convert big endian data to bignum CBigNum bn; - bn.setvch(vchTmp); + BN_bin2bn(pbegin, pend - pbegin, &bn); // Convert bignum to std::string std::string str;