Commit graph

977 commits

Author SHA1 Message Date
Riccardo Spagni
c8cc65f30a
Merge pull request #4788
8f3963d2 wallet2: demote a few uninteresting recurring logs to TRACE (moneromooo-monero)
2018-11-16 11:07:21 +02:00
Riccardo Spagni
95d96d139d
Merge pull request #4764
1598f01c wallet2: use padded bulletproofs for multisig signing (stoffu)
2018-11-16 10:58:29 +02:00
moneromooo-monero
2b3595d0fe
various: do not propagate exception through dtor
Coverity 189689, 189690, 189692, 189695
2018-11-15 15:53:21 +00:00
Riccardo Spagni
33ad6fb4c1
Merge pull request #4761
6e1282b6 wallet2: fix off by one in output picking (moneromooo-monero)
2018-11-14 21:34:51 +02:00
stoffu
1a4d160311
wallet2: remove redundant chacha key generation in store_keys 2018-11-07 10:47:10 +09:00
xiphon
840bf155a0 build: fix Ubuntu 16.04 (GCC 5.4.0) compilation 2018-11-06 21:45:00 +00:00
Riccardo Spagni
a369a13928
Merge pull request #4743
9335d5a2 wallet2: save ring in the ringdb once a tx is created (moneromooo-monero)
2018-11-06 21:33:22 +02:00
Riccardo Spagni
d210d6fb45
Merge pull request #4738
107f3398 wallet2: fix ring reuse breaking when using histogram (moneromooo-monero)
2018-11-06 21:31:32 +02:00
Riccardo Spagni
164ba3ef1c
Merge pull request #4731
f26ce08c wallet: add a non destructive blockchain rescan (moneromooo-monero)
2018-11-06 21:30:12 +02:00
Riccardo Spagni
b789f7e10d
Merge pull request #4729
e86af52e wallet2: rewrite keys file in a safer manner (Nathan Dorfman)
2018-11-06 15:09:45 +02:00
moneromooo-monero
6e1282b600
wallet2: fix off by one in output picking
and take into account wallet level minimum spend age
2018-11-05 20:13:00 +00:00
moneromooo-monero
8d71b2b1b3
wallet2: only export necessary outputs and key images
and disable annoying test that requires ridiculous amounts
of skullduggery every time some format changes
2018-11-04 22:27:01 +00:00
moneromooo-monero
769ae42a7b
wallet2: faster output and key image import/export 2018-11-04 22:26:59 +00:00
Riccardo Spagni
7e2483e1d5
Merge pull request #4702
70877b1d wallet2/create_transactions_2: removed obsolete '/ 1024' on min_fee calc (Paul Shapiro)
2018-11-04 20:47:25 +02:00
Riccardo Spagni
ae919a1e15
Merge pull request #4691
7f0dd094 wallet2: sanity check rct output distribution from the daemon (moneromooo-monero)
2018-11-04 20:45:59 +02:00
Riccardo Spagni
0c7086bf7f
Merge pull request #4687
6097472a Update ZMQ fee estimate and add ZMQ output distribution (Lee Clagett)
2018-11-04 20:44:49 +02:00
Riccardo Spagni
d394c50f7b
Merge pull request #4686
cf646e3a wallet2/create_transactions_2: removed extraneous shuffle before sort of unused_*_indices_per_subaddr (Paul Shapiro)
2018-11-04 20:44:27 +02:00
Riccardo Spagni
9cf0e67978
Merge pull request #4685
76681b9b wallet2/create_transactions_2: fixed typo in try_tx=true's estimate_fee args (Paul Shapiro)
2018-11-04 20:44:00 +02:00
Hasan Pekdemir
e198b06e7a Fix: out_of_hashchain_bounds_error in refresh
15:43 < hahsun> Im on stagenet and I suddenly get this exception: 2018-11-04 14:42:52.416 [RPC0] ERROR wallet.wallet2 src/wallet/wallet2.cpp:2070 !m_blockchain.is_in_bounds(current_index). THROW EXCEPTION: error::out_of_hashchain_bounds_error
16:01 <+moneromooo> OK, possibly because the blckchain is always seeded with the genesis block hash...
16:02 <+moneromooo> So that case should be allowed, assuming it doesn't break the code around it.
16:05 <+moneromooo> OK if stop_height == size || (size==1 && stop_heigt ==0)
16:05 <+moneromooo> Throw if not that.
16:06 < hahsun> k
2018-11-04 17:07:30 +01:00
moneromooo-monero
f26ce08c8a
wallet: add a non destructive blockchain rescan 2018-11-03 15:04:37 +00:00
moneromooo-monero
8f3963d200
wallet2: demote a few uninteresting recurring logs to TRACE 2018-11-03 11:51:03 +00:00
moneromooo-monero
0afdb00b9d
wallet2: fix print_ring printing double entries for transactions
When a tx gets from unconfirmed to conirmed, the rings for that
transaction were being added twice
2018-11-03 11:50:38 +00:00
Dusan Klinec
29ffb6bba8
device/trezor: trezor support added 2018-11-02 21:36:39 +01:00
stoffu
1598f01caf
wallet2: use padded bulletproofs for multisig signing
Analogous to #4540
2018-10-31 20:01:25 +09:00
Nathan Dorfman
e86af52e2f wallet2: rewrite keys file in a safer manner 2018-10-28 09:58:54 -06:00
moneromooo-monero
9335d5a297
wallet2: save ring in the ringdb once a tx is created
Even if it is never relayed, it ensures a daemon supplying
fake outs on demand will never be asked for a set with the
real input being the only intersecting member (only a problem
with people who trust their privacy to some stranger's node,
but it seems to be a massively common thing, even in Monero)
2018-10-27 17:59:56 +00:00
moneromooo-monero
107f33985d
wallet2: fix ring reuse breaking when using histogram 2018-10-27 14:35:00 +00:00
Riccardo Spagni
fc06c5daf8
Merge pull request #4617
3ffbec15 rpc: init m_rpc_version in Message ctor (moneromooo-monero)
bfa2dce1 rpc: remove unused ctors (moneromooo-monero)
7cc39845 account: init creation timestamp to 0 (moneromooo-monero)
32123789 wallet2: initialize some scalar fields in ctor where appropriate (moneromooo-monero)
4eca42b2 blockchain_db: initialize m_hardfork in ctor just in case (moneromooo-monero)
2018-10-26 22:39:00 +02:00
Riccardo Spagni
c761bee764
Merge pull request #4561
04ddf02e Return appropriate RPC error code when key image signature check fails (Michał Sałaban)
2018-10-26 22:33:35 +02:00
Riccardo Spagni
169e6e9074
Merge pull request #4552
67e76aa0 wallet_rpc_server: optionally return tx keys in sign_transfer (moneromooo-monero)
2018-10-26 22:32:34 +02:00
Lee Clagett
6097472a19 Update ZMQ fee estimate and add ZMQ output distribution 2018-10-23 23:46:31 -04:00
moneromooo-monero
61f83316b3
wallet2: extend fake out picks away from the gamma pick
in order to unbias selection from blocks with few txes
2018-10-23 09:06:47 +00:00
Paul Shapiro
70877b1d91 wallet2/create_transactions_2: removed obsolete '/ 1024' on min_fee calc 2018-10-22 18:51:45 -05:00
moneromooo-monero
7f0dd094e7
wallet2: sanity check rct output distribution from the daemon 2018-10-22 14:01:46 +00:00
Paul Shapiro
76681b9bda wallet2/create_transactions_2: fixed typo in try_tx=true's estimate_fee args 2018-10-21 12:44:22 -05:00
Paul Shapiro
cf646e3afe wallet2/create_transactions_2: removed extraneous shuffle before sort of unused_*_indices_per_subaddr 2018-10-21 12:43:31 -05:00
Riccardo Spagni
ed4b953bb7
Merge pull request #4518
92a0827e wallet2: make fake out selection messages less spammy (moneromooo-monero)
2018-10-20 20:39:36 +02:00
moneromooo-monero
99cd6f961a
Rename "blackball" for clarity
Apparently some people seem to think it's a censorship list...
2018-10-18 18:45:45 +00:00
moneromooo-monero
3212378912
wallet2: initialize some scalar fields in ctor where appropriate
Coverity 188336
2018-10-16 11:58:48 +00:00
m2049r
d886b97fe2
SOFTWARE is the default wallet device 2018-10-13 09:25:49 +02:00
Michał Sałaban
04ddf02e3a Return appropriate RPC error code when key image signature check fails 2018-10-11 18:12:17 +02:00
moneromooo-monero
67e76aa06c
wallet_rpc_server: optionally return tx keys in sign_transfer 2018-10-10 15:55:35 +00:00
moneromooo-monero
92a0827eea
wallet2: make fake out selection messages less spammy 2018-10-09 21:46:33 +00:00
moneromooo-monero
8833aec083
wallet2: fix cold signing using non padded bulletproofs
This code was deciding which bulletproof configuration to use
based on ptx which weren't created yet.
2018-10-09 14:32:38 +00:00
Riccardo Spagni
e19652df51
Merge pull request #4036
9acf42d3 Multisig M/N functionality core tests added (naughtyfox)
9f3963e8 Arbitrary M/N multisig schemes: * support in wallet2 * support in monero-wallet-cli * support in monero-wallet-rpc * support in wallet api * support in monero-gen-trusted-multisig * unit tests for multisig wallets creation (naughtyfox)
2018-10-07 19:57:26 +02:00
Guillaume LE VAILLANT
977df6315f Fix some calls to the translation function
Some strings were not detected by lupdate because "tr() cannot be called without
context".
2018-10-06 10:26:06 +02:00
moneromooo-monero
34a85e0cc3
wallet2: disable height based segregation
It can still be enable via DNS if a key reusing fork pops up
2018-10-03 20:44:48 +00:00
Riccardo Spagni
932a17018a
Merge pull request #4490
bccd88dd wallet2: clear found out for every tx key (doy-lee)
2018-10-02 22:41:24 +02:00
doy-lee
bccd88ddf5
wallet2: clear found out for every tx key
Avoids triggering the sanity check
2018-10-02 08:53:28 +00:00
naughtyfox
9f3963e823 Arbitrary M/N multisig schemes:
* support in wallet2
* support in monero-wallet-cli
* support in monero-wallet-rpc
* support in wallet api
* support in monero-gen-trusted-multisig
* unit tests for multisig wallets creation
2018-10-01 19:16:56 +03:00
moneromooo-monero
25e5890d37
wallet: fix --generate-from-json using wrong password 2018-10-01 12:32:26 +00:00
Riccardo Spagni
83d8f03c23
Merge pull request #4333
73403004 add --block-notify to monerod and --tx-notify to monero-wallet-{cli,rpc} (moneromooo-monero)
2018-09-29 22:20:44 +02:00
Riccardo Spagni
4a2664f743
Merge pull request #4461
7dd11711 wallet2: fix transfers between subaddresses hitting the sanity check (moneromooo-monero)
2018-09-29 22:20:41 +02:00
Riccardo Spagni
e951258543
Merge pull request #4456
06d05c21 device: set device name correctly if key_on_device is set (Dusan Klinec)
2018-09-29 22:20:27 +02:00
Riccardo Spagni
ff0d7a7678
Merge pull request #4406
7964d4f8 wallet2: handle corner case in picking fake outputs (moneromooo-monero)
2018-09-29 22:09:46 +02:00
moneromooo-monero
e350cc5ad5
wallet2: fix duplicate output making it to the RPC 2018-09-25 11:28:39 +00:00
Riccardo Spagni
85110b42ab
Merge pull request #4401
66901901 README: harmonize command formatting inside README.md (Andrea)
8cd98408 disable AES on s390x architecture (Tuan M. Hoang)
4ed30bab wallet: implement coin splitting for sweep_* 'outputs' option (whythat)
24f52396 wallet: add 'outputs' option for sweep_* commands (whythat)
52e19d69 README: Compile boost with cxxflags=-fPIC cflags=-fPIC (Italocoin Project)
0c77523d README: fill in libsodium package name for Arch (phloatingman)
2018-09-21 20:46:22 +02:00
m2049r
bce474be7d
query backing device 2018-09-19 18:25:38 +02:00
Riccardo Spagni
08f0c60ffc
Merge pull request #4360
7a76354c wallet2: import_multisig forward refresh exception (naughtyfox)
2018-09-18 17:58:14 +02:00
Riccardo Spagni
b174527f1d
Merge pull request #4302
ba8dd347 api/wallet: properly disable key encryption (stoffu)
2018-09-18 17:31:35 +02:00
whythat
4ed30bab50
wallet: implement coin splitting for sweep_* 'outputs' option
Implemented strategy splits total amount into N equal parts,
where N is a specified number of outputs. If N > 1, dummy
change output is NOT created.

