MD5加密JAVA代码实现
字符串长度不能超过32位
MD5是一种常见的加密算法,用于将任意长度的数据转换为固定长度的哈希值。下面是一个用Java实现MD5加密的示例代码:
```java
import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class MD5Encryption
public static void main(String[] args)
String input = "Hello World!";
try
String encrypted = encryptMD5(input);
System.out.println("MD5 Encrypted value: " + encrypted);
} catch (NoSuchAlgorithmException e)
e.printStackTrace(;
}
}
public static String encryptMD5(String input) throws NoSuchAlgorithmException
MessageDigest md = Instance("MD5");
byte[] messageDigest = md.Bytes();
BigInteger no = new BigInteger(1, messageDigest);
StringBuilder hashText = new String(16));
while (hashText.length( < 32)
hashText.insert(0, "0");
}
String(;
}
```
这段代码中,我们首先导入了`java.math.BigInteger`和`java.security.MessageDigest`类,它们是实现MD5加密所需的类。
在`main`方法中,我们定义了一个字符串`input`作为待加密的数据。
`encryptMD5`方法用于实现MD5加密。首先我们通过`Instance("MD5")`获得一个MD5加密对象,然后我们使用`md.Bytes()`对字符串进行加密,返
回一个字节数组。接下来我们使用`java.math.BigInteger`类将字节数组转换为一个大整数`no`。最后,我们将该大整数转换为十六进制字符串,并在前面补充0,直到字符串的长度为32位。最后返回MD5加密后的字符串。
在`main`方法中,我们调用`encryptMD5`方法,并将结果打印输出。
以上就是一个简单的Java实现MD5加密的示例代码。注意,由于MD5算法的普及程度和安全性的下降,现在更推荐使用更安全的加密算法,如SHA-256

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。