1

次のコードを使用して、MD5とImを使用してWebページのセキュリティを暗号化しています。

public static String stringToMD5(String password)
    {

        MessageDigest messageDigest;

        try {
            messageDigest = MessageDigest.getInstance("MD5");
            messageDigest.update(password.getBytes(),0, password.length());  
            String hashedPass = new BigInteger(1,messageDigest.digest()).toString(16);  
            if (hashedPass.length() < 32) {
               hashedPass = "0" + hashedPass; 
            }
            return hashedPass;
        } catch (NoSuchAlgorithmException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }  
        return password;
    }

しかし、ログインするためのカスタムの方法は、カスタムのAbstractAuthenticationProcessingFilterを開発する必要があったため、そのMD5を復号化する必要があります。

したがって、問題は、その関数によって生成されたものをどのように復号化するかです。

前もって感謝します。

4

1 に答える 1

2

MD5 は一方向アルゴリズムです。これは 1 対 1 のマッピングではありません。その出力を解読する方法はありません。

保存された MD5 暗号化パスワードを使用する場合、ユーザーの入力を暗号化し、その結果を保存された暗号化パスワードと比較することによって、ユーザーを認証する必要があります。

于 2012-05-01T15:58:03.750 に答える