Lune

EUROCRYPT2026Top-tier venue

Attacks on Goldreich's Pseudorandom Generators by Grouping and Solving

Ximing Fu, Mo Li, Shihan Lyu, Chuanyi Liu

2026Year
1Citations

Abstract

Goldreich's pseudorandom generators (PRGs) with constant locality admit highly parallel implementations, yet the concrete security of instantiations based on the XOR-THR\mathsf{XOR}\text{-}\mathsf{THR} predicate has remained unclear.

In this work, we present novel seed recovery attacks on Goldreich's PRGs instantiated on XOR-THR\mathsf{XOR}\text{-}\mathsf{THR} predicates with m=nsm=n^s, where mm and nn are the length of output and input, respectively. By partitioning the output bits into groups according to common input bits, high-biased noisy equations can be derived for the group whose common input bits are all 1s (or all 0s). Leveraging two solvers tailored to these equations, we achieve the seed recovery attacks, which needs roughly 2n(1−log⁡2(1+2s2π(b−s)))2^{n(1-\log_2{(1 + \frac{2s}{\sqrt{2\pi (b-s)}})})} calls to Gaussian elimination when the input length of the THR\mathsf{THR} predicate b≥(n−s)1/s+s−1b\geq (n-s)^{1/s}+s-1 with small stretch ss.

Applying our attack to the XOR-MAJ\mathsf{XOR}\text{-}\mathsf{MAJ} challenges in STOC 2016 yields complexity 2 n ⁣(1−log⁡2 ⁣(1+s18π))≤20.82n2^{\,n\!\left(1-\log_{2}\!\left(1+\sqrt{\frac{s}{18\pi}}\right)\right)} \le 2^{0.82n}, i.e., at least a 20.18n2^{0.18n} speedup over exhaustive search for any stretch s>1s>1. We also deploy our attack on an instance used in the construction of silent oblivious transfer protocols (Eurocrypt 2024) with n=256n = 256. This attack is capable of breaking the instance using approximately 231.32^{31.3} calls to Gaussian elimination over 244 variables. We successfully implemented the attack on a cluster of 14 CPU cores, recovering the seed in 71 hours, demonstrating the attack's efficiency.

Beyond PRGs, with appropriate adaptations our method extends to FiLIP stream ciphers instantiated with THR-related predicates. Our evaluation indicates that most FiLIP instances do not meet their claimed security. For instance, the configuration XOR100-THR11,22-THR11,22\mathsf{XOR}_{100}\text{-}\mathsf{THR}_{11,22}\text{-}\mathsf{THR}_{11,22} is broken in about 2592^{59} calls to Gaussian elimination over 357 variables despite a 397-bit key and a claimed 80-bit security level.

Ask about this paper

Ask your agent about it.

Lune has read the top-tier papers around this one, so every answer names the papers it rests on.

Questions to start from

Your agent calls

Lunesearch_papers

Ask in Lune

Free to start. No credit card required.

Related papers

Dusk over the sea between two cliffs drawn in fine vertical lines