Security
完善安全性
- 唯密文攻击无效
- 无条件安全
语义安全性
- 选择明文攻击(CPA)攻击无效
- 计算上安全



CPA安全性
选择明文攻击下的语义安全性简称 CPA安全性。保护机密性
- 密钥可以重复使用 → 攻击者可以获得同一密钥加密的多个密文
- 攻击者攻击能力
- 选择明文攻击(CPA)(密钥可以重复使用)
- 可以获得他选择的一个或多个明文对应的密文
- 攻击者攻击目的:破坏语义安全性
- 满足CPA安全性(即实现密钥的重复使用)满足条件
- 加密体制必须是概率的(对于相同的密钥和明文,密文可以不相同)
- 加密相同的明文,得到相同密文的概率是可忽略的
- CPA安全性不能保证主动攻击下的安全性。要防篡改,只能使用下面两种方法之一
- 只需要完整性:完整性技术(如MAC、数字签名)
- 同时需要机密性(CPA安全性)和完整性(CMA不可伪造):认证加密
CMA不可伪造

- 构造出一对新的即可,m或t不在集合内
密文完整性

- k不能变,构造新的m,能成功解密
CCA安全性
- 选择密文攻击 (chosen-ciphertext attack)
- 局限性:没有考虑旧消息重放
- 攻击者能力 CPA+CCA
- 可以任意选择明文,并获得相应的密文
- 可以选择任意密文(除了挑战密文),并获得相应的明文
- 攻击者攻击目的:破坏语义完整性


PRG的安全性
- G是不可预测的 ⇔ G是安全的
- PRG是安全的 ⇒ 相应的流密码是语义安全的
- 任何人考虑用数学的方法产生随机数肯定是不合理的
- 相同环境对于相同输入电子计算机只能产生相同的输出
- 随机序列满足两个为性质:①不能可靠重复产生②概率服从均匀分布
一次一密的安全性
将明文和随机序列 k 进行异或
- 满足完善安全性
- 满足语义安全性
|m0| = |m1|
- 密钥不能比明文短
- 密钥不能重复使用
流密码的安全性
- 不能满足完善安全性
- 满足语义安全性
- 重复使用密钥的流密码不是语义安全的
-
重复使用密钥的流密码在唯密文攻击下不是安全的
-
密钥比明文短
永远不要直接使用流密码的密钥。至少应该每帧使用一个伪随机密钥
DES的安全性
- 56 bits的有效密钥长度不足以抵抗穷举攻击。密钥攻击大小只有2^56
- NSA被指责在S-box上设计了陷门
PRF的安全性
- pseudo-random function,伪随机函数
- 所有定义在 X 和 Y 上的函数和伪随机函数是不可区分的


PRP的安全性
- 任何PRP也是PRF,其中X = Y,并且是高效可逆的
- 假设 K × X → X 是一个PRP, 当 |X|足够大时,安全的PRP才是安全的PRF
工作模式的安全性
- ECB模式不是语义安全的(确定性的对称加密体制不是CPA安全的)

- CBC模式密钥可以重复使用,是CPA安全的
- 差错传播:影响该分组和后面一个分组
- 如果IV可以预测,则不是CPA安全的
- CTR是CPA安全的
Hash函数的安全性
- 原像稳固(单向性)
给定散列值,找到一个新消息,计算散列值和给定的相同
- 第二原像稳固的(弱抗碰撞性)
给定消息,找到另一个消息,两个消息的散列值相同
-
碰撞稳固的(强抗碰撞性)
找到一对消息的散列值相同
CBC-MAC的安全性
- 只对定长消息是安全的。如果允许处理变长消息,就不安全
- 解决方案是ECBC-MAC、ISO标准的CBC-MAC
AE(认证加密)的安全性
- 必须保证
- CPA安全性
- 密文完整性(攻击者不能为造出可以正确解密的新密文)
数字签名体制的安全性
- 攻击者攻击能力
- 选择消息攻击(CMA)。选择消息可获得相应的签名。σi ← Sign (sk, mi)
- 攻击者攻击目的
- 存在性伪造(existential forgery)。伪造一对新的消息/签名
(m, σ),m 不属于 { m1, … , mq }。只能是新的消息,签名不能是新的
- 存在性伪造(existential forgery)。伪造一对新的消息/签名
- 攻击者不能为一个新消息产生有效的签名


基于Diffie-Hellman问题安全性

-
已知:p,g, YA, YB
-
求g^xy。
如果g^xy难以计算,则Diffie-Hellman密钥交换协议可以抵抗窃听
陷门函数的安全性



浙公网安备 33010602011771号