Tree:
dff0a13bd1
bump-pyln-proto
confirmed-only
connected_hook
docs
exclude-equal-hint
fee-tracking2
fix-benchmarks
fix-mocks
fix-test_pay_direct-flake
fixup-0.9.0
htlc_accepted_hook
issue-2080
issue-2504
json-streaming
keysend
master
mpp
nifty/pset-pre
patch-1
paymod-01
paymod-02
paymod-03
paymod-04
plugin-1
plugin-2
plugin-3
plugin-6
plugin-7
plugin-timeout-inc
ppa
ppa-0.6.1
ppa-0.6.2rc1
ppa-prep
ppa-v0.9.2
pr-2218
pr-2355-addendum
pr-2391
pr-2587
pull/2803/head
pull/2938/head
pylightning-async
pyln
register-keysend-plugin
release-0.9.0
release-0.9.0rc3
route-mem-overrun
routehint-order
sanitizers
sendonion-msatoshi
test-pay-routeboost
travis-debug
travis-experimental
travis-test
trytravis
v0.9.0.1
add-PR3363-and-PR3372
azure0.1
basedon-aeafe4dbe7d5c61f664c18417698866b0d70252f
bolt11-demo
cp-head
demo_09052017
gossip-rewrite-prebase
htlc_accepted_replay
issue-2491-checkpoint-1
list
multi-db-pre-reoder-20190821
onion-rpc-1573494123
onion-rpc-1573497614
patch-09-reviewed
plugin-2-deadend
plugin-5-prebase-1
plugin-7-a
pr-3316
pr-3321
pr-3329
pr-3335
pr-3340
pre-rebase-01
prebase-20190726
prebrase-2019010301
rebase-top
sphinx-hop-data-head
sphinx-reply-v0
subd-request-muxing-prebase
test
test1
trackblocks-20180303
undo
v0.0.0.20
v0.0.0.20-bench
v0.0.0.20-dev
v0.0.0.21
v0.0.0.21-bench
v0.0.0.21-dev
v0.0.0.22
v0.0.0.22-bench
v0.0.0.22-dev
v0.1-2015-08-08
v0.2-2016-01-22
v0.3-2016-05-26
v0.4-2016-08-19
v0.5-2016-10-19
v0.5.1-2016-10-21
v0.5.2-2016-11-21
v0.6
v0.6.1
v0.6.1rc1
v0.6.1rc2
v0.6.2
v0.6.2rc1
v0.6.3
v0.6.3rc1
v0.6rc1
v0.6rc2
v0.7.0
v0.7.0rc1
v0.7.0rc2
v0.7.0rc3
v0.7.1
v0.7.1rc1
v0.7.1rc2
v0.7.1rc3
v0.7.1rc4
v0.7.1rc5
v0.7.2
v0.7.2.1
v0.7.2rc1
v0.7.2rc2
v0.7.3
v0.7.3rc1
v0.7.3rc2
v0.7.3rc3
v0.8.0
v0.8.0rc1
v0.8.0rc2
v0.8.1
v0.8.1rc1
v0.8.1rc2
v0.8.1rc3
v0.8.2
v0.8.2.1
v0.8.2rc1
v0.8.2rc2
v0.8.2rc3
v0.9.0
v0.9.0-1
v0.9.0.1
v0.9.0rc1
v0.9.0rc2
v0.9.0rc3
v0.9.0rc4
v0.9.1
v0.9.1rc1
v0.9.1rc2
v0.9.2
v0.9.2rc1
v0.9.2rc2
v0.9.3
v0.9.3rc1
v0.9.3rc2
variant-pyunittests
where-the-500-went
${ noResults }
4 Commits (dff0a13bd1f13e758f7be8c9a8aff57c52f7b921)
Author | SHA1 | Message | Date |
---|---|---|---|
Rusty Russell | 5e3e2f4e17 |
run-secret_eq_consttime: try harder.
This will never be reliable under high load, without making it unable to detect real errors. But the test is useful because if we don't have this test we'll never notice if we break the const-timedness of our implementation. So, move the calloc out of the test loop (which seems to make it more reliable), and then after we've run it, check the 1-minute load average. Too high, we don't complain about results. It's not perfect, but it's better. Running 100 times (-O3) serially gave 100 successes with the following results: Constant: Within 5% 562-926(832.89+/-73)/1000 times Non-constant: More than 5% slower 860-990(956.35+/-26)/1000 times More importantly, if we swap the const and non-const tests, we get the expected 100 failures: Non-constant: Within 5% 14-79(41.17+/-14)/1000 times Constant: More than 5% slower 44-231(111.89+/-33)/1000 times Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> |
5 years ago |
Rusty Russell | f73ae3c198 |
test: make run-secret_eq_consttime more robust.
This is more reliable under load now: shorten the times so it is likely to run in a single timeslice, and add a nanosleep so it's likely to be at the start of the timeslice. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> |
5 years ago |
Rusty Russell | 664916e815 |
bitcoin/test: fix up constant time test for secret_eq.
We check that memcmp *isn't* constant time, but that's only true under -O2 or above: __OPTIMIZE__ doesn't distinguish. So we need a finer-grained test. Also reduce verbosity by default. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> |
6 years ago |
Rusty Russell | 8340d8c070 |
secret_eq: remove in favor of constant time variant.
To be safe, we should never memcmp secrets. We don't do this currently outside tests, but we're about to. The tests to prove this as constant time are the tricky bit. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> |
6 years ago |