A modular framework for randomness extraction based on Trevisans construction
Informally, an extractor delivers perfect randomness from a source that may be far away from the uniform distribution, yet contains some randomness. This task is a crucial ingredient of any attempt to produce perfectly random numbers—required, for instance, by cryptographic protocols, numerical simulations, or randomised computations. Trevisan’s extractor raised considerable theoretical interest not only because of its data parsimony compared to other constructions, but particularly because it is secure against quantum adversaries, making it applicable to quantum key distribution. We discuss a modular, extensible and high-performance implementation of the construction based on various building blocks that can be flexibly combined to satisfy the requirements of a wide range of scenarios. Besides quantitatively analysing the properties of many combinations in practical settings, we improve previous theoretical proofs, and give explicit results for non-asymptotic cases. The self-contained description does not assume familiarity with extractors.
💡 Research Summary
The paper presents a high‑performance, modular implementation of Trevisan’s randomness extractor, targeting both classical and quantum‑secure applications. After motivating the need for reliable random numbers in cryptography, simulations, and randomized algorithms, the authors critique existing implementations for their large seed requirements, rigid parameter choices, and lack of concrete non‑asymptotic guarantees.
The core contribution is a four‑layer architecture that isolates the extractor’s functional components: (1) Seed‑expansion, offering both a lightweight linear‑feedback shift register and a quantum‑safe hash‑based expansion (e.g., SHA‑3); (2) Error‑correcting code (ECC) layer, supporting list‑decodable Reed–Solomon, BCH, and Polar codes, which compensate for entropy loss in the source; (3) Strong random‑number generator, abstracted to allow either a hardware true‑random‑number generator (TRNG) or a software AES‑CTR PRNG; and (4) Multi‑stage extraction, a generalized version of Trevisan’s binary tree that lets users tune block size, depth, and the Sharp‑Pless parameters.
By exposing these blocks as interchangeable plugins, the framework can be adapted to a wide range of hardware platforms and security models. The authors also revisit Trevisan’s original security proof, replacing the asymptotic “infinite‑length source” assumption with a finite‑length analysis that explicitly incorporates the ECC’s minimum distance (d) and list size (L). They derive a concrete error bound
\