记录:java字符串32位md5加密

来源:互联网 发布:软件著作权 版权局 编辑:程序博客网 时间:2024/05/17 08:27

  MD5是常用的加密算法,也经常用于校验信息完整,如文件的完整性。用术语讲,MD5是一种消息摘要算法(Message Digest Algorithm)。另外还有一种常用的消息摘要算法SHA1。如果想了解这些的话,可以去百度百科:MD5、SHA1、消息摘要算法。

 

  Java已经实现了MD5、SHA1算法。利用java.security.MessageDigest类就可以获取字符串和文件的MD5以及SHA1结果。

import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;public class Test {public static void main(String[] args) {Test test = new Test();System.out.println(test.encryption("12345678"));}/** *  * @param plainText *            明文 * @return 32位密文 */public String encryption(String plainText) {String re_md5 = new String();try {MessageDigest md = MessageDigest.getInstance("MD5");md.update(plainText.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));}re_md5 = buf.toString();} catch (NoSuchAlgorithmException e) {e.printStackTrace();}return re_md5;}}