Subit Timalsina Ответов: 3

Изменение хэша обратно в текст


Я настроил свой пароль как хэш и сохранил его в базе данных как varchar
Но я хочу получить и преобразовать его обратно в текст, как это было
Как мне это сделать

Вот как я превратил его в хэш:

Что я уже пробовал:

protected string MD5Hash(string input)
{
    StringBuilder stringBuilder = new StringBuilder();
    MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
    byte[] bytes = md5.ComputeHash(new UTF8Encoding().GetBytes(input));
    for (int i = 0; i < bytes.Length; i++)
    {
        stringBuilder.Append(bytes[i].ToString("x2"));
    }
    return stringBuilder.ToString();

}

3 Ответов

Рейтинг:
12

Jochen Arndt

Вы не можете получить исходные данные из хэша. Это сделано специально. Если вам нужно расшифровать, вы должны использовать метод шифрования вместо хэша.


Рейтинг:
1

Roland M Smith

Хэш по определению не может быть преобразован обратно в оригинал.

Что вы можете сделать, так это хэшировать новую строку и сравнивать два хэша. Если они совпадают, то новая строка-это то, чем была старая до того, как она была хэширована.


Рейтинг:
0

Patrice T

Цитата:
Я настроил свой пароль как хэш и сохранил его в базе данных как varchar
Но я хочу получить и преобразовать его обратно в текст, как это было
Как мне это сделать

Короткий ответ: вы не можете !
Хэш MD5 - это односторонний процесс, как и любой другой хэш. вы не можете повернуть его вспять, это по замыслу.
В отличие от шифрования, которое может быть расшифровано.


Subit Timalsina

Итак, каков наилучший способ безопасного хранения пароля, и это тоже обратимо?

Patrice T

Обратимые подразумевают шифрование !