为什么这份白皮书说 MQTT 用户名/密码“没有提供足够的熵”?

物联网 安全 MQTT
2021-06-21 04:57:41

这份比较 MQTT 和 AMQP 的白皮书说,MQTT 的用户名/密码限制使其安全性远低于 AMQP:

MQTT 需要短用户名和短密码,这在现代世界中无法提供足够的熵。

MQTT 规范的第 3.1.3.5 节说密码最多可以是 65535 字节的二进制数据。一个快速的计算显示,这将产生一个可笑大量:

Wolfram Alpha 计算 = 1 x 10^157824

将其放大,如果您可以每秒尝试100 万亿个密码,则大约需要 1 x 10 14 百万年才能耗尽 1 到 65535 字节之间的任何密码的搜索空间。

因此,我只能假设作者是不正确的,或者他们在谈论之前发生但现在已取消的限制。

为什么那个白皮书的作者会说 MQTT 的密码熵不足,是否仍然如此,或者我的计算是否正确?

1个回答

该规范的 3.1 版建议了一些不合理的低用户名/密码长度:

建议用户名保持在 12 个字符或更少,但这不是必需的。

建议密码保持在 12 个字符或更少,但这不是必需的。

我想任何明智的经纪人都没有实施这个建议。