哈希函数的多属性保留组合器详解
1. 组合器攻击分析
在组合器 MAC 的攻击分析中,当 $c = 1$ 时,$A_b$ 会向预言机查询 $0||M$ 以获取答案 $x_b$,接着利用已知参数计算 $H_{prsrv}^b(M)$,并计算 $y = \tau \oplus H_{prsrv}^b(M) \oplus T_b(x_b)$,最后输出消息 $1||x_b||000$ 和 $y$ 的前 $n$ 位后停止。若 $A_{Comb}$ 未能输出 $(M, \tau)$ 对或者返回之前查询过的消息 $M = M_i$,则 $A_b$ 报告失败并终止。
对于成功的 $A_{Comb}$,存在两种互斥情况:
- 情况一 :敌手 $A_{Comb}$ 找到新的 $M$ 和有效的 $\tau$,使得 $H_b(K_b, 0||M)$ 与某个查询 $0||M_i$ 的 $H_b(K_b, 0||M_i)$ 发生碰撞。此时,敌手 $A_b$ 以 $\frac{1}{2q}$ 的概率输出 $0||M$ 和 $H_b(K_b, 0||M)$。由于哈希函数 $H_b$ 的安全性,$A_{Comb}$ 在此情况下成功伪造 MAC 的概率可忽略不计。
- 情况二 :$A_{Comb}$ 输出新的 $M$ 和有效的标签 $\tau$,且 $x_b = H_b(K_b, 0||M)$ 与所有 $x_{b,i} = H_b(K_b, 0||M_i)$ 都不同。若 $c = 1$,敌手 $A_b$ 对 $\tau$ 进行“解掩码”操作以恢复 $y = H_b(K_b, 1||x_b|| \langle 0 \rangle_3)|| \
超级会员免费看
订阅专栏 解锁全文
577

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



