Java 编程下字符串的 16 位、32位 MD5 加密
程序员文章站
2024-03-16 18:15:52
...
package cn.sunzn.md5;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class Str2MD5 {
public static void main(String[] args) {
MD5("sunzn");
}
private static String MD5(String sourceStr) {
String result = "";
try {
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(sourceStr.getBytes());
byte b[] = md.digest();
int i;
StringBuffer buf = new StringBuffer("");
for (int offset = 0; offset < b.length; offset++) {
i = b[offset];
if (i < 0)
i += 256;
if (i < 16)
buf.append("0");
buf.append(Integer.toHexString(i));
}
result = buf.toString();
System.out.println("MD5(" + sourceStr + ",32) = " + result);
System.out.println("MD5(" + sourceStr + ",16) = " + buf.toString().substring(8, 24));
} catch (NoSuchAlgorithmException e) {
System.out.println(e);
}
return result;
}
}
MD5(sunzn,32) = 40379db889f9124819228947faaeb1f7
MD5(sunzn,16) = 89f9124819228947
上一篇: C#中气泡碰撞案例的实现
下一篇: CSS盒模型