中途相遇攻击(英语:Meet-in-the-middle attack)是密码学上以空间换取时间的一种攻击。
历史这个攻击方式在1977年就由惠特菲尔德·迪菲(Diffie)与马丁·赫尔曼(Hellman)提出来。
定义中途相遇攻击(meet-in-the-middle attack)可成倍减少解密已被多个密钥加密的文本所进行的蛮力排列操作。这种攻击可以使入侵者更容易获取数据。
原理假设ENC是加密函式,DEC是解密函式,也就是,而为两次加密用的金钥,则可以推导出:1
当攻击者已知明文P与密文C时,攻击者可以穷举所有k1的组合,将产生出来的第一层密文,用大量空间储存下来。再穷举所有k2的组合,将的值与前面储存下来的结果比对,进而得出正确的。
这使得攻击者计算的量从各自的可能组合数相乘,变成相加。
这也是为什么三重资料加密算法(3DES)使用了三把56 bits的金钥(168 bits),却只有两把金钥的强度(112 bits)。
目的中途相遇攻击的目标是块密码加密功能。入侵者使用蛮力技术来解块密码的纯文本和密文。然后,根据不同的密钥来加密纯文本以获取中间密文(只由一个密钥加密的文本)。同时,根据不同的密钥来解密密文,寻求与经加密纯文本所取得的密文相同的中间密文块。如果与中间密文相匹配,极有可能的是,所使用的加密纯文本的密钥和用于解密密文的密钥是加密密码所使用的两个密钥。
虽然中途相遇攻击能够使攻击者的工作更容易,但是如果没有纯文本和相应的密文,它就不能进行。这意味着攻击者必须能够存储用蛮力技术加密纯文本和解密密文所得的所有可能的中间密值。
属性中途相遇是一种被动攻击,这意味着尽管入侵者可以访问信息,但在大多数情况下,他无法改变信息或发送自己的信息。对一般的黑客来说,这种攻击是不实际的,所以它最可能用于企业间谍活动或其他可容纳执行攻击所需的存储的场合。
中途相遇攻击(meet-in-the-middle attack)与中间人攻击(man in the middle attack)不同。
本词条内容贡献者为:
王慧维 - 副研究员 - 西南大学