【发布时间】: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,也许对你有帮助