可变MD5加密(Java实现)Java认证考试
文章作者 100test 发表时间 2010:02:23 21:00:30
来源 100Test.Com百考试题网
可变在这里含义很简单,就是最终的加密结果是可变的,而非必需按标准MD5加密实现。Java类库security中的MessageDigest类就提供了MD5加密的支持,实现起来非常方便。为了实现更多效果,我们可以如下设计MD5工具类。
Java代码
package **.**.util.
import java.security.MessageDigest.
/**
* 标准MD5加密方法,使用java类库的security包的MessageDigest类处理
* @author Sarin
*/
public class MD5 {
/**
* 获得MD5加密密码的方法
*/
public static String getMD5ofStr(String origString) {
String origMD5 = null.
try {
MessageDigest md5 = MessageDigest.getInstance("MD5").
byte[] result = md5.digest(origString.getBytes()).
origMD5 = byteArray2HexStr(result).
} catch (Exception e) {
e.printStackTrace().
}
return origMD5.
}
/**
* 处理字节数组得到MD5密码的方法
*/
private static String byteArray2HexStr(byte[] bs) {
StringBuffer sb = new StringBuffer().
for (byte b : bs) {
sb.append(byte2HexStr(b)).
}
return sb.toString().
}
/**
* 字节标准移位转十六进制方法
*/
private static String byte2HexStr(byte b) {
String hexStr = null.
int n = b.
if (n