有界密钥相关消息安全性解析
1. 技术概述
在密钥相关消息(KDM)安全的研究中,我们先聚焦于单密钥 KDM 攻击的方案。这里只有一对长度为 k 的公钥/私钥对 (pk, sk),攻击者可以获取电路复杂度至多为 L(k) 的任意函数 h 作用于私钥 sk 得到的消息 h(sk) 的加密结果。
同态公钥加密方案 (Gen, Enc, Dec) 有额外的算法 Eval 用于对加密消息进行函数求值。Eval 接收公钥 pk、消息 M 的加密结果以及某个函数族 H 中的函数 h 的描述,输出一个字符串,使用私钥 sk 能从该字符串高效解密出 h(M)。
一个足够强大的同态加密实际上也是 KDM 安全的(相对于同一函数类 H),“足够强大”意味着该方案满足以下额外属性:
1. 自引用(即 1 - 循环)安全性 :$Enc_{pk}(sk)$ 与 $Enc_{pk}(0^k)$ 不可区分。
2. 强函数隐私性 :对于每个 $h \in H$ 和明文 M,$Eval_{pk}(h, Enc_{pk}(M))$ 与 $Enc_{pk}(h(M))$ 不可区分,即使面对知道私钥的区分器也是如此。
证明此类方案 KDM 安全性的基本思路是,通过对函数 h 运行 Eval,区分 $Enc_{pk}(h(sk))$ 和 $Enc_{pk}(h(0^k))$ 的区分器可用于区分 $Enc_{pk}(sk)$ 和 $Enc_{pk}(0^k)$,这样“KDM 查询”就变得无用。在将此思路转化为证明时,会发现即使对于知道私钥的区分器,函数隐私性也必须成立,这一点至关重要。
实