设计一个密码算法的目的是其保密强度可以在Kerckhoffs假设下至少达到实际安全性的要求。在此假设下,根据密码分析者破译时已具备的条件,把对密码系统的常见攻击分为以下四种主要类型。
(1)唯密文(Ciphertext Only)攻击
在唯密文攻击中,密码分析者仅有一些截获的密文。这种攻击的手段一般是穷举搜索法,即对截获的密文依次用所有可能的密钥试译,直到得到有意义的明文。由于密码分析者所能利用的数据资源仅为密文,这是对密码分析者最不利的情况。
(2)已知明文(Known Plaintext)攻击
在已知明文攻击中,分析者除拥有一定数量的密文外,还有一些已知的“明文密文对”来破译密码。唯密文攻击时,敌手知道的信息量最少,因此最易抵抗。然而,很多情况下,敌手可能有更多的信息,也许能截获一个或多个明文及其对应的密文,也许知道消息中将出现的某种明文格式。
例如,Word格式文件开始位置的格式总是相同的,电子资金传送消息总有一个标准的报头或标题。这时的攻击称为已知明文攻击,敌手也许能够从已知的明文被变换成密文的方式得到密钥。(www.xing528.com)
(3)选择明文(Chosen Plaintext)攻击
密码分析者不仅可得到一些“明文密文对”,还可以选择对攻击有利的被加密的明文,并获得相应的密文。如果攻击者能在加密系统中插入自己选择的明文消息,则通过该明文消息对应的密文,有可能确定出密钥的结构,这种攻击称为选择明文攻击。
(4)选择密文(Chosen Ciphertext)攻击
分析者可以选择一些它认为对攻击有利的特定的密文,并获得相应的明文。上述攻击的目的是导出用来加密消息的密钥或新的密文所对应的明文信息。
这四种攻击的强度是依次递增的。如果一个密码系统能够抵抗选择密文攻击,那么它就能抵抗其余三种攻击。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。