rebased by moneromooo
2018-09-18 11:02:03 +00:00
whythat
24f5239693
wallet: add 'outputs' option for sweep_* commands
'outputs' option allows to specify the number of
separate outputs of smaller denomination that will
be created by sweep operation.

rebased by moneromooo
2018-09-18 11:01:59 +00:00
stoffu
ba8dd3479d
api/wallet: properly disable key encryption 2018-09-17 22:15:29 +09:00
Dusan Klinec
f9b22a7b01
hw_device: support for multiple devices added [for review]
- device name is a new wallet property
- full device name is now a bit more structured so we can address particular device vendor + device path. Example: 'Ledger', 'Trezor:udp', 'Trezor:udp:127.0.0.1:21324', 'Trezor:bridge:usb01'. The part before ':' identifies HW device implementation, the optional part after ':' is device path to look for.
- new --hw-device parameter added to the wallet, can name the hardware device
- device reconnect added
2018-09-14 16:02:00 +02:00
Riccardo Spagni
d743994086
Merge pull request #4324
44259e56 wallet: ask-password can now ask without encrypting the secret spend key (moneromooo-monero)
2018-09-14 13:15:41 +02:00
moneromooo-monero
44259e560e
wallet: ask-password can now ask without encrypting the secret spend key 2018-09-14 11:14:21 +00:00
Riccardo Spagni
fd194aaa4d
Merge pull request #4347
df0e7c2f wallet2: fix secondary partially signed multisig txes (moneromooo-monero)
2018-09-14 13:06:38 +02:00
Riccardo Spagni
b182dc8262
Merge pull request #4336
5f8f5631 wallet2.get_reserve_proof: throw when specified amount is zero (stoffu)
2018-09-14 13:06:06 +02:00
Riccardo Spagni
dd2fc3afe3
Merge pull request #4332
20171746 wallet2: factor the creation of a new wallet keys file (moneromooo-monero)
be6acfd5 wallet2: factor new blockchain setup (moneromooo-monero)
2018-09-14 13:05:43 +02:00
Riccardo Spagni
1396b65bbc
Merge pull request #4331
88fbc4a5 wallet2: fill in v2 height for stagenet (moneromooo-monero)
2018-09-14 13:05:02 +02:00
Riccardo Spagni
239a7e10ff
Merge pull request #4253
be001326 remove obsolete daemon selection of fake outs and old tx construction (moneromooo-monero)
2018-09-14 12:54:25 +02:00
moneromooo-monero
be001326d1
remove obsolete daemon selection of fake outs and old tx construction 2018-09-14 10:51:45 +00:00
Riccardo Spagni
c74d9057f8
Merge pull request #4260
a54dbaee blockchain_blackball: add --force-chain-reaction-pass flag (moneromooo-monero)
44439c32 record blackballs as amount/offset, and add export ability (moneromooo-monero)
4bce935b blockchain_blackball: more optimizations (moneromooo-monero)
b66ba783 blockchain_blackball: do not process duplicate blockchains parts (moneromooo-monero)
639a3c01 blockchain_blackball: make it clear secondary passes are not incremental (moneromooo-monero)
eb8a51be blockchain_blackball: detect spent outputs by partial ring reuse (moneromooo-monero)
d6d276c6 blockchain_blackball: fix chain reaction phase in incremental mode (moneromooo-monero)
2b2a681b blockchain_blackball: avoid false positives for different amounts (moneromooo-monero)
80e4fef3 blockchain_blackball: set transaction looping txn to read only (moneromooo-monero)
4801d6b5 blockchain_blackball: add stats (moneromooo-monero)
846190fd blockchain_blackball: support pre-v2 databases (moneromooo-monero)
daa6cc7d blockchain_blackball: use LMDB for the cache (moneromooo-monero)
50cb370d ringdb: allow blackballing many outputs at once (moneromooo-monero)
2018-09-14 12:45:18 +02:00
Riccardo Spagni
438781afc4
Merge pull request #4221
62511df6 wallet2: fix refresh retry when a block/tx fails to parse (moneromooo-monero)
b219c24c wallet2: trim hash chain after fast refresh of hashes (moneromooo-monero)
5b6bcca3 wallet2: fix checking the wrong vector when adding hashes (moneromooo-monero)
2018-09-14 12:38:36 +02:00
moneromooo-monero
ac4f71c200
wallet2: bump testnet rollback to account for coming reorg 2018-09-11 13:38:35 +00:00
moneromooo-monero
a1359ad43c
Check inputs to addKeys are in range
Reported by QuarksLab.
2018-09-11 13:38:09 +00:00
moneromooo-monero
5ffb2ff9b7
v8: per byte fee, pad bulletproofs, fixed 11 ring size 2018-09-11 13:38:07 +00:00
moneromooo-monero
2a8fcb421b
Bulletproof aggregated verification and tests
Also constrains bulletproofs to simple rct, for simplicity
2018-09-11 13:37:37 +00:00
moneromooo-monero
9ce9f8caf6
bulletproofs: add multi output bulletproofs to rct 2018-09-11 13:37:28 +00:00
naughtyfox
7a76354c8b wallet2: import_multisig forward refresh exception 2018-09-10 18:45:37 +03:00
moneromooo-monero
44439c3208
record blackballs as amount/offset, and add export ability 2018-09-10 09:04:18 +00:00
moneromooo-monero
50cb370d5b
ringdb: allow blackballing many outputs at once
It cuts down on txn commits, and speeds up blackballing substantially
2018-09-09 12:01:43 +00:00
moneromooo-monero
df0e7c2feb
wallet2: fix secondary partially signed multisig txes 2018-09-08 23:12:06 +00:00
luigi1111
77ed11e627
Merge pull request #4270
29dea03 epee: resize vectors where possible in serialization (moneromooo-monero)
76affd9 epee: some speedup in parsing (moneromooo-monero)
dc6c069 db_lmdb: speedup the get_output_distribution common case (moneromooo-monero)
76ac5a8 wallet2: ask for a binary output distribution, for speed (moneromooo-monero)
2018-09-04 13:19:58 -05:00
luigi1111
5f1bbe3bce
Merge pull request #4268
1f2409e Do memwipe for critical secret keys copied to rct::key (stoffu)
2018-09-04 13:16:04 -05:00
luigi1111
6d4d4ddb68
Merge pull request #4252
ac09cfa wallet2: remove obsolete pruned/unpruned case (moneromooo-monero)
2018-09-04 13:05:12 -05:00
stoffu
5f8f56315c
wallet2.get_reserve_proof: throw when specified amount is zero 2018-09-04 13:00:38 +09:00
moneromooo-monero
20171746de
wallet2: factor the creation of a new wallet keys file 2018-09-03 11:27:46 +00:00
moneromooo-monero
be6acfd5be
wallet2: factor new blockchain setup 2018-09-03 11:27:43 +00:00
moneromooo-monero
88fbc4a567
wallet2: fill in v2 height for stagenet 2018-09-03 11:26:28 +00:00
stoffu
8ca1215f25
wallet: store trusted-daemon flag in wallet2 2018-08-23 14:55:09 +09:00
luigi1111
1db7a29e12
Merge pull request #4247
10475ab node_rpc_proxy: fix fork earliest height caching [RYO backport] (fireice-uk)
2018-08-22 21:04:34 -05:00
luigi1111
6e8e4fb3b7
Merge pull request #4202
8439306 wallet2: do not divide by 0 on invalid daemon response (moneromooo-monero)
2018-08-22 20:42:20 -05:00
moneromooo-monero
62511df622
wallet2: fix refresh retry when a block/tx fails to parse
It would switch to a new set of blocks and fail, getting out of sync
with the hash chain in the process
2018-08-22 09:57:46 +00:00
moneromooo-monero
b219c24c3a
wallet2: trim hash chain after fast refresh of hashes
This ensures it can't end up filled with the actual placeholders
2018-08-22 09:57:42 +00:00
moneromooo-monero
5b6bcca32a
wallet2: fix checking the wrong vector when adding hashes
The two vectors should be the same size anyway, so add an assert
to catch any case where they aren't
2018-08-22 09:57:39 +00:00
moneromooo-monero
76ac5a8fbe
wallet2: ask for a binary output distribution, for speed 2018-08-19 15:58:25 +00:00
stoffu
1f2409e9e2
Do memwipe for critical secret keys copied to rct::key 2018-08-16 22:26:30 +09:00
moneromooo-monero
ab74dc277a
crypto: make secret_key automatically mlock 2018-08-16 11:57:49 +00:00
moneromooo-monero
e9ffa91257
store secret keys encrypted where possible
The secret spend key is kept encrypted in memory, and
decrypted on the fly when needed.

Both spend and view secret keys are kept encrypted in a JSON
field in the keys file. This avoids leaving the keys in
memory due to being manipulated by the JSON I/O API.
2018-08-16 11:57:43 +00:00