2016-04-03 9 views
-2

私がしようとしていることは自明です。 ユーザーが設定した「パスワード」を取得して暗号化しようとしています。MD5とCRYPTによるパスワード処理が期待通りに機能していません

//Firstly i recieve user and pswd 
$usua=SQLite3::escapeString($_POST['usuario']); 
$psw=SQLite3::escapeString($_POST['psw']); 

//Then i proceed to encrypt 
$key = md5('firstWord'); 
$salt = md5('secondWord'); 

function hashword($string,$salt){ 
    $string= crypt($string, '$1$'.$salt.'$');  
} 

$psw = hashword($psw, $salt); 

いくつかこのコードは常に同じ結果を返す方法: "$ 1 $ 7b77d82を"

は、ここで私はこれまで試したものです。

どういうところが間違っていますか?

どうすればよいですか?

Bcryptを使用する必要がありますか?

明らかに、このプロセスは使用されるパスワードごとに異なる値を返すはずですが、そうではありません。あなたがそれを行うことができ、ユーザ名とパスワードの基本的な暗号化のために

+0

あなたのコードは間違っています:$ keyは決して使用されず、$ saltは常に 'secondWord'という文字列のmd5です。 – conventi

+0

あなたは正しいです。続けてください。どのように私はこれを行うsupposですか? –

+0

あなたの目標は何ですか?あなたは、ユーザー名とパスワードを暗号化し、それらを連結したいですか? – conventi

答えて

0

:暗号化する文字列とのハッシングをベースに使用されている$塩をという名前のオプションの文字列:

$usua=SQLite3::escapeString($_POST['usuario']); 
$psw=SQLite3::escapeString($_POST['psw']); 

$salt = "aString"; 

$encryptedUsr = crypt($usua, $salt); 
$encryptedPsw = crypt($psw, $salt); 

crypt(string $string, [string $salt])関数は2つのパラメータを持っています。

+0

私はこれを使った: http://www.the-art-of-web.com/php/blowfish-crypt/ –

関連する問題