Skip to content

Week3 公钥密码、流密码的破解分析

定义

公钥密码是一个三元组(G,E,D)

IND-CPA

125740

IND-CCA

125740

简单说就是无法区分出哪个是 m0m_0 还是 m1m_1 加密得出的密文。

陷门函数

det:确定性 alg:算法

安全的陷门函数:单向,不可在没有sk的情况下破解。

trap-door指sk

125740

RSA破解:中间相遇攻击

常规的RSA不是语义安全的

125740

解释:

  1. 假设有有 64bits 消息 kk 并获得密文 c=kec = k^e
  2. 如果 k=k1k2k = k_1k_2,则有 ck1e=k2e\frac{c}{k_1^e} = k_2^e
  3. 通过预先穷举表:c/1e,c/2e,c/3e,,c/234ec/1^e,c/2^e,c/3^e,\cdots,c/2^{34e}
  4. 再爆破 k2=0,,234k_2 = 0, \cdots, 2^{34} 并查表,即可得到 k1,k2k_1,k_2,从而得到 kk

解决方案:#PKCS1v1.5填充

125740

125740

解决方案:OAEP

125740

802.11 WEP

IV过短,需要通过增加IV长度、重置IV、一次一密解决:

125740

LFSR:Guess-and-determine attack

125740
125740

由于显然LFSR有较强线性性,故可以通过猜测部分寄存器的值来推断出其他寄存器的值,从而破解LFSR。