密码学--常见的攻击方式

  • 一、唯密文攻击(Ciphtext Only Attack,COA)
    • 定义:唯密文攻击(COA)是指仅仅知道密文的情况下进行分析,求解明文或密钥的密码分析方法。
    • 假定密码分析者拥有密码算法及明文统计特性,并截获了一个或者多个用同一密钥加密的密文,通过对这些密文进行分析求出明文或密钥。COA已知条件最少,经不起唯密文攻击的密码是被认为不安全的。
    • 简单理解:只知道密文,推出明文或密钥,一般用穷举攻击。

  • 二、已知明文攻击(Known Plaintext Attack,KPA)(也可称为KPA安全)
    • 定义:已知明文攻击(KPA)是指攻击者掌握了部分的明文M和对应的密文C,从而求解或破解出对应的密钥和加密算法。
    • 简单理解:知道部分的明文和密文对,推出密钥和加密算法。

  • 三、选择明文攻击(Chosen Plaintext Attack,CPA)(也可称为CPA安全)
    • 定义:选择明文攻击(CPA)是指攻击者除了知道加密算法外,还可以选定明文消息,从而得到加密后的密文,即知道选择的明文和加密的密文,但是不能直接攻破密钥。
    • 简单理解:知道明文就知道密文,目标为推出密钥。

  • 四、选择密文攻击(Chosen Ciphertext Attack,CCA)(也可称为CCA安全)
    • 定义:选择密文攻击(CCA)是指攻击者可以选择密文进行解密,除了知道已知明文攻击的基础上,攻击者可以任意制造或选择一些密文,并得到解密的明文,是一种比已知明文攻击更强的攻击方式。
    • 若一个密码系统能抵抗选择密文攻击,那必然能够抵抗COA和KPA攻击。密码分析者的目标是推出密钥,CCA主要应用于分析公钥密钥体制。
    • 简单理解:知道密文就知道明文,目标为推出密钥。

  • 五、比较分析
    • 当密码系统只有承受住选择明文攻击(CPA)和选择密文攻击(CCA),才能算是安全的。
    • 其中,四种攻击方式对应的攻击强度为:
      • 攻击难度:选择密文攻击(CCA)>选择明文攻击(CPA)>已知明文攻击(KPA)>唯密文攻击(COA)
      • 难易程度:选择密文攻击(CCA)<选择明文攻击(CPA)<已知明文攻击(KPA)<唯密文攻击(COA)

猜你喜欢

转载自blog.csdn.net/2301_81475812/article/details/139321023