@ioexception1

Как переобразовать hashCode обратно в строку?

Как мы знаем, любое слово, число и т.д. можно переобразовать в hashCode. А можно ли наоборот, hashCode переобразовать в строку? Если да, то как именно?
  • Вопрос задан
  • 1403 просмотра
Решения вопроса 1
GavriKos
@GavriKos
Нет. Хеш-функции (по крайней мере те, что обычно используются) необратимы.
Есть конечно варианты, но назвать их "преобразованием" нельзя.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Можно преобразовать обратно в коллизионную строку (или строки, если их несколько).
Колизионная будет равна исходной только в случае, если данный хеш не имеет коллизий: это зависит от алгоритма и исходной (хешируемой) строки.
И корреляция последовательных этапов обратного хеширования - задача не простая.
Ответ написан
Комментировать
jamakasi666
@jamakasi666 Куратор тега Java
Просто IT'шник.
Технически можно обратить но практически, в зависимости от алгоритма, вероятнее всего это будет брутфорс. Почитайте о "Теореме о бесконечных обезьянах". Т.е. условно говоря хэш 1\2\3\4\5 значного числа вы найдете довольно быстро, а вот что то сложнее ...
На эту тему, точнее схожую, на хабре был забавный, а главное практический прикол с файловой системой которая все хранит в числе pi, а как известно абсолютно все известное и нет существует в числе pi.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы