Почему хеши не поддаются расшифровке — кто сталкивался?
Пытаюсь разобраться с хешами и криптографией, и заметил, что многие просто не работают так, как ожидаешь. Хеш — это ведь не шифр, и обратно получить исходник напрямую нельзя. Кто-то пытается «расшифровать» — но это чаще всего тупик. Частые причины провалов в расшифровке хешей обычно связаны с тем, что либо используется неподходящий алгоритм (MD5, SHA-1, SHA-256 — они все разные), либо исходные данные слишком сложные и не попадают в словари, которые применяет софт.
Вывод — для хеша лучше пытаться брутфорсить или подбирать с умом (например, если знаешь формат пароля), или использовать радужные таблицы, но у них свои ограничения и огромный размер. Еще смотрите, как хеши формируются — соль, например, сделает попытки сразу бессмысленными, если вы о ней не знаете.
Лично я всегда смотрю, что это за алгоритм и есть ли соль, если нет — можно покопаться ребрутфорсом или словарем, если есть — без знания соли лучше не тратить время. Иногда проще попробовать найти утечку с тем же паролем, чем пытаться ломать стойкий хеш.
Кто как борется с этой проблемой? Есть ли нормальный опыт, как логично подходить к хешам, чтоб не утонуть в бесполезных попытках?