我想为我的网站制作一个登录脚本,使用一些特殊的 SHA256 加密和一个与之链接的 mysql 数据库。(当然还有一种形式:P)
我使用 Minecraft 插件“Authme”进行注册。它在 SHA256 中对密码进行哈希处理并将其存储到 mysql 数据库中。但代码$SHA$ce9b7692bd2b8f79$644c2a5710bb93f82471d08234435d7d02b1bbc09aff2cf23370f187aab37716
与我从某些网站制作的 SHA256 哈希值不同。4aae7aba013ffed685a1354a0ebb576b8f1f58997b96cf3ef096282cfe737bff
Authme 的开发人员给了我一个“简单”的代码来解密密码,但我不知道如何将它放入我的脚本中。
// @return true if password and nickname match
function check_password_db($nickname,$password) {
// Here u have to include your DB connection and select!
$a=mysql_query("SELECT password FROM authme where username = '$nickname'");
if(mysql_num_rows($a) == 1 ) {
$password_info=mysql_fetch_array($a);
$sha_info = explode("$",$password_info[0]);
} else
return false;
if( $sha_info[1] === "SHA" ) {
$salt = $sha_info[2];
$sha256_password = hash('sha256', $password);
$sha256_password .= $sha_info[2];;
if( strcasecmp(trim($sha_info[3]),hash('sha256', $sha256_password) ) == 0 )
return true;
else return false;
}
}
所以底线是:我想知道如何通过查看 mySQL 中的数据来检查用户是否输入了正确的密码,从而制作一个让用户登录到我的网站的表单。如果您需要更多信息,请回复,我会给您。我的目标是制作一个适用于会话的登录脚本。
我拥有的表是 ID、am_(用户名)、密码和 ip。
你能给我一些类似代码的东西吗?(用用户名和密码制作一个表格,看看它是否有效)
对不起,我的错字,我来自荷兰..