aboutsummaryrefslogtreecommitdiff
path: root/src/base58.cpp
diff options
context:
space:
mode:
authorKaz Wesley <keziahw@gmail.com>2016-04-18 14:56:02 -0700
committerKaz Wesley <keziahw@gmail.com>2016-04-21 18:28:57 -0700
commit57704499be948c640c789c7fc11ed1abf8a681bd (patch)
tree4014056d20f7e57b578550295184029b7ff01e8b /src/base58.cpp
parent59ad56851a342d2c62f6b38bf15002b23ab439e1 (diff)
downloadbitcoin-57704499be948c640c789c7fc11ed1abf8a681bd.tar.xz
CBase58Data::SetString: cleanse the full vector
SetString seems to be passing the length of the wrong variable to memory_cleanse, resulting in the last byte of the temporary buffer not being securely erased.
Diffstat (limited to 'src/base58.cpp')
-rw-r--r--src/base58.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/base58.cpp b/src/base58.cpp
index d81c26092c..d1d60a6f1d 100644
--- a/src/base58.cpp
+++ b/src/base58.cpp
@@ -177,7 +177,7 @@ bool CBase58Data::SetString(const char* psz, unsigned int nVersionBytes)
vchData.resize(vchTemp.size() - nVersionBytes);
if (!vchData.empty())
memcpy(&vchData[0], &vchTemp[nVersionBytes], vchData.size());
- memory_cleanse(&vchTemp[0], vchData.size());
+ memory_cleanse(&vchTemp[0], vchTemp.size());
return true;
}