MD5(可加盐)加密—使用MessageDigest加密

 MD5加密算法,即"Message-Digest Algorithm 5(信息-摘要算法)",它由MD2、MD3、MD4发展而来的一种单向函数算法(也就是HASH算法),它是国际著名的公钥加密算法标准RSA的第一设计者R.Rivest于上个世纪90年代初开发出来的。MD5的最大作用在于,将不同格式的大容量文件信息在用数字签名软件来签署私人密钥前"压缩"成一种保密的格式,关键之处在于——这种"压缩"是不可逆的。 JAVA JDK已经自带了MD5的实现,只要简单调用下就可以。(from 百度百科)


实现代码:

[java]  view plain  copy
  1. import java.security.MessageDigest;  
  2. import java.security.NoSuchAlgorithmException;  
  3.   
  4. public class CreateMD5 {  
  5.   
  6.     //静态方法,便于作为工具类  
  7.     public static String getMd5(String plainText) {  
  8.         try {  
  9.             MessageDigest md = MessageDigest.getInstance("MD5");  
  10.             md.update(plainText.getBytes());  
  11.             byte b[] = md.digest();  
  12.   
  13.             int i;  
  14.   
  15.             StringBuffer buf = new StringBuffer("");  
  16.             for (int offset = 0; offset < b.length; offset++) {  
  17.                 i = b[offset];  
  18.                 if (i < 0)  
  19.                     i += 256;  
  20.                 if (i < 16)  
  21.                     buf.append("0");  
  22.                 buf.append(Integer.toHexString(i));  
  23.             }  
  24.             //32位加密  
  25.             return buf.toString();  
  26.             // 16位的加密  
  27.             //return buf.toString().substring(8, 24);  
  28.         } catch (NoSuchAlgorithmException e) {  
  29.             e.printStackTrace();  
  30.             return null;  
  31.         }  
  32.   
  33.     }  
  34.       
  35.     public static void main(String[] args) {      
  36.         //测试      
  37.         System.out.println(CreateMD5.getMd5("hello"));  
  38.     }  
  39.   

本文转载于:https://blog.csdn.net/ymc0329/article/details/6738711(侵删)

你可能感兴趣的:(数据安全)