是否有可能从MD5和Java恢复消息?

Pra*_*sad 5 java hash md5

我有以下代码.

String plaintext = "HelloWorld";
MessageDigest m = MessageDigest.getInstance("MD5");
m.reset();
m.update(plaintext.getBytes());
byte[] digest = m.digest();
BigInteger bigInt = new BigInteger(1,digest);
String hashtext = bigInt.toString(16); 

// Now we need to zero pad it if you actually want the full 32 chars.
while(hashtext.length() < 32 ){
    hashtext = "0"+hashtext;            
}
Run Code Online (Sandbox Code Playgroud)

现在我想将它转换回原始字符串.可能吗?

And*_*ter 14

我试过这个.现在我想将其转换回原始字符串.

MD5无法做到这一点.它是单向散列函数.

为了能够加密和解密,您需要使用AES之类的加密/解密算法.

有关更多信息,请参阅Java™加密体系结构(JCA)参考指南.

  • 好.谢谢你,先生. (2认同)