私は2つのアプリケーション、Laravel 5.2に1つ、流星の1を持っています。私は両方のプラットフォームと互換性のあるパスワードのハッシュを収集したい。Laravel&メテオパスワード
データベースはLaravelのために別々に
password
ハッシュを格納します。流星のためmeteor_password
。
両方のプラットフォームでは、デフォルトで10ラウンドのbcryptが使用されますが、Meteorではbcryptの前に平文のパスワードがsha256と表示されます。
流星は、パスワードハッシュabc
を作成した場合、私はプレーンパスワードをSHA256、およびLaravelの内部を使用してabc
とそれを比較することができ、即ちAuth::attempt()
$sha256 = hash('sha256', $request->get('password'), false);
これは動作します。 Laravelはユーザーを正常に認証します。
しかし、私がLaravelに新しいユーザーを登録し、meteor_password
というハッシュを保存すると、Meteorでそのハッシュに対して認証すると、エラーメッセージ "Login Forbidden"で失敗します。 This error appears to be mean incorrect credentials.
私はLaravelでそれを確認したとき、私は私がやったのと同じ方法でハッシュを作成しています。
$meteor_password = bcrypt(hash('sha256', $plain, false));
私は何かが欠けていると思うので、それは一方的に働くのが奇妙に思えます。 2011年
期待通りに動作しますが、上のスポット。リンクありがとうございました。面白い読み物。 –
素晴らしい。実際には、10のコストは、実際には(2^10 =)1024ラウンドであり、10ではありません。 – MasterAM