2016-04-12 8 views
0

Эй, ребята, я хотел бы знать, чтобы создать функцию дешифрования для этой функции крипт:ли способ дешифрования MD5CryptoServiceProvider

public static string CreateHash(string unHashed) 
    { 
     System.Security.Cryptography.MD5CryptoServiceProvider x = new System.Security.Cryptography.MD5CryptoServiceProvider(); 
     byte[] data = System.Text.Encoding.ASCII.GetBytes(unHashed); 
     data = x.ComputeHash(data); 
     return System.Text.Encoding.ASCII.GetString(data); 
    } 

есть ли способ для расшифровки функции?

хэши я получил, как: ?????? 7hYkr 4 ?? ш

ответ

3

MD5 является хэш-функция.

Итак, это единственный способ: нет практического способа его расшифровки.

Прочтите введение wikipedia article about cryptographic hash functions, чтобы понять, как они себя ведут.

Однако, если у вас есть пароли, зашифрованные этой функцией, и вы хотите проверить, соответствует ли пароль, предоставленный пользователем, вы можете зашифровать предоставленную пользователем строку и сравнить результат с зашифрованным блобом, который находится в вашей базе данных (который является наиболее часто используемым для этой функции).

+3

Кроме того, [не используйте MD5 для паролей] (https://paragonie.com/blog/2016/02/how-safely-store-password-in-2016). –