我有一个网站,一旦注册,您就可以登录。要登录,php 代码通过执行以下操作检查密码是否正确:
$subuser = stripslashes($subuser);
$result = $database->confirmUserPass($subuser, md5($subpass));
$subuser 是用户在登录时输入的用户名。$subpass 是用户在登录时输入的密码。
现在 php 代码加密给定的密码($subpass)并检查数据库以查看加密是否匹配。
现在这里的问题是:我目前正在制作一个内置网站登录表单的java应用程序。我希望java代码做与php代码相同的事情。我已经阅读了多个地方,但我仍然不明白该怎么做。这是到目前为止的java代码:
String password = "pass";
try {
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(password.getBytes(), 0, password.length());
System.out.println(new BigInteger(1, md.digest()).toString(32));
} catch(NoSuchAlgorithmException e) {
e.printStackTrace();
}
当我在java中运行这段代码时,它意味着给我与PHP中相同的加密字符串,但问题是它没有...... :(有谁知道我做错了什么/错过了什么? 谢谢
如果需要更多信息,请询问我,我希望能编辑这篇文章并包含更多详细信息。