2014-11-25 61 views
-5
byte[] pass = Encoding.Unicode.GetBytes(textBox1.Text); 
MD5 md5 = new MD5CryptoServiceProvider(); 
String password = Encoding.UTF8.GetString(md5.ComputeHash(pass)); 

不要修改代码,代码只会增加
解密变量:密码
尝试了很多的方法无法解密UTF8字符串的MD5
密码值是乱码,如何恢复密码:MD5?
textBox.text = wooyun
md5.ComputeHash(合格)= F04BC0C32584F9D42817DC6EF8769E9E
Encoding.UTF8.GetString(md5.ComputeHash(合格))= K%(NV
如何解密?

+0

您可能想扩大您的问题多一点。它看起来并不像你投入很多工作。如果你不愿意解释和澄清你的问题,你怎么能指望别人把工作回答你的问题? – 2014-11-25 03:34:21

+0

_decrypt utf8string与md5_是什么意思? UTF8不是加密系统,MD5是散列而不是加密,并且不能被“解密”。 – 2014-11-25 03:35:10

+0

对不起,这个问题描述更清楚 – 2014-11-25 03:57:40

回答

0

请咨询安全专家的服务,而不是试图去做自己想做的任何事情。仅仅通过这三行示例代码,并且我自己也不是安全专家,我已经可以知道:

  • 您正在混淆编码的想法,加密哈希
  • 您试图从存储的哈希中反推查找密码,推测来自某个现有数据库。除了最有可能是恶意的道德,这可能是在某些司法管辖区
  • 哈希密码很可能不咸不合法的,因此存储的密码很容易受到强力攻击用MD5产生
  • 哈希值,已知是一个弱密码散列算法

这是学习目的的练习吗?你能澄清这个问题吗?