0

こんにちはこれは私が取り組んでいる私の現在のコードです:

$uname = "unholybanana";
$pass = "choykiller13";
$salt = salty();
$password = sha1 ( $uname . $pass . $salt );
echo $password;

function salty() {
    mt_srand(microtime(true)*100000 + memory_get_usage(true));
    return md5(uniqid(mt_rand(), true));
}

これまでのところ、私の問題は$ password echos $ uname + $ passハッシュ混合ですが、saltと混合しないため、誰もがこれに関する問題を指摘できます。私は現在、scryptやbcryptに直接アクセスするのではなく、学習目的でsha1を使用しています。また、これはデータをデータベースに挿入するために私が行うことです:

    $sql= "INERT into test SET uname='$uname', hashpass='$password', salt='$salt'";

上記の私の挿入物に問題がある場合、誰かが見つけることができれば素晴らしいでしょう。

これまでのところ、これをどのように検証できるかわかりません。(構文)誰かが私を良い方向に向けてくれることを感謝します。

しかし、私はこれをどのようにコーディングするかをまだ考えているべきだと思います。

     $checkpass= sha1 ( $uname . $pass . $salt ) == $hashpass;

また、$ unameを追加したかったのは、すべてのunameがクライアントに渡されるため、すべてのunameがこのC-9183102のようになるためです。

助けてくれてありがとう!

4

1 に答える 1

2

あなたはほぼ間違いなく欲しい

$sql= "INSERT into test SET uname='$uname', hashpass='$password', salt='$salt'";

の代わりにINERT

于 2012-08-27T01:34:43.137 に答える