SHA加密

阅读更多
package com.dc;

import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;  
import java.security.NoSuchAlgorithmException;  

/* ******************  类说明  *********************
 * class       :  DcSHAUtil
 * @author     :  ncc
 * create time :  2017-12-19 上午10:36:08
 * @version    :  1.0  
 * description :  SHA 是一种数据加密算法,该算法经过加密专家多年来的发展和改进已日益完善,
 * 现在已成为公认的最安全的散列算法之一,并被广泛使用。该算法的思想是接收一段明文,
 * 然后以一种不可逆的方式将它转换成一段(通常更小)密文,
 * 也可以简单的理解为取一串输入码(称为预映射或信息),
 * 并把它们转化为长度较短、位数固定的输出序列即散列值(也称为信息摘要或信息认证代码)的过程。
 * 散列函数值可以说时对明文的一种“指纹”或是“摘要”所以对散列值的数字签名就可以视为对此明文的数字签名。
 * @see        :                        
 * ************************************************/   
public class DcSHAUtil {  
      
    /* ********************************************
     * method name   : eccrypt 
     * description   : 加密字符串
     * @return       : byte[]
     * @param        : @param info
     * @param        : @return
     * @param        : @throws NoSuchAlgorithmException
     * modified      : ncc ,  2017-12-19
     * @see          : 
     * ********************************************/      
    public byte[] eccrypt(String info) throws NoSuchAlgorithmException{  
        MessageDigest md5 = MessageDigest.getInstance("SHA");  
        byte[] srcBytes = info.getBytes();  
        //使用srcBytes更新摘要  
        md5.update(srcBytes);  
        //完成哈希计算,得到result  
        byte[] resultBytes = md5.digest();  
        return resultBytes;  
    }  
  
    /** 
     * @param args 
     * @throws NoSuchAlgorithmException  
     * @throws UnsupportedEncodingException 
     */  
    public static void main(String[] args) throws NoSuchAlgorithmException, UnsupportedEncodingException {  
        String msg = "欢迎光临得草之家!";  
        DcSHAUtil sha = new DcSHAUtil();  
        byte[] resultBytes = sha.eccrypt(msg);  
        System.out.println("明文是:" + msg);
        System.out.println("密文是:" + new String(resultBytes));  
    }  
}

 

 

你可能感兴趣的:(SHA,加密,java)