tor/scripts/maint
Nick Mathewson 0bc1241494 Make sure that we send at least some random data in RELAY_DATA cells
Proposal 289 prevents SENDME-flooding by requiring the other side to
authenticate the data it has received.  But this data won't actually
be random if they are downloading a known resource.  "No problem",
we said, "let's fell the empty parts of our cells with some
randomness!" and we did that in #26871.

Unfortunately, if the relay data payloads are all completely full,
there won't be any empty parts for us to randomize.

Therefore, we now pick random "randomness windows" between
CIRCWINDOW_INCREMENT/2 and CIRCWINDOW_INCREMENT. We remember whether we have
sent a cell containing at least 16 bytes of randomness in that window.  If we
haven't, then when the window is exhausted, we send one.  (This window approach
is designed to lower the number of rng checks we have to do.  The number 16 is
pulled out of a hat to change the attacker's guessing difficulty to
"impossible".)

Implements 28646.
2019-05-27 14:20:07 +03:00
..
practracker Make sure that we send at least some random data in RELAY_DATA cells 2019-05-27 14:20:07 +03:00
annotate_ifdef_directives Bump copyright date to 2019 2019-01-16 12:33:22 -05:00
check_config_macros.pl Script to detect unused autoconf outputs 2014-05-07 03:56:51 -04:00
checkIncludes.py Stop assuming that /usr/bin/python3 exists 2019-03-27 11:07:55 +10:00
checkLogs.pl Clean the contrib directory with torch and machete. 2014-04-28 11:34:53 -04:00
checkOptionDocs.pl.in Start splitting src/or 2018-07-05 17:15:50 -04:00
checkSpace.pl Make checkSpace.pl check guard macros: 2019-03-12 15:19:28 -04:00
findMergedChanges.pl Clean the contrib directory with torch and machete. 2014-04-28 11:34:53 -04:00
format_changelog.py format_changelog: treat "issue NNNN" as a track ticket 2019-01-18 10:15:02 -05:00
lintChanges.py lintChanges.py: Two python re usage fixes 2019-01-17 08:46:06 -05:00
locatemissingdoxygen.py helper script to highlight undocumented members 2016-03-26 10:31:59 -04:00
rectify_include_paths.py Stop assuming that /usr/bin/python3 exists 2019-03-27 11:07:55 +10:00
redox.py Bump copyright date to 2019 2019-01-16 12:33:22 -05:00
run_calltool.sh Fix shellcheck issue SC2217 in run_calltool.sh 2018-10-29 11:37:16 +02:00
sortChanges.py Bump copyright date to 2019 2019-01-16 12:33:22 -05:00
update_versions.py Rewrite updateVersions script in Python, add datestamp functionality. 2018-11-24 20:44:37 -05:00
updateCopyright.pl Update copyright script for 2019 2019-01-16 12:33:09 -05:00
updateRustDependencies.sh Fix SC2230 warning 2018-11-20 16:57:57 +02:00