tlsfuzzer.timing_runner module

Tooling for running tests repeatedly

class tlsfuzzer.timing_runner.TimingRunner(name, tests, out_dir, ip_address, port, interface, affinity=None, skip_extract=False, skip_analysis=False, alpha=None, no_quickack=False, verbose_analysis=False, delay=None, carriage_return=None)[source]

Bases: object

Repeatedly runs tests and captures timing information.

analyse()[source]

Starts analysis if available

Returns:

int 0 for no difference, 1 for difference, 2 unavailable

analyse_bit_sizes()[source]

Starts analysis if available

Returns:

int 0 for no side channel detected, 1 for side channel

detected, 2 unavailable

static check_analysis_availability()[source]

Checks if additional packages are installed so analysis can run.

Returns:

bool Indicating if it is okay to run

static check_extraction_availability()[source]

Checks if additional packages are installed so extraction can run.

Returns:

bool Indicating if it is okay to run

static check_tcpdump()[source]

Checks if tcpdump is installed.

Returns:

boolean value indicating if tcpdump is present

create_output_directory(name)[source]

Creates a new directory in the specified path to store results in.

Parameters:

name (str) – Name of the test being run

Returns:

str Path to newly created directory

extract(fin_as_resp=False)[source]

Starts the extraction if available.

generate_log(run_only, run_exclude, repetitions)[source]

Creates log with number of requested shuffled runs. :param set run_only: List of tests to be run exclusively :param set run_exclude: List of tests to exclude :param int repetitions: How many times to repeat each test

run()[source]

Run test the specified number of times and start analysis

Returns:

int 0 for no difference, 1 for difference, 2 if unavailable

sniff()[source]

Start tcpdump with filter on communication to/from server

tcpdump_status(process)[source]

Checks if tcpdump is running. Intended to be run as a separate thread.

Parameters:

process (Popen) – A process with running tcpdump attached