Есть ли способ конвертировать sha256 в хеширование md5 - PullRequest
0 голосов
/ 16 мая 2019

Я пытаюсь импортировать учетные данные пользователей из одной схемы базы данных в другую, при этом пользователям не нужно создавать новый пароль, поэтому в первой таблице пользователей (которую мне нужно импортировать на новый сайт) используется соль sha256 + (я думаю, ) и мой новый сайт использует соль md5 + (я думаю), у меня есть доступ ко всем файлам и прочим материалам, чтобы я мог найти соль, которая используется, если я могу каким-то образом выполнить обратный инжиниринг sha256, чтобы сделать его md5?

Есть ли способ сделать это? если так, как бы я подошел к этому? Пример пароля будет:

старый сайт: e3e922af8a36de975983b075b3bf5336bbb26c8008aa5d9b39aef8d85cb7eb32

новый сайт: $ S $ Dbj.yBTjHV97QNLHwuoykWxzpNL9bxxFl4b8uoP1u1rJzCyDZb.e

Буду признателен за любой вклад, спасибо!

Обновление: новый сайт использует base64encode + соль, что я знаю, просто чтобы быть ясным, я не пытаюсь фактически увидеть их пароль в виде обычного текста. Могу ли я преобразовать sha256 -> base64encode с помощью некоторых команд mysql или что-то, если я знаю соль?

1 Ответ

0 голосов
/ 16 мая 2019

Если вы не готовы взломать их пароль, нет, вы не можете преобразовать хеш SHA2-256 в MD5. Вы должны знать содержимое, которое сгенерировало хеш в первую очередь.

При переходе с одного типа хеширования на другой лучше всего сначала нормализовать все хэши ваших паролей в согласованную форму, и наиболее широко поддерживается модульный формат шифрования *1004*.

Если вы можете втиснуть свои старые хэши в эту форму, вы сможете использовать их с password_verify. Вы также можете обновить пароли пользователей при входе в систему, переписав их с помощью password_hash, который по умолчанию использует Bcrypt.

Со временем вы можете растоптать старые пароли SHA2-256 и MD5 и ограничить вашу уязвимость.

...