简单私钥加密构造的验证及安全性分析
私钥分组加密
![]()
![]()
上图的证明中,r(j)两两不同的概率计算是关键,下面给出详细过程
![]()
的方法是将明文分成多个大小为n的块,对每个块调用上述加密步骤,那么就得到形如下的密文块序列
![]()
密文块序列从Proposition 5.3.10的证明中可知是计算不可分辨的,满足「多组消息安全性」。但对于解密
需要存储每一块的随机数,因此比较占空间,所以衍生出下面更高效的方案Construction 5.3.12
![]()
![]()
抗主动攻击安全性
上图的证明中,r(j)两两不同的概率计算是关键,下面给出详细过程
另外两个分布统计的不同意味着计算可分辨(反之则计算不可分辨),亦即r(j)至少两个相同的概率。
Construction 5.3.9一次只能加密与密钥等长的明文,如果要加密更长的明文,怎么办?一个简单直接的方法是将明文分成多个大小为n的块,对每个块调用上述加密步骤,那么就得到形如下的密文块序列
密文块序列从Proposition 5.3.10的证明中可知是计算不可分辨的,满足「多组消息安全性」。但对于解密
需要存储每一块的随机数,因此比较占空间,所以衍生出下面更高效的方案Construction 5.3.12
私密通用加密
![]()
语义安全性分析
语义安全性分析
抗主动攻击安全性
以上两种构造因满足「多组消息安全性」,故满足CPA与CCA1,具体的证明可参考Oded Goldreich《密码学基础》的Proposition 5.4.12、Proposition 5.4.18。
但不满足CCA2,因为攻击者拿到挑战密文后,可以修改它再发出解密质疑,得到回答的明文从而异或求解fk(ri),最后与挑战密文异或求解挑战明文
对于通用加密构造的CCA2攻击细节如下
![]()
但不满足CCA2,因为攻击者拿到挑战密文后,可以修改它再发出解密质疑,得到回答的明文从而异或求解fk(ri),最后与挑战密文异或求解挑战明文
对于通用加密构造的CCA2攻击细节如下

浙公网安备 33010602011771号