Encryption 查找Aes256键

Encryption 查找Aes256键,encryption,aes,reverse-engineering,Encryption,Aes,Reverse Engineering,我有一个关于aes密钥的问题 我有一个二进制文件,其中包含一个aes256键(32字节),偏移量未知。 是否有可能在文件中找到此密钥?是否有可能知道接下来的32个字节是否是有效的aes密钥 提前谢谢 编辑: 谢谢你的回答, 密钥作为普通字节存储在文件中。 我终于想出了一个办法。 我基本上过滤掉了所有的字符串,这实际上使它工作起来。 再次感谢否-除非您有办法根据已知的明文/密文对验证密钥-否则AES密钥无法与随机噪声区分开来。任何一组16、24或32字节都是有效的AES密钥。否-除非您有办法根据已

我有一个关于aes密钥的问题

我有一个二进制文件,其中包含一个aes256键(32字节),偏移量未知。 是否有可能在文件中找到此密钥?是否有可能知道接下来的32个字节是否是有效的aes密钥

提前谢谢

编辑: 谢谢你的回答, 密钥作为普通字节存储在文件中。 我终于想出了一个办法。 我基本上过滤掉了所有的字符串,这实际上使它工作起来。
再次感谢

否-除非您有办法根据已知的明文/密文对验证密钥-否则AES密钥无法与随机噪声区分开来。任何一组16、24或32字节都是有效的AES密钥。

否-除非您有办法根据已知的明文/密文对验证密钥-否则AES密钥无法与随机噪声区分开来。16、24或32字节的任何一组都是有效的AES密钥。

好的,是和否。AES-256密钥应该只包含32个字节,与随机密钥没有区别。大多数文件不只是由随机字节组成,因此可能无法找到最有可能是随机的序列,而这可能就是您要查找的密钥。但是,很可能文件中还有其他随机序列,或者看起来像随机但根本不是随机的序列(例如数字Pi的二进制表示)

也可能是你运气不好,AES密钥看起来不那么随机。或者密钥以十六进制(文本)而不是二进制字节值存储。然后是查找可能是问题所在的确切偏移量的问题(值为0x20的初始字节指示AES密钥的大小、空格字符或部分密钥值)


大多数文件都有特定的格式,所以您应该首先了解一下。仅仅寻找随机序列可能会给你带来误报(可能性较大)或误报(可能性较小)。如果您期望64字节的随机性(两个键),那么我建议您首先搜索,因为这会大大降低误报的几率。

好的,是和否。AES-256键应该只包含32个字节,与随机键没有区别。大多数文件不只是由随机字节组成,因此可能无法找到最有可能是随机的序列,而这可能就是您要查找的密钥。但是,很可能文件中还有其他随机序列,或者看起来像随机但根本不是随机的序列(例如数字Pi的二进制表示)

也可能是你运气不好,AES密钥看起来不那么随机。或者密钥以十六进制(文本)而不是二进制字节值存储。然后是查找可能是问题所在的确切偏移量的问题(值为0x20的初始字节指示AES密钥的大小、空格字符或部分密钥值)


大多数文件都有特定的格式,所以您应该首先了解一下。仅仅寻找随机序列可能会给你带来误报(可能性较大)或误报(可能性较小)。如果您期望64字节的随机性(两个密钥),那么我建议您首先搜索它,因为它会大大降低误报的几率。

唯一知道的方法是尝试将其作为解密密钥。为什么这个二进制文件的类型是这样的?是的,对于一个相对简单的文件,查看文件格式并删除所有非密钥的内容也可以。类似于通过切掉所有非大象的东西来创建大象雕像:最简单的方法是尝试将其作为解密密钥。为什么是这种二进制文件的类型?是的,查看文件格式并删除所有非密钥的东西也可以,对于相对简单的文件来说。类似于通过切掉所有不是大象的东西来创建大象雕像:嗯,文件的其余部分可能与随机噪音区分开来…@MaartenBodewes是的,这实际上是一个很好的观点!我想我想说的是AES密钥本身没有可区分的特征或序列。嗯,我想你明白我所说的,所以我不会讨论你区分事物的事实。随机性是可能的区别特征,很明显,还有钥匙的大小。除此之外,没有(或应该没有)可区分的功能,除非它们是显式创建的并且特定于上述文件。@MaartenBodewes是的,我明白你的意思-我可能对OP的要求做了一些假设。我想他们是在问AES密钥是否有一种结构或格式——类似于bcrypt散列如何被表示为字符串,比如
$2y$12$cSIoJ5/cisqencn3wkv8xedbu4qkblxrcey.le2soIe4K5UTnAhm
,并且易于识别。但我也理解你的观点。好吧,文件的其余部分可能与随机噪声不同…@MaartenBodewes是的,这实际上是一个很好的观点!我想我想说的是AES密钥本身没有可区分的特征或序列。嗯,我想你明白我所说的,所以我不会讨论你区分事物的事实。随机性是可能的区别特征,很明显,还有钥匙的大小。除此之外,没有(或应该没有)可区分的功能,除非它们是显式创建的并且特定于上述文件。@MaartenBodewes是的,我明白你的意思-我可能对OP的要求做了一些假设。我想他们是在问AES密钥是否有一种结构或格式——类似于bcrypt散列如何被表示为字符串,比如
$2y$12$cSIoJ5/cisqencn3wkv8xedbu4qkblxrcey.le2soIe4K5UTnAhm
,并且易于识别。但我也理解你的观点。