aboutsummaryrefslogtreecommitdiff
path: root/src/multisig/multisig.cpp
diff options
context:
space:
mode:
authorluigi1111 <luigi1111w@gmail.com>2020-05-05 23:39:32 -0500
committerluigi1111 <luigi1111w@gmail.com>2020-05-05 23:39:32 -0500
commitb4023dcfc5e361be7af6254992699c7cfb090a78 (patch)
treeb41b6e8e3f8b5d14526f10c7edccb6579a4a6737 /src/multisig/multisig.cpp
parenta7334faf6359748b5db4823dc9cc85c0fba25674 (diff)
parent613071f4fa6a823834198ae8d180a5af72e71ded (diff)
downloadmonzero-core-b4023dcfc5e361be7af6254992699c7cfb090a78.tar.gz
monzero-core-b4023dcfc5e361be7af6254992699c7cfb090a78.tar.xz
monzero-core-b4023dcfc5e361be7af6254992699c7cfb090a78.zip
Merge pull request #6441
613071f use memwipe on secret k/alpha values (moneromooo-monero)
Diffstat (limited to 'src/multisig/multisig.cpp')
-rw-r--r--src/multisig/multisig.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/multisig/multisig.cpp b/src/multisig/multisig.cpp
index 999894db0..70a4c1c8e 100644
--- a/src/multisig/multisig.cpp
+++ b/src/multisig/multisig.cpp
@@ -82,6 +82,7 @@ namespace cryptonote
{
rct::key sk = rct::scalarmultKey(rct::pk2rct(k), rct::sk2rct(blinded_skey));
crypto::secret_key msk = get_multisig_blinded_secret_key(rct::rct2sk(sk));
+ memwipe(&sk, sizeof(sk));
multisig_keys.push_back(msk);
sc_add(spend_skey.bytes, spend_skey.bytes, (const unsigned char*)msk.data);
}
@@ -126,10 +127,10 @@ namespace cryptonote
//-----------------------------------------------------------------
crypto::secret_key generate_multisig_view_secret_key(const crypto::secret_key &skey, const std::vector<crypto::secret_key> &skeys)
{
- rct::key view_skey = rct::sk2rct(get_multisig_blinded_secret_key(skey));
+ crypto::secret_key view_skey = get_multisig_blinded_secret_key(skey);
for (const auto &k: skeys)
- sc_add(view_skey.bytes, view_skey.bytes, rct::sk2rct(k).bytes);
- return rct::rct2sk(view_skey);
+ sc_add((unsigned char*)&view_skey, rct::sk2rct(view_skey).bytes, rct::sk2rct(k).bytes);
+ return view_skey;
}
//-----------------------------------------------------------------
crypto::public_key generate_multisig_M_N_spend_public_key(const std::vector<crypto::public_key> &pkeys)