Commit Graph

468 Commits

Author SHA1 Message Date
Riccardo Spagni b174527f1d Merge pull request #4302
ba8dd347 api/wallet: properly disable key encryption (stoffu)
2018-09-18 17:31:35 +02: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 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 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
moneromooo-monero 5ffb2ff9b7 v8: per byte fee, pad bulletproofs, fixed 11 ring size 2018-09-11 13:38:07 +00:00
moneromooo-monero 9ce9f8caf6 bulletproofs: add multi output bulletproofs to rct 2018-09-11 13:37:28 +00:00
moneromooo-monero 44439c3208 record blackballs as amount/offset, and add export ability 2018-09-10 09:04:18 +00: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
stoffu 8ca1215f25 wallet: store trusted-daemon flag in wallet2 2018-08-23 14:55:09 +09: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
moneromooo-monero ea37614efe wallet: wipe seed from memory where appropriate 2018-08-16 09:17:52 +00:00
stoffu a64f57fe42 wallet2: make --restricted-rpc available for wallet RPC only 2018-08-16 09:54:23 +09:00
luigi1111 8d2e454929 Merge pull request #4188
a3fe1c5 simplewallet: add set_tx_key for importing tx keys from 3rd party wallets (stoffu)
2018-08-15 17:47:05 -05:00
luigi1111 564e9c3b5f Merge pull request #4170
1c6cfd3 wallet-rpc: add get_address_index command (stoffu)
2018-08-15 17:35:49 -05:00
luigi1111 5e795ee7af Merge pull request #4153
37f0799 wallet: distinguish coinbase from other txes in show_transfers (moneromooo-monero)
2018-08-15 17:23:56 -05:00
luigi1111 017e07a035 Merge pull request #4103
bcab579 wallet: allow adjusting number of rounds for the key derivation function (stoffu)
2018-08-15 17:09:52 -05:00
luigi1111 4cde4cb946 Merge pull request #3528
34d4b79 wallet2: use a gamma distribution to pick fake outs (moneromooo-monero)
2018-08-15 17:00:32 -05:00
stoffu bcab579864 wallet: allow adjusting number of rounds for the key derivation function 2018-08-08 01:56:54 +09:00
moneromooo-monero 37f0799284 wallet: distinguish coinbase from other txes in show_transfers 2018-08-03 12:48:16 +00:00
stoffu 1c6cfd34f4 wallet-rpc: add get_address_index command 2018-07-31 21:36:12 +09:00
stoffu a3fe1c56ee simplewallet: add set_tx_key for importing tx keys from 3rd party wallets 2018-07-30 20:50:05 +09:00
luigi1111 92b5d6c204 Merge pull request #4091
a4272de wallet2: unlock keys file before calling verify_password (needed for Windows) (stoffu)
2018-07-27 14:22:34 -05:00
luigi1111 5c102c60dc Merge pull request #4087
d6440ab wallet2: recover from index out of hashchain bounds error (moneromooo-monero)
2018-07-19 14:14:10 -05:00
luigi1111 be81a27fa4 Merge pull request #4071
d6d78f1 Allow fractional outputs to be ignored (stoffu)
2018-07-19 14:06:54 -05:00
moneromooo-monero d6440ab319 wallet2: recover from index out of hashchain bounds error
This can happen when there's a very large reorg on the daemon
(ie, on testnet)
2018-07-16 23:13:56 +01:00
moneromooo-monero fc39d3b23c wallet2: ensure outputs are processed only once
This should be proof against any way one might get to multiple
processing, such as generating the same derivation from the
same pubkey, etc
2018-07-08 12:56:51 +01:00
moneromooo-monero 34d4b798d4 wallet2: use a gamma distribution to pick fake outs
as per "An Empirical Analysis of Linkability in the Monero
Blockchain", by Miller et al.
2018-07-03 18:10:48 +01:00
stoffu a4272de797 wallet2: unlock keys file before calling verify_password (needed for Windows)
Also added notes to WalletManager::verifyWalletPassword (which afaik seems unused
by anyone at the moment) regarding the need to unlock the keys file beforehand.
2018-07-03 18:07:20 +09:00
stoffu d6d78f157b Allow fractional outputs to be ignored 2018-07-03 18:04:31 +09:00
stoffu 3d623a86d1 wallet: prevent the same wallet file from being opened by multiple processes 2018-06-28 09:41:43 +09:00
luigi1111 2329d2f4c8 Merge pull request #3907
dcbc17e wallet: include a suggested number of confirmations based on amount (moneromooo-monero)
2018-06-27 16:32:33 -05:00
luigi1111 8a27caeb22 Merge pull request #3998
8db23df wallet: on first refresh, start off with a quantized height (moneromooo-monero)
2018-06-27 16:30:38 -05:00
luigi1111 5eb2e01216 Merge pull request #3991
798dfcf wallet: allow unspendable unmixable outputs to be discarded (stoffu)
2018-06-27 16:25:03 -05:00
moneromooo-monero dcbc17e97e wallet: include a suggested number of confirmations based on amount
This is based on how much an attacking miner stands to lose in block
rewardy by mining a private chain which double spends a payment.
This is not foolproof, since mining is based on luck, and breaks
down as the attacking miner nears 50% of the network hash rate,
and the estimation is based on a constant block reward.
2018-06-27 21:38:21 +01:00
luigi1111 a844844cda Merge pull request #3716
a2b557f 6795bd0 209ec96 ed2c81e a830db2 57ea902 31a895e ba8331c f7f1917 41be339 f025ae9 ef2cb63 dcfd299 5d3e702 2704624 2771a18 0e4c7d0 (moneromooo-monero)
2018-06-27 15:33:01 -05:00
moneromooo-monero 0e4c7d0fae wallet2: cache ringdb key while refreshing
Speeds up syncing with a lot of outgoing outputs as key generation
runs Cryptonight.
2018-06-26 22:15:38 +01:00
moneromooo-monero 5d3e70229e wallet2: remove old blockchain size cache hack 2018-06-26 22:15:18 +01:00
moneromooo-monero dcfd299239 wallet2: speedup refresh
key derivation and checking for incoming outputs are threaded
in batch before adding blocks to the local blockchain. Other
minor bits and bobs are also cached.
2018-06-26 22:15:16 +01:00
moneromooo-monero f025ae9760 wallet2: avoid re-parsing blocks when refreshing in a loop 2018-06-26 22:15:12 +01:00
moneromooo-monero ba8331ce41 wallet2: parse blocks in the RPC thread, not the processing thread
Processing typically is the bottleneck
2018-06-26 22:14:33 +01:00
moneromooo-monero ed2c81ed95 replace std::list with std::vector on some hot paths
also use reserve where appropriate
2018-06-26 22:14:21 +01:00
luigi1111 506be80601 Merge pull request #3955
d7a6b72 wallet2: fix bulletproof cold signing (moneromooo-monero)
2018-06-25 15:09:48 -05:00
luigi1111 9226acca4b Merge pull request #3804
89e51ec simple-wallet-cli: Add warnings about inaccurate balances to to watch-only wallet (jcktm)
2018-06-16 14:15:52 -05:00