aboutsummaryrefslogtreecommitdiff
path: root/src/wallet (unfollow)
AgeCommit message (Collapse)AuthorFilesLines
2022-09-21wallet2: fail to establish daemon cxn == "Disconnected" cxn statusj-berman2-3/+4
2022-09-21add an option to force-update multisig key exchange under some circumstanceskoe7-25/+31
2022-09-20Second thread pool for IOSChernykh2-4/+4
2022-09-12wallet2: check wallet compatibility with daemon's hard fork versionj-berman6-17/+199
2022-09-07wallet2: ensure imported outputs subaddresses are createdmoneromooo-monero1-0/+4
reported by j-berman
2022-09-07wallet2: better test on whether to allow output importmoneromooo-monero2-6/+25
Being offline is not a good enough heuristic, so we keep track of whether the wallet ever refreshed from a daemon, which is a lot better, and probably the best we can do without manual user designation (which would break existing cold wallet setups till the user designates those wallets)
2022-09-07allow exporting outputs in chunksmoneromooo-monero5-46/+122
this will make it easier huge wallets to do so without hitting random limits (eg, max string size in node).
2022-09-06Fix missing semi-colon in error messagej-berman1-1/+1
Co-authored-by: woodser <woodser@protonmail.com>
2022-09-06wallet2: fixes for export/import output flowj-berman2-2/+8
- only allow offline wallets to import outputs - don't import empty outputs - export subaddress indexes when exporting outputs
2022-09-06wallet2: do not assume imported outputs must be non emptymoneromooo-monero1-2/+2
2022-09-06wallet2: prevent importing outputs in a hot walletmoneromooo-monero1-0/+2
2022-09-06wallet2: fix missing subaddress indices in "light" exported outputsmoneromooo-monero2-2/+8
2022-09-01multisig: fix #8537 seed restore (suggestions by @UkoeHB)j-berman2-8/+7
- spend secret key is no longer the sum of multisig key shares; no need to check that is the case upon restore. - restoring a multisig wallet from multisig info means that the wallet must have already completed all setup rounds. Upon restore, set the number of rounds completed accordingly.
2022-07-13derive multisig tx secret keys from an entropy source plus the tx inputs' ↵koe2-0/+12
key images
2022-07-05wallet2: prevent crash when reading tx w/fewer outputs than expectedj-berman1-0/+2
2022-06-30multisig: fix critical vulnerabilities in signinganon2-95/+234
2022-06-28wallet2: don't use DNS to obtain segregation heightstobtoht1-37/+0
2022-06-27Chunk /gettransactions to avoid hitting restricted RPC limittobtoht1-7/+11
2022-06-25wallet2: force using output distribution for ringct outstobtoht1-9/+14
Co-authored-by: j-berman <justinberman@protonmail.com>
2022-06-24wallet2: remove obsolete rpc version checktobtoht1-26/+1
2022-06-20cryptonote_basic: catch crypto api errorsmoneromooo-monero1-1/+2
2022-06-01Remove erraneous commasLuke Parker1-3/+3
2022-06-01Improve consistency between on_money_received and on_money_received_unconfirmedLuke Parker3-7/+10
unconfirmed solely uses a - b, and received now accepts b so it can provide more detailed logs on what occurred (printing a - b, yet with a and b).
2022-05-26wallet_api: add scanTransactions functionselsta3-0/+44
2022-05-17disable multisig by defaultmoneromooo-monero5-1/+48
There are vulnerabilities in multisig protocol if the parties do not trust each other, and while there is a patch for it, it has not been throroughly reviewed yet, so it is felt safer to disable multisig by default for now. If all parties in a multisig setup trust each other, then it is safe to enable multisig.
2022-05-15wallet2: fix spurious reorg detection with untrusted nodesmoneromooo-monero1-9/+5
When forced to deal with an untrusted node, a wallet will quantize its current height to disguise the real height to the adversary, to try and minimize the daemon's ability to distinguish returning wallets. Daemons will thus return more blocks than the wallet needs, starting from earlier in the chain. These extra blocks will be disregarded by the wallet, which had already scanned them. However, for the purposes of reorg size detection, the wallet assumes all blocks the daemon sends are different, which is only correct if the wallet hasn't been coy, which is only the case for trusted daemons (which you should use). This causes an issue when the size of this "fake reorg" is above the sanity check threshold at which the wallet refuses a reorg. To fix this, the reorg size check is moved later on, when the reorg is about to actually happen, after the wallet has checked which blocks are actually different from the ones it expects.
2022-05-13wallet2: speedup large tx construction: reserve vector memorymoneromooo-monero1-1/+7
2.8 seconds -> 2.6 seconds on a test case
2022-05-13wallet2: speedup large tx construction: batch ringdb lookupsCrypto City4-5/+58
3.3 seconds -> 2.8 seconds on a test case
2022-05-13wallet2: speedup large tx construction: batch ringdb updatesCrypto City4-5/+30
5.2 seconds -> 4.1 seconds on a test case
2022-05-13wallet2: speedup large tx construction: cache public key validitymoneromooo-monero2-28/+36
5.9 second -> 5.2 seconds on a test case
2022-05-02wallet2: fix a couple unused variable warningsselsta1-6/+1
2022-04-29multisig: add post-kex verification round to check that all participants ↵koe2-4/+8
have completed the multisig address
2022-04-21Preserve commitment format inside transactionsLuke Parker1-3/+1
2022-04-18Bump ring size to 16 for v15 & remove set default in wallet clij-berman1-0/+4
2022-04-18Add view tags to outputs to reduce wallet scanning timej-berman3-136/+220
Implements view tags as proposed by @UkoeHB in MRL issue https://github.com/monero-project/research-lab/issues/73 At tx construction, the sender adds a 1-byte view tag to each output. The view tag is derived from the sender-receiver shared secret. When scanning for outputs, the receiver can check the view tag for a match, in order to reduce scanning time. When the view tag does not match, the wallet avoids the more expensive EC operations when deriving the output public key using the shared secret.
2022-04-10wallet2: use BP+ for cold signingmoneromooo-monero1-1/+1
reported by ukoehb
2022-04-10Fee changes from ArticMinemoneromooo-monero5-36/+80
https://github.com/ArticMine/Monero-Documents/blob/master/MoneroScaling2021-02.pdf with a change to use 1.7 instead of 2.0 for the max long term increase rate
2022-04-09Remove /includeJeffrey1-1/+0
* `IWallet.h` hasn't been touched since 2014, and has been replaced by `src/wallet/api/wallet2_api.h` * `INode.h` is in a similar situation with `src/p2p/net_node.h`
2022-04-05store outPk/8 in the tx for speedmoneromooo-monero1-1/+3
It avoids dividing by 8 when deserializing a tx, which is a slow operation, and multiplies by 8 when verifying and extracing the amount, which is much faster as well as less frequent
2022-04-05plug bulletproofs plus into consensusmoneromooo-monero3-38/+50
2022-03-29wallet2: decrease the amount of data exchanged for output exportmoneromooo-monero2-10/+167
2022-03-13wallet_rpc_server: support regex for get_accounts tagreemuru2-3/+13
This commit adds a 'regexp' boolean field to the get_accounts request. The flag is set to false by default and maintains backwards compatibility. When set to true the user can search tags by regular expression filters. An additional error message was added for failed regular expression searches. Bump minor version to 25.
2022-03-11wallet_rpc_server: fix make_integrated_address with no payment idmoneromooo-monero1-6/+0
2022-03-10Make the wallet name optional when locked.Norman Moeschter2-0/+10
2022-03-04Copyright: Update to 2022mj-xmr42-42/+48
2022-03-01wallet2: update stagenet rollback blocksselsta1-4/+4
2022-02-22multisig key exchange update and refactorkoe7-574/+164
2022-01-31Balance includes unconfirmed transfers to selfwoodser1-0/+13
2022-01-17support authentication in monero-wallet-rpc set_daemonwoodser2-2/+10
2021-12-24wallet inits cache if file and blob missingwoodser1-4/+5
2021-11-30`make_uri` disallows standalone payment idswoodser1-6/+2
2021-11-05Avoid unnecessary 'Invalid hashing blob' error messagerbrunner71-1/+6
2021-10-22wallet_api: enable set_strict_default_file_permissionstobtoht2-1/+6
2021-10-22epee: add missing headerselsta1-0/+1
2021-10-20wallet2: remove 2 unused variablesselsta1-2/+0
2021-10-19wallet2: fix key encryption when changing ask-password from 0/1 to 2moneromooo-monero2-23/+4
we reuse the wallet_keys_unlocker object, which does the right thing in conjunction with other users of decrypt/encrypt (ie, refresh).
2021-10-04Decrease the "recent spend window" in gamma re-select to 15 blocksj-berman1-1/+1
- combined with patching integer truncation (#7798), this gets the algorithm marginally closer to mirroring empirically observed output ages - 50 was originally chosen assuming integer truncation would remain in the client for that client release version. But patching integer truncation causes the client to select more outputs in the 10-100 block range, and therefore the benefit of choosing a larger recent spend window of 50 has less merit - 15 seems well-suited to cover the somewhat sizable observable gap in the early window of blocks
2021-10-01wallet2: keep around transaction prefix for confirmed transferstobtoht1-2/+5
2021-09-12Fix precision of average_output_timej-berman1-7/+1
The fix as suggested by <jberman> on IRC. Before the fix, it would truncate 1.9 to 1 skewing the output selection.
2021-09-07UB: Not calling virtual method in destructor of WalletImplmj-xmr1-1/+1
2021-08-28wallet: fix unused lambda capture warningselsta1-1/+1
2021-08-27wallet_rpc_server: fix help text remaining boldselsta1-1/+2
2021-08-26Wallet2: fix optimize-coinbase for p2pool payoutsSChernykh1-4/+5
RefreshOptimizeCoinbase was an optimization to speed up scanning of coinbase transactions before RingCT (tx version 2) where they split miner reward into multiple denominations, all to the same wallet. When RingCT was introduced, all coinbase transactions became 1 output only, so this optimization does nothing now. With p2pool, this optimization will skip scanning p2pool payouts because they use more than 1 output in coinbase transaction. Fix it by applying this optimization only to pre-RingCT transactions (version < 2).
2021-08-20monero-wallet-rpc: Prevent --password-file from being used with --wallet-dirKermit Alexander II4-4/+19
2021-08-19Protect client from divide by 0 caused by integer truncationj-berman1-0/+6
2021-08-19Apply gamma distr from chain tip when selecting decoysj-berman1-0/+31
- matches the paper by Miller et al to apply the gamma from chain tip, rather than after unlock time - if the gamma produces an output more recent than the unlock time, the algo packs that output into one of the first 50 spendable blocks, respecting the block density factor
2021-08-19wallet_api: add make_uritobtoht3-0/+7
2021-08-11Make sure node returns to wallet that real output is unlockedj-berman1-1/+2
2021-08-03trezor: try empty passphrase firstDusan Klinec1-1/+20
- Try empty passphrase first when opening a wallet, as all Trezors will have passphrase enabled by default by Trezor Suite by default. This feature enables easier access to all users using disabled passphrase (or empty passhprase) - If wallet address differs from device address with empty passphrase, another opening attempt is made, without passphrase suppression, so user can enter his passhprase if using some. In this scenario, nothing changes to user, wallet opening just consumes one more call to Trezor (get wallet address with empty passphrase) - also change how m_passphrase is used. Previous version did not work well with recent passphrase entry mechanism change (made in Trezor), thus this commit fixes the behaviour).
2021-08-02Fix describe_transfer for multiple txes in a txsetAlex Opie2-10/+54
This ensures each list of recipients is only the recipients for one transaction. It also adds a new field "summary" that describes the txset as a whole. Fixes #7344
2021-07-19wallet_api: expose offline mode statusrating89us3-0/+7
2021-07-15wallet2: chunk get_outs.bin calls to avoid sanity limitsmoneromooo-monero1-8/+20
2021-07-14wallet2: Don't auto lock device on process parsed blockstobtoht1-2/+1
2021-07-14wallet: rephrase error message on invalid device addressDusan Klinec1-1/+1
2021-07-14fix #7784 - deinit wallet in wallet dtorDusan Klinec1-3/+6
2021-07-13cmake: fix undefined symbols and multiple definitionsanon1-0/+3
2021-07-05wallet_api: getPasswordtobtoht3-0/+7
2021-06-24wallet_api: get bytes sent/receivedtobtoht3-0/+19
2021-06-23wallet_api: fix typo in exportKeyImagesselsta1-1/+1
2021-06-15provide key images of spent outputs in wallet rpcwoodser3-9/+39
2021-06-08wallet/api: remove Bitmonero namespace aliasselsta16-38/+0
2021-06-08wallet_api: address_book: don't lose pid on setDescriptiontobtoht1-1/+1
2021-06-04wallet2: refresh: check error and throw before potentially breaking out of looptobtoht1-8/+9
2021-06-04wallet_api: signMessage: add sign with subaddresstobtoht3-4/+19
2021-06-04wallet_api: reconnectDevicetobtoht3-0/+21
2021-06-04wallet: Reset RPC Pay ID on node switchtobtoht1-0/+3
RPC pay client ID is sent with each RPC request, set a new secret every time we switch nodes to mitigate trivial correlation
2021-06-04wallet_api: move adjust_mixin call within try blocktobtoht1-8/+3
2021-05-18support freeze, thaw, and frozen in wallet rpcwoodser3-1/+154
2021-05-14CMake: glob missing headers for wallet2mj-xmr1-12/+1
2021-04-27cmake: wallet_api doesn't need wallet_mergedselsta1-41/+0
2021-04-25Wallet2: Update 'approximate_testnet_rolled_back_blocks'rbrunner71-1/+1
2021-04-23wallet2: Fix rescan_bc keep_ki optionNathan Dorfman2-22/+27
2021-04-22wallet_api: import / export output functiontobtoht3-0/+77
2021-04-16Split epee/string_tools.h and encapsulate boost::lexical_castmj-xmr1-0/+1
2021-04-15rpc: send confirmations in get_transactions resultmoneromooo-monero1-4/+14
if the wallet does it, it would get a wrong result (possibly even negative) if its local chain is not synced up to the daemon's yet
2021-04-07monero-wallet-cli: improve error message when tx amount is zeroElliot Wirrick5-7/+24
2021-04-05expose set_offline to wallet apibenevanoff3-0/+12
2021-03-28Reduce compilation time of epee/portable_storage_template_helper.hmj-xmr3-2/+3
2021-03-25wallet2: fix unlocked mixup in light wallet modemoneromooo-monero1-2/+2
2021-03-12wallet_api: add isDeterministic()tobtoht3-0/+12
2021-03-12wallet_api: add seed_offset param to seed()tobtoht3-4/+4
2021-03-06wallet_rpc_server: set seed language in generate_from_keysmoneromooo-monero2-18/+16
Also sanity check language name
2021-03-05fix serialization being different on macmoneromooo-monero3-11/+21
On Mac, size_t is a distinct type from uint64_t, and some types (in wallet cache as well as cold/hot wallet transfer data) use pairs/containers with size_t as fields. Mac would save those as full size, while other platforms would save them as varints. Might apply to other platforms where the types are distinct. There's a nasty hack for backward compatibility, which can go after a couple forks.
2021-03-04return output key for incoming transfersbenevanoff2-1/+4
2021-03-01wallet_rpc: add scan_txtobtoht3-1/+58
2021-02-20wallet_rpc_payments: implement multithreadinggdmojo2-38/+55
2021-02-17monero-wallet-cli: Added command scan_txHoria Mihai David2-0/+44
To implement this feature, the wallet2::scan_tx API was implemented.
2021-02-09Remove unused variables in monero codebaseKevin Barbour4-14/+5
There are quite a few variables in the code that are no longer (or perhaps never were) in use. These were discovered by enabling compiler warnings for unused variables and cleaning them up. In most cases where the unused variables were the result of a function call the call was left but the variable assignment removed, unless it was obvious that it was a simple getter with no side effects.
2021-02-06Reduce compilation time of epee/portable_storage.hmj-xmr2-0/+3
2021-01-28Remove copies from foreach loops (thanks to Clang)Lee Clagett1-1/+1
2021-01-28Removing unused namespace aliasLee Clagett1-2/+0
2021-01-25Attempt to carve the fee from a partial payment earlyAlex Opie1-20/+34
Do this for both the estimate and actual fee. #7337
2021-01-25Stop adding more outputs than bulletproof allowsAlex Opie1-7/+35
If more outputs are requested, they are split across multiple transactions. #7322
2021-01-23Improve cryptonote (block and tx) binary read performanceLee Clagett3-33/+13
2021-01-07wallet_rpc_server: don't abort on initial refresh failurexiphon1-1/+8
2021-01-02wallet_api: store fee for incoming txs in historyBen Evanoff1-0/+1
2020-12-25wallet api: allow wallet to fetch all key images via apibenevanoff3-4/+5
2020-12-22restrict public node checks a littlemoneromooo-monero1-0/+1
do not include blocked hosts in peer lists or public node lists by default, warn about no https on clearnet and about untrusted peers likely being spies
2020-12-10simplewallet: don't complain about connecting to the daemon when offlinemoneromooo-monero1-0/+1
2020-12-03wallet2: set propagation timeout to current max timeoutselsta1-1/+2
2020-11-28Allow tx note edits via TransactionHistory object in wallet/apidsc3-0/+13
2020-11-24wallet2: check imported multisig curve points are in main subgroupCrypto City1-0/+14
2020-11-14wallet_api: TransactionHistory - fill unconfirmed out payments destsxiphon1-0/+4
2020-11-06Balance includes unconfirmed paymentswoodser1-0/+8
2020-10-18wallet2: wait for propagation timeout before marking tx as failedxiphon1-2/+6
2020-10-17wallet2_api: implement stop() to interrupt refresh() loop oncexiphon3-0/+11
2020-10-13wallet2: skip reorgs exceeding max-reorg-depth wallet settingxiphon3-0/+35
2020-10-12wallet2: fix missing m_state field in wallet serializationmoneromooo-monero1-1/+3
2020-10-10Change epee binary output from std::stringstream to byte_streamLee Clagett1-5/+4
2020-09-24fix a couple bugs found by OSS-fuzzmoneromooo-monero1-0/+2
- index out of bounds when importing outputs - accessing invalid CLSAG data
2020-09-19Extend TransactionInfo with coinbase and description attributes in wallet/apidsc4-0/+23
2020-09-19Allow AddressBook description edits via wallet/api interfacedsc3-0/+21
2020-09-15wallet2: adapt to deterministic unlock timeTheCharlatan4-18/+44
2020-09-12wallet2: fix tx sanity check triggering on pre-rct outputsmoneromooo-monero2-4/+9
2020-09-09Fix typo in command line argument descriptionReinaldulin1-1/+1
2020-09-04enable CLSAG support for Trezor clientDusan Klinec1-1/+1
2020-09-01update error message "No unlocked balance in the specified account"woodser1-1/+1
2020-09-01threadpool: guard against exceptions in jobs, and armour platingmoneromooo-monero1-15/+15
Those would, if uncaught, exit run and leave the waiter to wait indefinitely for the number of active jobs to reach 0
2020-08-28Bind signature to full address and signing modeSarang Noether4-29/+42
2020-08-28wallet: allow signing a message with spend or view keymoneromooo-monero6-25/+122
2020-08-27Integrate CLSAGs into moneromoneromooo-monero3-31/+66
They are allowed from v12, and MLSAGs are rejected from v13.
2020-08-17Revert "Use domain-separated ChaCha20 for in-memory key encryption"luigi11112-27/+0
This reverts commit 921dd8dde5d381052d0aa2936304a3541a230c55.
2020-08-17replace most boost serialization with existing monero serializationmoneromooo-monero6-107/+527
This reduces the attack surface for data that can come from malicious sources (exported output and key images, multisig transactions...) since the monero serialization is already exposed to the outside, and the boost lib we were using had a few known crashers. For interoperability, a new load-deprecated-formats wallet setting is added (off by default). This allows loading boost format data if there is no alternative. It will likely go at some point, along with the ability to load those. Notably, the peer lists file still uses the boost serialization code, as the data it stores is define in epee, while the new serialization code is in monero, and migrating it was fairly hairy. Since this file is local and not obtained from anyone else, the marginal risk is minimal, but it could be migrated later if needed. Some tests and tools also do, this will stay as is for now.
2020-08-16Fix build with Boost 1.74moneromooo-monero1-0/+3
Thanks iDunk for testing
2020-08-10simplewallet: allow setting tx keys when sending to a subaddressmoneromooo-monero2-2/+12
The tx key derivation is different then
2020-08-09Use domain-separated ChaCha20 for in-memory key encryptionSarang Noether2-0/+27
2020-08-09Updates InProofV1, OutProofV1, and ReserveProofV1 to new V2 variants that ↵Sarang Noether1-17/+29
include all public proof parameters in Schnorr challenges, along with hash function domain separators. Includes new randomized unit tests.
2020-08-08wallet2: fix setting tx keys when another is already setmoneromooo-monero1-10/+10
insert doesn't actually insert if another element with the same key is already in the map
2020-08-05Fix broken multisig pubkey sortingJason Rhinelander1-2/+2
The sort predicate is a boolean ordered-before value, but these are returning the memcmp value directly, and thus returns true whenever the pubkeys aren't equal. This means: - it isn't actually sorting. - it can (and does) segfault for some inputs.
2020-07-31wallet2: fix wrong name when checking RPC costmoneromooo-monero1-1/+1
2020-07-20wallet2_api: implement runtime proxy configurationxiphon7-40/+41
2020-07-20wallet2: throw a error on wallet initialization failurexiphon1-1/+4
2020-06-06fix warning by removing std::move() on temporary http_client objectwoodser1-1/+1
2020-05-31Fix boost <1.60 compilation and fix boost 1.73+ warningsLee Clagett1-1/+1
2020-05-25fix typo in pick_preferred_rct_inputsDenis Smirnov1-1/+1
2020-05-24[master] MMS: New 'config_checksum' subcommandrbrunner72-25/+79
2020-05-19wallet2: fix multisig data clearing stomping on a vectormoneromooo-monero1-1/+1
2020-05-17wallet_rpc_server: use unlock_time in suggested confirmations calcmoneromooo-monero1-5/+17
2020-05-13simplewallet: don't complain about incoming payment ids on changemoneromooo-monero3-4/+19
2020-05-11remove double includessumogr1-1/+0
2020-05-06Update copyright year to 2020SomaticFanatic35-35/+35
Update copyright year to 2020
2020-05-05wallet2: fix keys file deserialization exception handlingxiphon1-7/+1
2020-04-27wallet2: fix subaddress expansion when receiving moneromoneromooo-monero2-3/+17
2020-04-27trezor: adapt to new passphrase mechanismDusan Klinec4-9/+15
- choice where to enter passphrase is now made on the host - use wipeable string in the comm stack - wipe passphrase memory - protocol optimizations, prepare for new firmware version - minor fixes and improvements - tests fixes, HF12 support
2020-04-27message_store: don't print an error when there is no mms filemoneromooo-monero1-1/+1
It confuses people
2020-04-26wallet2: check_connection return false on get_version status != OKxiphon1-3/+2
2020-04-22simplewallet: report timestamp based expected unlock time on balancemoneromooo-monero4-20/+38
2020-04-15Allow wallet2.h to run in WebAssemblywoodser9-158/+251
- Add abstract_http_client.h which http_client.h extends. - Replace simple_http_client with abstract_http_client in wallet2, message_store, message_transporter, and node_rpc_proxy. - Import and export wallet data in wallet2. - Use #if defined __EMSCRIPTEN__ directives to skip incompatible code.
2020-04-15use memwipe on secret k/alpha valuesmoneromooo-monero1-6/+10
Reported by UkoeHB_ and sarang
2020-04-07simplewallet: new "address one-off <major> <minor>" commandmoneromooo-monero2-3/+13
2020-04-02wallet_api: checkUpdate - optional version and buildtag paramsxiphon2-7/+19
2020-04-01Hash domain separationSarang Noether2-10/+5
2020-03-31cryptonote_basic: drop unused verification_context::m_not_rct fieldxiphon1-2/+0
2020-03-09Move hex->bin conversion to monero copyright files and with less includesLee Clagett1-1/+1
2020-03-07wallet2: remember daemon address overrides when loading a new walletmoneromooo-monero2-2/+26
2020-02-11wallet2_api: wallet recovery - seed offset passphrase supportxiphon5-6/+14
2020-02-07wallet2: mention --daemon-ssl-allow-any-cert in --proxy error msgxiphon1-0/+1
2020-01-26wallet: do not split integrated addresses in address book apimoneromooo-monero5-135/+63
2020-01-25wallet2_api: implement estimateTransactionFeexiphon5-14/+45
2020-01-24wallet2: fix store-tx-info loadingmoneromooo-monero1-3/+12
The backward compatibility code was always setting it to 1 in modern wallets since store_tx_keys was not present and thus assumed to be 1 by default. Reported by SeventhAlpaca
2020-01-16wallet2: reject zero keys in json inputmoneromooo-monero1-0/+4
Because the user might do this for reasons unknown. Values beyond l-1 will be reduced, so are accepted. Reported by who-biz.
2020-01-14wallet: reroll fake outs selection on local tx_sanity_check failurexiphon2-2/+45
2020-01-11Wallet: Distingush amounts for a single subaddressTadeas Moravec4-2/+38
Adding a new `amounts` field ot the output of `get_transfers` RPC method. This field specifies individual payments made to a single subaddress in a single transaction, e.g., made by this command: transfer <addr1> <amount1> <addr1> <amount2>
2020-01-09ringdb: use a different iv for key and data in rings tablemoneromooo-monero1-18/+37
This is technically a record encrypted in two pieces, so the iv needs to be different. Some backward compatibility is added to read data written by existing code, but new data is written with the new code.
2020-01-09wallet2: do not remove known rings when a tx failsmoneromooo-monero1-1/+0
Even if it fails, the ring composition is known to a potential adversary, and so we should reuse the same ring next time
2019-12-31wallet: allow message sign/verify for subaddressesmoneromooo-monero4-5/+23
2019-12-30wallet: fix exceptions getting the hash of a pruned txmoneromooo-monero3-11/+11
2019-12-17wallet2: guard against race with multiple decrypt_keys usersmoneromooo-monero2-0/+9
If more than one thread wants to make sure of the spend secret key, then we decrypt on the first caller and reencrypt on the last caller, otherwise we could use an invalid secret key.
2019-12-16wallet-cli/rpc: allow sweep_all to use outputs in all subaddresses within an ↵stoffu2-2/+15
account
2019-12-14wallet2: fix hang in wallet refreshmoneromooo-monero1-1/+1
If the hashes received would move the current blockchain past the stop point, the short history would not be updated, since we do not expect another loop, but the daemon might return earlier hashes, causing the end index to not be enough to reach the threshold and this require another loop, which will download the same hashes and cause an infinite loop.
2019-12-01remove unused variable 'ptx' from on_describe_transfer()woodser1-1/+0
2019-11-28wallet2: better error when restoring a wallet with the wrong keysmoneromooo-monero1-1/+1
2019-11-27node_rpc_proxy: init some new rpc payment fields in invalidatemoneromooo-monero1-0/+4
The cache time would take care of these, but it's cleaner that way Coverity 205412
2019-11-22wallet_rpc_server: add count parameter to create_addressMatt Smith2-7/+33
2019-11-19wallet: don't issue node rpc proxy requests in '--offline' modexiphon1-0/+1
2019-11-14wallet: set non-empty error string on connection failurexiphon1-1/+1
2019-11-09build: fix IOS, build blockchain_db and rpc, skip wallet_rpc_serverxiphon1-32/+33
2019-11-06wallet_rpc_server: new estimate_tx_size_and_weight RPCmoneromooo-monero5-0/+72
2019-11-05wallet2: don't try to lock an empty filenamemoneromooo-monero1-0/+6
2019-11-05wallet_rpc_server: add tx weight in transfer commands responsesmoneromooo-monero3-7/+18