Commit Graph

1428 Commits

Author SHA1 Message Date
j-berman b03d7091f7
wallet2: fixes for export/import output flow
- only allow offline wallets to import outputs
- don't import empty outputs
- export subaddress indexes when exporting outputs
2022-09-06 17:20:23 -06:00
j-berman fc8a5d68f1 multisig: fix #8537 seed restore (suggestions by @UkoeHB)
- 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-09-01 16:25:28 -07:00
luigi1111 72490ca04f
Merge pull request #8483
6075be9 feat(trezor): add HF15 support, BP+ (Dusan Klinec)
2022-08-07 21:35:01 -05:00
Dusan Klinec 6075be9cc8
feat(trezor): add HF15 support, BP+
- BP+ support added for Trezor
- old Trezor firmware version support removed, code cleanup
2022-08-05 14:27:16 +02:00
j-berman 8cc3c9af4d Publish submitted txs via zmq 2022-07-21 11:53:31 -07:00
luigi1111 9df069f4ce
Merge pull request #8426
a82fba4 address PR comments (j-berman)
3be1dbd connection: fix implementation (anon)
724ff21 connection: add segfault and deadlocks demo (anon)
2022-07-15 11:25:11 -04:00
koe edcc094558 derive multisig tx secret keys from an entropy source plus the tx inputs' key images 2022-07-13 12:40:34 -05:00
j-berman a82fba4b7b address PR comments 2022-07-08 15:10:03 -07:00
anon 724ff21447 connection: add segfault and deadlocks demo 2022-07-05 22:31:26 -07:00
anon c7b2944f89 multisig: fix critical vulnerabilities in signing 2022-06-30 12:56:40 -05:00
luigi1111 9750e1fa10
Merge pull request #8340
08080df unit_tests: add more sha256sum test cases (Jeffrey Ryan)
a66a52d common: update sha256sum to use OpenSSL 3.0 API (Jeffrey Ryan)
2022-05-26 21:26:42 -05:00
luigi1111 f9d789d68c
Merge pull request #8330
2dab31f Don't exclusively drop tor/i2p outgoing cxns in idle loop (j-berman)
2022-05-26 21:23:38 -05:00
j-berman 2dab31f62f Don't exclusively drop tor/i2p outgoing cxns in idle loop 2022-05-18 09:54:21 -07:00
Jeffrey Ryan 08080df2d9
unit_tests: add more sha256sum test cases 2022-05-18 01:34:20 +02:00
moneromooo-monero 2979474221
disable multisig by default
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-17 19:52:03 +00:00
luigi1111 c76e33bc44
Merge pull request #8304
0226df9 More tests for view tags (SChernykh)
2022-05-10 16:57:23 -05:00
luigi1111 d58ea37a8d
Merge pull request #8302
41da2fe Update copyright to 2022 for Hardfork files (Akrit)
2022-05-10 16:56:39 -05:00
luigi1111 436ca13722
Merge pull request #8277
baee2c0 Preserve commitment format inside transactions (kayabaNerve)
2022-05-10 16:49:13 -05:00
luigi1111 c1625a8928
Merge pull request #8220
0d6ecb1 multisig: add post-kex verification round to check that all participants have completed the multisig address (koe)
2022-05-10 16:41:02 -05:00
SChernykh 0226df9fae More tests for view tags
P2Pool can create transactions with more than 128 outputs, which make output_index's varint larger than 1 byte. Added this test case.
2022-04-29 22:53:59 +02:00
koe 0d6ecb1136 multisig: add post-kex verification round to check that all participants have completed the multisig address 2022-04-29 14:04:59 -05:00
Akrit 41da2fe6f3 Update copyright to 2022 for Hardfork files
Update Makefile and LICENSE
2022-04-29 11:12:36 +02:00
luigi1111 e13244ea9c
Merge pull request #8178
5d388eb Bump ring size to 16 for v15 & remove set default in wallet cli (j-berman)
2022-04-25 10:18:26 -05:00
Luke Parker baee2c06ec
Preserve commitment format inside transactions 2022-04-21 18:58:47 -04:00
luigi1111 96758a7d05
Merge pull request #8061
ea87b30 Add view tags to outputs to reduce wallet scanning time (j-berman)
2022-04-19 22:14:03 -05:00
j-berman 5d388eb74d Bump ring size to 16 for v15 & remove set default in wallet cli 2022-04-18 14:36:28 -07:00
Jeffrey 40f02f9d73 Add Include statements 2022-04-18 09:55:20 -05:00
j-berman ea87b30f89 Add view tags to outputs to reduce wallet scanning time
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-18 00:49:53 -07:00
moneromooo-monero b030f20751
Fee changes from ArticMine
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-10 18:13:34 +00:00
moneromooo-monero 9f786f0550
epee: allow copying a rolling_median_t object 2022-04-10 18:13:31 +00:00
reemuru 6abe3fee19
tests: integrated_address: remove missing payment id assertion
The integrated address functional test fails in the workflows due
to an assertion for missing payment id that is no longer needed.
Remove the assertion and update the assertion count.

