2

WordPress から Codeigniter で開発されたカスタム CMS にサイトを変換中です。Wordpress は PHPass を使用してパスワードをハッシュすると言われたため、パスワードをリセットまたは変更することなくユーザーをシームレスに移行するために、PHPass ライブラリ (このサイトで概説されているように) を使用しています。

私のアプリケーションでは正常に動作していますが、Wordpress が使用するのと同じパスワード ハッシュを生成していません。ある種のサイトキーに関連していると思いますが、運がありません. PHPass に同じパスワード ハッシュを生成させるにはどうすればよいですか?

4

2 に答える 2

8

PHPass に同じハッシュを 2 回生成させることはできません。ランダムなソルトを使用します。そのソルトは、パスワード ハッシュ内に保存されます。

ただし、実際には同じハッシュを生成する必要はありません。古いハッシュをコピーし、PHPass の CheckPassword($pass, $hash) を使用してパスワードを確認してください。DB からのハッシュを $hash として、パスワードを $pass として入力すると、一致した場合に true が返されます。

HashPassword() メソッドは、新しいパスワード ハッシュ (新しいパスワード用) を作成するためだけに使用され、既存のものと比較するためのものではありません。

于 2012-06-08T05:03:30.483 に答える
0

いくつかの可能性があります。彼らは別のハッシュアルゴリズムを使用しているか、ハッシュまたは他の難読化の方法を塩漬けにしています。Wordpressがハッシュをソルトする場合、ハッシュを変更するには、ソルトテーブルまたは単一のソルトフレーズにアクセスする必要がありますが、それが得られるとは思えません。PHPassが他のハッシュ難読化メソッドと同様にソルティングをサポートしていることを確認したので、おそらくそれらの1つがハッシュが同じにならない理由です。

http://www.openwall.com/articles/PHP-Users-Passwords

于 2012-02-29T21:35:05.873 に答える