特定のパスワードが群衆 cwd_user テーブルに保存されているパスワードと一致するかどうかを確認できるコードが必要です。
その表のパスワードは「{PKCS5S2}...」で始まり、以下のリンクで群集が PBKDF2 アルゴリズムを使用していることがわかりました。
デフォルトは "Atlassian Security" です。これは現在、Bouncy Castle の PKCS 5 バージョン 2 (別名 PBKDF2) の実装のダム ラッパーであり、ランダムな 16 バイトのソルト、10,000 回の反復を使用し、最終的に 256 ビットのハッシュを生成します。出力
https://answers.atlassian.com/questions/235858/password-security
そのパスワードを照合するために使用できる方法を誰かに教えてもらえますか?
たとえば、パスワード「1234」でユーザー「toto」を作成すると、データベースに次の行が表示されます。
user_name credential
------------- -------------------------------------------------------------------------
toto {PKCS5S2}m+u8ed1RKRew3jjHPilZw0ICL6BG/qyeN+kVRRS9nsO+VK7Q5I0vCK3gLvCFWC3n
次のような方法が必要です。
public String getHash(String rowPassword){
// ?????
}
どこ
getHash("1234") returns "{PKCS5S2}m+u8ed1RKRew3jjHPilZw0ICL6BG/qyeN+kVRRS9nsO+VK7Q5I0vCK3gLvCFWC3n"