Fixes 7dcfccb: ("wallet_rpc_server: fix make_integrated_address with no payment id")
2022-04-06 06:49:01 -05:00
luigi1111 c11385591e
Merge pull request #8228
1ce9e9c Remove dead code from parserse_base_utils and fix unit tests (Jeffrey)
2022-04-06 00:22:23 -04:00
luigi1111 04e490c8da
Merge pull request #8205
0d6fce8 Compil. time: cryptonote_core minus portable_storage header (mj-xmr)
2022-04-06 00:11:14 -04:00
luigi1111 0eb1b570b6
Merge pull request #8197
da9aa1f Copyright: Update to 2022 (mj-xmr)
2022-04-06 00:08:53 -04:00
moneromooo-monero 4c94cfecfc
store outPk/8 in the tx for speed
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-05 18:50:22 +00:00
moneromooo-monero a0d80b1f95
plug bulletproofs plus into consensus 2022-04-05 18:50:17 +00:00
Sarang Noether bd27debb2d Bulletproofs+ 2022-04-04 08:23:21 +00:00
Jeffrey 1ce9e9cda4 Remove dead code from parserse_base_utils and fix unit tests
* Remove `match_string()`, `match_number()`, and `match_word()`
* Remove `match_word_with_extrasymb()` and `match_word_til_equal_mark()`
* Adapt unit test for `match_number()` to `match_number2()`
* Adapt unit test for `match_string()` to `match_string2()`

Note: the unit tests were testing for the old version of the functions, and
the interfaces for these functions changed slightly, so I had to also edit
the tests.

As of writing, this PR has no merge conflicts with #8211

