带辅助输入的公钥加密方案解析
1. 引言
现代密码算法通常基于密钥完全保密且独立选择的假设设计。然而在实际中,由于多种原因,如密码算法物理实现的侧信道攻击,或多个应用使用相同密钥或随机源,秘密密钥的信息可能会泄露。近年来,密码学界致力于构建针对大规模侧信道攻击的物理安全通用理论。
我们聚焦于由“内存泄漏”导致的侧信道攻击。在此类攻击中,攻击者选择一个任意且可高效计算的函数 $h$(可能依赖系统公共参数),并获取 $h$ 作用于秘密密钥 $SK$ 的结果。为保留一定的保密性,必须限制攻击者选择的函数 $h$ 不会完全泄露秘密。目前已有多种模型尝试解决这一问题:
- Akavia 等人的模型 :泄漏函数 $h$ 是任意多项式时间可计算且输出长度有界的函数。设 $k$ 为秘密密钥 $SK$ 的长度(或最小熵),限制 $h$ 输出 $\ell(k) < k$ 比特,确保泄漏不会完全暴露密钥。在学习误差问题(LWE)的难解性假设下,Regev 的公钥加密方案对 $\ell(k)$ 长度有界的泄漏函数是安全的,只要 $\ell(k) < (1 - \epsilon)k$($\epsilon > 0$ 为常数)。
- Naor 和 Segev 的模型 :放宽了对 $h$ 的限制,允许攻击者观察到的泄漏可能长于秘密密钥,但观察 $h(SK)$ 后秘密的最小熵最多下降 $\ell(k)$ 比特,即“噪声泄漏要求”。在决策 Diffie - Hellman(DDH)假设下,他们展示了如何构建一个公钥加密方案,只要 $\ell(k) < k - k^{\epsilon}$($\epsilon >