Skip to content

定义Definition

通用哈希

Universal hashing · Universal hash family

从函数族随机选择哈希函数,使任意预先固定的不同键对以至多 1/m 的概率碰撞。

形式陈述 ​

设键域为 U,m 为正整数,槽集合为 [m]={0,…,m−1}。取一族函数 h:U→[m],记为 H⊆[m]U。这族函数称为 universal,若对任意不同键 x,y∈U,按指定分布随机选择 h∈H 时都有

Prh∼H[h(x)=h(y)]≤1m.

若对任意 a,b∈[m] 还满足 Pr[h(x)=a∧h(y)=b]=1/m2,则哈希值是 pairwise independent;这是比只控制碰撞概率更强的条件,不能把两个术语当作同义词。

一个标准构造令 U⊆{0,…,p−1},其中 p 为素数,并取

ha,b(x)=((ax+b)modp)modm,a∈{1,…,p−1}, b∈{0,…,p−1}.

这里取正整数 m≤p,均匀且独立抽取 a,b 得到 universal 族。为什么两次取模仍能控制碰撞?固定 x≠y 后,模 p 的输出对 (ax+b,ay+b) 均匀遍历所有互异余数对:给定两项输出,可由 a(x−y) 唯一解出非零 a,再解出 b。固定第一个余数后,与它模 m 同余的其他余数至多有 ⌈p/m⌉−1≤(p−1)/m 个,而第二个余数均匀落在其余 p−1 个位置,所以碰撞概率至多为 1/m。最终槽位本身不必均匀,因而这段证明没有把构造误当成两两独立。

对预先固定的 n 个键,链地址哈希表中某个固定键的期望碰撞数至多 (n−1)/m,故在负载因子 α=n/m 受常数控制时,查询的期望成本为 O(1+α)。这个成本还假设哈希求值、取槽和一次键比较都是常数时间。

直觉

通用哈希不假设输入键“自然随机”,而把随机性放到建表时选择的函数上。键集可以是最坏情况,只要它在随机种子选定前已经固定,任意一对键都难以稳定地被整个函数族送进同一槽。分析因此针对算法自己的随机选择,而不是把现实数据分布理想化。

随机化解决的是可预测冲突:固定函数总可能遇到专门构造的坏键集;从受控函数族抽样后,攻击者若不知道选择结果,就不能让所有候选函数同时产生同样的聚集。性质是关于函数族和抽样分布的,不是某一个已选函数“永不碰撞”。

函数族随机选择与碰撞概率
例子与边界

取素数 p=7、槽数 m=5,函数 h3,1(x)=((3x+1)mod7)mod5 会让某些键碰撞;例如 h3,1(0)=1、h3,1(4)=1。把函数族的全部 6×7=42 个参数对都考虑进来,固定键对 (0,4) 的模 7 输出遍历 42 个互异有序对。其中最终碰撞的只有 (0,5),(5,0),(1,6),(6,1) 四对,概率为 4/42=2/21<1/5。定义控制的正是这个比例,并不要求每个族成员无碰撞。

对集合 S 中固定键 x,令 Iy 表示 y≠x 与 x 碰撞。期望的线性性给出

E[∑y∈S∖{x}Iy]=∑y≠xPr[h(y)=h(x)]≤n−1m,

该推导不要求所有 Iy 相互独立。它解释了 universal 条件为何足以支撑链地址法的单键期望界,也说明 pairwise independence 在这里不是必需前提。

若攻击者先观察已选函数或种子,再自适应提交碰撞键,标准“固定键集”分析便可能失效;服务端哈希防洪需要隐藏随机密钥、定期重播种或使用更强的伪随机构造。通用哈希也不是密码学抗碰撞:后者要求计算上难以找到碰撞,面对的是已知函数,安全目标完全不同。

推论与应用

通用哈希给字典、静态完美哈希和随机化负载均衡提供可证明的输入无关期望界。它把“平均 O(1)”从含糊的数据均匀假设改写成明确概率空间:固定键集、随机函数、对函数选择取期望。选择函数族时还需计算哈希本身的成本;一个统计性质良好却求值昂贵的族,不会自动得到快速实现。

剩余哈希引理把同一碰撞概率条件用于随机性提取:当种子独立于弱源与经典旁信息的联合变量时,平均条件最小熵控制输出与公开种子、旁信息联合接近独立均匀的距离。这里使用统计碰撞界,不要求把函数族升级为密码学抗碰撞假设。

更强的 k-wise independence、tabulation hashing 与 keyed hashing 分别服务于浓缩界、工程速度和对手模型。使用哪一种,应由证明实际需要的独立性阶数和威胁模型决定,而不是把“随机哈希”当成单一保证。

参考资料
  • J. Lawrence Carter and Mark N. Wegman, “Universal Classes of Hash Functions,” Journal of Computer and System Sciences 18(2), 1979, pp. 143–154.
  • Thomas H. Cormen et al., Introduction to Algorithms, 4th ed., MIT Press, 2022, §11.3, universal hashing.
  • Avrim Blum,CMU 15-451,Lecture 10: Hashing,2011,§10.4:固定键对的量词与线性期望得到的碰撞界。
关系图谱17 个相邻概念 · 2 类关系

拖动节点调整位置。

显示关系

显示:依赖

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