以前用PHP写小程序时,实现MD5很简单,直接调用内置函数md5()就可以了。
如今来学习java却发现没有这样的方法。
网上搜索了些代码,对其做了写修改实现了一个java MD5 类
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class Md5 {
private final static String[] NOSTR = { “0″, “1″, “2″, “3″, “4″, “5″,
”6″, “7″, “8″, “9″, “a”, “b”, “c”, “d”, “e”, “f” };
public Md5() {
}
private String byteToArrayString(byte bByte) {
if (bByte < 0) {
bByte += 256;
}
int iD1 = bByte / 16;
int iD2 = bByte % 16;
return NOSTR[iD1] + NOSTR[iD2];
}
private String byteToString(byte[] bByte) {
StringBuffer sBuffer = new StringBuffer();
for (int i = 0; i < bByte.length; i++) {
sBuffer.append(byteToArrayString(bByte[i]));
}
return sBuffer.toString();
}
public String getMd5(String str) {
String result = null;
MessageDigest md;
try {
md = MessageDigest.getInstance(“MD5″);
result = byteToString(md.digest(str.getBytes()));
} catch (NoSuchAlgorithmException ex) {
ex.printStackTrace();
}
return result;
}
public static void main(String[] args) {
Md5 md5 = new Md5();
System.out.print(md5.getMd5(“hahah”));//hahah 为要进行MD5加密的字符串
}
}
Eclipse执行run as java application 结果:
44bea1375d673dacfa7038a2a6896ae6
[重阳博客:http://www.99xunle.com/archives/737]
| 随机文章 | 相关文章 |
|---|---|

JAVA竟然没有内部MD5函数….想不到
Reply
自己动手,丰衣足食。
Reply
你牛X
Reply
灰过,支持
Reply
重阳 2009-10-27 回复:
“fei” 和 “hui” 怎么都不可能发一样的音 :margin:
Reply
不死鸟 2009-10-28 回复:
不好意思,我fu nan的
Reply
看不懂,晕。
Reply
重阳 2009-10-27 回复:
调用这个类的 String getMd5(String str) 方法就可以了,不过还是php的方便 直接md5(“password”);就行了
Reply