您可以对HMAC进行哪些攻击以获取密钥?

问题描述

我正在进行CTF挑战,您必须尝试找出用于HMAC的密钥,并给出两个示例字符串及其哈希值(512位),并提示使用40之间的数字和50.您可以对HMAC进行什么样的攻击,并且有可能恢复密钥?

解决方法

如果HMAC使用的哈希函数在密码上是安全的,那么解决此问题的唯一方法是蛮力地使用密钥。散列是一种单向函数,可以轻松应用散列,但很难做到相反。由于搜索空间是不确定的,因此在一般情况下这是不可行的,但是您似乎对该键有一个提示。

也许应该将其视为文字提示,并且编写一个以"40"键开头的循环,并迭代到"50",然后检查示例字符串是否与以下任何一个匹配哈希。如果找到匹配项,则检查其他配对是否也导致使用相同密钥的匹配项。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...