Skip to content

算法Algorithm

伪随机生成器的伸长放大

PRG stretch amplification

将长度加一生成器迭代为状态链,用从早到晚替换的混合证明多项式伸长安全,说明最终状态何时能输出及为什么不能与未来输出同时公开。

形式陈述 ​

设伪随机生成器 G:{0,1}n→{0,1}n+1 安全。把输出拆为下一状态与释放位:

G(s)=(L(s),b(s)),|L(s)|=n.

均匀选择 s0,按

(sj,zj)=G(sj−1),j=1,…,t

迭代,输出

(1)Ht(s0)=z1⋯zt‖st.

当 t=t(n)≥1 为可高效计算、多项式有界的整数函数时,式 (1) 是 n→n+t 的安全生成器。若只需要 z1⋯zt,丢掉最终状态仍保持相对于同长均匀串的不可区分性;要把它称为有正伸长的生成器,还需 t>n。

若任意具有相应模拟时间预算的单步区分器优势至多 ε(n),多步构造的区分优势至多 tε(n)。这里额外模拟至多 t 次 G,时间也必须记入归约。[1, §7.3 的迭代混合框架]

直觉

每轮把内部状态换成一个新状态,同时释放一位。单步安全保证告诉我们:从外部看来,这对“新状态、释放位”可以替换成独立均匀随机量。按时间从第一轮开始依次替换,就把所有释放位和最后状态都变成了独立公平随机量。

关键是每次替换前,目标轮所用的状态在当前混合中已经是新的均匀状态,而过去释放位与它独立。不能在一个未经分析的相关状态上,直接说“PRG 对任何输入都安全”。

例子与边界

三轮执行和四个混合 ​

运行三轮得到

s0→G(s1,z1)→G(s2,z2)→G(s3,z3),

输出 z1z2z3s3。定义混合 Hj:前 j 轮不运行 G,直接各抽独立均匀的新状态和释放位;后面 3−j 轮照常运行。

H0 是真实构造。H3 则输出三个独立公平位和一个独立均匀状态,恰为 Un+3。

比较 Hj−1 与 Hj 时,前 j−1 轮已随机化,目标轮输入状态均匀且与已有释放位独立。一个收到 n+1 位挑战 w 的单步区分器,可把它拆成 (sj,zj),自行生成前面的 z1,…,zj−1,再从 sj 开始执行剩余真实轮次。挑战来自 G(Un) 时模拟前一混合,来自 Un+1 时模拟后一混合。

因此每步差异受单步 PRG 优势控制,相邻优势求和给三轮最多 3ε,一般 t 轮最多 tε。多项式乘可忽略量仍可忽略。

在 uniform PPT 的渐近定义下,还要避免按每个 n 非均匀地挑选一个“最容易区分”的轮次。固定最终输出判别器 D,令 T=2⌈log2⁡t⌉<2t,把混合补成 T 步:超过 t 的各步都保持全均匀世界不变。一个统一单步判别器用恰好 log2⁡T 个公平位均匀选取索引 j;若 j≤t,执行上一段的第 j 步模拟;否则忽略挑战并生成全均匀输出交给 D。记 pj=Pr[D(Hj)=1],其两个挑战世界的接受概率之差为

1T∑j=1T(pj−1−pj)=p0−ptT.

因此若端点优势不可忽略,这一个统一 PPT 判别器的优势也不可忽略。该归约只需为固定 D 取得其对应的可忽略界,无须假设存在一个同时支配所有判别器的全局可忽略函数。补成二的幂还避免了把无上限拒绝采样默认为严格有界的多项式时间步骤。

最终状态可以输出,为何内部状态不能一路公开 ​

式 (1) 把 st 输出没有矛盾,因为其后没有再给出由 st 决定的位。整体混合已经证明 (z1,…,zt,st) 不可区分于独立均匀串。

如果又继续公开下一位 zt+1=b(st),观察者便能从已经公开的 st 自行计算 G(st),检查它是否一致。真实分布总通过,独立均匀尾位仅以概率 1/2 通过。公开状态与公开其未来输出的组合不是同一个保证。

同理,若每次都重复运行同一个初始种子 s0 并拼接 G(s0),前后块完全相同,很容易被区分。安全伸长依赖按证明规定更新状态,不是任意重复调用都安全。

成本如何增长 ​

假设单次 G 时间为 TG(n),输出 t 位释放串需要 tTG(n) 时间;流式实现的外层状态与计数共占 O(n+log⁡(t+1)) 位,另计 G 本身的工作空间;若要一次性存全部输出,还需相应的输出缓存。

若想要长度 m>n,可以取 t=m−n 使用式 (1),得到恰好 m 位。若接口不能把最终状态作为普通输出,则取 t=m 并丢弃状态;两者都安全,却具有不同调用次数。选定哪一个接口后,证明和实现应使用同一个输出顺序。

推论与应用

把 n→n+1 生成器放大为 n→2n 后,可以作为GGM 树构造的分支器,从短密钥得到可自适应查询的函数。伸长证明本身只讨论一个输出串,没有自动证明指数多次查询安全。

这个状态链也解释了流密码为何必须区分密钥、nonce、流位置和内部状态泄漏。式 (1) 的单次均匀种子安全,并不附带多会话 nonce 规则、认证或泄露后恢复保证;那些属于更完整的协议接口。

参考资料
关系图谱6 个相邻概念 · 2 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系