“IND CPA 是对称和公钥加密的基础机密性目标,也是构造 CCA 安全与认证加密的起点。不可区分性 提供游戏语言;私钥 SEM CPA、公钥标准语义安全分别在对应模型下与 IND CPA…”
形式陈述 ​
之上。令
以下统一采用 uniform PPT:算法由单台概率图灵机处理所有安全参数,不允许为每个输入长度另带多项式大小 advice。消息族由 uniform PPT sampler 产生;公钥分支允许 sampler 读取
函数的输入、输出编码同样由
在这组 uniform、有效可采样、等长消息约定下,私钥被动窃听分支 SEM-EAV 与对应的 IND-EAV 等价。Goldwasser–Micali 1984 的 Section 5.2、Theorem 5.2 给出原始公钥语境中 polynomial security 推出 semantic security 的方向;现代教材再以反向构造得到公钥语义安全与 IND-CPA 的等价。改变为 nonuniform 对手、不可有效采样消息族或不同辅助输入接口时,需要重新陈述等价定理,不能只保留“SEM = IND”四个字。
私钥加密若改为 SEM-CPA,攻击者还应在挑战前后获得加密 oracle,此时对应 IND-CPA。公钥加密中公开的
直觉
攻击者可能本来就知道消息来自哪个分布、消息长度或其他公开侧信息;语义安全不试图抹掉这些先验,而只要求密文不再提供可高效利用的新信息。模拟器把这句话变成可检验的比较:如果某件事不看密文也能以几乎相同概率完成,就不能把它算作密文泄漏。安全目标因此远强于“难以恢复整条明文”:只要密文额外帮助预测一个 bit、某个关系或某个谓词,就已经失败。
例子与边界
确定性私钥加密通常无法在多次加密或选择明文模型中达到标准语义安全:攻击者可比较候选消息的密文。一次一密具有更强的完美保密;计算语义安全允许分布在信息论上不同,只要求高效对手无法利用这种差异。消息长度若由密文长度直接暴露,通常需把长度纳入允许泄漏,或在等价的不可区分游戏中限制挑战消息等长。
若密文总泄露明文奇偶位,即使其余
长度通常被视为允许泄露,因此挑战消息要求等长。语义安全不保证完整性、匿名性或隐藏访问模式;确定性加密在高熵消息的特定模型下可讨论别的安全概念,但不满足标准任意消息 IND-CPA。
推论与应用
语义安全是现代加密的核心保密目标,但“语义安全”必须连同攻击接口一起阅读。对私钥方案,仅证明 SEM-EAV 不能推出 SEM-CPA,更不能推出选择密文安全;公钥方案由于加密算法公开,基础语义安全通常已经按 CPA 接口理解。继续开放解密查询则进入更强的 CCA 模型。
不可区分性 是等价、易用的游戏表达,CPA 安全 是常见攻击接口。面对解密查询需提升到 CCA 安全;一次一密则以信息论强度实现比计算语义安全更强的完美保密。
参考资料
- Shafi Goldwasser and Silvio Micali, “Probabilistic Encryption,” Journal of Computer and System Sciences 28(2), 1984, pp. 270–299,Section 5.2 and Theorem 5.2。
- Jonathan Katz and Yehuda Lindell, Introduction to Modern Cryptography, 3rd ed., CRC Press, 2020,Ch. 3。