aboutsummaryrefslogtreecommitdiff
path: root/src/simplewallet (unfollow)
AgeCommit message (Collapse)AuthorFilesLines
2018-10-06Merge pull request #4390Riccardo Spagni1-47/+3
a0613532 secure_pwd_reader: Add proper Unicode handling [Ryo contribution] (fireice-uk) 579383c2 simplewallet: Add Unicode input_line [Ryo backport] (fireice-uk)
2018-10-02Merge pull request #4482Riccardo Spagni1-1/+3
25e5890d wallet: fix --generate-from-json using wrong password (moneromooo-monero)
2018-09-27simplewallet: top level exception catcher to print nicer messagesmoneromooo-monero1-1/+3
Coverity 188408
2018-09-25simplewallet: don't complain about payment id on pool mined blocksmoneromooo-monero1-1/+2
Those use the extra nonce without a payment id
2018-09-19simplewallet: fix --generate-from-json setting wrong wallet filenamemoneromooo-monero1-2/+2
2018-09-18wallet: add 'outputs' option for sweep_* commandswhythat1-7/+45
'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-17api/wallet: properly disable key encryptionstoffu1-1/+1
2018-09-16simplewallet: remove obsolete transfer_original commandmoneromooo-monero2-16/+5
2018-09-14hw_device: support for multiple devices added [for review]Dusan Klinec2-5/+37
- 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-14wallet: ask-password can now ask without encrypting the secret spend keymoneromooo-monero1-15/+33
2018-09-14remove obsolete daemon selection of fake outs and old tx constructionmoneromooo-monero1-7/+4
2018-09-14simplewallet: print reason why refresh+password is neededmoneromooo-monero1-1/+1
2018-09-12wallet: use wipeable_string in more places where a secret is usedmoneromooo-monero1-22/+17
2018-09-11v8: per byte fee, pad bulletproofs, fixed 11 ring sizemoneromooo-monero1-8/+39
2018-09-10record blackballs as amount/offset, and add export abilitymoneromooo-monero1-23/+40
2018-09-03wallet2: factor the creation of a new wallet keys filemoneromooo-monero1-1/+2
2018-08-28simplewallet: handle transfers using a monero: URImoneromooo-monero1-32/+80
2018-08-23wallet: store trusted-daemon flag in wallet2stoffu2-51/+26
2018-08-16store secret keys encrypted where possiblemoneromooo-monero2-78/+160
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-16wallet: wipe seed from memory where appropriatemoneromooo-monero2-25/+87
2018-08-15simplewallet: allow named priority levels for default-prioritymoneromooo-monero1-9/+37
to match those used by the various transfer functions
2018-08-13simplewallet: Simplify LOCK_IDLE_SCOPE macrorbrunner71-6/+1
2018-08-07simplewallet: add a warning and prompt on rescan_blockchainmoneromooo-monero1-1/+9
Many people are using this as a "let's see what this does" command when something doesn't work as they thought it should, and thus destroying info that they might still need.
2018-08-05simplewallet: correct number of human-readable monthsrbrunner71-1/+1
2018-08-03wallet: distinguish coinbase from other txes in show_transfersmoneromooo-monero1-13/+22
2018-07-30simplewallet: add set_tx_key for importing tx keys from 3rd party walletsstoffu2-0/+63
2018-07-30simplewallet: make sure wallet config is stored right after creationstoffu2-28/+40
2018-07-24simplewallet.unspent_outputs: fix wrong logic for parsingstoffu1-1/+1
2018-07-23monero-wallet-cli: added locked_sweep_all commandjcktm2-6/+51
2018-07-22simplewallet: fix language detection when using --use-english-language-namesmoneromooo-monero1-4/+6
2018-07-12wallet: warn when payment IDs are usedmoneromooo-monero1-0/+19
Subaddresses are better for privacy
2018-07-07simplewallet: reword "seed encryption" to "seed offset"moneromooo-monero1-2/+2
avoids people thinking it's somehow a generic AE system
2018-07-03Allow fractional outputs to be ignoredstoffu2-0/+16
2018-07-02node_rpc_proxy: factor a few RPC calls using get_infomoneromooo-monero1-6/+1
Takes advantage of caching
2018-06-28remove epee from link lines where it's redundantmoneromooo-monero1-1/+0
For some reason, this confuses and kills ASAN on startup as it thinks const uint8_t ipv4_network_address::ID is defined multiple times.
2018-06-27wallet: include a suggested number of confirmations based on amountmoneromooo-monero1-0/+4
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-27simplewallet.sweep_all: show usage when parsing failsstoffu1-1/+10
2018-06-23simplewallet: init trusted daemon flag to false when autodetectingmoneromooo-monero1-0/+1
2018-06-21fix typos in language files and rpc_args.cppordtrogen1-1/+1
2018-06-21Move parse_subaddress_lookahead() from simplewallet.cpp to util.cppstoffu1-14/+3
2018-06-20fix string handling for donation messagecryptochangements341-1/+1
2018-06-18simplewallet: fix delay when setting auto-refresh offmoneromooo-monero1-0/+1
2018-06-18simplewallet: remove leftover global debug tracemoneromooo-monero1-1/+0
2018-06-13wallet: on first refresh, start off with a quantized heightmoneromooo-monero1-2/+2
for privacy reasons, so an untrusted node can't easily track wallets from IP address to IP address, etc. The granularity is 1024 blocks, which is about a day and a half.
2018-06-13wallet: allow unspendable unmixable outputs to be discardedstoffu1-0/+14
2018-06-11cryptonote_config: add get_config to refactor x = testnet ? ↵stoffu1-1/+1
config::testnet::X : stagenet ? config::stagenet::X : config::X
2018-06-10simplewallet: don't confirm missing payment ID when sending to only subaddressesstoffu1-3/+5
2018-06-09simplewallet: set_ring can now take a file with ringsmoneromooo-monero1-2/+110
2018-06-08simplewallet: grammar fix in warning messagemoneromooo-monero1-1/+1
2018-06-05simplewallet: add optional trusted/untrusted argument to set_daemonmoneromooo-monero1-1/+28
Otherwise the previous daemon's trustedness would carry over. If not specified, the local address check is performed again.
2018-06-03wallet-rpc: watch-only and cold wallet features addedDusan Klinec1-64/+4
- unsigned_txset, signed_txset in transfer / submit_transfer / sign_transfer - export_outputs, import_outputs Squashed commits: [f4d9f3d4] wallet-rpc: do_not_relay removed from submit_transfer [5b16a86f] wallet-rpc: review-fix - method signature changes, renaming [b7fbb10a] wallet-rpc: naming fixes (unsigned vs signed), consts renamed [8c7d2727] wallet-rpc: sign_transfer added [481d024a] wallet2: sign_tx splitted to work with strings and structs, more granular [2a474db9] wallet-rpc: wallet2::load_unsigned_tx split to load from str, file [b1e3a018] wallet-rpc: review fix, load_tx_from_str variable rename [1f6373be] wallet-rpc: review fix: save_tx_to_{str,file} [2a08eafc] wallet-rpc: review comments fixes - redundant this removed from wallet2.cpp - load_tx_from_str, load_tx_from_file [43498052] wallet-rpc: submit_transfer added [9c45d1ad] wallet-rpc: watch_only check, return unsigned_txset [62831396] wallet2: added string variants to load_tx, save_tx - analogously to save_multisig_tx - required for monero-wallet-rpc to support watch-only wallet
2018-06-01simplewallet.sign_transfer: rename export to export_raw, add help messagestoffu1-4/+4
2018-05-20simplewallet: use correct unit for fee commandstoffu1-1/+1
2018-05-15simple-wallet-cli: Add warnings about inaccurate balances to to watch-only ↵jcktm1-0/+2
wallet
2018-05-12Fix TypoRafficer1-1/+1
2018-05-08don't limit miner threads in walletcryptochangements341-4/+2
2018-04-22wallet cli/rpc: terminate execution with code 0 when --help or --version is ↵stoffu1-1/+8
given
2018-04-15Improve 'show_transfers' date formattingRyan Ronnander1-8/+5
Change the wallet's 'show_transfers' command to always output the transaction date with timestamp (24 hour UTC).
2018-04-15handle improper log levelscryptochangements341-2/+18
2018-04-13simplewallet: add version commandmoneromooo-monero2-0/+12
2018-04-07simplewallet: fix help message of sign_transferstoffu1-2/+2
2018-03-31Automatic height setup when creating/restoring hw device.cslashm1-2/+18
When creating/restoring wallet, if --restore-height option is not used the current estimate height is used for starting the scan. In other words it is assume we are creating a new account.
2018-03-31wallet: warn if not using the default ring sizemoneromooo-monero1-0/+20
2018-03-31simplewallet: warn about key reuse on startupmoneromooo-monero1-1/+1
2018-03-24exit if specified wallet file doesn't existcryptochangements341-0/+11
2018-03-22simplewallet: add --untrusted-daemon optionmoneromooo-monero2-25/+34
2018-03-21don't show error twice when starting simplewalletcryptochangements341-1/+1
2018-03-21wallet: catch exceptions dealing with ringdb and warnmoneromooo-monero1-0/+3
2018-03-17simplewallet: new --use-english-language-names flagmoneromooo-monero2-2/+10
On some Windows systems, displaying language names in their own languages freezes the display.
2018-03-17wallet: make the segregation height settablemoneromooo-monero2-1/+24
via user setting first, then DNS TXT record, hardcoded fallback
2018-03-16Add command line option allowing to restrict the default sub-address ↵stoffu2-1/+83
lookahead in order to avoid so looooong time of set-up when creating a HW based wallet.
2018-03-16wallet: more user friendly print_ringmoneromooo-monero1-9/+22
It can now take a txid (to display rings for all its inputs), and will print rings in a format that set_ring understands
2018-03-16wallet: add a set_ring commandmoneromooo-monero2-1/+81
This is so one can set rings for spent key images in case the attackers don't merge the ring matching patch set.
2018-03-16wallet: make ringdb an object with database statemoneromooo-monero1-2/+2
2018-03-16wallet: add an output blackball list to avoid using those in ringsmoneromooo-monero2-0/+144
2018-03-16wallet: key reuse mitigation optionsmoneromooo-monero2-1/+37
If a pre-fork output is spent on both Monero and attack chain, any post-fork output can be deduced to be a fake output, thereby decreasing the effective ring size. The segregate-per-fork-outputs option, on by default, allows selecting only pre-fork outputs in this case, so that the same ring can be used when spending it on the other side, which does not decrease the effective ring size. This is intended to be SET when intending to spend Monero on the attack fork, and to be UNSET if not intending to spend Monero on the attack fork (since it leaks the fact that the output being spent is pre-fork). If the user is not certain yet whether they will spend pre-fork outputs on a key reusing fork, the key-reuse-mitigation2 option should be SET instead. If you use this option and intend to spend Monero on both forks, then spend real Monero first.
2018-03-16wallet: add shared ring databasemoneromooo-monero2-0/+62
This maps key images to rings, so that different forks can reuse the rings by key image. This avoids revealing the real inputs like would happen if two forks spent the same outputs with different rings. This database is meant to be shared with all Monero forks which don't bother making a new chain, putting users' privacy at risk in the process. It is placed in a shared data directory by default ($HOME/.shared-ringdb on UNIX like systems). You may use --shared-ringdb-dir to override this location, and should then do so for all Monero forks for them to share the database.
2018-03-15show '<Not set>' for empty wallet descriptioncryptochangements341-2/+6
2018-03-16simplewallet: fix restore height prompt that got disabled by #3175stoffu1-0/+5
2018-03-15Fix typos in various filesDimitris Apostolou1-1/+1
2018-03-15simplewallet: add a warning when getting a daemon error in transfermoneromooo-monero1-7/+19
A malicious daemon (or MITM) could attempt to add spurious errors so the wallet tries again, sending another set of fake outs.
2018-03-15wallet2+cli+rpc: eliminate redundant m_http_client from cli/rpc and delegate ↵stoffu2-7/+5
calls to wallet2
2018-03-14device: untangle cyclic depenencystoffu1-1/+0
When #3303 was merged, a cyclic dependency chain was generated: libdevice <- libcncrypto <- libringct <- libdevice This was because libdevice needs access to a set of basic crypto operations implemented in libringct such as scalarmultBase(), while libringct also needs access to abstracted crypto operations implemented in libdevice such as ecdhEncode(). To untangle this cyclic dependency chain, this patch splits libringct into libringct_basic and libringct, where the basic crypto ops previously in libringct are moved into libringct_basic. The cyclic dependency is now resolved thanks to this separation: libcncrypto <- libringct_basic <- libdevice <- libcryptonote_basic <- libringct This eliminates the need for crypto_device.cpp and rctOps_device.cpp. Also, many abstracted interfaces of hw::device such as encrypt_payment_id() and get_subaddress_secret_key() were previously implemented in libcryptonote_basic (cryptonote_format_utils.cpp) and were then called from hw::core::device_default, which is odd because libdevice is supposed to be independent of libcryptonote_basic. Therefore, those functions were moved to device_default.cpp.
2018-03-11simplewallet: do not call a RPC when displaying the promptmoneromooo-monero1-2/+1
Speeds up refresh when you have a lot of in/out transactions
2018-03-10wallet2 / simplewallet: Must opt-in to create '.address.txt' files for new ↵Leon Klingele1-4/+12
wallets Previously, a file containing the unencrypted Monero address was created by default in the wallet's directory. This file might pose as a privacy risk. The creation of this file is now opt-in and can be enabled by providing --create-address-file
2018-03-07wallet: fixes and tweaks to the save_watch_only commandmoneromooo-monero1-1/+11
- save the new keys file as FOO-watchonly.keys, not FOO.keys-watchonly - catch any exception (eg, I/O errors) and error out - print the new keys filename in simplewallet
2018-03-07Bump min ring size from 5 to 7 from v7moneromooo-monero1-2/+2
2018-03-05Correct spelling mistakes.Edward Betts1-1/+1
2018-03-05Stagenetstoffu1-39/+50
2018-03-04Code modifications to integrate Ledger HW device into monero-wallet-cli.cslashm2-5/+163
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-02simplewallet: fix print_ring_members printing wrong heightsmoneromooo-monero1-3/+14
And also use uint64_t instead of int for heights where appropriate
2018-02-25Wallet2 + CLI wallet: UTF-8 support for filenames and paths under Windowsrbrunner72-0/+37
2018-02-25simplewallet: set seed language when restoring from english-old seedstoffu1-1/+1
2018-02-20Fix #3297 use the password_prompter helperHoward Chu1-9/+3
2018-02-19simplewallet: typo in generate-from-multisig-keysstoffu1-1/+1
2018-02-15simplewallet: do nothing in on_skip_transaction (wallet2 already logs warnings)stoffu1-8/+0
2018-02-14simplewallet: reword donate command message for claritySerhack1-1/+1
2018-02-10handle ^D and ^C while password promptingJethro Grassie1-0/+7
2018-02-08wallet: suggest the use of sweep_unmixable when not_enough_outs_to_mix is thrownstoffu1-0/+1
2018-02-02simplewallet: double check a new multisig wallet is multisigmoneromooo-monero1-1/+5
Coverity 182493
2018-01-29Fixed typos and wording tweaksMaxithi1-10/+10
2018-01-28wallet: automatically use low priority if safe (no backlog & recent blocks ↵stoffu2-12/+28
not full)
2018-01-28simplewallet: bug fix for backlog estimatestoffu1-4/+1
2018-01-26Update 2018 copyrightxmr-eric3-3/+3
2018-01-26Bugfix : Missing i18n import in simplewalletNeozaru1-0/+1
2018-01-26wallet2: remove {set|get}_default_decimal_point and use the same funcs under ↵stoffu1-2/+2
cryptonote:: instead
2018-01-26simplewallet: fix typo get_tx_proof_out to get_tx_proofstoffu1-3/+3
2018-01-26simplewallet: check file overwrite when exporting stuffstoffu2-0/+39
2018-01-24wallet-cli: Do not ask for scan_from_height if it explicitly is set to zero.Maximilian Lupke1-1/+1
Fixes #3080
2018-01-16simplewallet: single out 0 amount destinations as dummy onesmoneromooo-monero1-2/+14
Avoids surprising the user with "sending 0 to..."
2018-01-11Keep readline optionalJethro Grassie1-1/+1
2018-01-10Reserve proofstoffu2-0/+116
2018-01-09Improved terminology from create to generateMaxithi1-1/+1
2018-01-06fix some confirmation dialog, add missing symbolsAJIekceu41-3/+3
Change some confirmation dialog to look like other ones (add symbol ":" and space) So, it will look like: (Y/Yes/N/No): y Now it look: (Y/Yes/N/No)y
2018-01-05Factor the monero donation addressMaxithi2-4/+4
Signed-off-by: Maxithi <34792056+Maxithi@users.noreply.github.com>
2017-12-28simplewallet: detect typo for incoming_transfers optionsstoffu1-0/+7
2017-12-27daemon+simplewallet: given an unknown command, show itstoffu1-1/+2
2017-12-26simplewallet: Correct 3 multisig command usage help texts, e.g. for ↵rbrunner71-3/+3
'export_multisig_info'
2017-12-20simplewallet: disable donations on testnetMatt Smith1-0/+6
2017-12-20simplewallet: lock idle scope in {im,ex}port_{key_images,outputs}moneromooo-monero1-0/+4
This ensures we can't get races
2017-12-20wallet: support for multisig seedsmoneromooo-monero2-45/+150
They are hex rather than words, because they are a lot longer than "normal" seeds, as they have to embed a lot more information
2017-12-18simplewallet: factor out tx exceptionsmoneromooo-monero1-82/+1
2017-12-18catch const exceptionsmoneromooo-monero1-2/+2
2017-12-18add empty container sanity checks when using front() and back()moneromooo-monero1-2/+2
2017-12-18Account taggingstoffu2-4/+134
2017-12-17Better definite article usexmr-eric1-5/+5
2017-12-17wallet: factor multisig info parsingmoneromooo-monero1-52/+5
2017-12-17wallet: use raw encrypted data in multisig import/export RPCmoneromooo-monero1-76/+4
2017-12-17Match surae's recommendation to derive multisig keysmoneromooo-monero1-2/+3
2017-12-17simplewallet: add export_raw_multisig commandmoneromooo-monero2-0/+74
It exports raw transactions, so they may be used by other tools, for instance to be relayed to the network externally.
2017-12-17simplewallet: add multisig to wallet type in wallet_info outputmoneromooo-monero1-1/+11
2017-12-17wallet: guard against partly initialized multisig walletmoneromooo-monero1-8/+39
2017-12-17add multisig core test and factor multisig building blocksmoneromooo-monero1-14/+1
2017-12-17N-1/N multisigmoneromooo-monero2-11/+71
2017-12-17gen_multisig: generates multisig wallets if participants trust each othermoneromooo-monero1-0/+1
2017-12-17Add N/N multisig tx generation and signingmoneromooo-monero2-117/+538
Scheme by luigi1111: Multisig for RingCT on Monero 2 of 2 User A (coordinator): Spendkey b,B Viewkey a,A (shared) User B: Spendkey c,C Viewkey a,A (shared) Public Address: C+B, A Both have their own watch only wallet via C+B, a A will coordinate spending process (though B could easily as well, coordinator is more needed for more participants) A and B watch for incoming outputs B creates "half" key images for discovered output D: I2_D = (Hs(aR)+c) * Hp(D) B also creates 1.5 random keypairs (one scalar and 2 pubkeys; one on base G and one on base Hp(D)) for each output, storing the scalar(k) (linked to D), and sending the pubkeys with I2_D. A also creates "half" key images: I1_D = (Hs(aR)+b) * Hp(D) Then I_D = I1_D + I2_D Having I_D allows A to check spent status of course, but more importantly allows A to actually build a transaction prefix (and thus transaction). A builds the transaction until most of the way through MLSAG_Gen, adding the 2 pubkeys (per input) provided with I2_D to his own generated ones where they are needed (secret row L, R). At this point, A has a mostly completed transaction (but with an invalid/incomplete signature). A sends over the tx and includes r, which allows B (with the recipient's address) to verify the destination and amount (by reconstructing the stealth address and decoding ecdhInfo). B then finishes the signature by computing ss[secret_index][0] = ss[secret_index][0] + k - cc[secret_index]*c (secret indices need to be passed as well). B can then broadcast the tx, or send it back to A for broadcasting. Once B has completed the signing (and verified the tx to be valid), he can add the full I_D to his cache, allowing him to verify spent status as well. NOTE: A and B *must* present key A and B to each other with a valid signature proving they know a and b respectively. Otherwise, trickery like the following becomes possible: A creates viewkey a,A, spendkey b,B, and sends a,A,B to B. B creates a fake key C = zG - B. B sends C back to A. The combined spendkey C+B then equals zG, allowing B to spend funds at any time! The signature fixes this, because B does not know a c corresponding to C (and thus can't produce a signature). 2 of 3 User A (coordinator) Shared viewkey a,A "spendkey" j,J User B "spendkey" k,K User C "spendkey" m,M A collects K and M from B and C B collects J and M from A and C C collects J and K from A and B A computes N = nG, n = Hs(jK) A computes O = oG, o = Hs(jM) B anc C compute P = pG, p = Hs(kM) || Hs(mK) B and C can also compute N and O respectively if they wish to be able to coordinate Address: N+O+P, A The rest follows as above. The coordinator possesses 2 of 3 needed keys; he can get the other needed part of the signature/key images from either of the other two. Alternatively, if secure communication exists between parties: A gives j to B B gives k to C C gives m to A Address: J+K+M, A 3 of 3 Identical to 2 of 2, except the coordinator must collect the key images from both of the others. The transaction must also be passed an additional hop: A -> B -> C (or A -> C -> B), who can then broadcast it or send it back to A. N-1 of N Generally the same as 2 of 3, except participants need to be arranged in a ring to pass their keys around (using either the secure or insecure method). For example (ignoring viewkey so letters line up): [4 of 5] User: spendkey A: a B: b C: c D: d E: e a -> B, b -> C, c -> D, d -> E, e -> A Order of signing does not matter, it just must reach n-1 users. A "remaining keys" list must be passed around with the transaction so the signers know if they should use 1 or both keys. Collecting key image parts becomes a little messy, but basically every wallet sends over both of their parts with a tag for each. Thia way the coordinating wallet can keep track of which images have been added and which wallet they come from. Reasoning: 1. The key images must be added only once (coordinator will get key images for key a from both A and B, he must add only one to get the proper key actual key image) 2. The coordinator must keep track of which helper pubkeys came from which wallet (discussed in 2 of 2 section). The coordinator must choose only one set to use, then include his choice in the "remaining keys" list so the other wallets know which of their keys to use. You can generalize it further to N-2 of N or even M of N, but I'm not sure there's legitimate demand to justify the complexity. It might also be straightforward enough to support with minimal changes from N-1 format. You basically just give each user additional keys for each additional "-1" you desire. N-2 would be 3 keys per user, N-3 4 keys, etc. The process is somewhat cumbersome: To create a N/N multisig wallet: - each participant creates a normal wallet - each participant runs "prepare_multisig", and sends the resulting string to every other participant - each participant runs "make_multisig N A B C D...", with N being the threshold and A B C D... being the strings received from other participants (the threshold must currently equal N) As txes are received, participants' wallets will need to synchronize so that those new outputs may be spent: - each participant runs "export_multisig FILENAME", and sends the FILENAME file to every other participant - each participant runs "import_multisig A B C D...", with A B C D... being the filenames received from other participants Then, a transaction may be initiated: - one of the participants runs "transfer ADDRESS AMOUNT" - this partly signed transaction will be written to the "multisig_monero_tx" file - the initiator sends this file to another participant - that other participant runs "sign_multisig multisig_monero_tx" - the resulting transaction is written to the "multisig_monero_tx" file again - if the threshold was not reached, the file must be sent to another participant, until enough have signed - the last participant to sign runs "submit_multisig multisig_monero_tx" to relay the transaction to the Monero network
2017-12-17wallet: add multisig key generationmoneromooo-monero2-2/+144
Scheme by luigi1111
2017-12-16Wallets now do not depend on the daemon rpc libmoneromooo-monero1-1/+1
The shared RPC code is now moved off into a separate lib
2017-12-13simplewallet: fix default unspent_outputs output with subaddressesmoneromooo-monero1-1/+1
If no subaddress index is given, consider all of them
2017-12-06set_node command, allows setting node without restartTobias Hoffmann2-2/+44
2017-11-28Simplewallet.cpp: Fewer pleases in seed NOTExmr-eric1-2/+2
Monero.ts: Fewer pleases in seed NOTE Monero_it.ts: Fewer pleases in seed NOTE Monero_fr.ts: Fewer pleases in seed NOTE
2017-11-27new wipeable_string class to replace std::string passphrasesmoneromooo-monero1-4/+4
2017-11-26Added command descriptionsCifrado2-58/+270
2017-11-22simplewallet: prevent (wrong) integrated adresses on accounts > 0moneromooo-monero1-0/+10
2017-11-21Spend proof without txkeystoffu2-0/+89
2017-11-21fix for tx proof: use exception instead of error_str when signature gen failedstoffu1-13/+5
2017-11-18Tx proof (revised):stoffu2-356/+101
- refactoring: proof generation/checking code was moved from simplewallet.cpp to wallet2.cpp - allow an arbitrary message to be signed together with txid - introduce two types (outbound & inbound) of tx proofs; with the same syntax, inbound is selected when <address> belongs to this wallet, outbound otherwise. see GitHub thread for more discussion - wallet RPC: added get_tx_key, check_tx_key, get_tx_proof, check_tx_proof - wallet API: moved WalletManagerImpl::checkPayment to Wallet::checkTxKey, added Wallet::getTxProof/checkTxProof - get_tx_key/check_tx_key: handle additional tx keys by concatenating them into a single string
2017-11-17Fixes #759 Add sanity check on restore heightCifrado1-0/+10
2017-11-15simplewallet: fix typo in incoming monero messagemoneromooo-monero1-1/+1
2017-11-15simplewallet: translate ring size 0 to mixin 0 (default values)moneromooo-monero1-1/+1
Avoids turning it to a huge number
2017-11-15simplewallet: wrong ns for input_line in sweep_single (fix #2634)stoffu1-2/+2
2017-11-15wallet: add sweep_single commandstoffu2-0/+271
2017-11-14Fix 383ff4f68943c5d998fba8caa20aee481583f214Howard Chu1-1/+1
Missed a crypto::null_pkey in PR#2629
2017-11-14Fix e89994e98f85be95d68c7bf471fcadf9aabbc93aHoward Chu1-1/+1
Missed an input_line() change
2017-11-14Do not build against epee_readline if it was not builtHoward Chu1-1/+1
2017-11-14split off readline code into epee_readlinemoneromooo-monero1-0/+2
2017-11-14link against readline only for monerod and wallet-wallet-{rpc,cli}moneromooo-monero1-0/+1
2017-11-14wallet: move some scoped_message_writer calls from the libsmoneromooo-monero1-1/+10
2017-11-14wallet: rejig to avoid prompting in wallet2moneromooo-monero1-30/+48
wallet2 is a library, and should not prompt for stdin. Instead, pass a function so simplewallet can prompt on stdin, and a GUI might display a window, etc.
2017-11-14move input_line from command_line to simplewalletmoneromooo-monero1-0/+13
It was only used there, and this removes one part of the common dependency on libreadline
2017-11-14simplewallet: factor transfer related exception handlingmoneromooo-monero1-338/+101
This ensures they don't go out of sync when adding/changing them, and makes the code easier to deal with.
2017-11-14remove "using namespace std" from headersmoneromooo-monero1-2/+2
It's nasty, and actually breaks on Solaris, where if.h fails to build due to: struct map *if_memmap;
2017-11-15simplewallet: fix in show_transfer passing wrong arg to ↵stoffu1-3/+3
wallet2::get_payments etc
2017-11-14simplewallet: forbid 0 ring sizemoneromooo-monero1-0/+10
It'd be interpreted as a huge one (~0 fake outs)
2017-11-14simplewallet: reject attempts to use too low mixin earlymoneromooo-monero1-0/+12
This yields a clear error message rather then some possibly confusing more technical errors down the line
2017-11-14simplewallet: reject invalid argument for boolean parameterstoffu1-26/+79
2017-11-14wallet-cli: added --generate-from-spend-key optionstoffu2-3/+27
2017-11-13Wallet: update ring size in outdated error msgs with set_default_ring_sizebinaryFate1-5/+7
2017-11-06track double spending in the txpoolmoneromooo-monero1-7/+12
Transactions in the txpool are marked when another transaction is seen double spending one or more of its inputs. This is then exposed wherever appropriate. Note that being marked with this "double spend seen" flag does NOT mean this transaction IS a double spend and will never be mined: it just means that the network has seen at least another transaction spending at least one of the same inputs, so care should be taken to wait for a few confirmations before acting upon that transaction (ie, mostly of use for merchants wanting to accept unconfirmed transactions).
2017-11-04wallet-cli: allow priority argument for sweep_all and donatestoffu1-15/+23
2017-11-03Fix 'sweep_all' command when called with no argsLeon Klingele1-6/+6
Executing 'sweep_all' with no arguments segfaulted before.
2017-11-02simplewallet: mark the active account in print_accountsmoneromooo-monero1-2/+3
2017-11-02Remove wallet dependency on p2pmoneromooo-monero2-2/+0
2017-10-19simplewallet: remove XMR mentionsmoneromooo-monero1-2/+2
They are actually wrong if the wallet is setup in a different denomination, and it's incursion of extrinsic lingo where monero fits perfectly in the first place.
2017-10-16Wallet: Descriptions through new commands 'set_description', 'get_description'rbrunner72-0/+38
2017-10-16Distinguish "not enough money" and "not enough unlocked money"binaryFate1-4/+32
Fix #1530
2017-10-08simplewallet: add get/set for refresh-from-heightmoneromooo-monero2-1/+21
2017-10-07Subaddresseskenshi842-203/+637
2017-10-07wallet-cli: add --do-not-relay optionstoffu2-32/+46
2017-10-07wallet: encrypt (un)signed tx, also optionally save unencrypted raw tx hexstrstoffu1-1/+18
2017-10-03simplewallet: fix setting default-ring-size to 0moneromooo-monero1-2/+0
It'd be set to the current wallet default instead
2017-10-02simplewallet: allow to set threshold before warning about tx backlogselsta2-2/+23
2017-09-29simplewallet: allow 1/yes/y as well as true for start_mining optionsmoneromooo-monero1-3/+3
Also mention those options in the start_mining help line
2017-09-29simplewallet: fix --restore-from-height being ignoredmoneromooo-monero1-1/+2
2017-09-25move checkpoints in a separate librarymoneromooo-monero1-1/+1
2017-09-25simplewallet: guard against I/O exceptionsmoneromooo-monero1-3/+12
CID 175308
2017-09-22simplewallet: add privacy warning when using an untrusted demonmoneromooo-monero1-0/+3
2017-09-22Log categories can now be added to and removed frommoneromooo-monero1-3/+5
Also, set_log without parameters now prints the log categories
2017-09-21build: auto update version info without manually deleting version.hstoffu1-2/+1
2017-09-16simplewallet: print tx rejection reason where it was missingmoneromooo-monero1-0/+3
2017-09-12wallet: add encrypted seed functionalitymoneromooo-monero2-2/+31
This uses luigi1111's CN_Add method. See https://xmr.llcoins.net for details.
2017-09-08Silence more stupid gcc warningsHoward Chu1-2/+2
2017-08-31monero-wallet-cli: New command 'wallet_info' improvedrbrunner71-5/+4
2017-08-31monero-wallet-cli: New command 'wallet_info'rbrunner72-0/+12
2017-08-29simplewallet: new "fee" command to display fee informationmoneromooo-monero2-3/+67
including expected transaction backlog at different priorities
2017-08-26wallet: new option to check/confirm txpool backlog when sendingmoneromooo-monero2-1/+58
2017-08-22Fix refresh counter displayHoward Chu1-0/+8
Suspend readline when refreshing
2017-08-21Silence stupid fallthru warning in gcc 7Howard Chu1-0/+1
2017-08-13simplewallet: mnemonic language command-line argEugene Otto2-1/+14
Add `--mnemonic-language` command-line arg so it's possible to generate a wallet without interacting with the CLI.
2017-08-11simplewallet: factor out message_writermoneromooo-monero1-80/+8