HackerPapers

arXiv:1810.02227cs.CR

Randen - fast backtracking-resistant random generator with AES+Feistel+Reverie

Jan Wassenberg, Robert Obryk, Jyrki Alakuijala, Emmanuel Mogenet

Abstract

Algorithms that rely on a pseudorandom number generator often lose their performance guarantees when adversaries can predict the behavior of the generator. To protect non-cryptographic applications against such attacks, we propose 'strong' pseudorandom generators characterized by two properties: computationally indistinguishable from random and backtracking-resistant. Some existing cryptographically secure generators also meet these criteria, but they are too slow to be accepted for general-purpose use. We introduce a new open-sourced generator called 'Randen' and show that it is 'strong' in addition to outperforming Mersenne Twister, PCG, ChaCha8, ISAAC and Philox in real-world benchmarks. This is made possible by hardware acceleration. Randen is an instantiation of Reverie, a recently published robust sponge-like random generator, with a new permutation built from an improved generalized Feistel structure with 16 branches. We provide new bounds on active s-boxes for up to 24 rounds of this construction, made possible by a memory-efficient search algorithm. Replacing existing generators with Randen can protect randomized algorithms such as reservoir sampling from attack. The permutation may also be useful for wide-block ciphers and hashing functions.

arXiv comments
Journal reference
DOI
Subjects
cs.CRCryptography and Security cs.DSData Structures and Algorithms

On Hacker News

Linked by 2 identifiable commenters in 2 comments across 2 threads, from Nov 2020 to Jun 2025. Found in 1 HN submission from Dec 2021 to Dec 2021. Open submission discussions.

Comments linking this paper, per year.

Discussed in comments2 threads

    • This library appears to be insecure by default. I think there are vanishingly few use cases for non-crypto RNGs. We made absl random secure by default using randen: https://arxiv.org/abs/1810.02227 The algorithm is provably secure, so long as AES is secure. It is also…

      bhickeyView on HNParent context

    • The paper is a bit light on its recommendation, but it seems to favor xoshiro256++. Others might suggest Randen. http://prng.di.unimi.it/ https://arxiv.org/pdf/1810.02227.pdf

      jeffbeeView on HNParent context

Submitted to Hacker News

Connected through shared HN threads, not inferred similarity or a recommendation.