【问题标题】:How MYSQL check MD5 passwordMYSQL如何查看MD5密码
【发布时间】:2014-01-08 06:08:12
【问题描述】:

我已经与 java 建立了 MySQL 连接。我还用 MD5 对我的密码进行了哈希处理。

你通常如何将加密的MD5密码发送到mysql?

我像下面那样做,但错误,我把已经散列的密码放到 SQL 查询中。 MySQL 无法读取。

String Password = "890621";

//hash value after "890621" being hash MD5. 
String newHashPassword = "a8ae0ba1adf92c69fd33b1c6d4c2376f";  

if (stmt.execute("SELECT * FROM user_info WHERE user_name = 'James' AND password=" 
    + newHashPassword)) {
    rs = stmt.getResultSet();      
}

谁能告诉我如何将 md5 密码发送到 MySQL 的示例代码?

【问题讨论】:

  • 你能告诉我们你的数据库中有什么吗? select * from table;
  • 就像你对任何其他字符串一样,这当然假设数据库中的值也是一个 MD5 哈希。但是你真的应该使用 PreapredStatement...
  • 您的问题是什么,不清楚。您发送值的方式是正确的。您在前端部分执行 MD5 加密,然后将值作为字符串的一部分传递给 MySQL 查询。
  • Rugal 抱歉,我无法显示数据库,但里面的内容不可能是错误。我确定是因为我实际上无法将 MD5 密码直接发送到 mysql
  • Read this,也许对你有帮助

标签: java mysql md5


【解决方案1】:

谢谢你帮助我。

其实,就像疯狂的MadProgrammer所说的,我只需要将MD5密码作为字符串放入mysql查询中。

String Password = "890621";

//hash value after "890621" being hash MD5. 

String newHashPassword = "a8ae0ba1adf92c69fd33b1c6d4c2376f";

 if (stmt.execute("SELECT * FROM user_info WHERE user_name = 'James' AND password= '" + newHashPassword+"'");

hexString.toString()

其实我只是有语法错误。谢谢大家。

【讨论】:

    猜你喜欢
    • 2011-08-09
    • 1970-01-01
    • 1970-01-01
    • 2011-10-10
    • 1970-01-01
    • 2012-04-19
    • 2011-07-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多