Additional changes during review:
* Explicitly set up is_[float/signed]_val to be changed before each call
* Structify the tests and fix uninitialized variables
2022-03-30 13:29:32 -05:00
luigi1111 d9e6baac42
Merge pull request #8158
e5000a9 Balance includes unconfirmed transfers to self (woodser)
2022-03-18 16:28:16 -05:00
mj-xmr 0d6fce8995
Compil. time: cryptonote_core minus portable_storage header 2022-03-04 12:48:35 +01:00
mj-xmr da9aa1f7f8
Copyright: Update to 2022 2022-03-04 06:59:20 +01:00
luigi1111 abae63c37d
Merge pull request #8052
c36ea26 fix ge_p3_is_point_at_infinity(), which is evaluating field elements that haven't been reduced by the field order (koe)
2022-03-02 18:52:51 -05:00
luigi1111 5eaa4434e8
Merge pull request #7877
e08abaa multisig key exchange update and refactor (koe)
2022-03-02 18:51:54 -05:00
koe e08abaa43f multisig key exchange update and refactor 2022-02-22 16:37:42 -06:00
woodser e5000a9f0c Balance includes unconfirmed transfers to self 2022-01-31 07:52:38 -05:00
koe c36ea26e5c fix ge_p3_is_point_at_infinity(), which is evaluating field elements that haven't been reduced by the field order 2022-01-25 07:14:46 -06:00
selsta e9156d78a3
functional_tests: update uri test with external pid 2021-12-14 23:35:48 +01:00
moneromooo-monero bbe3b276b8
tx_pool: full tx revalidation on fork boundaries
avoids mining txes after a fork that are invalid by this fork's
rules, but were valid by the previous fork rules at the time
they were verified and added to the txpool.
2021-11-01 20:56:38 +00:00
luigi1111 45920c36f1
Merge pull request #7874
9154883 node_server: fix race condition (anon)
8922f96 node_server: add race condition demo (anon)
2021-10-11 12:56:14 -05:00
luigi1111 e7a1a095ac
Merge pull request #7923
5eaedb5 unit_tests: fix use after free in serialization test (moneromooo-monero)
2021-09-23 22:16:38 -05:00
anon 9154883f3e
node_server: fix race condition 2021-09-20 20:58:23 +00:00
anon 8922f96e61
node_server: add race condition demo 2021-09-20 20:58:23 +00:00
mj-xmr 1b7a708fa3
Mac: UT node server fix IP localhost by aliasing 2021-09-12 15:51:14 +02:00
luigi1111 e48e909911
Merge pull request #7880
573a025 core_tests: remove unused typedef, fix warning (selsta)
2021-09-09 15:18:17 -04:00
luigi1111 acfe3f8ded
Merge pull request #7828
b2c59af EasyLogging++: new anti-UB test and propagating exception (mj-xmr)
2021-09-09 15:16:06 -04:00
moneromooo-monero 5eaedb51b9
unit_tests: fix use after free in serialization test 2021-09-08 01:03:34 +00:00
selsta 573a0255a8
core_tests: remove unused typedef, fix warning 2021-08-19 15:57:13 +02:00
luigi1111 82149bfe44
Merge pull request #7818
9c8e3e8 unit_tests: fix broken tests (anon)
2021-08-11 22:40:13 -04:00
luigi1111 521b4d9ded
Merge pull request #7809
7354ffb p2p: remove blocked addresses/hosts from peerlist (moneromooo-monero)
2021-08-11 22:35:15 -04:00
moneromooo-monero 7354ffb8a7
p2p: remove blocked addresses/hosts from peerlist 2021-08-05 17:29:25 +00:00
mj-xmr b2c59af84d
EasyLogging++: new anti-UB test and propagating exception 2021-08-03 17:10:21 +02:00
anon 9c8e3e832e
unit_tests: fix broken tests
boosted_tcp_server: check condition before sleep too
cryptonote_protocol_handler: each instance of BlockchainLMDB requires separate thread due to private thread local fields
2021-07-28 13:38:24 +00:00
mj-xmr 5e6762d459
EasyLogging++: Add UTests, that protect against regressions 2021-07-06 06:50:52 +02:00
moneromooo-monero 4251cc0b4d
unit_tests: check for ge_frombytes_vartime failure
CID 1446559
2021-06-11 07:51:45 +00:00
luigi1111 7499837a6f
Merge pull request #7661
08e4497 Improve cryptonote (block and tx) binary read performance (Lee Clagett)
2021-06-10 12:00:54 -05:00
luigi1111 08726ff0f3
Merge pull request #7723
3450f4b Doc: funtional_tests add new mining env vars and how to use them (mj-xmr)
2021-06-01 22:09:54 -05:00
luigi1111 fcb347820d
Merge pull request #7713
b40129e Warnings: unused var in core_tests:chaingen.h (mj-xmr)
2021-06-01 22:08:40 -05:00
mj-xmr 3450f4bc04
Doc: funtional_tests add new mining env vars and how to use them 2021-05-14 11:27:56 +02:00
luigi1111 b7ee587ddb
Merge pull request #7691
cbd54ea cmake: set 3.5 as minimum version (selsta)
2021-05-12 16:59:17 -05:00
luigi1111 342f8c8b97
Merge pull request #7690
3cc4428 clang: fix -Wpessimizing-move warning (selsta)
2021-05-12 16:58:34 -05:00
luigi1111 c1a1f2a6ea
Merge pull request #7688
451b5a5 clang: fix -Wrange-loop-analysis warnings (selsta)
2021-05-12 16:57:32 -05:00
mj-xmr b40129e253
Warnings: unused var in core_tests:chaingen.h 2021-05-11 10:22:06 +02:00
selsta 3cc4428d45
clang: fix -Wpessimizing-move warning 2021-04-28 11:33:37 +02:00
selsta cbd54ea524
cmake: set 3.5 as minimum version 2021-04-27 11:02:05 +02:00
mj-xmr 6799e212cc
Tests: Mining test uses a parametric path for finding the calculation app
MINING_SILENT and MINING_NO_MEASUREMENT env vars
2021-04-27 06:21:02 +02:00
selsta 451b5a510e
clang: fix -Wrange-loop-analysis warnings 2021-04-27 05:30:27 +02:00
luigi1111 0a1ddc2eff
Merge pull request #7669
679d055 Remove payload copy in all outgoing p2p messages (Lee Clagett)
2021-04-22 01:51:01 -04:00
mj-xmr dc81e23e60 Split epee/string_tools.h and encapsulate boost::lexical_cast 2021-04-16 20:54:20 +02:00
luigi1111 e45619e61e Revert "Merge pull request #7136"
This reverts commit 63c7ca07fb, reversing
changes made to 2218e23e84.
2021-04-16 13:52:44 -05:00
luigi1111 d544fd0f52
Merge pull request #7653
73d3b00 unit_tests: fix boost 1.58 compatibility (anon)
2021-04-16 12:52:42 -05:00
luigi1111 63c7ca07fb
Merge pull request #7136
23aae55 Remove payload copy in all outgoing p2p messages (Lee Clagett)
2021-04-16 12:45:30 -05:00
anon 73d3b00b35
unit_tests: fix boost 1.58 compatibility 2021-04-08 11:45:27 +00:00
luigi1111 4834bd8aa0
Merge pull request #7646
176cea0 Tests: Fix test node_server.bind_same_p2p_port from randomly crashing (mj-xmr)
2021-04-06 12:25:00 -05:00
luigi1111 1475236810
Merge pull request #7639
53683d7 Warnings: fix ut/levin.cpp missing braces (mj-xmr)
2021-04-06 12:24:29 -05:00
luigi1111 3c69596bc9
Merge pull request #7321
f9b5b52 fix serialization being different on mac (moneromooo-monero)
2021-04-06 12:20:15 -05:00
mj-xmr 176cea0ec6 Tests: Fix test node_server.bind_same_p2p_port from randomly crashing 2021-04-05 17:36:13 +02:00
mj-xmr 45f01f577c [CI] Adaptive mining timeout, depending on available CPU power
Printing also available RAM. Add comprehensive description.
2021-03-30 05:48:55 +02:00
luigi1111 b12e195fba
Merge pull request #7620
fe63256 cryptonote_protocol_handler: fix race condition (anon)
ded2f3a cryptonote_protocol_handler: add race condition demo (anon)
2021-03-29 21:55:11 -04:00
luigi1111 a2b046dafc
Merge pull request #7460
2935a0c async_protocol_handler_config: fix deadlock (anon)
c877705 async_protocol_handler_config: add deadlock demo (anon)
2021-03-29 21:46:29 -04:00
mj-xmr 53683d7f90 Warnings: fix ut/levin.cpp missing braces 2021-03-27 09:26:44 +01:00
anon ded2f3aa85
cryptonote_protocol_handler: add race condition demo 2021-03-22 19:42:46 +00:00
mj-xmr c836dc11c9 [CI] Use Python3 for funcional tests, instead of Python2 2021-03-20 10:30:57 +01:00
luigi1111 1707cab1a4
Merge pull request #7401
b5209a0 functional_tests: hide check_missing_rpc_methods behind requests check (moneromooo-monero)
2021-03-20 01:44:52 -04:00
luigi1111 7bf89dcbd3
Merge pull request #7005
249eae5 Allow byte_stream->byte_slice conversion to shrink unused buffer space (Lee Clagett)
2021-03-20 01:35:13 -04:00
luigi1111 8d7c1135b8
Merge pull request #6810
19b2283 New add_aux_pow RPC to support merge mining (moneromooo-monero)
2021-03-20 01:33:10 -04:00
anon c877705a53
async_protocol_handler_config: add deadlock demo 2021-03-12 11:59:06 +00:00
moneromooo-monero f9b5b521e8
fix serialization being different on mac
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-05 23:42:33 +00:00
moneromooo-monero b5209a09d2
functional_tests: hide check_missing_rpc_methods behind requests check 2021-02-23 20:10:03 +00:00
anon 1b51d398fb
async_protocol_handler_config: add segfault demo 2021-02-19 22:27:28 +00:00
luigi1111 1614be4a41
Merge pull request #7371
1aecdcf Increase timeout for the mining test 4 times (to 240s) (mj-xmr)
2021-02-18 14:11:55 -05:00