幸运十三这个名字的含义是什么?

What is the meaning of the name Lucky Thirteen?

来自文章 Lucky thirteen: Breaking the TLS and DTLS record protocols :

The details of which specific attacks are possible depends on the exact size of MAC tags output by the MAC algorithm negotiated by the Handshake Protocol, and also on the fact that the exactly 13 bytes of header data are incorporated in the MAC calculation (hence our title).

此外,我在 The Royal Holloway, University of London 的网站上阅读:

The fact that the TLS MAC calculation includes 13 bytes of header information (5 bytes of TLS header plus 8 bytes of TLS sequence number) is, in part, what makes the attacks possible.

据我了解,攻击是基于填充机制、使用 CBC 操作模式这一事实以及 MAC 计算(和压缩函数)时间的差异。我无法弄清楚 MAC header 的大小如何影响。

谁能解释一下幸运十三这个名字的含义是什么?

谢谢。

META:这不是一个编程问题,更适合 security.SX 我们已经对 BEAST 和 POODLE 等相关攻击提出了问题。我 我记得在 Lucky-Thirteen 上看到过一个,但在搜索时找不到,所以我建议迁移这个。

他们称其为 'lucky' 'what passes for humour amongst cryptographers',但伪标头为 13 字节的重要性已在您引用的段落之前的段落中概述:

for certain carefully chosen message lengths and when the HMAC-SHA1 MAC algorithm is used, then TLS messages containing at least two bytes of correct padding will be processed slightly faster than TLS messages containing one byte of correct padding or padding that is incorrectly formatted.

并在论文的第 4.2 节中详细说明:当使用 CBC+HMAC-SHA1 密码套件时,如果攻击者系统地篡改 64 字节(不包括 IV)密文:

  • 当(篡改的)解密以有效的 2 字节或更大的填充结束时,HMAC 对由 64-2-20+13=55 字节或更少(和 >2 填充)组成的数据执行-> <55 HMAC 很快变得不太可能);

  • 否则HMAC在56或57字节上执行。

由于SHA-1(见2.1)完成的MD-padding,后者比前者需要多一个压缩函数,现在是他们统计增强和检测的额外压缩函数的时候了。 这给出了一个填充 oracle,可以从中恢复明文。

这里13的'luckiness'就是13加9只比20多一点。 正如他们在 4.3 中指出的那样,如果 SSL/TLS 的设计不同,12 会更幸运。