moneromooo-monero
e350cc5ad5
wallet2: fix duplicate output making it to the RPC
2018-09-25 11:28:39 +00:00
moneromooo-monero
bf9a0f4c65
epee: fix stack overflow on crafted input
2018-09-25 11:27:50 +00:00
moneromooo-monero
45683ee02c
epee: fix invalid memory write reading an array entry
...
Reported by Lilith Wyatt at Talos.
Since this is not needed in normal operation, I just let this
error out.
2018-09-25 11:27:48 +00:00
moneromooo-monero
c39ad0cd72
tx_pool: fix tx removal at startup keeping references
2018-09-25 09:58:37 +00:00
moneromooo-monero
50981c40ce
blockchain: add stagenet v8 and v9, two weeks before mainnet
2018-09-24 20:43:39 +00:00
moneromooo-monero
b35beaa8d6
wallet_rpc_server: include account index in incoming_transfers RPC
2018-09-24 19:42:26 +00:00
moneromooo-monero
1dd5c73f62
bulletproofs: multiply points by 8 first thing in verification
...
instead of merging that with other scalar multiplications
where possible for speed, since this is not actually safe
2018-09-24 14:02:51 +00:00
moneromooo-monero
6e270fbd29
wallet2_api: fix for latest code changes
2018-09-22 23:00:34 +00:00
moneromooo-monero
c05f98d4c3
README: remove overlooked conflict
2018-09-22 19:07:48 +00:00
moneromooo-monero
83907f8829
wallet_rpc_server: fix --run-as-service on Windows
...
Thanks iDunk for the windows testing
2018-09-22 11:56:30 +00:00
moneromooo-monero
4d0a8db06d
device: fix warnings about overridden functions
2018-09-21 19:33:15 +00:00
moneromooo-monero
e03402b0c7
wallet_rpc_server: fix build for windows
...
Thanks iDunk for building patches on windows
2018-09-21 18:50:05 +00:00
moneromooo-monero
8db2d8d416
simplewallet: fix --generate-from-json setting wrong wallet filename
2018-09-19 20:22:46 +00:00
moneromooo-monero
a2505c2fcc
gpg_keys: bump my key validity for two more years
2018-09-19 07:50:49 +00:00
moneromooo-monero
b766014933
node_rpc_proxy: return a non empty error string on connection failure
...
This makes it easier to avoid bugs on the caller side if errors are
represented by non empty strings.
This fixes the refresh height setting in new wallets when no daemon
is running.
2018-09-17 11:03:46 +00:00
moneromooo-monero
05edc969c0
simplewallet: remove obsolete transfer_original command
2018-09-16 14:29:41 +00:00
moneromooo-monero
6e6ffc0650
wallet2_api: bring up to latest wallet api
2018-09-16 13:24:48 +00:00
moneromooo-monero
6dbbc69055
unit_tests: sanity check on transaction weight
2018-09-15 16:14:38 +00:00
moneromooo-monero
27af46c930
tests: update test wallet keys file for encrypted keys
2018-09-15 09:34:11 +00:00
moneromooo-monero
4cb1d879f6
blockchain_blackball: s/return false;/return 0;/
2018-09-14 20:08:52 +00:00
moneromooo-monero
9bdc9109fb
blockchain_blackball: use %zu for size_t
2018-09-14 17:16:08 +00:00
moneromooo-monero
db3db0930e
blockchain_blackball: use mdb_size_t where appropriate
2018-09-14 17:11:11 +00:00
moneromooo-monero
b1f05f589e
blockchain_blackball: error out on fgets error
2018-09-14 16:31:24 +00:00
moneromooo-monero
44259e560e
wallet: ask-password can now ask without encrypting the secret spend key
2018-09-14 11:14:21 +00:00
moneromooo-monero
53a99ca112
cn_deserialize: comment out pruned tx case
...
it's not merged yet
2018-09-14 10:55:50 +00:00
moneromooo-monero
be001326d1
remove obsolete daemon selection of fake outs and old tx construction
2018-09-14 10:51:45 +00:00
moneromooo-monero
607301bf6d
rct: avoid repeated unnecessary conversions when accummulating
2018-09-14 10:18:01 +00:00
moneromooo-monero
ac9346637a
rpc: add a "is an update available" flag in get_info
...
Make it easier for a user to be told when to update
2018-09-14 09:28:03 +00:00
moneromooo-monero
4d52ec0ca4
mlog: do not display http errors by default
...
They're controllable by potential attackers and would just spam
2018-09-14 09:23:00 +00:00
moneromooo-monero
2ace509a78
simplewallet: print reason why refresh+password is needed
2018-09-14 08:26:36 +00:00
moneromooo-monero
4f81cd3a3c
rpc: add cumulative difficulty in block header data
2018-09-13 12:41:59 +00:00
moneromooo-monero
1660b0e72c
tx_pool: make the max tx size a consensus rule from v8
2018-09-13 09:43:29 +00:00
moneromooo-monero
b2bb9312a7
blockchain: simplify output distribution code
2018-09-12 19:20:16 +00:00
moneromooo-monero
befdcbf4be
db_lmdb: do not use base for cumulative distribution
...
it's confusing and needlessly complicated
2018-09-12 19:20:13 +00:00
moneromooo-monero
56b50faab2
wallet: use wipeable_string in more places where a secret is used
2018-09-12 09:26:11 +00:00
moneromooo-monero
07ec748c82
wipeable_string: add hex_to_pod function
2018-09-12 09:26:09 +00:00
moneromooo-monero
9137ad2c63
blockchain: add a testnet v9 a day after v8
...
So that bulletproofs become mandatory
2018-09-11 13:38:36 +00:00
moneromooo-monero
ac4f71c200
wallet2: bump testnet rollback to account for coming reorg
2018-09-11 13:38:35 +00:00
moneromooo-monero
8f418a6db0
bulletproofs: #include <openssl/bn.h>
...
Apparently needed for openssl 1.1.x
2018-09-11 13:38:34 +00:00
moneromooo-monero
2bf636503f
bulletproofs: speed up the latest changes a bit
2018-09-11 13:38:32 +00:00
moneromooo-monero
044dff5a30
bulletproofs: scale points by 8 to ensure subgroup validity
2018-09-11 13:38:31 +00:00
moneromooo-monero
c83012c476
bulletproofs: match aggregated verification to sarang's latest prototype
2018-09-11 13:38:30 +00:00
moneromooo-monero
ce0c743205
performance_tests: add padded bulletproof construction
2018-09-11 13:38:24 +00:00
moneromooo-monero
1224e53b74
core_tests: add a test for 4-aggregated BP verification
2018-09-11 13:38:22 +00:00
moneromooo-monero
0e6ed559c6
fuzz_tests: add a bulletproof fuzz test
2018-09-11 13:38:21 +00:00
moneromooo-monero
463434d1f7
more comprehensive test for ge_p3 comparison to identity/point at infinity
...
Reported by QuarksLab.
2018-09-11 13:38:20 +00:00
moneromooo-monero
d0a0565f7d
unit_tests: add a few more multiexp unit tests
2018-09-11 13:38:19 +00:00
moneromooo-monero
6526d87f17
core_tests: add a test for a tx with empty bulletproof
2018-09-11 13:38:18 +00:00
moneromooo-monero
a129bbd944
multiexp: fix maxscalar off by one
...
Reported by QuarksLab.
2018-09-11 13:38:17 +00:00
moneromooo-monero
7ed496cc78
ringct: error out when hashToPoint* returns the point at infinity
...
Reported by QuarksLab.
2018-09-11 13:38:16 +00:00
moneromooo-monero
d1591853bf
cryptonote_basic: check output type before using it
...
Reported by QuarksLab.
2018-09-11 13:38:15 +00:00
moneromooo-monero
61632dc166
ringct: prevent a potential very large allocation
...
Reported by QuarksLab.
2018-09-11 13:38:14 +00:00
moneromooo-monero
a4317e61b5
crypto: some paranoid checks in generate_signature/check_signature
...
Reported by QuarksLab.
2018-09-11 13:38:12 +00:00
moneromooo-monero
7434df1cc6
crypto: never return zero in random32_unbiased
...
This avoids problems when the caller can't deal with a zero
walue, which happens often enough that it's worth nipping the
problem in the bud.
2018-09-11 13:38:12 +00:00
moneromooo-monero
0825e97436
multiexp: fix wrong Bos-Coster result for 1 non trivial input
...
Reported by QuarksLab.
2018-09-11 13:38:10 +00:00
moneromooo-monero
a1359ad43c
Check inputs to addKeys are in range
...
Reported by QuarksLab.
2018-09-11 13:38:09 +00:00
moneromooo-monero
fe0fa3b9c5
bulletproofs: reject x, y, z, or w[i] being zero
...
Also try again when we're generate a proof with those characteristics
Reported by QuarksLab.
2018-09-11 13:38:08 +00:00
moneromooo-monero
5ffb2ff9b7
v8: per byte fee, pad bulletproofs, fixed 11 ring size
2018-09-11 13:38:07 +00:00
moneromooo-monero
869b3bf824
bulletproofs: a few fixes from the Kudelski review
...
- fix integer overflow in n_bulletproof_amounts
- check input scalars are in range
- remove use of environment variable to tweak straus performance
- do not use implementation defined signed shift for signum
2018-09-11 13:38:05 +00:00
moneromooo-monero
c429176248
bulletproofs: reject points not in the main subgroup
2018-09-11 13:38:04 +00:00
moneromooo-monero
1569717718
bulletproofs: speed up a few multiplies using existing Hi cache
2018-09-11 13:38:03 +00:00
moneromooo-monero
0b05a0fa74
Add Pippenger cache and limit Straus cache size
2018-09-11 13:38:02 +00:00
moneromooo-monero
51eb3bdcd6
add pippenger unit tests
2018-09-11 13:37:49 +00:00
moneromooo-monero
b17b8db3f5
performance_tests: add stats and loop count multiplier options
...
Stats are: min, median, standard deviation
2018-09-11 13:37:48 +00:00
moneromooo-monero
7314d919e7
perf_timer: split timer class into a base one and a logging one
2018-09-11 13:37:47 +00:00
moneromooo-monero
d126a02b5d
performance_tests: add aggregated bulletproof tx verification
2018-09-11 13:37:46 +00:00
moneromooo-monero
263431c486
Pippenger multiexp
...
Based on sarang's python code
2018-09-11 13:37:45 +00:00
moneromooo-monero
1ed0ed4de4
multiexp: cut down on memory allocations
2018-09-11 13:37:44 +00:00
moneromooo-monero
1b867e7f40
precalc the ge_p3 representation of H
2018-09-11 13:37:42 +00:00
moneromooo-monero
ef56529f93
performance_tests: document the tested bulletproof layouts
2018-09-11 13:37:41 +00:00
moneromooo-monero
3011178021
unit_tests: a couple more bulletproof unit tests for gamma
2018-09-11 13:37:40 +00:00
moneromooo-monero
c444b1b229
require canonical multi output bulletproof layout
2018-09-11 13:37:39 +00:00
moneromooo-monero
7e67c52fa2
Add a define for the max number of bulletproof multi-outputs
2018-09-11 13:37:38 +00:00
moneromooo-monero
2a8fcb421b
Bulletproof aggregated verification and tests
...
Also constrains bulletproofs to simple rct, for simplicity
2018-09-11 13:37:37 +00:00
moneromooo-monero
126196b017
multiexp: some speedups
...
- use a raw memory block to store cache
- use aligned memory
- use doubling API where appropriate
- calculate straus in bands
2018-09-11 13:37:35 +00:00
moneromooo-monero
71d67bda74
aligned: aligned memory alloc/realloc/free
2018-09-11 13:37:34 +00:00
moneromooo-monero
cb9ecab197
performance_tests: add signature generation/verification
2018-09-11 13:37:33 +00:00
moneromooo-monero
bacf0a1e2f
bulletproofs: add aggregated verification
...
Ported from sarang's java code
2018-09-11 13:37:32 +00:00
moneromooo-monero
e895c3def1
make straus cached mode thread safe, and add tests for it
2018-09-11 13:37:31 +00:00
moneromooo-monero
7f48bf05d7
multiexp: bos coster now works for just one point
2018-09-11 13:37:30 +00:00
moneromooo-monero
9ce9f8caf6
bulletproofs: add multi output bulletproofs to rct
2018-09-11 13:37:28 +00:00
moneromooo-monero
f34e2e20bd
performance_tests: add tx checking tests with more than 2 outputs
2018-09-11 13:37:27 +00:00
moneromooo-monero
0793184bd0
performance_tests: add a --verbose flag, and default to terse
2018-09-11 13:37:26 +00:00
moneromooo-monero
939bc22332
add Straus multiexp
2018-09-11 13:37:25 +00:00
moneromooo-monero
9ff6e6a0a7
ringct: add bos coster multiexp
2018-09-11 13:37:24 +00:00
moneromooo-monero
e9164bb38b
bulletproofs: misc optimizations
...
Use double mults where possible, avoid conversions, simplify
2018-09-11 13:37:23 +00:00
moneromooo-monero
112f32f068
performance_tests: add crypto ops
2018-09-11 13:37:22 +00:00
moneromooo-monero
f5d7b9933a
performance_tests: add bulletproofs
2018-09-11 13:37:21 +00:00
moneromooo-monero
8f4ce989c2
performance_tests: add RingCT MLSAG gen/ver tests
2018-09-11 13:37:19 +00:00
moneromooo-monero
1aa10c4364
performance_tests: add (Borromean) range proofs
2018-09-11 13:37:18 +00:00
moneromooo-monero
aacfd6e370
bulletproofs: multi-output bulletproofs
2018-09-11 13:37:17 +00:00
moneromooo-monero
cb1cc757ba
performance_tests: don't override log level to 0
2018-09-11 13:37:16 +00:00
moneromooo-monero
a54dbaee08
blockchain_blackball: add --force-chain-reaction-pass flag
2018-09-10 09:04:21 +00:00
moneromooo-monero
44439c3208
record blackballs as amount/offset, and add export ability
2018-09-10 09:04:18 +00:00
moneromooo-monero
8501b8dffb
crypto_ops_builder: link to EdDSA/Ed25519 draft RFC
...
instead of including the text, as it's not fully free to redistribute
2018-09-09 16:18:49 +00:00
moneromooo-monero
03c07b167d
rpc: return "already mining" in start_mining if already mining
2018-09-09 15:27:30 +00:00
moneromooo-monero
4bce935b40
blockchain_blackball: more optimizations
2018-09-09 12:03:02 +00:00
moneromooo-monero
b66ba78306
blockchain_blackball: do not process duplicate blockchains parts
2018-09-09 12:02:48 +00:00
moneromooo-monero
639a3c019c
blockchain_blackball: make it clear secondary passes are not incremental
...
yet
2018-09-09 12:02:42 +00:00
moneromooo-monero
eb8a51be68
blockchain_blackball: detect spent outputs by partial ring reuse
2018-09-09 12:02:39 +00:00