sboxUv2 package

sboxUv2 is a package providing both all the algorithms relevant to the study of vectorial Boolean functions, in particular those intended to be used as S-boxes within symmetric cryptographic primitives.

A particular focus is put on efficiency: large parts of this library are written in C++, and multi-threading is used as much as possible.

Subpackages

Submodules

sboxUv2.config module

The maximum number of threads used in each function.

sboxUv2.config.n_threads_from_sbox_size(n)[source]

Customize this function to adjust the number of threads used by multi-threaded functions.

The idea is to prevent the use of many threads when each of them actually has very little to do.

Parameters:

n (-) – the bitlength of an S-box input.

Returns:

The number of threads to use. The higher the input, the higher the number of threads.