diff options
| author | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2015-10-25 16:16:59 +0000 |
|---|---|---|
| committer | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2015-10-25 16:34:57 +0000 |
| commit | ecbb732faab2b79225155dbd7f91b53ac34be669 (patch) | |
| tree | 1f1e3d1fec391d2ff9fd9170e3a1f9b3516805b1 /src/cryptonote_core/blockchain_storage.cpp | |
| parent | 14dd279fe123d7b48baed82d9109c585839b678f (diff) | |
| download | monzero-core-ecbb732faab2b79225155dbd7f91b53ac34be669.tar.gz monzero-core-ecbb732faab2b79225155dbd7f91b53ac34be669.tar.xz monzero-core-ecbb732faab2b79225155dbd7f91b53ac34be669.zip | |
Fix leak on real output when using a very recent output
The wallet and the daemon applied different height considerations
when selecting outputs to use. This can leak information on which
input in a ring signature is the real one.
Found and originally fixed by smooth on Aeon.
Diffstat (limited to 'src/cryptonote_core/blockchain_storage.cpp')
| -rw-r--r-- | src/cryptonote_core/blockchain_storage.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/cryptonote_core/blockchain_storage.cpp b/src/cryptonote_core/blockchain_storage.cpp index 4a4d348ba..b2d4f5ac1 100644 --- a/src/cryptonote_core/blockchain_storage.cpp +++ b/src/cryptonote_core/blockchain_storage.cpp @@ -1042,7 +1042,7 @@ size_t blockchain_storage::find_end_of_allowed_index(const std::vector<std::pair --i; transactions_container::const_iterator it = m_transactions.find(amount_outs[i].first); CHECK_AND_ASSERT_MES(it != m_transactions.end(), 0, "internal error: failed to find transaction from outputs index with tx_id=" << amount_outs[i].first); - if(it->second.m_keeper_block_height + CRYPTONOTE_MINED_MONEY_UNLOCK_WINDOW <= get_current_blockchain_height() ) + if(it->second.m_keeper_block_height + CRYPTONOTE_DEFAULT_TX_SPENDABLE_AGE <= get_current_blockchain_height() ) return i+1; } while (i != 0); return 0; |
