Prange's information set algorithm is a decoding algorithm for arbitrary linear codes. It decodes corrupted codewords of any $\mathbb{F}_2$-linear code $C$ of message length $n$ up to relative error rate $O(\log n / n)$ in $\mathsf{poly}(n)$ time. We show that the error rate can be improved to $O((\log n)^2 / n)$, provided: (1) the decoder has access to a polynomial-length advice string that depends on $C$ only, and (2) $C$ is $n^{-\Omega(1)}$-balanced. As a consequence we improve the error tolerance in decoding random linear codes if inefficient preprocessing of the code is allowed. This reveals potential vulnerabilities in cryptographic applications of Learning Noisy Parities with low noise rate. Our main technical result is that the Hamming weight of $Hw$, where $H$ is a random sample of *short dual* codewords, measures the proximity of a word $w$ to the code in the regime of interest. Given such $H$ as advice, our algorithm corrects errors by locally minimizing this measure. We show that for most codes, the error rate tolerated by our decoder is asymptotically optimal among all algorithms whose decision is based on thresholding $Hw$ for an arbitrary polynomial-size advice matrix $H$.
翻译:Prange的信息集算法是一种适用于任意线性码的解码算法。该算法可在$\mathsf{poly}(n)$时间内解码消息长度为$n$的任意$\mathbb{F}_2$线性码$C$中错误率不超过$O(\log n / n)$的受损码字。我们证明,在满足以下条件时,可容忍的错误率可提升至$O((\log n)^2 / n)$:(1) 解码器可获得仅依赖于$C$的多项式长度建议字符串;(2) $C$是$n^{-\Omega(1)}$-平衡的。由此,若允许对随机线性码进行非高效预处理,我们提高了其解码的容错能力。这揭示了低噪声率学习含噪奇偶性在密码学应用中存在的潜在脆弱性。我们的主要技术结论是:当$H$为*短对偶*码字的随机样本时,$Hw$的汉明权重可度量字$w$在目标区域内与码的接近程度。在获得此类$H$作为建议信息的前提下,我们的算法通过局部最小化该度量值实现纠错。我们证明对于大多数编码,本解码器可容忍的错误率在渐近意义下优于所有基于任意多项式规模建议矩阵$H$对$Hw$进行阈值决策的算法。