背包生成器与RC4流密码的密码分析
1. 背包生成器的安全性分析
在密码学中,背包生成器是一种重要的伪随机数生成器。我们可以正确预测其每个输出的部分比特。设 $\lambda^ $ 是最大的 $\lambda$,使得 $(v_s \oplus \tilde{v}_s) \gg (n - \lambda) = 0$,我们来分析 $\lambda^ $ 的平均大小。若 $\tilde{v} s$ 是通过抛硬币得到的,$\lambda^*$ 的期望约为 $\sum {i = 1}^{n} \frac{i}{2^{i + 1}} \approx 1$ 比特/输出。
下表展示了不同 $n$ 值(32、64、128、256),在 $\ell = \log n$ 以及不同 $s$ 值下,每个输出能正确预测的平均比特数 $\lambda^*$:
| $s - n$ | $n = 32$ | $n = 64$ | $n = 128$ | $n = 256$ |
| ---- | ---- | ---- | ---- | ---- |
| 8 | 20.6 | 42.9 | 85.3 | 164.6 |
| 16 | 22.2 | 48.7 | 100.9 | 203.4 |
| 24 | 22.6 | 50.3 | 105.9 | 216.4 |
| 32 | 22.7 | 50.8 | 108.1 | 222.4 |
从表中结果可知,即使对于较大的 $n$,背包生成器的安全性也不会显著高于 $n$ 比特。计算一个近似矩阵,用于预测 $n = 128$ 的生成器每个输出约 108 比特,只需几秒
超级会员免费看
订阅专栏 解锁全文
1559

被折叠的 条评论
为什么被折叠?



