2012-11-19 78 views
-1

這裏是我的代碼,使用鹽對密碼加密PHP

<?php 


    function($string){ 
    $salt = "@x5v"; 
    $hash = sha1(md5($salt.$string)).md5($string).sha1(md5($string)); 
    return $hash; 
    } 
    ?> 
    <?php 

    print "<center>"; 
    if(isset($_POST['username'])){ 
    echo 'Variable is set and I can use it!'; 
    } 
    $Username = $_POST["username"]; 
    $Password = md5($_POST["password.$hash"]); 
    $Email = $_POST["email"]; 


?> 

我認爲這是該行導致該問題:

$Password = md5($_POST["password.$hash"]); 

什麼是正確的語法通過用戶密碼進入數據庫,用我上面定義的字符串加密?

+2

我希望鹽不是一個常數。 – Leri

回答

2

我認爲這是該行導致該問題:

$密碼= MD5($ _ POST [ 「密碼散列$」]);

你在這裏做什麼是不正確的。它應該是:

$Password = md5($_POST["password"] . $hash); 

什麼你在做實際上是在建立索引以$ _ POST與會已經結束了類似「password.fdg858fug83u5g5」的關鍵。