7

「/etc/pam.d/common-password」でアクティブ化されているcrypt(3)場合、Linux の「/etc/shadow」ファイルに格納するときの方法でエンコードされたパスワード ハッシュを生成/検証する Java 関数を探しています。 sha512.

平文の文字列「geheim」は次のように変換されます。

"$6$WoC532HB$LagBJ00vAGNGu8p9oeYDOSNZo9vTNTzOgPA.K0bJoiXfbcpj3jBuTkNwdzCrSNadRi8LanH1tH6tGGPPp/Lp3."

http://www.akkadia.org/drepper/SHA-crypt.txtから、MD5 のように、単に SHA ハッシュのようなものDigestUtilsや JavaMessageDigestクラスが生成するものではなく、もう少し魔法を行うアルゴリズムであることを理解しています。

4

3 に答える 3

5

ここで、すべての新しい crypt() アルゴリズムの Java 実装を見つけました: ftp://ftp.arlut.utexas.edu/java_hashes/

于 2012-02-08T13:45:40.727 に答える
2

Apache Commons Codec Digestをご覧ください

jBCryptも役に立つかもしれません。

この記事では、Modular Crypt Format または、 Crypt3 形式の詳細ではない標準についての補足事項です。

于 2016-03-07T11:16:39.777 に答える
0

あなたが参照する他の質問は、DESに基づく従来のcrypt(3)メソッドとMD5に基づく「$ 1 $」メソッドへのリンクのみを提供します。SHA-1 に基づく「$5$」方式または SHA-512 に基づく「$6$」方式を使用するパスワードをチェックする必要があります。

ここに基づくとは、crypt(3) が SHA-512 などを使用することを意味しますが、salt 値を追加し、http: //www.akkadia.org/drepper/SHA-crypt.txt で説明されているようにいくつかの反復を行います。

于 2012-02-03T17:47:33.787 に答える