不同输入上的哈希值相同

问题描述 投票:0回答:1

我有这个HTML格式:

<form action="seite2.php" method="post">
    Benutzername:<br />
    <input type="Text" name="username"><br /><br />

    Passwort:<br />
    <input type="Password" name="passwort" />

    <input type="Submit" value="Absenden" />
</form>

在seite2.php上我先得到这个代码,检查哈希值:

$username = $_POST["username"];
$passwort = $_POST["passwort"];

$pass = sha1($passwort);

echo $pass;

然后,我想检查用户名或密码是否正确并比较哈希值。让我们说用户名是:mue。密码是:通过。我得到这个哈希:da39a3ee5e6b4b0d3255bfef95601890afd80709。

if($username == "mue" AND $pass=="da39a3ee5e6b4b0d3255bfef95601890afd80709")
{
    echo '<p>';
    echo "Herzlich Willkommen";
    echo '</p>';
}
else
{
    echo '<p>';
    echo "Login failed";
    echo '</p>';

但在我的浏览器中,我得到以下响应:da39a3ee5e6b4b0d3255bfef95601890afd80709登录失败。

无论我使用哪个用户或密码,从浏览器返回的哈希都是一样的。

php forms post hash sha
1个回答
0
投票

代码没问题,我尝试并且工作但是“传递”的sha1是:

   9d4e1e23bd5b727046a9e3b4b7db57bd8d6ee684

也许你修改了更糟糕的文件。看你的编辑器,看看你是否改变了正确的“seite2.php”。如果您更改此文件的路径位置,则旧文件可能仍保留在IDE中,您可以编辑此文件而不是新文件。

© www.soinside.com 2019 - 2024. All rights reserved.