aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorluigi1111 <luigi1111w@gmail.com>2018-07-27 14:27:47 -0500
committerluigi1111 <luigi1111w@gmail.com>2018-07-27 14:27:47 -0500
commitf739a3cbb8e95bc773756e7bc503448e61eed122 (patch)
tree00d9edecd0fff278a4546ff887261b30ba02aaa1 /src
parentMerge pull request #4108 (diff)
parentwallet: warn when payment IDs are used (diff)
downloadmonero-f739a3cbb8e95bc773756e7bc503448e61eed122.tar.xz
Merge pull request #4109
2951436 wallet: warn when payment IDs are used (moneromooo-monero)
Diffstat (limited to 'src')
-rw-r--r--src/simplewallet/simplewallet.cpp19
-rw-r--r--src/wallet/wallet2.cpp6
2 files changed, 21 insertions, 4 deletions
diff --git a/src/simplewallet/simplewallet.cpp b/src/simplewallet/simplewallet.cpp
index 6a6f98a20..775b7c359 100644
--- a/src/simplewallet/simplewallet.cpp
+++ b/src/simplewallet/simplewallet.cpp
@@ -3973,6 +3973,24 @@ void simple_wallet::on_money_received(uint64_t height, const crypto::hash &txid,
tr("txid ") << txid << ", " <<
print_money(amount) << ", " <<
tr("idx ") << subaddr_index;
+
+ const uint64_t warn_height = m_wallet->nettype() == TESTNET ? 1000000 : m_wallet->nettype() == STAGENET ? 50000 : 1650000;
+ if (height >= warn_height)
+ {
+ std::vector<tx_extra_field> tx_extra_fields;
+ parse_tx_extra(tx.extra, tx_extra_fields); // failure ok
+ tx_extra_nonce extra_nonce;
+ if (find_tx_extra_field_by_type(tx_extra_fields, extra_nonce))
+ {
+ crypto::hash8 payment_id8 = crypto::null_hash8;
+ if (get_encrypted_payment_id_from_tx_extra_nonce(extra_nonce.nonce, payment_id8))
+ message_writer() <<
+ tr("NOTE: this transaction uses an encrypted payment ID: consider using subaddresses instead");
+ else
+ message_writer(console_color_red, false) <<
+ tr("WARNING: this transaction uses an unencrypted payment ID: consider using subaddresses instead");
+ }
+ }
if (m_auto_refresh_refreshing)
m_cmd_binder.print_prompt();
else
@@ -4566,6 +4584,7 @@ bool simple_wallet::transfer_main(int transfer_type, const std::vector<std::stri
return true;
}
payment_id_seen = true;
+ message_writer() << tr("Unencrypted payment IDs are bad for privacy: ask the recipient to use subaddresses instead");
}
uint64_t locked_blocks = 0;
diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp
index 9e50f3229..90807803a 100644
--- a/src/wallet/wallet2.cpp
+++ b/src/wallet/wallet2.cpp
@@ -1557,6 +1557,7 @@ void wallet2::process_new_transaction(const crypto::hash &txid, const cryptonote
{
// We got a payment ID to go with this tx
LOG_PRINT_L2("Found encrypted payment ID: " << payment_id8);
+ MINFO("Consider using subaddresses instead of encrypted payment IDs");
if (tx_pub_key != null_pkey)
{
if (!m_account.get_device().decrypt_payment_id(payment_id8, tx_pub_key, m_account.get_keys().m_view_secret_key))
@@ -1580,12 +1581,9 @@ void wallet2::process_new_transaction(const crypto::hash &txid, const cryptonote
else if (get_payment_id_from_tx_extra_nonce(extra_nonce.nonce, payment_id))
{
LOG_PRINT_L2("Found unencrypted payment ID: " << payment_id);
+ MWARNING("Found unencrypted payment ID: these are bad for privacy, consider using subaddresses instead");
}
}
- else if (get_payment_id_from_tx_extra_nonce(extra_nonce.nonce, payment_id))
- {
- LOG_PRINT_L2("Found unencrypted payment ID: " << payment_id);
- }
for (const auto& i : tx_money_got_in_outs)
{