Cryptomite: A versatile and user-friendly library of randomness extractors

We present $\texttt{Cryptomite}$, a Python library of randomness extractor implementations. The library offers a range of two-source, seeded and deterministic randomness extractors, together with parameter calculation modules, making it easy to use and suitable for a variety of applications. We also...

Full description

Saved in:
Bibliographic Details
Main Authors: Cameron Foreman, Richie Yeung, Alec Edgington, Florian J. Curchod
Format: Article
Language:English
Published: Verein zur Förderung des Open Access Publizierens in den Quantenwissenschaften 2025-01-01
Series:Quantum
Online Access:https://quantum-journal.org/papers/q-2025-01-08-1584/pdf/
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:We present $\texttt{Cryptomite}$, a Python library of randomness extractor implementations. The library offers a range of two-source, seeded and deterministic randomness extractors, together with parameter calculation modules, making it easy to use and suitable for a variety of applications. We also present theoretical results, including new extractor constructions and improvements to existing extractor parameters. The extractor implementations are efficient in practice and tolerate input sizes of up to $2^{40}\gt10^{12}$ bits. Contrary to alternatives using the fast Fourier transform, we implement convolutions efficiently using the number-theoretic transform to avoid rounding errors, making them well suited to cryptography. The algorithms and parameter calculation are described in detail, including illustrative code examples and performance benchmarking.
ISSN:2521-327X