簡體   English   中英

使用Salt加密密碼PHP

[英]Using Salt To Encrypt Password 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"]);

用我上面定義的字符串加密的將用戶密碼傳遞到數據庫的正確語法是什么?

我認為這是導致問題的那條線:

$ Password = md5($ _ POST [“ password。$ hash”]);

您在這里所做的是不正確的。 它應該是:

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

您實際上在執行的操作是使用一個最終會像“ password.fdg858fug83u5g5”之類的鍵索引到$ _POST。

我建議使用此庫,而不要使用自己的解決方案:

http://www.openwall.com/phpass/

這是一篇說明如何使用它的文章:

http://sunnyis.me/blog/secure-passwords/

您也應該閱讀以下StackOverflow答案:

https://stackoverflow.com/a/6337021/943102

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM