Commit Graph

3910 Commits

Author SHA1 Message Date
cslashm e745c1e38d Code modifications to integrate Ledger HW device into monero-wallet-cli.
The basic approach it to delegate all sensitive data (master key, secret
ephemeral key, key derivation, ....) and related operations to the device.
As device has low memory, it does not keep itself the values
(except for view/spend keys) but once computed there are encrypted (with AES
are equivalent) and return back to monero-wallet-cli. When they need to be
manipulated by the device, they are decrypted on receive.

Moreover, using the client for storing the value in encrypted form limits
the modification in the client code. Those values are transfered from one
C-structure to another one as previously.

The code modification has been done with the wishes to be open to any
other hardware wallet. To achieve that a C++ class hw::Device has been
introduced. Two initial implementations are provided: the "default", which
remaps all calls to initial Monero code, and  the "Ledger", which delegates
all calls to Ledger device.
2018-03-04 12:54:53 +01:00
Riccardo Spagni 2ac3da1251
Merge pull request #3256
df5273de wallet2: fix auto_low_priority field name typo on load (moneromooo-monero)
2018-02-20 17:53:38 +02:00
Riccardo Spagni 0d530bd04e
Merge pull request #3295
6514f0ed db_lmdb: fix return code mixup in for_all_* (moneromooo-monero)
2018-02-20 17:49:16 +02:00
Riccardo Spagni 46903ec26a
Merge pull request #3294
fd57e13a simplewallet: typo in generate-from-multisig-keys (stoffu)
2018-02-20 17:49:05 +02:00
Riccardo Spagni 21335e5c6b
Merge pull request #3293
4a78a99f cryptonote_core: change wording of fork warning message (moneromooo-monero)
2018-02-20 17:48:54 +02:00
Riccardo Spagni 299af8e43e
Merge pull request #3290
1d28c0d8 p2p: restore m_testnet assignment lost during rebase (whythat)
2018-02-20 17:48:29 +02:00
Riccardo Spagni ea9ddcac7f
Merge pull request #3288
10f78f63 p2p: need libcryptonote_core due to arg_testnet_on being used (stoffu)
2018-02-20 17:48:05 +02:00
Riccardo Spagni fc57e0ef2d
Merge pull request #3263
d4e728c9 simplewallet: reword donate command message for clarity (Serhack)
2018-02-20 17:47:42 +02:00
Riccardo Spagni c9aa9370f9
Merge pull request #3260
b2d4bb9b Remove `voting_version` parameter documentation. (Jean Pierre Dudey)
2018-02-20 17:47:31 +02:00
Riccardo Spagni 4e9de94565
Merge pull request #3257
da25757b simplewallet: do nothing in on_skip_transaction (wallet2 already logs warnings) (stoffu)
2018-02-20 17:47:20 +02:00
Riccardo Spagni ff36fd93fd
Merge pull request #3255
3962bcb2 Closes #2886: really ignore battery checking (Timothy D. Prime)
2018-02-20 17:47:03 +02:00
Riccardo Spagni cfa3af4078
Merge pull request #3247
89ad162a wallet2: remove unused m_subaddresses_inv (moneromooo-monero)
f2c4c399 wallet2: speed up subaddress generation (by about a third) (moneromooo-monero)
2018-02-20 17:46:40 +02:00
Riccardo Spagni 6920fdaf4f
Merge pull request #3246
3c33e131 wallet2: don't store invalid key image when watch-only (stoffu)
0133b348 wallet2: don't throw when spent amount is inconsistent (stoffu)
2018-02-20 17:46:29 +02:00
Riccardo Spagni 0fc5eec9cd
Merge pull request #3235
6866ed46 Add default value to max_height, otherwise it's 0 (Michał Sałaban)
2018-02-20 17:46:00 +02:00
moneromooo-monero 6514f0ed7b
db_lmdb: fix return code mixup in for_all_* 2018-02-19 14:55:58 +00:00
stoffu fd57e13a84
simplewallet: typo in generate-from-multisig-keys 2018-02-19 09:51:30 +09:00
moneromooo-monero 4a78a99f96
cryptonote_core: change wording of fork warning message
An udpate may or may not be available now, but should be soon if not.
This will prevent too many people freaking out.
2018-02-18 23:44:59 +00:00
whythat 1d28c0d8a9 p2p: restore m_testnet assignment lost during rebase 2018-02-18 17:09:39 +02:00
stoffu 10f78f63f1
p2p: need libcryptonote_core due to arg_testnet_on being used 2018-02-18 16:40:43 +09:00
Riccardo Spagni 8154df778a
Merge pull request #3276
ed6c68db crypto: add missing include (WIN32) (iDunk5400)
2018-02-17 21:48:59 +01:00
Riccardo Spagni 5a8e7fd0e5
Merge pull request #3249
a4b50a6f handle ^D and ^C while password prompting (Jethro Grassie)
2018-02-17 21:48:30 +01:00
Riccardo Spagni 6198c816b1
Merge pull request #3170
b3b2d4d2 options: add testnet option dependencies (whythat)
c5f55bb4 common: implement dynamic option dependencies mechanism (whythat)
05a12ccc options: remove testnet-* options (whythat)
c33cb60e common: implement dependent option descriptor (whythat)
2018-02-17 11:51:57 +01:00
Riccardo Spagni a2cbedd29f
Merge pull request #3191
3607d467 core: add --no-fluffy-blocks, and enable fluffy blocks by default (moneromooo-monero)
2018-02-17 11:48:31 +01:00
whythat b3b2d4d20c options: add testnet option dependencies 2018-02-16 22:32:01 +02:00
whythat c5f55bb4c0 common: implement dynamic option dependencies mechanism 2018-02-16 22:32:01 +02:00
whythat 05a12ccc2d options: remove testnet-* options 2018-02-16 22:32:01 +02:00
iDunk5400 ed6c68db1b
crypto: add missing include (WIN32) 2018-02-16 19:35:31 +01:00
moneromooo-monero 89ad162a3f
wallet2: remove unused m_subaddresses_inv 2018-02-16 17:13:09 +00:00
moneromooo-monero f2c4c39971
wallet2: speed up subaddress generation (by about a third) 2018-02-16 17:13:06 +00:00
Leon Klingele 7c1a607c40
txpool: Don't bail out when blob_size == tx_size_limit
Previously, when blob_size == tx_size_limit, the "m_too_big" property was set
and the transaction was rejected. This should not have been the case.
2018-02-16 16:27:08 +01:00
whythat c33cb60eb6 common: implement dependent option descriptor 2018-02-16 16:44:40 +02:00
moneromooo-monero 3607d467f3
core: add --no-fluffy-blocks, and enable fluffy blocks by default 2018-02-16 13:46:46 +00:00
Riccardo Spagni ef91d6e61e
Merge pull request #3196
eda9fb5b p2p: fix testnet/mainnet port mixup (moneromooo-monero)
2018-02-16 14:31:16 +01:00
Riccardo Spagni 6b1382b6b6
Merge pull request #3199
30ce8c59 cn_deserialize: check for raw tx_extra (moneromooo-monero)
2018-02-16 14:29:51 +01:00
Riccardo Spagni f4a6bc79d9
Merge pull request #3226
e4646379 keccak: fix mdlen bounds sanity checking (moneromooo-monero)
2e3e90ac pass large parameters by const ref, not value (moneromooo-monero)
61defd89 blockchain: sanity check number of precomputed hash of hash blocks (moneromooo-monero)
9af6b2d1 ringct: fix infinite loop in unused h2b function (moneromooo-monero)
8cea8d0c simplewallet: double check a new multisig wallet is multisig (moneromooo-monero)
9b98a6ac threadpool: catch exceptions in dtor, to avoid terminate (moneromooo-monero)
24803ed9 blockchain_export: fix buffer overflow in exporter (moneromooo-monero)
f3f7da62 perf_timer: rewrite to make it clear there is no division by zero (moneromooo-monero)
c6ea3df0 performance_tests: remove add_arg call stray extra param (moneromooo-monero)
fa6b4566 fuzz_tests: fix an uninitialized var in setup (moneromooo-monero)
03887f11 keccak: fix sanity check bounds test (moneromooo-monero)
ad11db91 blockchain_db: initialize m_open in base class ctor (moneromooo-monero)
bece67f9 miner: restore std::cout precision after modification (moneromooo-monero)
1aabd14c db_lmdb: check hard fork info drop succeeded (moneromooo-monero)
2018-02-16 14:26:58 +01:00
Riccardo Spagni 24d8f9237f
Merge pull request #3248
d6a0ae96 blockchain: don't try to use hash check array after it's freed (moneromooo-monero)
2018-02-16 14:24:22 +01:00
Riccardo Spagni 853dd2d4f7
Merge pull request #3232
b81e276c connection_context: initialize m_last_request_time to current time (moneromooo-monero)
2018-02-16 14:24:12 +01:00
Riccardo Spagni 260d666cf4
Merge pull request #3231
84a8b2da Don't create readtxn until after txn_safe gate check (Howard Chu)
2018-02-16 14:24:01 +01:00
Riccardo Spagni ef47ba95c8
Merge pull request #3229
928c1825 cryptonote_protocol: guard against all threads in standby (moneromooo-monero)
2018-02-16 14:23:53 +01:00
Riccardo Spagni b5b88c2747
Merge pull request #3225
71806327 dns: change default DNS to a worldwide selection (moneromooo-monero)
2018-02-16 14:23:34 +01:00
Riccardo Spagni a54247b993
Merge pull request #3221
2e584dcb p2p: do not try to connect to peers in offline mode (moneromooo-monero)
2018-02-16 14:23:22 +01:00
Riccardo Spagni 0c71197892
Merge pull request #3217
fde4489e wipeable_string: call memwipe directly (moneromooo-monero)
2018-02-16 14:23:08 +01:00
Riccardo Spagni 9c4428e583
Merge pull request #3214
214d251c wallet: suggest the use of sweep_unmixable when not_enough_outs_to_mix is thrown (stoffu)
2018-02-16 14:22:41 +01:00
Riccardo Spagni bfddb2283b
Merge pull request #3210
39992134 txpool: Properly bail out when outputs_amount == inputs_amount (Leon Klingele)
2018-02-16 14:22:10 +01:00
Riccardo Spagni 9681a885d1
Merge pull request #3207
a99ef176 wallet-rpc: take subaddress account as arg for get_transfer_by_txid (stoffu)
77125096 wallet-rpc: rename *_INDEX_OUTOFBOUND into *_INDEX_OUT_OF_BOUNDS (stoffu)
2018-02-16 14:21:59 +01:00
Riccardo Spagni 079eea7b70
Merge pull request #3205
bc61ae69 tx_pool: add a max pool size, settable with --max-txpool-size (moneromooo-monero)
3b4e6b35 txpool: increase unmined tx expiry to three days (moneromooo-monero)
2018-02-16 14:21:50 +01:00
Riccardo Spagni b23578e473
Merge pull request #3197
f90c76be Return appropriate error code when there's no connection to daemon (Michał Sałaban)
3cb65b3f Return appropriate error code when not enough money for tx (Michał Sałaban)
2018-02-16 14:21:00 +01:00
Riccardo Spagni 666a76652b
Merge pull request #3187
851bd057 call _exit instead of abort in release mode (moneromooo-monero)
2018-02-16 14:20:31 +01:00
Riccardo Spagni bdf0339dda
Merge pull request #3181
e3f0980a daemon: don't drop RPC with busy error when running offline (moneromooo-monero)
2018-02-16 14:19:54 +01:00
Riccardo Spagni ba22928d4b
Merge pull request #3180
1dfed567 Fixed #if instead of #ifdef (Matt Little)
7c442453 Support building cncrypto lib with msvc (Matt Little)
2018-02-16 14:19:42 +01:00