SQ算法特性与应用解析
1. SQ算法的均匀性
SQ算法在选择模数M时具有均匀性,这意味着它在均匀分布的情况下是最优的,能够达到第4节中描述的碰撞边界εu。
- s值分析 :在步骤3执行并通过后,对于给定的k值,s取2k ≤ s < 2k+1范围内的奇数。当k = 0时,s只有一个值1;当k > 0时,s有2k−1种可能值。步骤3在k = 0时总是通过,k > 0时通过概率为一半。因此,对于任何给定的k,在步骤3通过的条件下,特定s值的概率为α2−k,其中α = 2/(W + 1)。
- q值分析 :步骤6中选择的q值,对于给定的k,从2D−k种可能值中均匀选取,所以任何特定q值的概率为2k−D。由于s值的概率为α2−k,那么(s, q)对的概率为(α2−k)(2k−D) = α2−D,这个值不依赖于s和q,说明步骤6产生的(s, q)对是均匀分布的。虽然步骤7和8会拒绝一些对,但不影响分布的均匀性,所以SQ算法输出的(s, q)对是均匀分布的。
- 与Ω的对应关系 :SQ算法产生的输出对集合与Ω有一一对应关系,即如果M ∈ Ω,有唯一的输出对(s, q)使得M = sq;如果(s, q)是输出对,有唯一的M ∈ Ω使得M = sq。由于输出对均匀分布,所以SQ算法在Ω上均匀选择M。
2. SQ算法的运行时间
SQ算法的运行时间适合进行分析,这里给出了基于实现的实证结果。
- 实验设置 :在800 MHz的奔腾III上用C语言实现W = 32的SQ算法,不使用汇编语言,
超级会员免费看
订阅专栏 解锁全文
1013

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



