用java解码md5 ecnrytion

用java解码md5 ecnrytion,java,encryption,md5,Java,Encryption,Md5,使用此代码加密字符串 我想将md5加密解码为普通字符串? 你能帮忙吗?md5不是加密算法。这是一个好主意。哈希字符串无法解码。原始字符串被“销毁”/永远散列。要添加到@dit的答案中,您只有一个选项;例如,它用于比较MD5字符串MD5(“cat”)==MD5(“cat”),无法从MD5(“cat”)派生出“cat”,因为如上所述,它是一个哈希函数 以下是一些可用于比较的内容: public static String convertToMD5(String input) throws Excep

使用此代码加密字符串 我想将md5加密解码为普通字符串?
你能帮忙吗?md5不是加密算法。这是一个好主意。哈希字符串无法解码。原始字符串被“销毁”/永远散列。

要添加到@dit的答案中,您只有一个选项;例如,它用于比较MD5字符串
MD5(“cat”)==MD5(“cat”)
,无法从
MD5(“cat”)
派生出
“cat”
,因为如上所述,它是一个哈希函数

以下是一些可用于比较的内容:

public static String convertToMD5(String input) throws Exception {
    String md5 = null;
    if (null == input)
        return null;
    try {
        // Create MessageDigest object for MD5
        MessageDigest digest = MessageDigest.getInstance("MD5");
        // Update input string in message digest
        digest.update(input.getBytes(), 0, input.length());
        // Converts message digest value in base 16 (hex)
        md5 = new BigInteger(1, digest.digest()).toString(16);
    } catch (NoSuchAlgorithmException e) {

        throw e;
    }
    return md5;
}

然后可以调用
匹配(“d077f244def8a70e5ea758bd8352fcd8”,“cat”)
将返回
true
,如果
匹配(MD5(“x”),“y”)
,则返回false

萨克斯,你能帮我做最后的评论吗
public static boolean matching(String orig, String compare){
    String md5 = null;
    try{
        MessageDigest md = MessageDigest.getInstance("MD5");
        md.update(compare.getBytes());
        byte[] digest = md.digest();
        md5 = new BigInteger(1, digest()).toString(16);

        return md5.equals(orig);

    } catch (NoSuchAlgorithmException e) {
        return false;
    }

    return false;
}