Но, повторюсь, СНАЧАЛА желательно проверить строки "\x00\x00\x00\x00" и "\xFF\xFF\xFF\xFF", затем эти же строки, но длиной от 1 до, скажем, 256 символов (бОльшая длина менее вероятна и не факт, что корректно пройдёт через HMAC), и только потом приступать к полному перебору (что, скорее всего, не понадобится).
Попытаюсь перебрать все размещения байтов (от 0 до 255), если хватит терпения и времени Проблемка в том, что это займёт действительно много времени на одном ядре (256^1+256^2+256^3+256^4=4311810304 комбинаций), и, как говорил @binarymaster, разумно было бы модифицировать Hashcat для этих целей (насколько это сложно, не знаю), но пока что у меня нет совместимого с ним железа.