Riccardo Spagni
e89f33634d
Merge pull request #3556
...
d400b4d3
wallet2: move segregation height to v7 (moneromooo-monero)
2018-04-12 13:24:07 +02:00
Riccardo Spagni
dd527d9369
Merge pull request #3535
...
4c6ff21c
wallet: warn if not using the default ring size (moneromooo-monero)
2018-04-12 13:22:09 +02:00
Riccardo Spagni
1e792c3e26
Merge pull request #3533
...
2012cbe9
simplewallet: warn about key reuse on startup (moneromooo-monero)
2018-04-12 13:21:51 +02:00
Riccardo Spagni
3c7d7bc324
Merge pull request #3531
...
eb59f7c5
cryptonote_tx_util: make destinations properly shuffled (stoffu)
2018-04-12 13:21:15 +02:00
Riccardo Spagni
51a4cc0fad
Merge pull request #3515
...
89250054
wallet: fix default mixin (4 -> 6) (sneurlax)
2018-04-12 13:06:56 +02:00
moneromooo-monero
178c11f4a4
tx_pool: fix loading with colliding key images
...
A key image may be present more than once if all but one of the
txes spending that key image are coming from blocks. When loading
a txpool from storage, we must load the one that's not from a
block first to avoid rejection
2018-04-11 15:29:35 +01:00
stoffu
5eeeec39f6
wallet2: store subaddress lookahead settings
2018-04-11 15:38:55 +09:00
moneromooo-monero
91a61fea55
common: make this build with unbound 1.4.20
...
Common on currently used distros
2018-04-10 23:43:24 +01:00
cslashm
8daba22f92
Use 'boost' mutex instead of 'std' mutex
2018-04-10 08:43:06 +02:00
cslashm
d481410bff
Fix sub-address tx scan.
...
When additional keys was needed, the TX scan failed because the
derivation data was always recomputed with the main tx_key and not
the corresponding additional one.
Moreover this patch avoid perf decreasing when not using HW device.
2018-04-09 16:53:13 +02:00
moneromooo-monero
58f6607382
wallet2: request transactions in slices when scanning for known rings
...
This avoid massive memory consumption for huge wallets
2018-04-07 08:42:02 +01:00
moneromooo-monero
2897c269de
rpc: allow getting pruned blocks from gettransactions
...
and get them pruned in find_and_save_rings, since it does not need
the pruned data in the first place.
Also set decode_to_json to false where missing, we don't need this
either.
2018-04-07 08:41:59 +01:00
moneromooo-monero
cdf9ecfd0f
wallet2: fix misc issues when the ringdb can't be initialized
2018-04-06 20:34:28 +01:00
moneromooo-monero
d400b4d360
wallet2: move segregation height to v7
...
since people seem to really want to use things the wrong way.
2018-04-05 12:50:48 +01:00
moneromooo-monero
4c6ff21cc6
wallet: warn if not using the default ring size
2018-03-31 15:47:42 +01:00
moneromooo-monero
2012cbe9b5
simplewallet: warn about key reuse on startup
2018-03-31 12:20:52 +01:00
stoffu
eb59f7c563
cryptonote_tx_util: make destinations properly shuffled
2018-03-31 18:37:46 +09:00
Riccardo Spagni
7090121b13
Merge pull request #3512
...
a71e4dab
device: fix endianess dependence on subaddress secret key generation (moneromooo-monero)
2018-03-29 17:04:27 +02:00
Riccardo Spagni
9fce7614c1
Merge pull request #3503
...
8ff2cc75
fix lambda compile error on openbsd (moneromooo-monero)
2018-03-29 17:04:12 +02:00
sneurlax
892500549a
wallet: fix default mixin (4 -> 6)
2018-03-28 09:24:14 -07:00
cslashm
0f3ff8ce2c
Add the possibility to export private view key for fast scan.
...
On client startup the device asks for authorization to export the private view key.
If user agree, the client hold the private view key allowing a fast blockchain scan.
If the user does not agree, the blockchain scan is fully done via the device.
2018-03-28 14:02:36 +02:00
cslashm
da5de484f2
Change mutex lock model to avoid dead lock and ensure locks are always released.
...
Additional cosmetic fixes:
move 'name' as protected
remove unnecessary local var
Fix debug log
2018-03-28 14:02:36 +02:00
cslashm
4c0545cc41
Automatic height setup when creating/restoring hw device.
...
When creating/restoring wallet, if --restore-height option is not used the current estimate
height is used for starting the scan. In other words it is assume we are creating a new account.
2018-03-28 14:02:36 +02:00
moneromooo-monero
a71e4dabe8
device: fix endianess dependence on subaddress secret key generation
...
We now force little endianness
2018-03-28 11:57:11 +01:00
moneromooo-monero
8ff2cc751d
fix lambda compile error on openbsd
2018-03-27 14:49:54 +01:00
Riccardo Spagni
32bd639b4b
update block hashes for checkpoints.dat
2018-03-24 08:48:23 +02:00
Riccardo Spagni
202b6519a3
Merge pull request #3486
...
1834127c
rpc: make get_output_distribution a non-restricted RPC (moneromooo-monero)
2018-03-23 21:15:23 +02:00
moneromooo-monero
1834127c82
rpc: make get_output_distribution a non-restricted RPC
...
so that those nodes can still be used for sending transactions
2018-03-23 10:56:55 +00:00
Riccardo Spagni
4396ff8501
Merge pull request #3474
...
eaa8bfe7
wallet2: set from_height of GET_OUTPUT_DISTRIBUTION correctly The previous expression (stoffu)
0a619f78
wallet2: enable the mitigation only after the fork height (stoffu)
2018-03-22 18:24:11 +02:00
Riccardo Spagni
68118645e6
Merge pull request #3472
...
5f664793
p2p: correct port number for seed nodes (stoffu)
2018-03-22 18:23:41 +02:00
Riccardo Spagni
8ce0cfc73a
Merge pull request #3469
...
0098ed33
wallet2: fix for loading settings of key reuse mitigation (stoffu)
2018-03-22 18:23:13 +02:00
Riccardo Spagni
fb21032a7d
Merge pull request #3462
...
57300491
wallet: catch exceptions dealing with ringdb and warn (moneromooo-monero)
2018-03-22 18:22:07 +02:00
stoffu
eaa8bfe7c0
wallet2: set from_height of GET_OUTPUT_DISTRIBUTION correctly
...
The previous expression
req_t.from_height = X ? Y >= Z : 0;
forces the parameter to take the value of either 0 or 1.
2018-03-22 20:02:25 +09:00
stoffu
0a619f789b
wallet2: enable the mitigation only after the fork height
2018-03-22 20:02:14 +09:00
stoffu
5f6647934b
p2p: correct port number for seed nodes
2018-03-22 14:56:35 +09:00
stoffu
0098ed338c
wallet2: fix for loading settings of key reuse mitigation
2018-03-22 12:10:46 +09:00
moneromooo-monero
5730049178
wallet: catch exceptions dealing with ringdb and warn
2018-03-21 14:29:49 +00:00
moneromooo-monero
d4d1afd688
core: fix use of uninitialised data
2018-03-18 23:39:22 +00:00
Riccardo Spagni
428fb45f68
update checkpoints
2018-03-18 16:44:36 +02:00
Riccardo Spagni
3fedd51d26
update checkpoints.dat to block 1532400
2018-03-18 16:42:20 +02:00
Riccardo Spagni
83dbc5be76
update version to 0.12 Lithium Luna
2018-03-18 16:15:50 +02:00
Riccardo Spagni
df91d7bcbd
Merge pull request #3426
...
8ea3c4d5
simplewallet: new --use-english-language-names flag (moneromooo-monero)
2018-03-18 15:58:12 +02:00
Riccardo Spagni
b8ccd47b9f
Merge pull request #3419
...
1e393f4b
wallet: make the segregation height settable (moneromooo-monero)
2018-03-18 15:57:58 +02:00
moneromooo-monero
bb20f104ba
Move v7 fork to 1546000 to give more update time
2018-03-18 09:29:31 +00:00
moneromooo-monero
8ea3c4d544
simplewallet: new --use-english-language-names flag
...
On some Windows systems, displaying language names in their own
languages freezes the display.
2018-03-17 22:46:41 +00:00
moneromooo-monero
1e393f4bb7
wallet: make the segregation height settable
...
via user setting first, then DNS TXT record, hardcoded fallback
2018-03-17 14:56:31 +00:00
Riccardo Spagni
5cd36e48bf
Merge pull request #3421
...
9732a37e
wallet_rpc_server: add sweep_unmixable as alias for sweep_dust (moneromooo-monero)
2018-03-17 16:52:46 +02:00
Riccardo Spagni
83651630bc
Merge pull request #3418
...
20a00266
blockchain: forbid bulletproof types before v8 (moneromooo-monero)
2018-03-17 16:51:47 +02:00
moneromooo-monero
9732a37e9a
wallet_rpc_server: add sweep_unmixable as alias for sweep_dust
2018-03-17 11:22:58 +00:00
moneromooo-monero
20a002667c
blockchain: forbid bulletproof types before v8
...
They were already forbidden implicitely, but let's make that
explicit for robustness
2018-03-16 18:18:34 +00:00
stoffu
b86f1e5dad
Add command line option allowing to restrict the default sub-address lookahead in order to avoid
...
so looooong time of set-up when creating a HW based wallet.
2018-03-16 18:00:28 +01:00
Riccardo Spagni
a14eabc043
Merge pull request #3416
...
6f54c910
simplewallet: fix restore height prompt that got disabled by #3175 (stoffu)
2018-03-16 18:10:20 +02:00
Riccardo Spagni
432480fa42
Merge pull request #3414
...
524cbdc1
blockchain: fix log message about per-kB fee (stoffu)
2018-03-16 18:09:34 +02:00
Riccardo Spagni
2a9839cc3e
Merge pull request #3376
...
833f9fcf
show '<Not set>' for empty wallet description (cryptochangements34)
2018-03-16 18:08:52 +02:00
Riccardo Spagni
0f27fc57ac
Merge pull request #3336
...
57c0b1ed
Fix typos in various files (Dimitris Apostolou)
2018-03-16 18:08:07 +02:00
moneromooo-monero
eac3a11ed3
wallet: more user friendly print_ring
...
It can now take a txid (to display rings for all its inputs),
and will print rings in a format that set_ring understands
2018-03-16 12:07:45 +00:00
moneromooo-monero
798535149d
wallet2_api: add key reuse mitigations API
2018-03-16 12:07:42 +00:00
moneromooo-monero
b057a21d56
wallet2_api: add ring api
2018-03-16 10:33:05 +00:00
moneromooo-monero
d32ef7b0f2
ringdb: factor ring addition code
2018-03-16 10:33:02 +00:00
moneromooo-monero
a7da8208f5
wallet2_api: add blackball api
2018-03-16 10:32:59 +00:00
moneromooo-monero
504428ab4a
ringdb: use the genesis block as a db name
...
This will avoid careless forkers polluting the shared database
even if they make their own chain. They'll then automatically
start using another subdb, and any key-reusing fork of those
forks will reuse their subdbs.
2018-03-16 10:32:54 +00:00
moneromooo-monero
b09e5181cc
wallet: add a set_ring command
...
This is so one can set rings for spent key images in case the
attackers don't merge the ring matching patch set.
2018-03-16 10:32:51 +00:00
moneromooo-monero
0590f62ab6
new blockchain_usage tool, reports on output usage
2018-03-16 10:32:46 +00:00
moneromooo-monero
db10dd6d83
wallet: make ringdb an object with database state
2018-03-16 10:32:42 +00:00
moneromooo-monero
df6fad4c62
blockchain_utilities: new blockchain_blackball tool
...
It scans for known spent outputs and stores their public keys
in a database which can then be read by the wallet, which can
then avoid using those as fake outs in new transactions.
Usage: monero-blockchain-blackball db1 db2...
This uses the shared database in ~/.shared-ringdb
2018-03-16 10:32:39 +00:00
moneromooo-monero
d29ea0455a
wallet: add an output blackball list to avoid using those in rings
2018-03-16 10:32:37 +00:00
moneromooo-monero
18eaf19489
wallet: key reuse mitigation options
...
If a pre-fork output is spent on both Monero and attack chain,
any post-fork output can be deduced to be a fake output, thereby
decreasing the effective ring size.
The segregate-per-fork-outputs option, on by default, allows
selecting only pre-fork outputs in this case, so that the same
ring can be used when spending it on the other side, which does
not decrease the effective ring size.
This is intended to be SET when intending to spend Monero on the
attack fork, and to be UNSET if not intending to spend Monero
on the attack fork (since it leaks the fact that the output being
spent is pre-fork).
If the user is not certain yet whether they will spend pre-fork
outputs on a key reusing fork, the key-reuse-mitigation2 option
should be SET instead.
If you use this option and intend to spend Monero on both forks,
then spend real Monero first.
2018-03-16 10:32:34 +00:00
moneromooo-monero
5f146873c5
wallet: add shared ring database
...
This maps key images to rings, so that different forks can reuse
the rings by key image. This avoids revealing the real inputs like
would happen if two forks spent the same outputs with different
rings. This database is meant to be shared with all Monero forks
which don't bother making a new chain, putting users' privacy at
risk in the process. It is placed in a shared data directory by
default ($HOME/.shared-ringdb on UNIX like systems). You may
use --shared-ringdb-dir to override this location, and should
then do so for all Monero forks for them to share the database.
2018-03-16 10:32:29 +00:00
moneromooo-monero
41f727ce42
add RPC to get a histogram of outputs of a given amount
2018-03-16 10:32:26 +00:00
cryptochangements34
833f9fcfe9
show '<Not set>' for empty wallet description
2018-03-15 23:22:45 -04:00
stoffu
6f54c910f7
simplewallet: fix restore height prompt that got disabled by #3175
2018-03-16 11:55:31 +09:00
stoffu
524cbdc1e2
blockchain: fix log message about per-kB fee
2018-03-16 10:43:19 +09:00
Dimitris Apostolou
57c0b1ed9f
Fix typos in various files
2018-03-15 18:25:38 +02:00
Riccardo Spagni
51bb7fafac
Merge pull request #3410
...
c5024c5b
simplewallet: add a warning when getting a daemon error in transfer (moneromooo-monero)
2018-03-15 17:10:01 +02:00
Riccardo Spagni
60af9d689b
Merge pull request #3408
...
e1b526b3
Remove the `Blockchain::get_all_known_block_ids` function. (Jean Pierre Dudey)
2018-03-15 17:09:13 +02:00
moneromooo-monero
c5024c5b73
simplewallet: add a warning when getting a daemon error in transfer
...
A malicious daemon (or MITM) could attempt to add spurious errors
so the wallet tries again, sending another set of fake outs.
2018-03-15 13:33:19 +00:00
stoffu
a7266d6d7b
wallet2+cli+rpc: eliminate redundant m_http_client from cli/rpc and delegate calls to wallet2
2018-03-15 22:01:51 +09:00
Jean Pierre Dudey
e1b526b371
Remove the Blockchain::get_all_known_block_ids
function.
...
This function isn't used in the codebase.
Signed-off-by: Jean Pierre Dudey <jeandudey@hotmail.com>
2018-03-14 21:56:19 -04:00
stoffu
71d186566e
replace invoke_http_json("/json_rpc",...) with invoke_http_json_rpc("/json_rpc",methodname,...) to reduce boilerplate
2018-03-14 23:23:59 +09:00
Riccardo Spagni
a69c713f8e
Merge pull request #3398
...
c577abab
wallet: fix auto low priority so that it takes effect only when saved default is 0 (stoffu)
2018-03-14 16:18:15 +02:00
Riccardo Spagni
2fe1504c03
Merge pull request #3399
...
1d39b265
wallet2: fix use_fork_rules() when querying version that is defined but not enabled yet (stoffu)
2018-03-14 16:17:59 +02:00
Riccardo Spagni
f9f2d182da
Merge pull request #3395
...
523371c0
p2p: fix network ID being uninitialised when using exclusive peers (moneromooo-monero)
2018-03-14 16:10:42 +02:00
Riccardo Spagni
8b90e3141a
Merge pull request #3386
...
9abeff59
wallet2: handle no blocks returned in refresh to mean no new blocks (moneromooo-monero)
2018-03-14 16:10:00 +02:00
Riccardo Spagni
7a44301675
Merge pull request #3385
...
ec41006c
node_rpc_proxy: fix target height caching (moneromooo-monero)
2018-03-14 16:09:40 +02:00
Riccardo Spagni
534369eece
Merge pull request #3384
...
b63ea060
simplewallet: do not call a RPC when displaying the prompt (moneromooo-monero)
2018-03-14 16:08:14 +02:00
Riccardo Spagni
cb72b85bbf
Merge pull request #3372
...
c3e23b2d
ringct: 17% improvement in Borromean signature verification (moneromooo-monero)
2018-03-14 16:06:16 +02:00
stoffu
4405e4fc73
wallet2: check_tx_key() shouldn't require hardware encryption
2018-03-14 21:00:18 +09:00
stoffu
7dfa5e9e6e
chacha: call prehashed version explicitly as generate_chacha_key_prehashed
...
hash: add prehashed version cn_slow_hash_prehashed
slow-hash: let cn_slow_hash take 4th parameter for deciding prehashed or not
slow-hash: add support for prehashed version for the other 3 platforms
2018-03-14 21:00:17 +09:00
stoffu
b2d23b189e
crypto: revert odd namespace changes made in #3303
2018-03-14 21:00:17 +09:00
stoffu
8705beaf51
keypair::generate: always require hw::device to avoid possible mistake
2018-03-14 21:00:16 +09:00
stoffu
27a196b126
device: untangle cyclic depenency
...
When #3303 was merged, a cyclic dependency chain was generated:
libdevice <- libcncrypto <- libringct <- libdevice
This was because libdevice needs access to a set of basic crypto operations
implemented in libringct such as scalarmultBase(), while libringct also needs
access to abstracted crypto operations implemented in libdevice such as
ecdhEncode(). To untangle this cyclic dependency chain, this patch splits libringct
into libringct_basic and libringct, where the basic crypto ops previously in
libringct are moved into libringct_basic. The cyclic dependency is now resolved
thanks to this separation:
libcncrypto <- libringct_basic <- libdevice <- libcryptonote_basic <- libringct
This eliminates the need for crypto_device.cpp and rctOps_device.cpp.
Also, many abstracted interfaces of hw::device such as encrypt_payment_id() and
get_subaddress_secret_key() were previously implemented in libcryptonote_basic
(cryptonote_format_utils.cpp) and were then called from hw::core::device_default,
which is odd because libdevice is supposed to be independent of libcryptonote_basic.
Therefore, those functions were moved to device_default.cpp.
2018-03-14 21:00:15 +09:00
stoffu
c9b38b4765
device: made function prototypes consistent with pre-#3303 codebase
2018-03-14 21:00:06 +09:00
Riccardo Spagni
f2e8e8d23c
Merge pull request #3377
...
aa8bef0c
fix error message typo in wallet2.cpp (cryptochangements34)
2018-03-14 13:38:50 +02:00
Riccardo Spagni
9a63fbcf83
Merge pull request #3371
...
84decbea
core: add v7 for 1539500 on mainnet (moneromooo-monero)
2018-03-14 13:37:25 +02:00
Riccardo Spagni
3bc2537f5a
Merge pull request #3369
...
1979d53d
wallet: fixes and tweaks to the save_watch_only command (moneromooo-monero)
2018-03-14 13:37:14 +02:00
Riccardo Spagni
0f2d6d40b4
Merge pull request #3360
...
1ff35fda
Wallet API: make nettype non-defaulted to disambiguate from deprecated versions (and make libwallet_api_tests compilable) (stoffu)
2018-03-14 13:37:00 +02:00
Riccardo Spagni
2e074e2ae7
Merge pull request #3358
...
978663d4
Stagenet: successive forks up to v7 (stoffu)
2018-03-14 13:36:47 +02:00
Riccardo Spagni
117cf12509
Merge pull request #3355
...
0bbd521f
libwallet_merged: added missing libdevice (stoffu)
2018-03-14 13:36:36 +02:00
Riccardo Spagni
33158f089d
Merge pull request #3354
...
ffe70b8f
Make mixin optional with default for rpc transfer (cryptochangements34)
2018-03-14 13:36:25 +02:00
Riccardo Spagni
2dfb4f098e
Merge pull request #3353
...
73dd883d
Ledger HW Bug fixes (Cédric)
2018-03-14 13:36:14 +02:00