Ускоряем расшифровку хешей — реально ли получить прирост?
Кто пробовал разгонять процессы работы с хешами, знает, что просто тупо больше железа не всегда спасает. У меня лично пара наблюдений, которые помогли сэкономить время и нервы. Во-первых, если хеши простые — MD5, SHA1 — базовые rainbow-тейблы и словари реально сокращают время. Но с современными алгоритмами типа bcrypt или Argon2 никакие таблицы по сути бессмысленны, и тут уже надо глубже копать.
Во-вторых, оптимизация кода — штука важная. Например, переход с Python на C или использование специализированных библиотек снижает лаги с десятков секунд до миллисекунд. Неплохой ход — распараллеливание задач по ядрам, но тут уже зависит от железа и ПО. Иногда GPU дает мощный прирост, особенно на алгоритмах с параллелизмом.
Третье — выбор правильных инструментов. Многие цепляются за gpuhashcat или hashcat, но не все знают, что у них есть куча настройок, которые реально меняют скорость. Например, можно настроить нагрузку, порядок словарей, маски и так далее, что свойственно для конкретного типа хеша.
Ещё момент — учтите, что если хеш «с солью», без знания этой соли никакие ускорители не помогут — тут просто бессмысленно гоняться за результатом.
Короче, советую посмотреть на узкие места своей цепочки — от формата хеша, через ПО до железа, а не просто валить все на мощность. Кто еще бьется с этим вопросом? Чем оптимизируете?