aboutsummaryrefslogtreecommitdiff
path: root/src/wallet/api
Commit message (Collapse)AuthorAgeFilesLines
* wallet: deprecate wallet2::find_and_save_rings()jeffro2562025-07-291-1/+0
| | | | | | | Rings for outgoing transactions are stored within the scanning code since the last hardfork, so this code is largely unneccessary now. Co-authored-by: j-berman <justinberman@protonmail.com>
* Merge pull request #8617tobtoht2025-02-133-4/+263
|\ | | | | | | e44e8b164 wallet: background sync with just the view key (j-berman)
| * wallet: background sync with just the view keyj-berman2024-05-243-4/+263
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - When background syncing, the wallet wipes the spend key from memory and processes all new transactions. The wallet saves all receives, spends, and "plausible" spends of receives the wallet does not know key images for. - When background sync disabled, the wallet processes all background synced txs and then clears the background sync cache. - Adding "plausible" spends to the background sync cache ensures that the wallet does not need to query the daemon to see if any received outputs were spent while background sync was enabled. This would harm privacy especially for users of 3rd party daemons. - To enable the feature in the CLI wallet, the user can set background-sync to reuse-wallet-password or custom-background-password and the wallet automatically syncs in the background when the wallet locks, then processes all background synced txs when the wallet is unlocked. - The custom-background-password option enables the user to open a distinct background wallet that only has a view key saved and can be opened/closed/synced separately from the main wallet. When the main wallet opens, it processes the background wallet's cache. - To enable the feature in the RPC wallet, there is a new `/setup_background_sync` endpoint. - HW, multsig and view-only wallets cannot background sync.
* | build: fix build with Boost 1.85 and remove instances of viewkey logging ↵jeffro2562024-09-101-4/+4
|/ | | | | | | | | | | [RELEASE] 1. Use std::is_standard_layout and std::is_trivially_copyable instead of std::is_pod for KV byte-wise serialization, which fixes compile issue for Boost UUIDs 2. Removed reimplementation of std::hash for boost::uuids::uuid 3. Removed << operator overload for crypto::secret_key 4. Removed instances in code where private view key was dumped to the log in plaintext Release version of #9450, containing C++14 modified assertions
* Enforce Tx unlock_time is Zero by Relay Rule [RELEASE]jeffro2562024-04-291-2/+2
| | | | | | | | | | | | | | | | Related to https://github.com/monero-project/research-lab/issues/78 Added a relay rule that enforces the `unlock_time` field is equal to 0 for non-coinbase transactions. UIs changed: * Removed `locked_transfer` and `locked_sweep_all` commands from `monero-wallet-cli` APIs changed: * Removed `unlock_time` parameters from `wallet2` transfer methods * Wallet RPC transfer endpoints send error codes when requested unlock time is not 0 * Removed `unlock_time` parameters from `construct_tx*` cryptonote core functions @tobtoht: undo rebase changes tx.dsts -> tx_dsts
* Merge pull request #8566luigi11112023-06-271-2/+6
|\ | | | | | | 65e13db wallet2: fix rescanning tx via scan_tx (j-berman)
| * wallet2: fix rescanning tx via scan_txj-berman2023-03-131-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Detach & re-process txs >= lowest scan height - ensures that if a user calls scan_tx(tx1) after scanning tx2, the wallet correctly processes tx1 and tx2 - if a user provides a tx with a height higher than the wallet's last scanned height, the wallet will scan starting from that tx's height - scan_tx requires trusted daemon iff need to re-process existing txs: in addition to querying a daemon for txids, if a user provides a txid of a tx with height *lower* than any *already* scanned txs in the wallet, then the wallet will also query the daemon for all the *higher* txs as well. This is likely unexpected behavior to a caller, and so to protect a caller from revealing txid's to an untrusted daemon in an unexpected way, require the daemon be trusted.
* | fix missing <cstdint> includestobtoht2023-05-081-0/+1
|/
* Merge pull request #8615luigi11112022-12-011-2/+2
|\ | | | | | | 85c9fe5 wallet2: fix create view-only wallet from existing wallet (j-berman)
| * wallet2: fix create view-only wallet from existing walletj-berman2022-10-181-2/+2
| |
* | wallet_api: take priority into account when estimating feeselsta2022-10-131-1/+1
|/
* Merge pull request #8585luigi11112022-09-261-3/+3
|\ | | | | | | 5ffa31c wallet2: fail to establish daemon cxn == 'Disconnected' cxn status (j-berman)
| * wallet2: fail to establish daemon cxn == "Disconnected" cxn statusj-berman2022-09-211-3/+3
| |
* | add an option to force-update multisig key exchange under some circumstanceskoe2022-09-213-4/+5
|/
* wallet2: check wallet compatibility with daemon's hard fork versionj-berman2022-09-121-2/+8
|
* allow exporting outputs in chunksmoneromooo-monero2022-09-071-2/+2
| | | | | this will make it easier huge wallets to do so without hitting random limits (eg, max string size in node).
* Merge pull request #8371luigi11112022-07-051-3/+5
|\ | | | | | | | | 16f8e04 Remove erraneous commas (Luke Parker) da0715e Improve consistency between on_money_received and on_money_received_unconfirmed (Luke Parker)
| * Remove erraneous commasLuke Parker2022-06-011-3/+3
| |
| * Improve consistency between on_money_received and on_money_received_unconfirmedLuke Parker2022-06-011-3/+5
| | | | | | | | | | | | 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).
* | wallet_api: add scanTransactions functionselsta2022-05-263-0/+44
|/
* Merge pull request #8249luigi11112022-04-251-1/+0
|\ | | | | | | a14fdf8 Remove /include (Jeffrey)
| * Remove /includeJeffrey2022-04-091-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`
* | Add view tags to outputs to reduce wallet scanning timej-berman2022-04-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | Fee changes from ArticMinemoneromooo-monero2022-04-101-1/+0
|/ | | | | | 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
* Merge pull request #8197luigi11112022-04-0621-21/+21
|\ | | | | | | da9aa1f Copyright: Update to 2022 (mj-xmr)
| * Copyright: Update to 2022mj-xmr2022-03-0421-21/+21
| |
* | plug bulletproofs plus into consensusmoneromooo-monero2022-04-051-0/+1
|/
* Merge pull request #7877luigi11112022-03-023-29/+4
|\ | | | | | | e08abaa multisig key exchange update and refactor (koe)
| * multisig key exchange update and refactorkoe2022-02-223-29/+4
| |
* | wallet_api: enable set_strict_default_file_permissionstobtoht2021-10-222-1/+6
| |
* | UB: Not calling virtual method in destructor of WalletImplmj-xmr2021-09-071-1/+1
|/
* wallet_api: add make_uritobtoht2021-08-193-0/+7
|
* Merge pull request #7802luigi11112021-08-113-0/+7
|\ | | | | | | a3d2b71 wallet_api: expose offline mode status (rating89us)
| * wallet_api: expose offline mode statusrating89us2021-07-193-0/+7
| |
* | cmake: fix undefined symbols and multiple definitionsanon2021-07-131-0/+3
|/
* Merge pull request #7761luigi11112021-07-101-1/+1
|\ | | | | | | 8ef51dc wallet_api: fix typo in exportKeyImages (selsta)
| * wallet_api: fix typo in exportKeyImagesselsta2021-06-231-1/+1
| |
* | Merge pull request #7748luigi11112021-07-103-0/+7
|\ \ | | | | | | | | | bbeb555 wallet_api: getPassword (tobtoht)
| * | wallet_api: getPasswordtobtoht2021-07-053-0/+7
| |/
* | wallet_api: get bytes sent/receivedtobtoht2021-06-243-0/+19
| |
* | Merge pull request #7750luigi11112021-06-2416-38/+0
|\ \ | | | | | | | | | 8e0b8dd wallet/api: remove Bitmonero namespace alias (selsta)
| * | wallet/api: remove Bitmonero namespace aliasselsta2021-06-0816-38/+0
| |/
* | Merge pull request #7749luigi11112021-06-241-1/+1
|\ \ | | | | | | | | | e63c110 wallet_api: address_book: don't lose pid on setDescription (tobtoht)
| * | wallet_api: address_book: don't lose pid on setDescriptiontobtoht2021-06-081-1/+1
| |/
* | Merge pull request #7746luigi11112021-06-243-4/+19
|\ \ | | | | | | | | | 1aa1850 wallet_api: signMessage: add sign with subaddress (tobtoht)
| * | wallet_api: signMessage: add sign with subaddresstobtoht2021-06-043-4/+19
| |/
* | Merge pull request #7742luigi11112021-06-243-0/+21
|\ \ | | | | | | | | | f174a8f wallet_api: reconnectDevice (tobtoht)
| * | wallet_api: reconnectDevicetobtoht2021-06-043-0/+21
| |/
* / wallet_api: move adjust_mixin call within try blocktobtoht2021-06-041-8/+3
|/
* Merge pull request #7677luigi11112021-05-123-0/+77
|\ | | | | | | 445a9d8 wallet_api: import / export output function (tobtoht)