Skip to content

Instantly share code, notes, and snippets.

@jiaozhu
Created June 17, 2015 11:47
Show Gist options
  • Save jiaozhu/98f7c394af067801e1c8 to your computer and use it in GitHub Desktop.
Save jiaozhu/98f7c394af067801e1c8 to your computer and use it in GitHub Desktop.
Java 编程下字符串的 16 位、32位 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;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment