From edcc094558779a25811f2736beca97d78a26bff5 Mon Sep 17 00:00:00 2001 From: koe Date: Sat, 30 Apr 2022 16:54:24 -0500 Subject: derive multisig tx secret keys from an entropy source plus the tx inputs' key images --- src/wallet/wallet2.cpp | 4 ++++ src/wallet/wallet2.h | 8 ++++++++ 2 files changed, 12 insertions(+) (limited to 'src/wallet') diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp index ed153d681..ca6670143 100644 --- a/src/wallet/wallet2.cpp +++ b/src/wallet/wallet2.cpp @@ -7157,6 +7157,7 @@ bool wallet2::sign_multisig_tx(multisig_tx_set &exported_txs, std::vector additional_tx_keys; + crypto::secret_key multisig_tx_key_entropy; LOG_PRINT_L2("constructing tx"); auto sources_copy = sources; multisig::signing::tx_builder_ringct_t multisig_tx_builder; @@ -9029,6 +9031,7 @@ void wallet2::transfer_selected_rct(std::vector additional_tx_keys; std::vector dests; std::vector multisig_sigs; + crypto::secret_key multisig_tx_key_entropy; tx_construction_data construction_data; BEGIN_SERIALIZE_OBJECT() + VERSION_FIELD(1) FIELD(tx) FIELD(dust) FIELD(fee) @@ -648,6 +650,12 @@ private: FIELD(dests) FIELD(construction_data) FIELD(multisig_sigs) + if (version < 1) + { + multisig_tx_key_entropy = crypto::null_skey; + return true; + } + FIELD(multisig_tx_key_entropy) END_SERIALIZE() }; -- cgit v1.2.3