组合十六进制字符串

问题描述 投票:0回答:1

我正在研究一个C程序,在该程序中我已获得91位AES密钥,并且需要遍历其他可能的37位密钥以获得完整密钥。在十六进制中,密钥看起来像这样,其中F是密钥的未知部分。

FF FF FF FF FC 00 00 00 00 00 00 00 00 00 00 00 03

[遍历未知部分时,显然,我需要将未知部分组合到已知部分。如果我有9个字节的奇数需要查找,那么如何将最后一个字节组合到“ C”以确保获得正确的长度密钥?

c hex
1个回答
0
投票

您可以通过多种方法来做到这一点,但是我会这样:

  1. 初始化四个128位值minmaxincbase。将min设置为零。将max设置为FF FF FF FF F0 00 00 00 00 00 00 00 00 00 00 00 0000。将base设置为给定键,在所有未知点中都为零。将inc设置为00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00。

  2. minmax的循环,每次加inc。对于每个条目,将当前循环索引与base或。这就是您测试的值。

© www.soinside.com 2019 - 2024. All rights reserved.