266
v1v2v3 (latest)

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

Quantum (Quantum), 2024
Main:25 Pages
9 Figures
Bibliography:5 Pages
Appendix:8 Pages
Abstract

We present 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 240>10122^{40}>10^{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.

View on arXiv
Comments on this paper